aboutsummaryrefslogtreecommitdiff
path: root/sys/boot
diff options
context:
space:
mode:
authorKATO Takenori <kato@FreeBSD.org>2000-01-29 13:48:36 +0000
committerKATO Takenori <kato@FreeBSD.org>2000-01-29 13:48:36 +0000
commit0219f40756eec356a6179b70a260d9d25553562d (patch)
tree2e72417a303e21c92a31d2d34f14c4fb7323fe7f /sys/boot
parent23111c4144504b2e385744de3d463f4f5032bc34 (diff)
downloadsrc-0219f40756eec356a6179b70a260d9d25553562d.tar.gz
src-0219f40756eec356a6179b70a260d9d25553562d.zip
Synced with sys/boot/i386/btx/btx/btx.s rev 1.14.
Notes
Notes: svn path=/head/; revision=56813
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/pc98/btx/btx/btx.S4
-rw-r--r--sys/boot/pc98/btx/btx/btx.s4
2 files changed, 6 insertions, 2 deletions
diff --git a/sys/boot/pc98/btx/btx/btx.S b/sys/boot/pc98/btx/btx/btx.S
index 944c1aa167b4..5858ddad51ff 100644
--- a/sys/boot/pc98/btx/btx/btx.S
+++ b/sys/boot/pc98/btx/btx/btx.S
@@ -264,11 +264,11 @@ init.9: pushb $0x0 # general
#
exit: cli # Disable interrupts
movl $MEM_ESP0,%esp # Clear stack
-ifdef(`PAGING',`
#
# Turn off paging.
#
movl %cr0,%eax # Get CR0
+ifdef(`PAGING',`
andl $~0x80000000,%eax # Disable
movl %eax,%cr0 # paging
')
@@ -900,11 +900,13 @@ intx30: cmpl $SYS_EXEC,%eax # Exec system call?
movl $MEM_USR,%eax # User base address
addl 0xc(%esp,1),%eax # Change to user
leal 0x4(%eax),%esp # stack
+ifdef(`PAGING',`
movl %cr0,%eax # Turn
andl $~0x80000000,%eax # off
movl %eax,%cr0 # paging
xorl %eax,%eax # Flush
movl %eax,%cr3 # TLB
+')
popl %eax # Call
call *%eax # program
intx30.1: incb %ss:btx_hdr+0x7 # Flag reboot
diff --git a/sys/boot/pc98/btx/btx/btx.s b/sys/boot/pc98/btx/btx/btx.s
index 944c1aa167b4..5858ddad51ff 100644
--- a/sys/boot/pc98/btx/btx/btx.s
+++ b/sys/boot/pc98/btx/btx/btx.s
@@ -264,11 +264,11 @@ init.9: pushb $0x0 # general
#
exit: cli # Disable interrupts
movl $MEM_ESP0,%esp # Clear stack
-ifdef(`PAGING',`
#
# Turn off paging.
#
movl %cr0,%eax # Get CR0
+ifdef(`PAGING',`
andl $~0x80000000,%eax # Disable
movl %eax,%cr0 # paging
')
@@ -900,11 +900,13 @@ intx30: cmpl $SYS_EXEC,%eax # Exec system call?
movl $MEM_USR,%eax # User base address
addl 0xc(%esp,1),%eax # Change to user
leal 0x4(%eax),%esp # stack
+ifdef(`PAGING',`
movl %cr0,%eax # Turn
andl $~0x80000000,%eax # off
movl %eax,%cr0 # paging
xorl %eax,%eax # Flush
movl %eax,%cr3 # TLB
+')
popl %eax # Call
call *%eax # program
intx30.1: incb %ss:btx_hdr+0x7 # Flag reboot