diff options
author | mrb0nk500 <b0nk@b0nk.xyz> | 2020-09-24 08:21:08 -0400 |
---|---|---|
committer | mrb0nk500 <b0nk@b0nk.xyz> | 2020-09-24 08:21:08 -0400 |
commit | 784ff59108b887e246b0f33ff696dfd981659ab2 (patch) | |
tree | 02d00ff774bd35a31f04afb62a7f187ca0a097f9 /programs/sub-suite/lexer.s | |
parent | 9932fac52c0cac2e9e0e11c84dfdf99e0a87ebfb (diff) |
- Fixed some more bugs with struct, and union handling.
Diffstat (limited to 'programs/sub-suite/lexer.s')
-rw-r--r-- | programs/sub-suite/lexer.s | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/programs/sub-suite/lexer.s b/programs/sub-suite/lexer.s index 72f1db6..50bf21e 100644 --- a/programs/sub-suite/lexer.s +++ b/programs/sub-suite/lexer.s @@ -18,15 +18,15 @@ lex: ; jsr isdigit ; Is this character a digit? ; pla ; Get the character back. @getline: - lda #2 ; Get the third byte, of the line table address. - lsl #$10 ; Shift it by 2 bytes. ldb #1 ; Set the second pointer - lda.w lline ; to the last line. + lda.q lline ; to the last line. jsr set_ptr ; - lda.w (ptr2) ; Get the next line. + ldy #ln.next ; Set the index to the next line pointer. + lda.q (ptr2), y ; Get the next line. jsr set_ptr ; Set the second pointer to the next line. - sta.w cline ; Make it the current line. + sta.q cline ; Make it the current line. and #0 ; Reset A. + tay ; Reset Y. @loop: ldy.w idx0 ; Get the string index. lda (ptr), y ; Get a character from the line. |