1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-28 06:30:16 +00:00
cc65/libsrc/geos/conio/cclear.s
izydorst dc207514dd support for .zeropage segment in GEOS
git-svn-id: svn://svn.cc65.org/cc65/trunk@1834 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-23 22:14:14 +00:00

48 lines
872 B
ArmAsm

;
; Maciej 'YTM/Elysium' Witkowiak
;
; 06.03.2002
; void cclearxy (unsigned char x, unsigned char y, unsigned char length);
; void cclear (unsigned char length);
.include "../inc/jumptab.inc"
.include "../inc/geossym.inc"
.export _cclearxy, _cclear
.import popa, _gotoxy, fixcursor
.importzp cursor_x, cursor_y, cursor_c
_cclearxy:
pha ; Save the length
jsr popa ; Get y
jsr _gotoxy ; Call this one, will pop params
pla ; Restore the length
_cclear:
cmp #0 ; Is the length zero?
beq L9 ; Jump if done
tax
lda cursor_x ; left start
sta r3L
lda cursor_x+1
sta r3L+1
lda cursor_y ; level
sta r2L
clc
adc #8
sta r2H
txa ; right end
clc
adc cursor_c
sta cursor_c
sta r4L
ldx #r4
ldy #3
jsr DShiftLeft
lda #0 ; pattern
jsr SetPattern
jsr Rectangle
jsr fixcursor
L9: rts