1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-12-25 19:08:05 +11:00
collapseos/blk/301
Virgil Dupras 838548843e boot: apply BIN( to stray stable ABI references
With cross compiling and IMMEDIATE words, things get icky with stable
ABI references. For the same reason that EXIT, (br) and (br?) need to
stay at stable offsets, these word references will not have BIN(
properly applied at Inner core xcomp.

The solution for now is to adjust during EXECUTE, which is ugly and
inefficient, but I don't see a better solution right now.
2020-04-28 08:52:47 -04:00

16 lines
407 B
Plaintext

L3 BSET PC ORG @ 0x34 + ! ( execute )
EXDEHL, ( HL now points to wordref )
( We don't apply BIN( reliably on stable ABI stuff, we
might need to adjust addr. Ugly, but well... )
BIN( @ [IF]
A XORr, H ORr, IFZ, H BIN( @ 256 / LDrn,
[THEN]
E (HL) LDrr,
D BIN( @ 256 / LDrn,
EXDEHL,
( HL points to code pointer )
DE INCss,
( DE points to PFA )
JP(HL),