2020-07-05 07:09:11 -04:00
|
|
|
( Now we have "as late as possible" stuff. See B70 and B270. )
|
2020-05-24 10:01:46 -04:00
|
|
|
: _bchk DUP 0x7f + 0xff > IF LIT< br-ovfl (print) ABORT THEN ;
|
2020-07-05 08:03:15 -04:00
|
|
|
: DO 0x33 ( 2>R ) , H@ ; IMMEDIATE
|
2020-07-05 07:09:11 -04:00
|
|
|
: LOOP 0x80 ( loop ) , H@ - _bchk , ; IMMEDIATE
|
2020-05-15 22:44:49 -04:00
|
|
|
( LEAVE is implemented in low xcomp )
|
2020-07-05 07:09:11 -04:00
|
|
|
: LITN 0xbf ( n ) , , ;
|
2020-05-15 22:44:49 -04:00
|
|
|
( gets its name at the very end. can't comment afterwards )
|
|
|
|
: _ BEGIN LIT< ) WORD S= UNTIL ; IMMEDIATE
|
|
|
|
: _ ( : will get its name almost at the very end )
|
2020-06-17 21:41:01 -04:00
|
|
|
(entry) 1 ( compiled ) C,
|
2020-05-15 22:44:49 -04:00
|
|
|
BEGIN
|
|
|
|
WORD FIND
|
|
|
|
IF ( is word ) DUP IMMED? IF EXECUTE ELSE , THEN
|
|
|
|
ELSE ( maybe number ) (parse) LITN THEN
|
|
|
|
AGAIN ;
|