summaryrefslogtreecommitdiff
path: root/sanctuary.s
diff options
context:
space:
mode:
authorkitty <nepeta@canaglie.net>2026-04-17 01:39:34 +1000
committerkitty <nepeta@canaglie.net>2026-04-17 01:39:34 +1000
commit85f90aad37a469a65efd44deaafd48123c3fd59a (patch)
treed8be85fc84899066df349238bc09539e48d6474a /sanctuary.s
parentadfb477ea53d3e6ca7b07a77d514f56dc6a2e996 (diff)
loouping and start of wordlist
Diffstat (limited to 'sanctuary.s')
-rw-r--r--sanctuary.s28
1 files changed, 14 insertions, 14 deletions
diff --git a/sanctuary.s b/sanctuary.s
index c8f16d8..4108078 100644
--- a/sanctuary.s
+++ b/sanctuary.s
@@ -55,17 +55,17 @@
%macro defvar 4
%2: dq %4
defdict %1, %2, %3
- pspush qword %2
+ do_%2: pspush qword %2
ret
%endmacro
%macro defdefervar 4
%2: dq %4
defdict %1, %2, %3
- mov r11, dodefer
+ do_%2: mov r11, dodefer
call r11
- dq do_%2
- do_%2:
+ dq in_%2
+ in_%2:
pspush qword %2
ret
%endmacro
@@ -491,7 +491,7 @@ defcode "]", rbrac, immediate_mask
mov qword [state], COMPILING
ret
-defcode "(header)", brac_header, 0
+defdefer "(header)", brac_header, 0
pspop r9
pspop r10
mov r11, qword [latest]
@@ -517,7 +517,7 @@ defcode "(header)", brac_header, 0
ret
; fix to follow ans: yielding colon-sys
-defcode ":", colon, 0
+defdefer ":", colon, 0
call parse_name
; todo check zero
call brac_header
@@ -529,7 +529,7 @@ defcode ":", colon, 0
; fix to follow ans: reading from colon-sys
; this will not work with :noname or i think does>.
-defdefer ";", semicolon, immediate_mask
+defcode ";", semicolon, immediate_mask
mov r12, [latest]
add r12, 8
mov r13b, [r12]
@@ -543,7 +543,7 @@ defdefer ";", semicolon, immediate_mask
mov qword [state], INTERPRET
ret
-defcode "smudge", smudge, 0
+defdefer "smudge", smudge, 0
mov r12, [latest]
add r12, 8
mov r13b, [r12]
@@ -551,7 +551,7 @@ defcode "smudge", smudge, 0
mov byte [r12], r13b
ret
-defcode "immediate", immediate, 0
+defdefer "immediate", immediate, 0
mov r12, [latest]
add r12, 8
mov r13b, [r12]
@@ -560,7 +560,7 @@ defcode "immediate", immediate, 0
mov byte [r12], r13b
ret
-defcode "compile-only", compile_only, 0
+defdefer "compile-only", compile_only, 0
mov r12, [latest]
add r12, 8
mov r13b, [r12]
@@ -1240,11 +1240,11 @@ defvar "rp0", rp0, 0, 0
defvar "dp", dp, 0, 0
defvar "dp0", dp0, 0, 0
defvar "dp$", dp$, 0, 0
-defdefervar "tib", tib, 0, initfile
-defdefervar "#tib", n_tib, 0, initlen
-defdefervar ">in", to_in, 0, 0
+defvar "tib", tib, 0, initfile
+defvar "#tib", n_tib, 0, initlen
+defvar ">in", to_in, 0, 0
defvar "handler", handler, 0, do_0handler
-defvar "latest", latest, 0, lfa_latest
+defdefervar "latest", latest, 0, lfa_latest
initfile: incbin "sanctuary.fs"
initlen equ $ - initfile