1
0
mirror of https://github.com/cc65/cc65.git synced 2024-10-30 12:28:25 +00:00
cc65/libsrc/atari/cvline.s

38 lines
1.0 KiB
ArmAsm
Raw Normal View History

;
; Ullrich von Bassewitz, 08.08.1998
;
; void cvlinexy (unsigned char x, unsigned char y, unsigned char length);
; void cvline (unsigned char length);
;
.include "atari.inc"
.export _cvlinexy, _cvline
.import gotoxy, putchar, setcursor
.importzp tmp1
.ifdef __ATARI5200__
2014-03-11 00:17:59 +00:00
CHRCODE = 1 ; exclamation mark
.else
CHRCODE = $7C ; Vertical bar
2014-03-11 00:17:59 +00:00
.endif
_cvlinexy:
pha ; Save the length
jsr gotoxy ; Call this one, will pop params
pla ; Restore the length and run into _cvline
_cvline:
cmp #0 ; Is the length zero?
beq L9 ; Jump if done
sta tmp1
L1: lda COLCRS
pha
2014-03-11 00:17:59 +00:00
lda #CHRCODE ; Vertical bar
jsr putchar ; Write, no cursor advance
pla
sta COLCRS
inc ROWCRS
dec tmp1
bne L1
L9: jmp setcursor