\ FORTH - Script generated by BootCreator 1.2 (25.01.2007) \ \ terminal control stuff \ : TTY.CSI d# 27 EMIT ASCII [ EMIT ; : TTY.HOME TTY.CSI ASCII H EMIT ; : TTY.CLR_EOS TTY.CSI ASCII J EMIT ; : TTY.HOME_CLR TTY.HOME TTY.CLR_EOS ; \ \ boot menu stuff \ : my-max-boot-num 9 ; : my-boot-default 1 ; : my-boot-delay d# 100 ; \ unit = 100 ms : my-print-menu ( -- ) TTY.HOME_CLR ." " cr ." Boot Menu" cr ." " cr ." 1: Local HD -> MorphOS 2.2" cr ." 2: Local HD -> MorphOS 1.4.5" cr ." 3: Local HD -> AmigaOS4.1" cr ." 4: Local HD -> MorphOS 1.4.4" cr ." 5: EMULATION CD32" cr ." 6: EMULATION MACOS X PAR MOLK" cr ." 7: EMULATION MACOS X PAR PEGXMAG" cr ." 8: LINUX UBUNTU" cr ." 9: Leave Boot Menu (-)" cr ." " cr ; : my-boot-case ( num -- ) ." " cr case 1 of " MOS_2.2 3D bootdevice=mos2.2 " endof 2 of " MOS_1.4.5 bootdevice=system1 " endof 3 of " amigaboot.of " endof 4 of " MOS_1.4.4 bootdevice=system2 ramdebug " endof \ 5 of " workbench bootdevice=SWAP ramdebug " endof 5 of " CD32 " endof 6 of " molk " endof 7 of " PEGXMAC root=/dev/hdc2 startmacosx alsa=emu10k1 video=radeonfb:1024x768-8@60 dma lang=fr hdb=ide-scsi " endof 8 of " gutsyalt_boot root=/dev/hdc6 " endof 9 of abort endof endcase $boot ; : my-input-num ( wait-period max-boot-num default-num -- boot-num ) 1 \ loop-inc = 1 3 pick 0 do 0d emit ." press 1-" ( wait-period max-boot-num default-num loop-inc ) 2 pick ascii 0 + emit dup 1 = if ." within " 3 pick i - d# 10 / .d ." seconds" then ." (default: " over ascii 0 + emit ." ) : " d# 100 ms key? if key ( wait-period max-boot-num default-num loop-inc key ) dup 0d = if \ return pressed drop leave then ascii 0 - ( wait-period max-boot-num default-num loop-inc num ) dup 1 5 pick ( wait-period max-boot-num default-num loop-inc num num 1 max-boot-num ) between if rot drop swap leave then ( wait-period max-boot-num default-num loop-inc num ) 2drop 0 \ loop-inc = 0 then dup +loop drop ( wait-period max-boot-num boot-num ) nip nip ; my-print-menu my-boot-delay my-max-boot-num my-boot-default my-input-num my-boot-case