diff --git a/forth/dictionary.txt b/forth/dictionary.txt index a403d2c..5ff6340 100644 --- a/forth/dictionary.txt +++ b/forth/dictionary.txt @@ -145,6 +145,7 @@ NOT f -- f Push the logical opposite of f *** Strings *** LIT< x -- Read following word and write to HERE as a string literal. +LITS a -- Write word at addr a as a atring literal. SCMP a1 a2 -- n Compare strings a1 and a2. See CMP SLEN a -- n Push length of str at a. diff --git a/forth/forth.asm b/forth/forth.asm index fd86931..5ff98b0 100644 --- a/forth/forth.asm +++ b/forth/forth.asm @@ -988,16 +988,15 @@ LITN: ld (HERE), hl jp next - .db "LIT<" + .db "LITS" .fill 3 .dw LITN .db 1 ; IMMEDIATE -LITRD: +LITS: .dw compiledWord .dw NUMBER .dw LIT .dw WR - .dw WORD .dw .scpy .dw EXIT @@ -1010,6 +1009,16 @@ LITRD: jp next + .db "LIT<" + .fill 3 + .dw LITS + .db 1 ; IMMEDIATE +LITRD: + .dw compiledWord + .dw WORD + .dw LITS + .dw EXIT + .db "(find)" .fill 1 .dw LITRD