NBSG = 0x20000
ICACHE_ONLY = 0x00000009
CACHES_OFF = 0x00000008 | actually a clear and disable --m
-#define MAS_STACK INT_STACK
+#define MAS_STACK INT_STACK
ROOT_TABLE_SIZE = 128
PAGESIZE = 8192
SUN3_INVALID_PMEG = 255
/* Firstly, disable interrupts and set up function codes. */
movew #PSL_HIGHIPL, %sr
- moveq #FC_CONTROL, %d0
- movec %d0, %sfc
- movec %d0, %dfc
+ moveq #FC_CONTROL, %d0
+ movec %d0, %sfc
+ movec %d0, %dfc
/* Make sure we're in context zero. */
moveq #0, %d0
/* map everything the bootloader left us into high memory, clean up the
excess later */
- lea (AC_SEGMAP+0),%a0
- lea (AC_SEGMAP+KERNBASE),%a1
-1:
+ lea (AC_SEGMAP+0),%a0
+ lea (AC_SEGMAP+KERNBASE),%a1
+1:
movsb %a0@, %d1
movsb %d1, %a1@
cmpib #SUN3_INVALID_PMEG, %d1
addl #NBSG,%a0
addl #NBSG,%a1
jmp 1b
-
-2:
-
+
+2:
+
/* Disable caches and jump to high code. */
moveq #ICACHE_ONLY,%d0 | Cache disabled until we're ready to enable it
movc %d0, %cacr | is this the right value? (yes --m)
- jmp 1f:l
+ jmp 1f:l
/* Following code executes at high addresses (0xE000xxx). */
1: lea init_task,%curptr | get initial thread...
movel %a0@, %a1@
addl #4, %a1
dbf %d0, 1b
-
+
/* Point MSP at an invalid page to trap if it's used. --m */
movl #(PAGESIZE),%d0
movc %d0,%msp
jbsr sun3_init
jbsr base_trap_init
-
+
jbsr start_kernel
- trap #15
+ trap #15
.data
.even