Index: /trunk/source/lisp-kernel/area.h
===================================================================
--- /trunk/source/lisp-kernel/area.h	(revision 13616)
+++ /trunk/source/lisp-kernel/area.h	(revision 13617)
@@ -124,4 +124,5 @@
 #define MIN_VSTACK_SIZE (1<<16)
 #define VSTACK_HARDPROT (1<<12)
+
 #ifdef PPC
 #define VSTACK_SOFTPROT (1<<16)
@@ -129,7 +130,9 @@
 #define VSTACK_SOFTPROT CSTACK_SOFTPROT
 #endif
+
 #define MIN_TSTACK_SIZE (1<<18)
 #define TSTACK_HARDPROT 0
 #define TSTACK_SOFTPROT (1<<16)
+
 #ifdef PPC
 #define CS_OVERFLOW_FORCE_LIMIT ((natural)(-(sizeof(lisp_frame))))
@@ -141,58 +144,5 @@
 
 
-#ifdef PPC
-#ifdef LINUX
-#ifdef PPC64
-#define IMAGE_BASE_ADDRESS 0x50000000000L
-#else
-#define IMAGE_BASE_ADDRESS 0x31000000
-#endif
-#endif
-#ifdef DARWIN
-#ifdef PPC64
-#define IMAGE_BASE_ADDRESS 0x300000000000L
-#else
-#define IMAGE_BASE_ADDRESS 0x04000000
-#endif
-#endif
-#endif
 
-#ifdef X86
-#ifdef LINUX
-#ifdef X8664
-#define IMAGE_BASE_ADDRESS 0x300000000000L
-#else
-#define IMAGE_BASE_ADDRESS 0x10000000
-#endif
-#endif
-#ifdef FREEBSD
-#ifdef X8664
-#define IMAGE_BASE_ADDRESS 0x300000000000L /* 0x100000000L */
-#else
-#define IMAGE_BASE_ADDRESS 0x30000000
-#endif
-#endif
-#ifdef SOLARIS
-#ifdef X8664
-#define IMAGE_BASE_ADDRESS 0x300000000000L
-#else
-#define IMAGE_BASE_ADDRESS 0x10000000
-#endif
-#endif
-#ifdef DARWIN
-#ifdef X8664
-#define IMAGE_BASE_ADDRESS 0x300000000000L
-#else
-#define IMAGE_BASE_ADDRESS 0x04000000
-#endif
-#endif
-#endif
-#ifdef WINDOWS
-#ifdef X8664
-#define IMAGE_BASE_ADDRESS 0x100000000LL
-#else
-#define IMAGE_BASE_ADDRESS 0x04000000
-#endif
-#endif
 
 #if (WORD_SIZE==64)
@@ -206,9 +156,4 @@
 #define STATIC_RESERVE heap_segment_size
 
-#ifndef X86
-#define STATIC_BASE_ADDRESS (0x00002000+(LOWMEM_BIAS))
-#else
-#define STATIC_BASE_ADDRESS (0x00012000+(LOWMEM_BIAS))
-#endif
 
 #define SPJUMP_TARGET_ADDRESS (STATIC_BASE_ADDRESS+0x3000)
Index: /trunk/source/lisp-kernel/platform-darwinppc.h
===================================================================
--- /trunk/source/lisp-kernel/platform-darwinppc.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-darwinppc.h	(revision 13617)
@@ -30,2 +30,6 @@
 
 #include "standard-inttypes.h"
+
+#define MAXIMUM_MAPPABLE_MEMORY ((1U<<31)-2*heap_segment_size)
+#define IMAGE_BASE_ADDRESS 0x04000000
+
Index: /trunk/source/lisp-kernel/platform-darwinppc64.h
===================================================================
--- /trunk/source/lisp-kernel/platform-darwinppc64.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-darwinppc64.h	(revision 13617)
@@ -30,2 +30,6 @@
 
 #include "standard-inttypes.h"
+
+#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
+#define IMAGE_BASE_ADDRESS 0x300000000000L
+
Index: /trunk/source/lisp-kernel/platform-darwinx8632.h
===================================================================
--- /trunk/source/lisp-kernel/platform-darwinx8632.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-darwinx8632.h	(revision 13617)
@@ -31,2 +31,5 @@
 #include "standard-inttypes.h"
 
+#define MAXIMUM_MAPPABLE_MEMORY ((1U<<31)-2*heap_segment_size)
+#define IMAGE_BASE_ADDRESS 0x04000000
+
Index: /trunk/source/lisp-kernel/platform-darwinx8664.h
===================================================================
--- /trunk/source/lisp-kernel/platform-darwinx8664.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-darwinx8664.h	(revision 13617)
@@ -31,2 +31,6 @@
 
 #include "standard-inttypes.h"
+
+#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
+#define IMAGE_BASE_ADDRESS 0x300000000000L
+
Index: /trunk/source/lisp-kernel/platform-freebsdx8632.h
===================================================================
--- /trunk/source/lisp-kernel/platform-freebsdx8632.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-freebsdx8632.h	(revision 13617)
@@ -26,3 +26,5 @@
 
 
+#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
+#define IMAGE_BASE_ADDRESS 0x30000000
 
Index: /trunk/source/lisp-kernel/platform-freebsdx8664.h
===================================================================
--- /trunk/source/lisp-kernel/platform-freebsdx8664.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-freebsdx8664.h	(revision 13617)
@@ -25,4 +25,5 @@
 #include "standard-inttypes.h"
 
+#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
+#define IMAGE_BASE_ADDRESS 0x300000000000L
 
