/boot/beastie.4th
Code:
: beastie-start
s" beastie_disable" getenv
dup -1 <> if
s" YES" compare-insensitive 0= if
exit
then
else
drop
then
beastie-menu
s" autoboot_delay" getenv
dup -1 = if
drop
10
else
0 0 2swap >number drop drop drop
then
begin
dup tkey
0 25 at-xy
dup 32 = if nip 0 swap then
dup -1 = if 0 boot then
dup 13 = if 0 boot then
dup bootkey @ = if 0 boot then
dup bootacpikey @ = if
acpienabled? if
s" acpi_load" unsetenv
s" 1" s" hint.acpi.0.disabled" setenv
s" 1" s" loader.acpi_disabled_by_user" setenv
else
s" YES" s" acpi_load" setenv
s" 0" s" hint.acpi.0.disabled" setenv
then
0 boot
then
dup bootsafekey @ = if
s" arch-i386" environment? if
drop
s" acpi_load" unsetenv
s" 1" s" hint.acpi.0.disabled" setenv
s" 1" s" loader.acpi_disabled_by_user" setenv
s" 1" s" hint.apic.0.disabled" setenv
then
s" 0" s" hw.ata.ata_dma" setenv
s" 0" s" hw.ata.atapi_dma" setenv
s" 0" s" hw.ata.wc" setenv
s" 0" s" hw.eisa_slots" setenv
s" 1" s" hint.kbdmux.0.disabled" setenv
0 boot
then
dup bootverbosekey @ = if
s" YES" s" boot_verbose" setenv
0 boot
then
dup bootsinglekey @ = if
s" YES" s" boot_single" setenv
0 boot
then
dup escapekey @ = if
2drop
s" NO" s" autoboot_delay" setenv
exit
then
rebootkey @ = if 0 reboot then
again
;
previous
und es wäre gelogen, wenn ich behaupte, damit sei mir alles klar.
Bevor ich wusste, daß es eine entsprechende Option in /boot/loader.conf möglich macht, hatte ich hier meine Delay-Zeit und das gewünschte Bild gesetzt, also, ich hatte da schon mal rein gesehen.
die nun für mich besonders interessante Option mit dem sicheren Modus ist wohl dies:
Code:
dup bootsafekey @ = if
s" arch-i386" environment? if
drop
s" acpi_load" unsetenv
s" 1" s" hint.acpi.0.disabled" setenv
s" 1" s" loader.acpi_disabled_by_user" setenv
s" 1" s" hint.apic.0.disabled" setenv
then
s" 0" s" hw.ata.ata_dma" setenv
s" 0" s" hw.ata.atapi_dma" setenv
s" 0" s" hw.ata.wc" setenv
s" 0" s" hw.eisa_slots" setenv
s" 1" s" hint.kbdmux.0.disabled" setenv
0 boot
und wenn ich das verstehe, dann macht der da einige Optionen zu ata und atapi DMA und zu ata.wc, was mir noch nichts sagt und auch zu eisa-slots. Bei diesen Angaben steht jeweils eine "0", weshalb ich denke, daß die ausgeschaltet werden.
Interessant ist dann der nächste Eintrag bei mir: der Bekannte bekam das Problem, seit er eine neue Maus verwendet hat (leider ist die Zuordnung nicht ganz so eindeutig, wie ich das nun schreibe, aber es scheint mir doch ein "hint") und da wird etwas disabled, also etwas nicht eingeschaltet, was normalerweise eingeschaltet ist und das etwas mit kbdmux zu tun hat und da steckt kbd und mux drin.
Ich denke, das hört sich für mich schon mal gar nicht soo schlecht an und für die anderen Optionen stehen hier in ähnlicher Weise ja auch die jeweiligen Parameter geschrieben. Das hilft jedenfalls weiter.
Ich hatte mir vorgestellt, daß über init diverse rc-Stadien aufgerufen werden und darüber dann die Optionen bestimmt sind. Hier werden offenbar "nur" sysctl-Variablen gesetzt.
Mal sehen, zunächst jedenfalls Dank, das hilft schon was...