summaryrefslogtreecommitdiff
path: root/jefs.fs
diff options
context:
space:
mode:
Diffstat (limited to 'jefs.fs')
-rw-r--r--jefs.fs5
1 files changed, 3 insertions, 2 deletions
diff --git a/jefs.fs b/jefs.fs
index 9c37038..02b52c9 100644
--- a/jefs.fs
+++ b/jefs.fs
@@ -18,6 +18,7 @@ hex : ret, c3 c, ; decimal
: [compile] parse find drop >cfa compile, ; immediate
: ' parse find drop >cfa [compile] lit ; immediate \ note: no error handling (yet)
: recurse latest @ >cfa compile, ; immediate
+: s, ( c-addr u -- ) here @ swap ( c-addr here u ) dup >r cmove r> here +! ;
: literal [compile] lit ; immediate
: constant create [compile] lit ret, ;
@@ -44,7 +45,7 @@ hex : ret, c3 c, ; decimal
\ TODO interpret mode strings?
\ : s" [ char " ] literal 1 >in +! ( skip spc ) [compile] litstring ; immediate
-: s" 1 >in +! [ char " ] literal cparse branch >mark >r 2dup cmove, r> >resolve swap [compile] lit [compile] lit ; immediate
+: s" 1 >in +! [ char " ] literal cparse branch >mark >r 2dup s, r> >resolve swap [compile] lit [compile] lit ; immediate
: ." [compile] s" ' say compile, ; immediate \ lol this word breaks the highlighting, here have another "
\ https://wiki.osdev.org/X86-64_Instruction_Encoding
@@ -164,6 +165,6 @@ variable hld
\ : .free bytes-free u. ." of " bytes-allocated u. ." bytes free (used " bytes-used (.) say ." )" cr ; \ segfaults
\ .free bye
-\ : t s" eue eu eo o eu" drop say .s s" euoe" ;
+: t s" eue eu eo o eu" drop .s say ;
t bye