From b066eacb9b83637b113eb042641e3a286fedd805 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Sun, 22 May 1994 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1994-05-22 --- carrera/l.s | 12 +++++++++++- carrera/mem.h | 6 +++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/carrera/l.s b/carrera/l.s index ea07a3e4611695c8302adffd0f0ae3d10ef59968..eb7c65273a3bfac9b97f1bc4f4e554e7520a3960 100644 --- a/carrera/l.s +++ b/carrera/l.s @@ -20,18 +20,23 @@ #define LL(base, rt) WORD $((060<<26)|((base)<<21)|((rt)<<16)) #define SC(base, rt) WORD $((070<<26)|((base)<<21)|((rt)<<16)) +#define DBG(S) CONST(0xa0001000, R20);CONST(S, R21);MOVW R21,(R20) + /* * Boot first processor */ TEXT start(SB), $-4 +DBG(0x55aa0000) MOVW $setR30(SB), R30 - MOVW $(CU1|INTR7|INTR6|INTR5|INTR4|INTR3|INTR2|INTR1|INTR0), R1 + MOVW $(BEV|DE|CU1|INTR7|INTR6|INTR5|INTR4|INTR3|INTR2|INTR1|INTR0), R1 MOVW R1, M(STATUS) WAIT +DBG(0x55aa0001) MOVW $TLBROFF, R1 MOVW R1, M(WIRED) +DBG(0x55aa0002) MOVW $((0x1C<<7)|(1<<24)), R1 MOVW R1, FCR31 /* permit only inexact and underflow */ @@ -53,14 +58,19 @@ TEXT start(SB), $-4 MOVD F24, F18 MOVD F24, F20 MOVD F24, F22 +DBG(0x55aa0003) MOVW $MACHADDR, R(MACH) ADDU $(BY2PG-4), R(MACH), SP MOVW $0, R(USER) +DBG(0x55aa0010) +MOVW R(MACH),4(R20) MOVW R0, 0(R(MACH)) +DBG(0x55aa0011) MOVW $edata(SB), R1 MOVW $end(SB), R2 +DBG(0x55aa0004) clrbss: MOVB $0, (R1) diff --git a/carrera/mem.h b/carrera/mem.h index 13c47ad859e484451ff35e380dd85ed6a4223f6e..d8a273b15e0c28ae5f729d5e28aa7cf98a4bf88e 100644 --- a/carrera/mem.h +++ b/carrera/mem.h @@ -75,8 +75,8 @@ #define INTR5 0x00002000 #define INTR6 0x00004000 #define INTR7 0x00008000 -#define ISC 0x00010000 -#define SWC 0x00020000 +#define DE 0x00010000 +#define BEV 0x00400000 #define CU0 0x10000000 #define CU1 0x20000000 @@ -162,7 +162,7 @@ #define TSTKTOP (0xC0000000+USTKSIZE-BY2PG) /* top of temporary stack */ #define TSTKSIZ 100 #define KZERO KSEG0 /* base of kernel address space */ -#define KTZERO (KZERO+0x20000) /* first address in kernel text */ +#define KTZERO (KZERO+0x2000) /* first address in kernel text */ #define USTKSIZE (4*1024*1024) /* size of user stack */ #define globalmem(x) (((ulong)x)&KZERO) /* addresses valid in all contexts */ /*