mirror of
https://github.com/hsoft/collapseos.git
synced 2024-12-28 23:49:15 +11:00
2d17b4e8ec
I'm not sure why I chose null-terminated initially. Probably because the z80asm version had null-terminated strings. Length-prefixes strings are the traditional form of strings in Forth and it's a bit easier to work with them with traditional forth words when they're under this form.
16 lines
500 B
Plaintext
16 lines
500 B
Plaintext
( Name of BOOT word )
|
|
L1 BSET 4 A, 'B' A, 'O' A, 'O' A, 'T' A,
|
|
|
|
PC ORG @ 1 + ! ( main )
|
|
( STACK OVERFLOW PROTECTION: See B76 )
|
|
SP PS_ADDR LDddnn,
|
|
IX RS_ADDR LDddnn,
|
|
( HERE begins at RAMEND )
|
|
HL RAMSTART 0x80 + LDddnn,
|
|
RAMSTART 0x04 + LD(nn)HL, ( RAM+04 == HERE )
|
|
( LATEST is a label to the latest entry of the dict. It is
|
|
written at offset 0x08 by the process or person building
|
|
Forth. )
|
|
BIN( @ 0x08 + LDHL(nn),
|
|
RAMSTART 0x02 + LD(nn)HL, ( RAM+02 == CURRENT cont. )
|