Added pegasos boot script for etch too
This commit is contained in:
parent
a974e4d28b
commit
a9d79bffb7
|
@ -0,0 +1,87 @@
|
|||
\ FORTH is identifed by a forth comment at first line
|
||||
\
|
||||
\ 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 3 ;
|
||||
: my-boot-default 1 ;
|
||||
: my-boot-delay d# 300 ; \ unit = 100 ms
|
||||
: my-print-menu ( -- )
|
||||
TTY.HOME_CLR
|
||||
." " cr
|
||||
." Welcome to Debian GNU/Linux ${DEBIAN_VERSION}!" cr
|
||||
." " cr
|
||||
." This is a Debian installation ${MEDIA_TYPE}," cr
|
||||
." built on ${BUILD_DATE}." cr
|
||||
." " cr
|
||||
." The default option is (1) 'install'. For maximum" cr
|
||||
." control, you can use the (2) 'expert' option." cr
|
||||
." " cr
|
||||
." ************************************" cr
|
||||
." If in doubt, just choose (1) 'install'" cr
|
||||
." ************************************" cr
|
||||
." " cr
|
||||
." 1: install" cr
|
||||
." 2: expert" cr
|
||||
." 3: return to OF prompt" cr
|
||||
." " cr
|
||||
;
|
||||
: my-boot-case ( num -- )
|
||||
." " cr
|
||||
case
|
||||
1 of " cd install/powerpc/vmlinuz-chrp.initrd devfs=mount,dall init=/linuxrc --" endof
|
||||
2 of " cd install/powerpc/vmlinuz-chrp.initrd DEBCONF_PRIORITY=low devfs=mount,dall init=/linuxrc --" endof
|
||||
3 of " none" 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
|
Loading…
Reference in New Issue