summaryrefslogtreecommitdiff
path: root/jefs.s
diff options
context:
space:
mode:
authorkitty <nepeta@canaglie.net>2026-02-27 17:03:30 +1100
committerkitty <nepeta@canaglie.net>2026-02-27 17:03:30 +1100
commitcb441fd2ddedbb6762f5bd2a2fca2f6fb7d60931 (patch)
tree45098b35a9ed29291f19de1941ae5259fa6f39ea /jefs.s
parenta6601fef71e3c9711e21af680ef0b6ef26deb473 (diff)
VALUE, and make handler a value
Diffstat (limited to 'jefs.s')
-rw-r--r--jefs.s18
1 files changed, 17 insertions, 1 deletions
diff --git a/jefs.s b/jefs.s
index f7ad9ac..39ba06e 100644
--- a/jefs.s
+++ b/jefs.s
@@ -53,6 +53,21 @@
ret
%endmacro
+; compiles a LIT and puts a label at the value
+; It Should Be Fine
+ ; lea r14, [r14-8] 4D 8D 76 F8
+ ; mov r11, 0xfefefefefefeffff 49 BB [LIT]
+ ; mov qword [r14], r11 4D 89 1E
+%macro defvalue 4 ; ... default-value
+ defdict %1, %2, %3
+ lea r14, [r14-8]
+ db 0x49
+ db 0xbb
+ %2: dq %4
+ mov qword [r14], r11
+ ret
+%endmacro
+
%assign smudge_mask 0x1
%assign immediate_mask 0x2
@@ -1164,7 +1179,8 @@ defvar "rs0", rs0, 0, 0
defvar "hend", hend, 0, umem_e ; ending of user memory area
defvar "base", base, 0, 10
defvar "error", error, 0, 0
-defvar "handler", handler, 0, brac_handler
+; defvar "handler", handler, 0, brac_handler
+defvalue "handler", handler, 0, brac_handler
defvar "latest", latest, 0, lfa_latest
initfile: