summaryrefslogtreecommitdiff
path: root/programs
diff options
context:
space:
mode:
Diffstat (limited to 'programs')
-rw-r--r--programs/sub-suite/declare.s14
-rw-r--r--programs/sub-suite/lexer.s26
-rw-r--r--programs/sub-suite/libc.s4
-rw-r--r--programs/sub-suite/subasm.s8
-rw-r--r--programs/sub-suite/subeditor.s146
-rw-r--r--programs/sub-suite/subsuite.s2
-rw-r--r--programs/sub-suite/utils.s12
7 files changed, 107 insertions, 105 deletions
diff --git a/programs/sub-suite/declare.s b/programs/sub-suite/declare.s
index 745445b..2991e66 100644
--- a/programs/sub-suite/declare.s
+++ b/programs/sub-suite/declare.s
@@ -108,19 +108,19 @@ scr_ptr3:
.res 2
; Pseudo registers.
-a:
+rega:
.res 1
-b:
+regb:
.res 1
-c:
+regc:
.res 1
-d:
+regd:
.res 1
-e:
+rege:
.res 1
-f:
+regf:
.res 1
-g:
+regg:
.res 1
; This pseudo register is always zero.
zero:
diff --git a/programs/sub-suite/lexer.s b/programs/sub-suite/lexer.s
index c144f9a..dc5a3b0 100644
--- a/programs/sub-suite/lexer.s
+++ b/programs/sub-suite/lexer.s
@@ -8,7 +8,7 @@ lex:
sty.q idx0 ; Clear the first index.
sty.q idx1 ; Clear the second index.
sty.q idx2 ; Clear the third index.
- sty b ; Clear the isop flag.
+ sty regb ; Clear the isop flag.
; lda (ptr), y ; Get a character from the line.
; pha ; Preserve the character.
; jsr isdigit ; Is this character a digit?
@@ -99,7 +99,7 @@ ptok_dot:
ldb #$11 ; Set the delimiter comparison value to whitespace.
jsr delmcpy ; Copy the string, to the lexeme buffer, until delimiter.
@isop:
- lda b ; Has the isop flag been set?
+ lda regb ; Has the isop flag been set?
beq @dir ; No, so check for a directive.
@rs:
lda #TOK_RS ; Yes, so set the lexeme type to TOK_RS.
@@ -248,7 +248,7 @@ ptok_alph:
tba ; Use isdelm2 for the comparison.
jsr delmcpy ; Copy the string, to the lexeme buffer, until delimiter.
lda #0 ; Reset A.
- sta b ; Clear the isop flag.
+ sta regb ; Clear the isop flag.
@isop:
ldb #0 ; Make the lexeme buffer, the first pointer.
stb.q idx1 ; Reset the second index.
@@ -272,7 +272,7 @@ ptok_alph:
@found:
lda #TOK_MNE ; Set the lexeme type to TOK_MNE.
sta lex_type ;
- inc b ; Set the isop flag.
+ inc regb ; Set the isop flag.
@end:
jsr make_tok ; Create the token.
jsr set_cmdbuf ; Set the first pointer to the command buffer.
@@ -325,23 +325,23 @@ init_lex:
delmcpy:
- sta a ; Save the delimiter check flag.
- stb c ; Save the delimiter comparison value.
+ sta rega ; Save the delimiter check flag.
+ stb regc ; Save the delimiter comparison value.
@loop:
ldb #0 ; Reset the B register.
- stb g ; Reset the byte count.
+ stb regg ; Reset the byte count.
ldy.w idx0 ; Get the string index.
lda.q (ptr), y ; Get eight bytes from the current line.
@loop1:
pha.q ; Save the string buffer.
and #$FF ; Get the current byte.
pha ; Preserve the character.
- lda a ; Are we calling isdelm2?
+ lda rega ; Are we calling isdelm2?
pla ; Get the character back.
bne @isdelm2 ; Yes, so use isdelm2.
jsr isdelm ; No, so get the delimiter value from isdelm.
@delmchk:
- and c ; Are both delimiter values, the same?
+ and regc ; Are both delimiter values, the same?
pla.q ; Get back the string buffer.
bne @end ; Yes, so we're done.
bra @copy ; No, so start copying the character.
@@ -354,8 +354,8 @@ delmcpy:
inc.w idx0 ; Increment the string index.
inc.w idx1 ; Increment the lexeme index.
lsr #8 ; Shift in the next byte.
- inc g ; Increment the byte count.
- ldb g ; Get back the byte count.
+ inc regg ; Increment the byte count.
+ ldb regg ; Get back the byte count.
cpb #7 ; Did we shift in eight bytes?
beq @loop ; Yes, so get eight more bytes.
bra @loop1 ; No, so keep shifting in more bytes.
@@ -372,12 +372,12 @@ delmcpy:
; ldy.w idx0 ; Get the string index.
; lda (ptr), y ; Get a character from the line.
; pha ; Preserve the character.
-; lda a ; Are we calling isdelm2?
+; lda rega ; Are we calling isdelm2?
; pla ; Get the character back.
; bne @isdelm2 ; Yes, so use isdelm2.
; jsr isdelm ; No, so get the delimiter value from isdelm.
;@delmchk:
-; and c ; Are both delimiter values, the same?
+; and regc ; Are both delimiter values, the same?
; bne @end ; Yes, so we're done.
; bra @copy ; No, so start copying the character.
;@isdelm2:
diff --git a/programs/sub-suite/libc.s b/programs/sub-suite/libc.s
index bd55f9c..d13d983 100644
--- a/programs/sub-suite/libc.s
+++ b/programs/sub-suite/libc.s
@@ -31,7 +31,7 @@ strtoull:
lda.q sp+1 ; Get the value from the value buffer.
mul sp+19 ; Multiply the value by the base.
clc ; Prepare for a non carrying add.
- aab ; Add the digit value to the total value.
+ adc b ; Add the digit value to the total value.
sta.q sp+1 ; Place the value in the value buffer.
iny ; Increment the string index.
and #0 ; Reset A.
@@ -96,7 +96,7 @@ strcasecmp:
jsr tolower ; Convert the character of string 2 to lowercase.
tab ; Place it in B.
pla ; Get the character of string 1 back.
- cab ; Is the character of both strings, the same?
+ cmp b ; Is the character of both strings, the same?
plb ; Get the islong flag back.
bne cmpr ; No, so check if we're too short, or too long.
iny ; Yes, so increment the index.
diff --git a/programs/sub-suite/subasm.s b/programs/sub-suite/subasm.s
index 0a7640d..ec58a40 100644
--- a/programs/sub-suite/subasm.s
+++ b/programs/sub-suite/subasm.s
@@ -21,7 +21,7 @@ subasm:
jsr set_ptr ;
deb ; Reset B.
tba ; Reset A.
- lda f ; Get the command ID.
+ lda regf ; Get the command ID.
cmp #8 ; Is the command ID greater than the command count?
bcs @end ; Yes, so we're done.
lsl #1 ; No, so multiply the command ID by two.
@@ -55,12 +55,12 @@ chk_shcmd:
@loop:
ldb (ptr2), y ; Are we at the end of the table?
beq @false ; Yes, so return that we failed.
- cab ; No, so did the character match?
+ cmp b ; No, so did the character match?
beq @found ; Yes, so check if there are any arguments.
iny ; No, so check the next command.
bra @loop ; Keep looping.
@found:
- sty f ; Save the command ID.
+ sty regf ; Save the command ID.
ldy #1 ; Check the next character in the command buffer.
lda (ptr), y ; Is this the end of the buffer?
beq @true ; Yes, so return that we succeded.
@@ -105,7 +105,7 @@ chk_cmd:
bra @loop ; Keep looping.
@true:
ldb idx1 ; Get the command ID.
- stb f ; Return the command ID.
+ stb regf ; Return the command ID.
ldb #1 ; Return true.
bra @end ; We are done.
@false:
diff --git a/programs/sub-suite/subeditor.s b/programs/sub-suite/subeditor.s
index 2282a72..fb3f3c4 100644
--- a/programs/sub-suite/subeditor.s
+++ b/programs/sub-suite/subeditor.s
@@ -117,7 +117,7 @@ print_str:
tba ; Clear the Accumulator.
@loop:
ldb #1 ; Enable replace mode.
- stb b ;
+ stb regb ;
lda.q ptr ; Get the first pointer.
cmp.q end ; Did the pointer change?
bne @reset ; Yes, so set it back.
@@ -133,7 +133,7 @@ print_str:
bra @loop ; Keep looping.
@end:
ldb #0 ; Enable insert mode.
- stb b ;
+ stb regb ;
tba ; Reset A.
rts ; End of print_str.
@@ -159,7 +159,7 @@ getbt1:
txy ; Get the byte position.
ldb (ptr2), y ; Get one byte of the wrap table.
ply.w ; Get the screen index back.
- aba ; Mask out the bit of the current line number.
+ and b ; Mask out the bit of the current line number.
cmp #1 ; Set the carry flag, if true.
bra bitout ; We are done.
@@ -175,7 +175,7 @@ clrbit:
phy.w ; Save the screen index.
txy ; Get the byte position.
ldb (ptr2), y ; Get one byte of the wrap table.
- aba ; Clear the bit of the current line number.
+ and b ; Clear the bit of the current line number.
bitsav:
sta (ptr2), y ; Update the wrap table.
ply.w ; Get the screen index back.
@@ -194,7 +194,7 @@ setbit:
phy.w ; Save the screen index.
txy ; Get the byte position.
ldb (ptr2), y ; Get one byte of the wrap table.
- oab ; Set the bit of the current line number.
+ ora b ; Set the bit of the current line number.
bra bitsav ; Save the bit.
bitpos:
@@ -222,8 +222,8 @@ bitpos:
handle_char:
ldb #0 ; Reset the B register.
- stb e ; Set the temporary row position to zero, in case we get a newline.
- stb b ; Enable insert mode.
+ stb rege ; Set the temporary row position to zero, in case we get a newline.
+ stb regb ; Enable insert mode.
pha ; Save the character.
phy.w ; Save the cursor index.
cmp #'\n' ; Was the character that was typed, a newline?
@@ -232,16 +232,16 @@ handle_char:
@print:
ply.w ; Get back the cursor index.
pla ; Get back the character.
- ldb e ; Is the temporary row position non zero?
+ ldb rege ; Is the temporary row position non zero?
bne @row ; Yes, so reset the row positon.
@print1:
jsr print_char ; No, so print the character.
- lda a ; Get the return value.
+ lda rega ; Get the return value.
cmp #'\n' ; Is the return value, a newline?
beq @true ; Yes, so return true.
bra @false ; No, so return false.
@row:
- ldb e ; Get the temporary row position.
+ ldb rege ; Get the temporary row position.
cpb #maxrow ; Is temporary row position, at, or above the bottom of the screen?
beq @row2 ; Yes, so leave it as is.
bcs @row1 ; No, so set it to the bottom of the screen.
@@ -272,7 +272,7 @@ cmd_cpy:
clc ; Clear the carry flag, so that nothing odd occurs.
@start:
sta scr_row ; Set the row position to the end of the line.
- sta e ; Save it into the temporary row posiition.
+ sta rege ; Save it into the temporary row posiition.
jsr findst ; Find the start of the line.
clc ; Clear the carry flag.
lda scr_row ; Get the row position.
@@ -302,12 +302,12 @@ cmd_cpy:
iny ; No, so increment the screen index.
inb ; Increment the byte count.
lsr #8 ; Shift in the next byte.
- stb g ; Save the byte count.
+ stb regg ; Save the byte count.
tab ; Save the string buffer.
and #$FF ; Is this byte of the buffer, a null terminator?
beq @end1 ; Yes, so we're done.
tba ; No so get back the string buffer.
- ldb g ; Get back the byte count.
+ ldb regg ; Get back the byte count.
cpb #7 ; Did we shift in eight bytes?
beq @loop ; Yes, so get eight more bytes.
bra @loop1 ; No, so keep shifting in more bytes.
@@ -365,13 +365,13 @@ findend:
print_char:
- sta a ; Save the typed character for now.
+ sta rega ; Save the typed character for now.
ldb #2 ; Make sure that set_ptr sets the third pointer.
lda.d #buffer ; Set the third pointer to the start of the screen buffer.
jsr set_ptr ;
ldb #0 ; Set B to zero.
tba ; Set the Accumulator to zero.
- lda a ; Get back the character.
+ lda rega ; Get back the character.
cmp #$1B ; Did the user type an escape character?
beq esc ; Yes, so go check the escape code.
cmp #'\n' ; No, but did the user type a newline?
@@ -388,10 +388,10 @@ print_char:
beq bs ; Yes, so treat it as a backspace.
printc:
lda #0 ; No, so start trying to print a character.
- sta d ;
+ sta regd ;
lda (ptr3), y ; Are we at the end of the string?
beq @save ; Yes, so just print the character.
- lda b ; No, but was the flag set?
+ lda regb ; No, but was the flag set?
bne @save ; Yes, so don't shift the line.
sty.w scr_ptr ; No, so save the cursor index for later.
jsr fndend ; Find the end of the line.
@@ -401,19 +401,19 @@ printc:
sta scr_tcol ;
@update1:
jsr findend ; Find the end of the line.
- sta e ; Use it for redrawing the line.
+ sta rege ; Use it for redrawing the line.
sta scr_row ; Set the row position to to the end of the line.
jsr findst ; Find the start of the line.
lda scr_row ; Get the start of the line.
@update2:
- sta f ; Set the starting line, to the start of the line.
+ sta regf ; Set the starting line, to the start of the line.
jsr rdrw_ln ; Redraw the line.
lda scr_trow ; Get the real row position back.
sta scr_row ;
lda scr_tcol ; Get the real column position back.
sta scr_col ;
jsr update_pos ; Update the cursor's position.
- dec d ;
+ dec regd ;
bra @save1 ;
@shift:
ldy.w scr_ptr3 ;
@@ -421,33 +421,33 @@ printc:
tyx ;
dey ;
ldb #1 ;
- stb d ;
+ stb regd ;
jsr shftln ;
ldb #1 ;
- stb d ;
- lda a ;
+ stb regd ;
+ lda rega ;
sta (ptr3), y ; store typed character into the input buffer.
lda scr_row ;
sta scr_trow ;
bra @update ;
@save:
- ldb d ;
+ ldb regd ;
bne @update ;
@save1:
- lda a ;
+ lda rega ;
sta (ptr3), y ; store typed character into the input buffer.
@incr:
inc scr_col ; Increment the cursor's x coordinate.
iny ;
@wrapped:
ldb #1 ;
- stb f ;
+ stb regf ;
ldb scr_col ;
cpb #maxcol+1 ;
bcs @scrolled ;
@print:
sta scr ; Echo typed character.
- ldb f ;
+ ldb regf ;
beq @wrap ;
bra printc_end ;
@scrolled:
@@ -456,7 +456,7 @@ printc:
bcs @scroll ;
@wrapped2:
ldb #0 ;
- stb f ;
+ stb regf ;
bra @print ;
@scroll:
sta scr ; Echo typed character.
@@ -501,7 +501,7 @@ nl:
jsr update_pos ; Update the cursor's position.
@end:
lda #'\n' ; Print the newline.
- sta a ;
+ sta rega ;
rts ;
@@ -580,8 +580,8 @@ bs:
jsr update_pos ; Update the cursor's position.
back:
ldb #0 ; Reset B, and some flags.
- stb e ;
- stb f ;
+ stb rege ;
+ stb regf ;
lda scr_row ; Save the current row position for later.
sta scr_trow ;
jsr findend ; Find the end of the line.
@@ -599,15 +599,15 @@ back:
tyx ; Copy the current cursor index to X.
iny ; Increment cursor index.
ldb #0 ; Set shifting direction to left.
- stb d ;
+ stb regd ;
jsr shftln ; Shift line back by one character.
lda #$7F ; Print a backspace to the screen.
sta scr ;
- lda e ; Are we updating more than one line?
+ lda rege ; Are we updating more than one line?
beq @load ; No, so skip to the next step.
@find_end:
jsr findend ; Yes, so find the end of the line.
- sta e ; Set the end parameter to it.
+ sta rege ; Set the end parameter to it.
lda scr_col ; Save the current column position for now.
sta scr_tcol ;
jsr rdrw_ln ; Start redrawing the line.
@@ -621,13 +621,13 @@ back:
rts ; We are done.
@update:
lda scr_row ; Set the line to start redrawing, to the start of the line.
- sta f ;
- inc e ; Set the redraw flag to true.
+ sta regf ;
+ inc rege ; Set the redraw flag to true.
bra @shift ; Start shifting the line back.
shftln:
- ldb d ; Is the flag not set?
+ ldb regd ; Is the flag not set?
beq @dec_loop ; Yes, so shift, and decrement.
ldb #0 ; Clear the B register.
bra @inc_loop ; No, so shift, and increment.
@@ -680,14 +680,14 @@ shftln:
sta (ptr3), y ;
@end1:
jsr findend ; Find the ending line.
- sta d ; Save ending line for later.
+ sta regd ; Save ending line for later.
lda (ptr3), y ; Is this character a space?
cmp #$20 ;
bne @end5 ; No, so skip the conversion.
lda #0 ; Yes, so convert it back to zero.
sta (ptr3), y ;
@end2:
- lda d ; Get the ending line.
+ lda regd ; Get the ending line.
cmp scr_row ; Is the ending line greater than the starting line?
beq @end5 ; No, so we're done.
bcs @wrap ; Yes, so set the wrap bit.
@@ -712,23 +712,23 @@ esc:
lda status ; No, so wait for the next character.
beq @end ; We have an error, so discard it, and go back to getting user input.
lda kbd ; Get the escape code.
- sta c ; Store the escape code, until we need it.
+ sta regc ; Store the escape code, until we need it.
lda #0 ; Set the D pseudo register to zero.
- sta d ;
+ sta regd ;
jsr isup ; Check if the user pressed up.
- lda d ; Did the user press up?
+ lda regd ; Did the user press up?
bne @end ; Yes, so we're done.
jsr isdown ; No, so check if the user pressed down.
- lda d ; Did the user press down?
+ lda regd ; Did the user press down?
bne @end ; Yes, so we're done.
lda #0 ; No, so check if the user pressed left.
jsr isleft ;
- lda d ; Did the user press left?
+ lda regd ; Did the user press left?
bne @end ; Yes, so we're done.
jsr isright ; No, so check if the user pressed right.
@end:
lda #0 ; Clear the D pseudo register.
- sta d ;
+ sta regd ;
rts ; We are done.
shftesc:
@@ -737,27 +737,27 @@ shftesc:
lda status ; Wait for the next character.
beq @end ; We have an error, so discard it, and go back to getting user input.
lda kbd ; Get the escape code.
- sta c ; Store the escape code, until we need it.
+ sta regc ; Store the escape code, until we need it.
lda #0 ; Use the D pseudo register as a skip flag.
- sta d ;
+ sta regd ;
jsr isshftup ; Check if the user pressed shift+up.
- lda d ; Was it successful?
+ lda regd ; Was it successful?
bne @end ; Yes, so we're done.
jsr isshftdown ; No, so check if the user pressed shift+down.
@end:
lda #0 ; Clear the D pseudo register.
- sta d ;
+ sta regd ;
rts ; We are done.
isup:
- lda c ; Load the escape code into the accumulator.
+ lda regc ; Load the escape code into the accumulator.
cmp #'A' ; Did the user press the up arrow key?
bne @end ; No, so we're done.
lda scr_row ; Yes, but is the cursor at the top of the screen?
beq @scroll ; Yes, so check if we need to scroll.
@check2:
- lda c ; No, so load the escape code back into the accumulator.
+ lda regc ; No, so load the escape code back into the accumulator.
cmp #'A' ; Did the user press the up arrow key?
beq @up ; Yes, so move the cursor up.
bra @end ; No, so we're done.
@@ -765,26 +765,26 @@ isup:
dec scr_row ; Move the cursor up a line.
jsr update_pos ; Update it's position.
lda #1 ; Tell the escape routine that we succeded.
- sta d ;
+ sta regd ;
rts ; We are done.
@scroll:
lda scr_str ; Are we at the top of the screen buffer?
beq @end ; Yes, so we're done.
jsr scrl_up ; No, so scroll up.
lda #1 ; Tell the escape routine that we were successful.
- sta d ;
+ sta regd ;
@end:
rts ; End of isup.
isdown:
- lda c ; Load the escape code into the accumulator.
+ lda regc ; Load the escape code into the accumulator.
cmp #'B' ; Did the user press the down arrow key?
bne @end ; No, so we're done.
lda scr_row ; Yes, so start checking the y coordinate of the cursor.
cmp #maxrow ; Is the cursor at the bottom of the screen?
beq @scroll ; Yes, so scroll down.
- lda c ; No, so load the escape code back into the accumulator.
+ lda regc ; No, so load the escape code back into the accumulator.
cmp #'B' ; Did the user press the down arrow key?
beq @down ; Yes, so move the cursor down.
bra @end ; No, so we're done.
@@ -792,7 +792,7 @@ isdown:
inc scr_row ; Move the cursor down a line.
jsr update_pos ; Update it's position.
lda #1 ; Tell the escape routine that we succeded.
- sta d ;
+ sta regd ;
rts ; We are done.
@scroll:
lda scr_row ; Save the cursor's row number.
@@ -805,13 +805,13 @@ isdown:
lda scr_tcol ; Load the cursor's column number.
sta scr_col ;
lda #1 ; Tell the escape routine that we were successful.
- sta d ;
+ sta regd ;
@end:
rts ; End of isdown.
isright:
- lda c ; Load the escape code into the accumulator.
+ lda regc ; Load the escape code into the accumulator.
cmp #'C' ; Did the user press the right arrow key?
bne @end2 ; No, so we're done.
lda scr_col ; Yes, so start checking the x coordinate of the cursor.
@@ -854,12 +854,12 @@ isright:
isleft:
- lda c ; Load the escape code into the accumulator.
+ lda regc ; Load the escape code into the accumulator.
cmp #'C' ; Did the user press right?
beq @end1 ; Yes, so we're done
lda scr_col ; No, but is the cursor at the far left of the screen?
beq @wrap ; Yes, so start checking if this is a wrapped line.
- lda c ; No, so load the escape code back into the accumulator.
+ lda regc ; No, so load the escape code back into the accumulator.
cmp #'D' ; Did the user press the left arrow key?
beq @left ; Yes, so move the cursor left.
bra @end1 ; No, so we're done.
@@ -877,7 +877,7 @@ isleft:
lda #maxcol ; Move the Cursor to the far right of the screen.
sta scr_col ;
lda #1 ; Tell the escape routine that we were successful.
- sta d ;
+ sta regd ;
lda scr_row ; Are we at the top of the screen?
beq @scroll ; Yes, so check if we need to scroll.
bra @end ; No, so we're done.
@@ -892,7 +892,7 @@ isleft:
dec scr_col ; Move the cursor left a character.
jsr update_pos ; Update it's position.
lda #1 ; Tell the escape routine that we succeded.
- sta d ;
+ sta regd ;
rts ; We are done
@end:
jsr update_pos ; Update the cursor position.
@@ -903,34 +903,34 @@ isleft:
isshftup:
- lda c ; Load the escape code back into the accumulator.
+ lda regc ; Load the escape code back into the accumulator.
cmp #'A' ; Did the user press the up arrow key?
bne @end ;
lda #1 ;
- sta d ;
+ sta regd ;
lda scr_str ;
beq @end ;
@shftup:
jsr scrl_up ;
lda #1 ;
- sta d ;
+ sta regd ;
@end:
rts ;
isshftdown:
- lda c ; Load the escape code back into the accumulator.
+ lda regc ; Load the escape code back into the accumulator.
cmp #'B' ; Did the user press the down arrow key?
bne @end ;
lda #1 ;
- sta d ;
+ sta regd ;
lda scr_end ;
cmp #71 ;
bcs @end ;
@shftdown:
jsr scrl_down ;
lda #1 ;
- sta d ;
+ sta regd ;
@end:
rts ;
@@ -948,7 +948,7 @@ update_ptr:
update_pos:
ldb #1 ; Set the F pseudo register to one, to fix some bugs.
- stb f ;
+ stb regf ;
jsr update_ptr ; Update the screen buffer index.
tay ; Place the index into the Y register.
tba ; Reset A.
@@ -1070,14 +1070,14 @@ rdrw_row:
rdrw_ln:
lda scr_row ;
pha ;
- lda f ;
+ lda regf ;
sta scr_row ;
lda scr_col ;
pha ;
jsr update_pos ;
@loop:
lda scr_row ;
- cmp e ;
+ cmp rege ;
beq @loop1 ;
bcs @end ;
@loop1:
@@ -1092,8 +1092,8 @@ rdrw_ln:
sta scr_row ;
jsr update_pos ;
lda #0 ;
- sta e ;
- sta f ;
+ sta rege ;
+ sta regf ;
rts ;
diff --git a/programs/sub-suite/subsuite.s b/programs/sub-suite/subsuite.s
index 36ac541..d425550 100644
--- a/programs/sub-suite/subsuite.s
+++ b/programs/sub-suite/subsuite.s
@@ -18,5 +18,7 @@
.qword reset
a
;l a
+;.org reset
+;v
;q
d
diff --git a/programs/sub-suite/utils.s b/programs/sub-suite/utils.s
index 046164a..3ab948b 100644
--- a/programs/sub-suite/utils.s
+++ b/programs/sub-suite/utils.s
@@ -176,7 +176,7 @@ isdelm2:
@loop:
ldb dtab2, x ; Get the compare value.
beq @other ; We hit the end of the table, so check for the others.
- cab ; Are they the same?
+ cmp b ; Are they the same?
beq @r1 ; Yes, so return 1.
inx ; No, so increment the table index.
bra @loop ; Keep looping.
@@ -202,11 +202,11 @@ isdelm2:
isdelm:
ldx #0 ; Reset X.
- stx a ; Reset the shift value.
+ stx rega ; Reset the shift value.
@loop:
ldb dtab, x ; Get the compare value.
beq @other ; We hit the end of the table, so check for the others.
- cab ; Are they the same?
+ cmp b ; Are they the same?
beq @rshft ; Yes, so return 1 << index.
inx ; No, so increment the table index.
bra @loop ; Keep looping.
@@ -222,10 +222,10 @@ isdelm:
lda #0 ; Return 0.
rts ; End of isdelm.
@rshft:
- stx a ; Save the shift value.
+ stx rega ; Save the shift value.
ldx #0 ; Reset X.
lda #1 ; Set up the bitshift.
- lsl a ; Return 1 << X.
+ lsl rega ; Return 1 << X.
rts ; End of isdelm.
@@ -235,7 +235,7 @@ get_ptok:
@loop:
ldb ptok_tab, x ; Get the compare value.
beq @other ; We hit the end of the table, so check for the others.
- cab ; Are they the same?
+ cmp b ; Are they the same?
beq @rtab ; Yes, so return X.
inx ; No, so increment the table index.
bra @loop ; Keep looping.