From d22e6159d2586a799160c5ceb5424a4ec3d5a422 Mon Sep 17 00:00:00 2001 From: kitty Date: Fri, 30 Jan 2026 21:31:42 +1100 Subject: put a redundant null byte after the string this will cause issues if the word has a null byte in the name. so don't do that. obviously --- jefs.s | 1 + readme.md | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/jefs.s b/jefs.s index c0b1b82..3234b44 100644 --- a/jefs.s +++ b/jefs.s @@ -21,6 +21,7 @@ %define mac_latest lfa_%2 ffa_%2: db %3 ; FFA nfa_%2: dw slen ; NFA + db 0 db %1 %endmacro diff --git a/readme.md b/readme.md index 97ed56a..51a8f1c 100644 --- a/readme.md +++ b/readme.md @@ -18,11 +18,17 @@ the dictionary follows a fairly standard format. | flag | 1 byte | FFA (flag field address) | | string length | 2 bytes | NFA (name field address) | | string | variable length | still NFA | +| null byte | 1 byte | | code | variable length | CFA (code field address) | probably, some bitmask antics could be done to store the string length and flags together. but alternatively: no. +the stored string is a counted string but also has a +null byte at the end. bit of a waste of space but i can use +x86's `repz` for it. maybe there is a counted string version +though, i don't know + ## forth registers there are a set of 'virtual registers' (see moving forth part 1) -- cgit v1.2.3