jumpforth/startup.4th

34 lines
730 B
Forth

: CHAR WORD DROP C@ ;
: TAB 9 EMIT ;
: LF 10 EMIT ;
: SPACE 32 EMIT ;
: BANNER "JumpForth version " .S VERSION . ", by Jesse McDonald" .S LF ;
: [ FALSE STATE ! ; IMMEDIATE
: ] TRUE STATE ! ; IMMEDIATE
: POSTPONE WORD FINDERR , ; IMMEDIATE
: COMPILE, , ;
: ['] [ ' LIT , ' LIT , ] , ' , ; IMMEDIATE
: LITERAL ['] LIT , , ; IMMEDIATE
: IF ['] 0BRANCH , HERE 0 , ; IMMEDIATE
: THEN HERE OVER - SWAP ! ; IMMEDIATE
: ELSE POSTPONE THEN ['] BRANCH , HERE 0 , ; IMMEDIATE
: BEGIN HERE ; IMMEDIATE
: AGAIN ['] BRANCH , HERE - , ; IMMEDIATE
: \ BEGIN KEY 10 = IF EXIT THEN AGAIN ; IMMEDIATE
: ( BEGIN KEY [ CHAR ) ] LITERAL = IF EXIT THEN AGAIN ; IMMEDIATE
CREATE VAR 123 , DOES> @ ;
: VAR! [ ' VAR >BODY ] LITERAL ! ;
BANNER