From cfc94d51c18f627e9a148698dcb54ba05adda036 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Fri, 28 Jun 1991 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1991-06-28 --- pc/l.s | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/pc/l.s b/pc/l.s index da3e830e53aabe92f286b094097005f5b7b11c03..8834bc808cc88f6da14d3ffbb3e9691474c15f51 100644 --- a/pc/l.s +++ b/pc/l.s @@ -1,7 +1,6 @@ #include "mem.h" TEXT start(SB),$0 - JMP start16 /* @@ -14,12 +13,12 @@ TEXT tgdt(SB),$0 LONG $0 /* data segment descriptor for 4 gigabytes (PL 0) */ - LONG SEGG|SEGB|(0xF<<16)|SEGP|SEGPL(0)|SEGDATA|SEGW - LONG 0xFFFF + LONG $(SEGG|SEGB|(0xF<<16)|SEGP|SEGPL(0)|SEGDATA|SEGW) + LONG $(0xFFFF) /* exec segment descriptor for 4 gigabytes (PL 0) */ - LONG SEGG|SEGD|(0xF<<16)|SEGP|SEGPL(p)|SEGEXEC|SEGR - LONG 0xFFFF + LONG $(SEGG|SEGD|(0xF<<16)|SEGP|SEGPL(0)|SEGEXEC|SEGR) + LONG $(0xFFFF) /* * pointer to initial gdt @@ -27,7 +26,7 @@ TEXT tgdt(SB),$0 TEXT tgdtptr(SB),$0 WORD $(3*8) - LONG $tgdt(SB) + LONG tgdt(SB) /* * come here in (16bit) real-address mode @@ -64,7 +63,7 @@ flush: MOVW AX,SS /* switch to 32 bit code */ - JMPFAR SELECTOR(2, SELGDT, 0):start32 +/* JMPFAR SELECTOR(2, SELGDT, 0):start32 /**/ /* * come here in USE32 protected mode @@ -85,10 +84,10 @@ TEXT start32(SB),$0 /* set up stack */ MOVL $mach0(SB),AX - MOVL A0, m(SB) - MOVL $0, 0(A0) - MOVL A0, A7 - ADDL $(MACHSIZE-4), A7 /* start stack under machine struct */ + MOVL AX, m(SB) + MOVL $0, 0(AX) + MOVL AX, SP + ADDL $(MACHSIZE-4), AX /* start stack under machine struct */ MOVL $0, u(SB) CALL main(SB),$0