1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-23 19:29:37 +00:00
cc65/libsrc/atari/cvline.s
Oliver Schmidt 2bc4634860 Normalized style.
We don't use .ifndef .else .endif
2014-06-03 18:30:11 +02:00

39 lines
1.1 KiB
ArmAsm

;
; 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 popa, _gotoxy, putchar, setcursor
.importzp tmp1
.ifdef __ATARI5200__
CHRCODE = 1 ; exclamation mark
.else
CHRCODE = $7C ; Vertical bar
.endif
_cvlinexy:
pha ; Save the length
jsr popa ; Get y
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
lda #CHRCODE ; Vertical bar
jsr putchar ; Write, no cursor advance
pla
sta COLCRS
inc ROWCRS
dec tmp1
bne L1
L9: jmp setcursor