-
Index: /trunk/source/lisp-kernel/platform-linuxppc.h
===================================================================
--- /trunk/source/lisp-kernel/platform-linuxppc.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-linuxppc.h	(revision 13617)
@@ -26,3 +26,5 @@
 
 
+#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
+#define IMAGE_BASE_ADDRESS 0x31000000
 
Index: /trunk/source/lisp-kernel/platform-linuxppc64.h
===================================================================
--- /trunk/source/lisp-kernel/platform-linuxppc64.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-linuxppc64.h	(revision 13617)
@@ -25,4 +25,5 @@
 #include "standard-inttypes.h"
 
+#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
+#define IMAGE_BASE_ADDRESS 0x50000000000L
 
-
Index: /trunk/source/lisp-kernel/platform-linuxx8632.h
===================================================================
--- /trunk/source/lisp-kernel/platform-linuxx8632.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-linuxx8632.h	(revision 13617)
@@ -26,3 +26,5 @@
 
 
+#define MAXIMUM_MAPPABLE_MEMORY (9U<<28)
+#define IMAGE_BASE_ADDRESS 0x10000000
 
Index: /trunk/source/lisp-kernel/platform-linuxx8664.h
===================================================================
--- /trunk/source/lisp-kernel/platform-linuxx8664.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-linuxx8664.h	(revision 13617)
@@ -25,4 +25,4 @@
 #include "standard-inttypes.h"
 
-
-
+#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
+#define IMAGE_BASE_ADDRESS 0x300000000000L
Index: /trunk/source/lisp-kernel/platform-solarisx64.h
===================================================================
--- /trunk/source/lisp-kernel/platform-solarisx64.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-solarisx64.h	(revision 13617)
@@ -25,4 +25,4 @@
 #include "solaris-inttypes.h"
 
-
-
+#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
+#define IMAGE_BASE_ADDRESS 0x300000000000L
Index: /trunk/source/lisp-kernel/platform-solarisx86.h
===================================================================
--- /trunk/source/lisp-kernel/platform-solarisx86.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-solarisx86.h	(revision 13617)
@@ -25,4 +25,5 @@
 #include "solaris-inttypes.h"
 
+#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
+#define IMAGE_BASE_ADDRESS 0x10000000
 
-
Index: /trunk/source/lisp-kernel/platform-win32.h
===================================================================
--- /trunk/source/lisp-kernel/platform-win32.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-win32.h	(revision 13617)
@@ -27,3 +27,5 @@
 
 
+#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
+#define IMAGE_BASE_ADDRESS 0x04000000
 
Index: /trunk/source/lisp-kernel/platform-win64.h
===================================================================
--- /trunk/source/lisp-kernel/platform-win64.h	(revision 13616)
+++ /trunk/source/lisp-kernel/platform-win64.h	(revision 13617)
@@ -26,2 +26,8 @@
 
 #include "windows-inttypes.h"
+
+/* Supposedly, the high-end version of Vista allow 128GB of pageable memory */
+#define MAXIMUM_MAPPABLE_MEMORY (512LL<<30LL)
+#define IMAGE_BASE_ADDRESS 0x100000000LL
+
+
Index: /trunk/source/lisp-kernel/pmcl-kernel.c
===================================================================
--- /trunk/source/lisp-kernel/pmcl-kernel.c	(revision 13616)
+++ /trunk/source/lisp-kernel/pmcl-kernel.c	(revision 13617)
@@ -363,48 +363,4 @@
   }
 }
-
-#if WORD_SIZE == 64
-#ifdef DARWIN
-#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
-#endif
-#ifdef FREEBSD
-#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
-#endif
-#ifdef SOLARIS
-#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
-#endif
-#ifdef LINUX
-#ifdef X8664
-#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
-#endif
-#ifdef PPC
-#define MAXIMUM_MAPPABLE_MEMORY (512L<<30L)
-#endif
-#endif
-#ifdef WINDOWS
-/* Supposedly, the high-end version of Vista allow 128GB of pageable memory */
-#define MAXIMUM_MAPPABLE_MEMORY (512LL<<30LL)
-#endif
-#else
-#ifdef DARWIN
-#define MAXIMUM_MAPPABLE_MEMORY ((1U<<31)-2*heap_segment_size)
-#endif
-#ifdef LINUX
-#ifdef X86
-#define MAXIMUM_MAPPABLE_MEMORY (9U<<28)
-#else
-#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
-#endif
-#endif
-#ifdef WINDOWS
-#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
-#endif
-#ifdef FREEBSD
-#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
-#endif
-#ifdef SOLARIS
-#define MAXIMUM_MAPPABLE_MEMORY (1U<<30)
-#endif
-#endif
 
 natural
Index: /trunk/source/lisp-kernel/ppc-constants.h
===================================================================
--- /trunk/source/lisp-kernel/ppc-constants.h	(revision 13616)
+++ /trunk/source/lisp-kernel/ppc-constants.h	(revision 13617)
@@ -87,4 +87,5 @@
 
 #define INTERRUPT_LEVEL_BINDING_INDEX (1)
+#define STATIC_BASE_ADDRESS 0x00002000
 
 #endif /* __ppc_constants__ */
Index: /trunk/source/lisp-kernel/x86-constants.h
===================================================================
--- /trunk/source/lisp-kernel/x86-constants.h	(revision 13616)
+++ /trunk/source/lisp-kernel/x86-constants.h	(revision 13617)
@@ -59,4 +59,6 @@
 #define X86_OVERFLOW_FLAG_BIT (11)
 
+#define STATIC_BASE_ADDRESS 0x00012000
+
 
 #endif /* __x86_constants__ */
