1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-12-29 00:48:05 +11:00
collapseos/blk/397
Virgil Dupras 650481f849 z80/8086: extract 2>R code from stable ABI zone
Only its jump at 0x33 remains.

I've also fixed a strange offset oddity in 8086's (n) placement.
It was off by 2, but strangely, it ran properly. Anyway, now it's
fixed.
2020-07-05 08:03:15 -04:00

16 lines
600 B
Plaintext

( Now we have "as late as possible" stuff. See B70 and B270. )
: _bchk DUP 0x7f + 0xff > IF LIT< br-ovfl (print) ABORT THEN ;
: DO 0x33 ( 2>R ) , H@ ; IMMEDIATE
: LOOP 0x80 ( loop ) , H@ - _bchk , ; IMMEDIATE
( LEAVE is implemented in low xcomp )
: LITN 0xbf ( n ) , , ;
( 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 )
(entry) 1 ( compiled ) C,
BEGIN
WORD FIND
IF ( is word ) DUP IMMED? IF EXECUTE ELSE , THEN
ELSE ( maybe number ) (parse) LITN THEN
AGAIN ;