source: live-build/trunk/fuentes/templates/yaboot/pegasos @ 900

Last change on this file since 900 was 900, checked in by kbut, 4 years ago

add original source

File size: 2.3 KB
Line 
1\ FORTH is identifed by a forth comment at first line
2\
3\ terminal control stuff
4\
5: TTY.CSI d# 27 EMIT ASCII [ EMIT ;
6: TTY.HOME    TTY.CSI ASCII H EMIT ;
7: TTY.CLR_EOS TTY.CSI ASCII J EMIT ;
8: TTY.HOME_CLR TTY.HOME TTY.CLR_EOS ;
9\
10\ boot menu stuff
11\
12: my-max-boot-num 4 ;
13: my-boot-default 1 ;
14: my-boot-delay d# 300 ; \ unit = 100 ms
15: my-print-menu ( -- )
16  TTY.HOME_CLR
17  ."  "                                                         cr
18  ." Welcome to Debian GNU/Linux!"                              cr
19  ." "                                                          cr
20  ." This is a Debian Live CDROM,"                              cr
21  ." built on LB_DATE."                                         cr
22  ." "                                                          cr
23  ." The default option is 'live'."                             cr
24  ." "                                                          cr
25  ." ************************************"                      cr
26  ." If in doubt, just choose (1) 'live'"                       cr
27  ." ************************************"                      cr
28  ."  "                                                         cr
29  ." 1: install"                                                cr
30  ." 2: install"                                                cr
31  ." 3: expert"                                                 cr
32  ." 4: rescue"                                                 cr
33  ." 5: return to OF prompt"                                    cr
34  ."  "                                                         cr
35;
36: my-boot-case ( num -- )
37  ."  " cr
38  case
39    1 of " cd live/vmlinuz-chrp.initrd --" endof
40    2 of " cd install/powerpc/vmlinuz-chrp.initrd --" endof
41    3 of " cd install/powerpc/vmlinuz-chrp.initrd DEBCONF_PRIORITY=low --" endof
42    4 of " cd install/powerpc/vmlinuz-chrp.initrd rescue/enable=true --" endof
43    5 of " none" endof
44  endcase
45  $boot
46;
47: my-input-num ( wait-period max-boot-num default-num -- boot-num )
48  1 \ loop-inc = 1
49  3 pick 0 do
50    0d emit
51    ." press 1-"
52    ( wait-period max-boot-num default-num loop-inc )
53    2 pick ascii 0 + emit
54    dup 1 = if
55      ."  within "
56      3 pick i - d# 10 / .d
57      ."  seconds"
58    then
59    ."  (default: "
60    over ascii 0 + emit
61    ." ) :                   "
62    d# 100 ms
63    key? if
64       key
65       ( wait-period max-boot-num default-num loop-inc key )
66       dup 0d = if \ return pressed
67         drop leave
68       then
69
70       ascii 0 -
71       ( wait-period max-boot-num default-num loop-inc num )
72       dup 1 5 pick
73       ( wait-period max-boot-num default-num loop-inc num num 1 max-boot-num )
74       between if
75         rot drop swap leave
76       then
77
78       ( wait-period max-boot-num default-num loop-inc num )
79       2drop 0  \ loop-inc = 0
80    then
81  dup +loop
82  drop
83  ( wait-period max-boot-num boot-num )
84  nip nip
85;
86
87
88my-print-menu
89my-boot-delay my-max-boot-num my-boot-default my-input-num
90my-boot-case
Note: See TracBrowser for help on using the repository browser.