2
0
mirror of https://github.com/xcat2/xNBA.git synced 2024-11-26 03:09:12 +00:00

[romprefix] Change from opt-in to opt-out when booting via INT19

On non-BBS systems, we have to hook INT 19 in order to be able to boot
from the gPXE ROM at all.  However, doing this unconditionally will
prevent the user from booting via any other devices.

Previously, the INT 19 entry point would prompt the user to press B in
order to boot from gPXE, which makes it impossible to perform an
unattended network boot.  We now prompt the user to press N to skip
booting from gPXE, which allows for unattended operation.

This should be a better match for most real-world scenarios.  Most
modern systems support BBS and so are unaffected by this change.  Very
old (non-BBS) systems tend not to have PXE ROMs by default anyway; if
the user has added a gPXE ROM then they probably do want to boot from
the network.  Newer non-BBS systems are essentially limited to IBM
servers, which will recapture the INT 19 vector anyway and implement
their own boot-ordering selection mechanism.
This commit is contained in:
Michael Brown 2008-12-04 16:46:16 +00:00
parent 708e6e0613
commit 4d7c650164

View File

@ -512,7 +512,7 @@ int19_entry:
call print_message
movw $int19_message_dots, %si
call print_message
movw $0xdf42, %bx
movw $0xdf4e, %bx
call wait_for_key
pushf
xorw %di, %di
@ -520,7 +520,7 @@ int19_entry:
movw $int19_message_done, %si
call print_message
popf
jnz 1f
jz 1f
/* Leave keypress in buffer and start gPXE. The keypress will
* cause the usual initial Ctrl-B prompt to be skipped.
*/
@ -539,7 +539,7 @@ orig_int19:
.size orig_int19, . - orig_int19
int19_message_prompt:
.asciz "Press B to boot from "
.asciz "Press N to skip booting from "
.size int19_message_prompt, . - int19_message_prompt
int19_message_dots:
.asciz "..."