| From | Sent On | Attachments |
|---|---|---|
| Eric Anderson | May 1, 2006 3:34 am | |
| Darren Pilgrim | May 1, 2006 4:44 am | |
| Giorgos Keramidas | May 1, 2006 5:30 am | |
| Alex Zbyslaw | May 1, 2006 9:31 am | |
| Giorgos Keramidas | May 1, 2006 10:15 am | |
| Luigi Rizzo | May 1, 2006 10:29 am | |
| Giorgos Keramidas | May 1, 2006 10:48 am | |
| Dag-Erling Smørgrav | May 1, 2006 10:54 am | |
| Alex Zbyslaw | May 1, 2006 12:16 pm | |
| Eric Anderson | May 1, 2006 12:22 pm | |
| Alex Zbyslaw | May 1, 2006 12:32 pm | |
| Giorgos Keramidas | May 1, 2006 12:52 pm | |
| Giorgos Keramidas | May 1, 2006 12:54 pm | |
| Eric Anderson | May 1, 2006 12:55 pm | |
| Daniel Lang | May 1, 2006 1:03 pm | |
| Giorgos Keramidas | May 1, 2006 1:06 pm | |
| John Baldwin | May 1, 2006 6:03 pm | |
| John Baldwin | May 1, 2006 6:03 pm | |
| John Baldwin | May 1, 2006 6:03 pm | |
| Giorgos Keramidas | May 2, 2006 5:31 am | |
| Alex Zbyslaw | May 2, 2006 11:36 am | |
| John Baldwin | May 2, 2006 12:38 pm | |
| Dag-Erling Smørgrav | May 2, 2006 1:39 pm | |
| Alex Zbyslaw | May 2, 2006 10:47 pm | |
| Eric Anderson | May 3, 2006 12:50 am |
| Subject: | Boot manager beep (revisited) | |
|---|---|---|
| From: | Giorgos Keramidas (kera...@freebsd.org) | |
| Date: | May 1, 2006 5:30:14 am | |
| List: | org.freebsd.freebsd-hackers | |
On 2006-04-30 22:34, Eric Anderson <ande...@centtech.com> wrote:
This thread: http://lists.freebsd.org/pipermail/freebsd-stable/2005-December/020572.html
mentions a patch to disable the boot manager beep, and also discusses having it optional. I don't have enough asm-fu to make that option happen, but I can tell you, that on laptops, that beep is really annoying, and amazingly loud. Is this just waiting for an able minded person to code up the options and submit?
I don't like the beep either, so I usually patch my systems manually to include something very similar:
# Index: boot0.S # =================================================================== # --- boot0.S (.../branches/ncvs/src/sys/boot/i386/boot0) (revision 45) # +++ boot0.S (.../trunk/src/sys/boot/i386/boot0) (revision 45) # @@ -201,9 +201,7 @@ # /* # * Start of input loop. Beep and take note of time # */ # -main.10: movb $ASCII_BEL,%al # Signal # - callw putchr # beep! # - xorb %ah,%ah # BIOS: Get # +main.10: xorb %ah,%ah # BIOS: Get # int $0x1a # system time # movw %dx,%di # Ticks when # addw _TICKS(%bp),%di # timeout
Since this is asm, and it runs very very early in the boot process, we don't have the luxury of making this tunable in `/boot/loader.conf', but there's nothing wrong with making it tunable through an option in our modern `/etc/src.conf' option system. We could use something like the following:
WITHOUT_BOOTEASY_BEEP= yes
and then we can add the necessary Makefile-foo in `/usr/src/sys/boot' to turn this to a preprocessor #define.
Does something like the following sound reasonable (I haven't had a chance to run this through a build-test, so use with care). The default behavior should be to *include* a beep, but it can be turned off by setting WITHOUT_BOOTEASY_BEEP in `/etc/src.conf'.
# Index: boot0.S
# ===================================================================
# --- boot0.S (.../branches/ncvs/src/sys/boot/i386/boot0) (revision 47)
# +++ boot0.S (.../trunk/src/sys/boot/i386/boot0) (revision 47)
# @@ -201,8 +201,11 @@
# /*
# * Start of input loop. Beep and take note of time
# */
# -main.10: movb $ASCII_BEL,%al # Signal
# +main.10:
# +#ifdef BOOTEASY_BEEP
# + movb $ASCII_BEL,%al # Signal
# callw putchr # beep!
# +#endif
# xorb %ah,%ah # BIOS: Get
# int $0x1a # system time
# movw %dx,%di # Ticks when
# Index: Makefile
# ===================================================================
# --- Makefile (.../branches/ncvs/src/sys/boot/i386/boot0) (revision 47)
# +++ Makefile (.../trunk/src/sys/boot/i386/boot0) (revision 47)
# @@ -54,6 +54,10 @@
# -DTICKS=${BOOT_BOOT0_TICKS} \
# -DCOMSPEED=${BOOT_BOOT0_COMCONSOLE_SPEED}
#
# +.if !defined(WITHOUT_BOOTEASY_BEEP) || (${WITHOUT_BOOTEASY_BEEP} != "no" &&
${WITHOUT_BOOTEASY_BEEP} != "NO")
# +CFLAGS+=-DBOOTEASY_BEEP
# +.endif
# +
# LDFLAGS=-N -e start -Ttext ${BOOT_BOOT0_ORG} -Wl,-S,--oformat,binary
#
# .include <bsd.prog.mk>





