summaryrefslogtreecommitdiffstats
path: root/sys/boot
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2006-05-03 13:43:46 +0000
committerjhb <jhb@FreeBSD.org>2006-05-03 13:43:46 +0000
commita59756eac2fa7a25a9f1ce64a6fe8be92fede138 (patch)
tree2f8e58efb47f3acc59073310b48d2680a72b0cfb /sys/boot
parent7ef1f80fdd3ab40ec0c9ba6a13e39b0552eea059 (diff)
downloadFreeBSD-src-a59756eac2fa7a25a9f1ce64a6fe8be92fede138.zip
FreeBSD-src-a59756eac2fa7a25a9f1ce64a6fe8be92fede138.tar.gz
Restore the pre-5.x behavior of only beeping if the user makes a bad
selection and not always beeping on startup. The two bytes for the extra 'jmp' instruction were obtained by removing recognition of BSD/OS partitions. Requested by: many Tested by: subset of many Head nod: imp, keramida MFC after: 2 weeks
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/i386/boot0/boot0.S13
1 files changed, 8 insertions, 5 deletions
diff --git a/sys/boot/i386/boot0/boot0.S b/sys/boot/i386/boot0/boot0.S
index 4927d21..0f19187 100644
--- a/sys/boot/i386/boot0/boot0.S
+++ b/sys/boot/i386/boot0/boot0.S
@@ -29,7 +29,7 @@
.set PRT_OFF,0x1be # Partition table
.set TBL0SZ,0x3 # Table 0 size
- .set TBL1SZ,0xb # Table 1 size
+ .set TBL1SZ,0xa # Table 1 size
.set MAGIC,0xaa55 # Magic: bootable
.set B0MAGIC,0xbb66 # Identification
@@ -198,12 +198,16 @@ main.7: movw $prompt,%si # Display
movb _OPT(%bp),%dl # Display
decw %si # default
callw putkey # key
+ jmp main.7_1 # Skip beep
/*
- * Start of input loop. Beep and take note of time
+ * Users's last try was bad, beep in displeasure.
*/
main.10: movb $ASCII_BEL,%al # Signal
callw putchr # beep!
- xorb %ah,%ah # BIOS: Get
+/*
+ * Start of input loop. Take note of time
+ */
+main.7_1: xorb %ah,%ah # BIOS: Get
int $0x1a # system time
movw %dx,%di # Ticks when
addw _TICKS(%bp),%di # timeout
@@ -410,7 +414,7 @@ tables:
* These values indicate bootable types we know the names of.
*/
.byte 0x1, 0x6, 0x7, 0xb, 0xc, 0xe, 0x83
- .byte 0x9f, 0xa5, 0xa6, 0xa9
+ .byte 0xa5, 0xa6, 0xa9
/*
* These are offsets that match the known names above and point to the strings
* that will be printed. os_misc will be used if the search of the above table
@@ -423,7 +427,6 @@ tables:
.byte os_dos-. # Windows
.byte os_dos-. # Windows
.byte os_linux-. # Linux
- .byte os_bsd-. # BSD/OS
.byte os_freebsd-. # FreeBSD
.byte os_bsd-. # OpenBSD
.byte os_bsd-. # NetBSD
OpenPOWER on IntegriCloud