added
[rrq/rrqforth.git] / compile.asm
index d99504c8131f934150d9ebc8c59dcfe358357873..f723487f10e21d2db2aade7576dec84e4f65d392 100644 (file)
@@ -41,7 +41,7 @@ p_create_COPY:
        WORD p_allot,'ALLOT'
        ;; ( n -- )
        ;; Allocate n bytes on the heap
-       dq p_here, p_put_plus, p_return
+       dq p_here, p_swap, p_put_plus, p_return
        
        WORD p_quote,"'"
        ;; ( "word" -- cfa )
@@ -57,37 +57,37 @@ p_quote_end:
        ;; Compile down " LIT value "
        dq p_literal, p_literal, p_comma,p_quote, p_comma, p_return
 
-       WORD p_Ccomma,'C,'
+       WORD p_Ccomma,'C,',fasm
        ;; ( c -- )
        ;; Put byte value onto the heap and advance "HERE"
-       mov rax,[p_here_DFA]
+       mov rax,qword [p_here_DFA]
        pop rbx
        mov byte [rax],bl
        inc qword [p_here_DFA]
        next
 
-       WORD p_Wcomma,'W,'
+       WORD p_Wcomma,'W,',fasm
        ;; ( c -- )
        ;; Put byte value onto the heap and advance "HERE"
-       mov rax,[p_here_DFA]
+       mov rax,qword [p_here_DFA]
        pop rbx
        mov word [rax],bx
        add qword [p_here_DFA],2
        next
 
-       WORD p_Dcomma,'D,'
+       WORD p_Dcomma,'D,',fasm
        ;; ( d -- )
        ;; Put byte value onto the heap and advance "HERE"
-       mov rax,[p_here_DFA]
+       mov rax,qword [p_here_DFA]
        pop rbx
        mov dword [rax],ebx
        add qword [p_here_DFA],4
        next
 
-       WORD p_comma,','
+       WORD p_comma,',',fasm
        ;; ( v -- )
        ;; Put byte value onto the heap and advance "HERE"
-       mov rax,[p_here_DFA]
+       mov rax,qword [p_here_DFA]
        pop rbx
        mov qword [rax],rbx
        add qword [p_here_DFA],8