projects
/
rrq
/
rrqforth.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed (comma)
[rrq/rrqforth.git]
/
compile.asm
diff --git
a/compile.asm
b/compile.asm
index 53dbaecdd9ddb233439e5931984a8bc1e8304883..72a8763375abfa406e77a9816f1df9cd66d723ed 100644
(file)
--- a/
compile.asm
+++ b/
compile.asm
@@
-18,7
+18,7
@@
mov qword [rbx+24],rcx ; PFA (length)
pop rsi ; chars* (source)
lea rdi,[rbx+32] ; (dest)
mov qword [rbx+24],rcx ; PFA (length)
pop rsi ; chars* (source)
lea rdi,[rbx+32] ; (dest)
- ;; clear DF
+ cld
p_create_COPY:
movsb
dec rcx
p_create_COPY:
movsb
dec rcx
@@
-60,8
+60,8
@@
p_quote_end:
WORD p_comma,','
;; ( v -- )
;; Put cell value onto the heap and advance "HERE"
WORD p_comma,','
;; ( v -- )
;; Put cell value onto the heap and advance "HERE"
- dq p_here, p_
put, p_literal, 8, p_here, p_put_plus
, p_exit
-
+ dq p_here, p_
literal, 8, p_get_n_increment, p_put
, p_exit
+
WORD p_Ccomma,'C,'
;; ( c -- )
;; Put byte value onto the heap and advance "HERE"
WORD p_Ccomma,'C,'
;; ( c -- )
;; Put byte value onto the heap and advance "HERE"
@@
-316,9
+316,10
@@
p_evaluate_stream_BAD:
dq 15000
WORD p_open_file,'OPEN-FILE',fasm
dq 15000
WORD p_open_file,'OPEN-FILE',fasm
- ;; ( chaz* -- fd )
+ ;; ( chaz*
n
-- fd )
;; Open the nominated file
pushr rsi
;; Open the nominated file
pushr rsi
+ add rsp,8 ; drop n ... assuming NUL-ended string
push qword 0
push qword 0
DOFORTH sys_open
push qword 0
push qword 0
DOFORTH sys_open
@@
-326,7
+327,7
@@
p_evaluate_stream_BAD:
next
WORD p_load_file,'LOAD-FILE'
next
WORD p_load_file,'LOAD-FILE'
- ;; ( chaz* -- )
+ ;; ( chaz*
n
-- )
dq p_open_file
dq p_dup, p_0less
BRANCH 1,p_load_file_badfile
dq p_open_file
dq p_dup, p_0less
BRANCH 1,p_load_file_badfile