aboutsummaryrefslogtreecommitdiff
path: root/sys/boot
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>2002-10-07 12:15:11 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>2002-10-07 12:15:11 +0000
commite74334caae7fd92794efd928a8cb748ca912b029 (patch)
treeb3dffbb0c1dc81ac15ac5db050392bd8c3eaaef1 /sys/boot
parentd3647c02216d431ff2ec07bb577db3a8f55595d5 (diff)
downloadsrc-e74334caae7fd92794efd928a8cb748ca912b029.tar.gz
src-e74334caae7fd92794efd928a8cb748ca912b029.zip
Move MEM_USR a page upwards to make space for larger UFS1 boot2.
Load 4 sectors more than we used to. This is harmless overhead for the UFS1_ONLY case, but sufficient for boot2(UFS1+2). Sponsored by: DARPA & NAI Labs
Notes
Notes: svn path=/head/; revision=104618
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/i386/boot2/boot1.S8
-rw-r--r--sys/boot/i386/boot2/boot1.s8
-rw-r--r--sys/boot/i386/btx/btx/btx.S2
-rw-r--r--sys/boot/i386/btx/btx/btx.s2
4 files changed, 10 insertions, 10 deletions
diff --git a/sys/boot/i386/boot2/boot1.S b/sys/boot/i386/boot2/boot1.S
index 25f05d421cce..50a6d01737d3 100644
--- a/sys/boot/i386/boot2/boot1.S
+++ b/sys/boot/i386/boot2/boot1.S
@@ -22,7 +22,7 @@
.set MEM_BUF,0x8c00 # Load area
.set MEM_BTX,0x9000 # BTX start
.set MEM_JMP,0x9010 # BTX entry point
- .set MEM_USR,0xa000 # Client start
+ .set MEM_USR,0xb000 # Client start
.set BDA_BOOT,0x472 # Boot howto flag
# Partition Constants
@@ -177,17 +177,17 @@ main.4: xor %dx,%dx # Partition:drive
# it also runs from. The boot2.bin binary starts right after the end of
# BTX, so we have to figure out where the start of it is and then move the
# binary to 0xb000. Normally, BTX clients start at MEM_USR, or 0xa000, but
-# when we use btxld create boot2, we use an entry point of 0x1000. That
+# when we use btxld to create boot2, we use an entry point of 0x1000. That
# entry point is relative to MEM_USR; thus boot2.bin starts at 0xb000.
#
main.5: mov %dx,MEM_ARG # Save args
- movb $0x10,%dh # Sector count
+ movb $0x14,%dh # Sector count
callw nread # Read disk
mov $MEM_BTX,%bx # BTX
mov 0xa(%bx),%si # Get BTX length and set
add %bx,%si # %si to start of boot2.bin
mov $MEM_USR+SIZ_PAG,%di # Client page 1
- mov $MEM_BTX+0xe*SIZ_SEC,%cx # Byte
+ mov $MEM_BTX+0x12*SIZ_SEC,%cx # Byte
sub %si,%cx # count
rep # Relocate
movsb # client
diff --git a/sys/boot/i386/boot2/boot1.s b/sys/boot/i386/boot2/boot1.s
index 25f05d421cce..50a6d01737d3 100644
--- a/sys/boot/i386/boot2/boot1.s
+++ b/sys/boot/i386/boot2/boot1.s
@@ -22,7 +22,7 @@
.set MEM_BUF,0x8c00 # Load area
.set MEM_BTX,0x9000 # BTX start
.set MEM_JMP,0x9010 # BTX entry point
- .set MEM_USR,0xa000 # Client start
+ .set MEM_USR,0xb000 # Client start
.set BDA_BOOT,0x472 # Boot howto flag
# Partition Constants
@@ -177,17 +177,17 @@ main.4: xor %dx,%dx # Partition:drive
# it also runs from. The boot2.bin binary starts right after the end of
# BTX, so we have to figure out where the start of it is and then move the
# binary to 0xb000. Normally, BTX clients start at MEM_USR, or 0xa000, but
-# when we use btxld create boot2, we use an entry point of 0x1000. That
+# when we use btxld to create boot2, we use an entry point of 0x1000. That
# entry point is relative to MEM_USR; thus boot2.bin starts at 0xb000.
#
main.5: mov %dx,MEM_ARG # Save args
- movb $0x10,%dh # Sector count
+ movb $0x14,%dh # Sector count
callw nread # Read disk
mov $MEM_BTX,%bx # BTX
mov 0xa(%bx),%si # Get BTX length and set
add %bx,%si # %si to start of boot2.bin
mov $MEM_USR+SIZ_PAG,%di # Client page 1
- mov $MEM_BTX+0xe*SIZ_SEC,%cx # Byte
+ mov $MEM_BTX+0x12*SIZ_SEC,%cx # Byte
sub %si,%cx # count
rep # Relocate
movsb # client
diff --git a/sys/boot/i386/btx/btx/btx.S b/sys/boot/i386/btx/btx/btx.S
index e5c8ec494e3b..cdcf4487f6cc 100644
--- a/sys/boot/i386/btx/btx/btx.S
+++ b/sys/boot/i386/btx/btx/btx.S
@@ -28,7 +28,7 @@
.set MEM_DIR,0x4000 # Page directory
.set MEM_TBL,0x5000 # Page tables
.set MEM_ORG,0x9000 # BTX code
- .set MEM_USR,0xa000 # Start of user memory
+ .set MEM_USR,0xb000 # Start of user memory
#
# Paging control.
#
diff --git a/sys/boot/i386/btx/btx/btx.s b/sys/boot/i386/btx/btx/btx.s
index e5c8ec494e3b..cdcf4487f6cc 100644
--- a/sys/boot/i386/btx/btx/btx.s
+++ b/sys/boot/i386/btx/btx/btx.s
@@ -28,7 +28,7 @@
.set MEM_DIR,0x4000 # Page directory
.set MEM_TBL,0x5000 # Page tables
.set MEM_ORG,0x9000 # BTX code
- .set MEM_USR,0xa000 # Start of user memory
+ .set MEM_USR,0xb000 # Start of user memory
#
# Paging control.
#