further screen code improvements
This commit is contained in:
1 parent
cfe8736778
commit
e15c7a1979
3 files changed
+6
-8
No files matched your search
@@ -13,7 +13,6 @@ chrout_screen_DEL:
|
|||||||
!:
|
!:
|
||||||
// ldx PNTR
|
// ldx PNTR
|
||||||
jsr screen_get_clipped_PNTR
|
jsr screen_get_clipped_PNTR
|
||||||
cpy #$00
|
|
||||||
bne chrout_screen_del_column_non_0
|
bne chrout_screen_del_column_non_0
|
||||||
|
|
||||||
// FALLTROUGH
|
// FALLTROUGH
|
||||||
@@ -31,12 +30,10 @@ chrout_screen_del_column_0:
|
|||||||
// Update PNT and USER pointers
|
// Update PNT and USER pointers
|
||||||
jsr screen_calculate_PNT_USER
|
jsr screen_calculate_PNT_USER
|
||||||
|
|
||||||
// Put space character at the current cursor position
|
// Put space character at the current cursor position (do not clear the color!)
|
||||||
ldy #39
|
ldy #39
|
||||||
lda #$20
|
lda #$20
|
||||||
sta (PNT),y
|
sta (PNT),y
|
||||||
|
|
||||||
// XXX should we clear the color too?
|
|
||||||
|
|
||||||
// Finish with recalculating all the variables
|
// Finish with recalculating all the variables
|
||||||
jmp chrout_screen_calc_lptr_done
|
jmp chrout_screen_calc_lptr_done
|
||||||
|
|||||||
@@ -4,7 +4,8 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
|
|
||||||
// YYY does not work properly on growing logical line
|
// YYY does not work properly when insertion no longer possible
|
||||||
|
// YYY does not work properlyy in second part of logical line
|
||||||
|
|
||||||
|
|
||||||
chrout_screen_INS:
|
chrout_screen_INS:
|
||||||
@@ -25,6 +26,7 @@ chrout_screen_INS:
|
|||||||
chrout_screen_ins_possible:
|
chrout_screen_ins_possible:
|
||||||
|
|
||||||
// Move chars towards end of the line
|
// Move chars towards end of the line
|
||||||
|
jsr screen_calculate_PNT_USER
|
||||||
jsr screen_get_logical_line_end_ptr
|
jsr screen_get_logical_line_end_ptr
|
||||||
!:
|
!:
|
||||||
// Note: While the following routine is obvious to any skilled
|
// Note: While the following routine is obvious to any skilled
|
||||||
|
|||||||
@@ -6,11 +6,10 @@ screen_get_logical_line_end_ptr:
|
|||||||
cpy #24
|
cpy #24
|
||||||
bcs screen_get_logical_line_end_39 // last line of the screen
|
bcs screen_get_logical_line_end_39 // last line of the screen
|
||||||
|
|
||||||
lda LDTBL, y
|
lda LDTBL+0, y
|
||||||
bpl screen_get_logical_line_end_39 // current line continues previous one
|
bpl screen_get_logical_line_end_39 // current line continues previous one
|
||||||
|
|
||||||
iny
|
lda LDTBL+1, y
|
||||||
lda LDTBL, y
|
|
||||||
bmi screen_get_logical_line_end_39 // current line is not continued
|
bmi screen_get_logical_line_end_39 // current line is not continued
|
||||||
|
|
||||||
// FALLTROUGH
|
// FALLTROUGH
|
||||||
|
|||||||
Reference in new issue
Block a user