Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / openbios / forth / system / main.fs
1 \ tag: misc useful functions
2
3 \ Open Firmware Startup
4
5 \ Copyright (C) 2003 Samuel Rydh
6
7 \ See the file "COPYING" for further information about
8 \ the copyright and warranty status of this work.
9
10
11 variable PREPOST-list
12 variable POST-list
13 variable SYSTEM-list
14 variable DIAG-list
15
16 : PREPOST-initializer ( xt -- )
17   PREPOST-list list-add ,
18 ;
19
20 : POST-initializer ( xt -- )
21   POST-list list-add ,
22 ;
23
24 : SYSTEM-initializer ( xt -- )
25   SYSTEM-list list-add ,
26 ;
27
28 : DIAG-initializer ( xt -- )
29   DIAG-list list-add ,
30 ;
31
32
33 \ OpenFirmware entrypoint
34 : initialize-of ( startmem endmem -- )
35   initialize-forth
36
37   PREPOST-list begin list-get while @ execute repeat
38   POST-list begin list-get while @ execute repeat
39   SYSTEM-list begin list-get while @ execute repeat
40
41   \ evaluate nvramrc script
42   use-nvramrc? if
43     nvramrc evaluate
44   then
45
46   \ probe-all etc.
47   suppress-banner? 0= if
48     probe-all
49     install-console
50     banner
51   then
52
53   DIAG-list begin list-get while @ execute repeat
54
55   auto-boot? if
56     boot-command evaluate
57   then
58
59   outer-interpreter
60 ;