| |
|
| decimal |
decimal |
| |
|
| cell 2 = [IF] 32 [ELSE] 256 [THEN] KB makekernel ( size ) |
has? kernel-size makekernel ( size ) |
| \ create image-header |
\ create image-header |
| has? header [IF] |
has? header [IF] |
| 0 A, \ base address |
0 A, \ base address |
| 0 , \ checksum |
0 , \ checksum |
| 0 , \ image size (without tags) |
0 , \ image size (without tags) |
| , \ dict size |
>address , \ dict size |
| 16 KB , \ data stack size |
has? stack-size , \ data stack size |
| 15 KB 512 + , \ FP stack size |
has? fstack-size , \ FP stack size |
| 15 KB , \ return stack size |
has? rstack-size , \ return stack size |
| 14 KB 512 + , \ locals stack size |
has? lstack-size , \ locals stack size |
| 0 A, \ code entry point |
0 A, \ code entry point |
| 0 A, \ throw entry point |
0 A, \ throw entry point |
| 16 KB , \ unused (possibly tib stack size) |
has? stack-size , \ unused (possibly tib stack size) |
| 0 , \ unused |
0 , \ unused |
| 0 , \ data stack base |
0 , \ data stack base |
| 0 , \ fp stack base |
0 , \ fp stack base |
| [ELSE] |
[ELSE] |
| include cond-old.fs \ load IF and co w/o locals |
include cond-old.fs \ load IF and co w/o locals |
| [THEN] |
[THEN] |
| include toolsext.fs |
|
| \ include arch/misc/tt.fs |
\ include arch/misc/tt.fs |
| \ include arch/misc/sokoban.fs |
\ include arch/misc/sokoban.fs |
| [THEN] |
[THEN] |
| |
include toolsext.fs |
| include tools.fs \ load tools ( .s dump ) |
include tools.fs \ load tools ( .s dump ) |
| include doers.fs |
|
| include getdoers.fs |
include getdoers.fs |
| include special.fs \ special must be last! |
include special.fs \ special must be last! |
| |
|
| decimal |
decimal |
| |
|
| has? header [IF] |
has? header [IF] |
| here 2 cells ! \ image size |
\ UNLOCK |
| ' boot >body 8 cells ! \ Entry point |
here >address 2 cells ! \ image size |
| |
' boot >body 8 cells A! \ Entry point |
| |
\ LOCK |
| [ELSE] |
[ELSE] |
| >boot |
>boot |
| [THEN] |
[THEN] |