fixed 2 typos in syymbol names, updated binaries
This commit is contained in:
1 parent
af1f5b079d
commit
5fd45f1ece
16 files changed
+32
-32
No files matched your search
@@ -145,7 +145,7 @@
|
||||
.label NDX = $C6 // number of chars in keyboard buffer
|
||||
.label RVS = $C7 // flag, whether to print reversed characters
|
||||
.label INDX = $C8 // end of logical line (column, 0-79)
|
||||
.label LXSP = $C9 // $C9-$CA start of input, X/Y position
|
||||
.label LSXP = $C9 // $C9-$CA start of input, X/Y position (typo in Mapping the C64, fixed in Mapping the C128)
|
||||
.label SFDX = $CB // -- NOT IMPLEMENTED --
|
||||
.label BLNSW = $CC // cursor blink disable flag
|
||||
.label BLNCT = $CD // cursor blink countdown
|
||||
@@ -159,7 +159,7 @@
|
||||
.label TBLX = $D6 // current screen Y position (row), 0-24
|
||||
.label SCHAR = $D7 // ASCII value of the last printed character
|
||||
.label INSRT = $D8 // insert mode flag/counter
|
||||
.label LDTBL = $D9 // $D9-$F2 screen line link table, [!] our usage is different XXX give more details
|
||||
.label LDTB1 = $D9 // $D9-$F2 screen line link table, [!] our usage is different XXX give more details
|
||||
.label USER = $F3 // $F3-$F4 pointer to current color RAM location
|
||||
.label KEYTAB = $F5 // $F5-$F6 pointer to keyboard lookup table
|
||||
.label RIBUF = $F7 // $F7-$F8 -- WIP -- RS-232 receive buffer pointer
|
||||
|
||||
@@ -25,7 +25,7 @@ chrin_repeat:
|
||||
lda CRSW
|
||||
beq read_from_keyboard
|
||||
|
||||
// Yes, we have input waiting at (LXSP)+CRSW
|
||||
// Yes, we have input waiting at (LSXP)+CRSW
|
||||
// When CRSW = INDX, then we return a carriage return
|
||||
// and clear the flag
|
||||
cmp INDX
|
||||
@@ -57,7 +57,7 @@ not_end_of_input:
|
||||
tay
|
||||
|
||||
chrin_keyboard_return_byte:
|
||||
lda (LXSP),y
|
||||
lda (LSXP),y
|
||||
jsr screen_check_toggle_quote
|
||||
tax
|
||||
ply_trash_a
|
||||
@@ -92,20 +92,20 @@ chrin_enter:
|
||||
|
||||
// Set pointer to line of input
|
||||
lda PNT+0
|
||||
sta LXSP+0
|
||||
sta LSXP+0
|
||||
lda PNT+1
|
||||
sta LXSP+1
|
||||
sta LSXP+1
|
||||
|
||||
// If the current line is a continuation of the previous one, decrease LXSP by 40
|
||||
// If the current line is a continuation of the previous one, decrease LSXP by 40
|
||||
ldy TBLX
|
||||
lda LDTBL, y
|
||||
lda LDTB1, y
|
||||
bmi chrin_enter_calc_length // branch if not continuation
|
||||
lda LXSP+0
|
||||
lda LSXP+0
|
||||
sec
|
||||
sbc #40
|
||||
sta LXSP+0
|
||||
sta LSXP+0
|
||||
bcs !+
|
||||
dec LXSP+1
|
||||
dec LSXP+1
|
||||
!:
|
||||
ldy #80
|
||||
bne chrin_enter_loop // branch always
|
||||
@@ -121,7 +121,7 @@ chrin_enter_loop:
|
||||
// Retrieve bytes
|
||||
dey
|
||||
bmi empty_line
|
||||
lda (LXSP),y
|
||||
lda (LSXP),y
|
||||
cmp #$20
|
||||
beq chrin_enter_loop
|
||||
iny
|
||||
|
||||
@@ -26,7 +26,7 @@ chrout_screen_ins_possible:
|
||||
|
||||
// Special handling for cursor in second line
|
||||
ldx TBLX
|
||||
lda LDTBL+0, x
|
||||
lda LDTB1+0, x
|
||||
bpl chrout_screen_ins_second_line
|
||||
|
||||
// Perform character copy
|
||||
|
||||
@@ -24,7 +24,7 @@ chrout_screen_RETURN:
|
||||
cpy #24
|
||||
beq !+ // last line on screen - no need for a double line skip
|
||||
|
||||
lda LDTBL+1, y
|
||||
lda LDTB1+1, y
|
||||
bmi !+ // current line is not continued
|
||||
|
||||
inc TBLX
|
||||
|
||||
@@ -17,9 +17,9 @@ clear_screen:
|
||||
// continuation of the previous one
|
||||
|
||||
lda #$80
|
||||
ldy #24
|
||||
ldy #24
|
||||
!:
|
||||
sta LDTBL,y
|
||||
sta LDTB1,y
|
||||
dey
|
||||
bpl !-
|
||||
|
||||
|
||||
@@ -47,18 +47,18 @@ screen_scroll_up:
|
||||
|
||||
screen_scroll_up_delay_done: // entry point for cursor move control codes
|
||||
|
||||
// Scroll the LDTBL (line link table)
|
||||
// Scroll the LDTB1 (line link table)
|
||||
|
||||
ldy #$00
|
||||
!:
|
||||
lda LDTBL+1, y
|
||||
sta LDTBL+0, y
|
||||
lda LDTB1+1, y
|
||||
sta LDTB1+0, y
|
||||
iny
|
||||
cpy #24
|
||||
bne !-
|
||||
|
||||
lda #$80
|
||||
sta LDTBL+24
|
||||
sta LDTB1+24
|
||||
|
||||
// Preserve SAL and EAL, prepare initial SAL/EAL/PNT/USER values
|
||||
|
||||
@@ -126,7 +126,7 @@ screen_scroll_up_loop_done:
|
||||
|
||||
// If the first line is linked, scroll once more
|
||||
|
||||
bit LDTBL+0
|
||||
bit LDTB1+0
|
||||
bpl screen_scroll_up
|
||||
|
||||
// Recalculate PNT and USER
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
screen_calculate_PNTR_LNMX:
|
||||
|
||||
ldy TBLX
|
||||
lda LDTBL, y
|
||||
lda LDTB1, y
|
||||
php
|
||||
jsr screen_get_clipped_PNTR
|
||||
plp
|
||||
@@ -38,14 +38,14 @@ screen_calculate_PNTR_0_39:
|
||||
screen_calculate_LNMX:
|
||||
|
||||
ldy TBLX
|
||||
lda LDTBL, y
|
||||
lda LDTB1, y
|
||||
bpl screen_calculate_lnmx_79 // this line is a continuation
|
||||
|
||||
cpy #24
|
||||
beq screen_calculate_lnmx_39 // this is the last line, which is not a continuation
|
||||
|
||||
iny
|
||||
lda LDTBL, y
|
||||
lda LDTB1, y
|
||||
bpl screen_calculate_lnmx_79 // line is continued
|
||||
|
||||
// FALLTROUGH
|
||||
|
||||
@@ -10,10 +10,10 @@ screen_get_logical_line_end_ptr:
|
||||
cpy #24
|
||||
bcs screen_get_logical_line_end_39 // last line of the screen
|
||||
|
||||
lda LDTBL+0, y
|
||||
lda LDTB1+0, y
|
||||
bpl screen_get_logical_line_end_39 // current line continues previous one
|
||||
|
||||
lda LDTBL+1, y
|
||||
lda LDTB1+1, y
|
||||
bmi screen_get_logical_line_end_39 // current line is not continued
|
||||
|
||||
// FALLTROUGH
|
||||
|
||||
@@ -26,7 +26,7 @@ screen_grow_logical_line:
|
||||
|
||||
// Do not grow line if previus one is grown
|
||||
ldy TBLX
|
||||
lda LDTBL+0, y
|
||||
lda LDTB1+0, y
|
||||
bpl screen_grow_logical_line_done_scroll
|
||||
|
||||
// If last line, scroll the screen up
|
||||
@@ -34,22 +34,22 @@ screen_grow_logical_line:
|
||||
beq screen_grow_logical_line_screen_up
|
||||
|
||||
// Do not grow line if already grown
|
||||
lda LDTBL+1, y
|
||||
lda LDTB1+1, y
|
||||
bpl screen_grow_logical_line_done
|
||||
|
||||
// Preserve SAL and EAL
|
||||
|
||||
jsr screen_preserve_sal_eal
|
||||
|
||||
// Scroll LDTBL down (start from the end)
|
||||
// Scroll LDTB1 down (start from the end)
|
||||
ldy #23
|
||||
!:
|
||||
cpy TBLX
|
||||
beq !+
|
||||
bcc !+
|
||||
|
||||
lda LDTBL+0, y
|
||||
sta LDTBL+1, y
|
||||
lda LDTB1+0, y
|
||||
sta LDTB1+1, y
|
||||
|
||||
dey
|
||||
bne !-
|
||||
@@ -57,7 +57,7 @@ screen_grow_logical_line:
|
||||
// Mark current line as grown
|
||||
ldy TBLX
|
||||
lda #$00
|
||||
sta LDTBL+1, y
|
||||
sta LDTB1+1, y
|
||||
|
||||
// Now we have to scroll lines downwards to make space. We start from the end,
|
||||
// and work backwards. We cannot be as simple and efficient here as we are
|
||||
|
||||
Reference in new issue
Block a user