X-Git-Url: https://git.rrq.au/?a=blobdiff_plain;f=memory.asm;h=335a04d22779af2ac0ab4c5f9dd7661e8c6d5299;hb=76f3fb73eedebb34c932d40f61b7578d9f5177c9;hp=64f54bce09e24d698485b61b2d62ad97677d122e;hpb=e086c1738e84f6952008d1d2efa4e36b31b061b3;p=rrq%2Frrqforth.git diff --git a/memory.asm b/memory.asm index 64f54bc..335a04d 100644 --- a/memory.asm +++ b/memory.asm @@ -1,5 +1,12 @@ ;;; This file defines "memory access words" + WORD p_cfa2flags_get,'CFA>FLAGS@',fasm + ;; ( cfa -- flags ) + pop rax + cfa2tfa rax + push qword[rax+16] + next + WORD p_tfa2cfa,'TFA>CFA',fasm ;; ( tfa -- cfa ) ;; Advance a word tfa pointer to the cfa field @@ -16,6 +23,12 @@ mov qword [rsp],rax next + WORD p_tfa2flags_get,'TFA>FLAGS@',fasm + ;; ( cfa -- flags ) + pop rax + push qword[rax+16] + next + WORD p_dfa2tfa,'DFA>TFA',fasm ;; ( dfa -- tfa ) ;; Advance a word tfa pointer to the dfa field