705d68deec
With KEY and EMIT being switch words, most of the high layer can be defined before drivers. In addition to this change, I've compacted core blocks which were becoming quite sparse.
16 lines
548 B
Plaintext
16 lines
548 B
Plaintext
: INTERPRET
|
|
BEGIN
|
|
WORD DUP @ 0x0401 = ( EOT ) IF DROP EXIT THEN
|
|
FIND NOT IF (parse) ELSE EXECUTE THEN
|
|
C<? NOT IF SPC LIT" ok" (print) NL THEN
|
|
AGAIN ;
|
|
( Read from BOOT C< PTR and inc it. )
|
|
: (boot<)
|
|
( 2e == BOOT C< PTR )
|
|
0x2e ( BOOT C< PTR ) RAM+ @ DUP C@ ( a c )
|
|
SWAP 1 + 0x2e RAM+ ! ( c ) ;
|
|
( pre-comment for tight LOAD: The 0x08==I check after INTERPRET
|
|
is to check whether we're restoring to "_", the word above.
|
|
if yes, then we're in a nested load. Also, the 1 in 0x06 is
|
|
to avoid tons of "ok" displays. )
|