1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-26 08:32:00 +00:00
cc65/libsrc/apple2/cvline.s
cuz 071c58bda2 New version from Oliver Schmidt
git-svn-id: svn://svn.cc65.org/cc65/trunk@3421 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-03-26 17:03:30 +00:00

36 lines
958 B
ArmAsm

;
; Ullrich von Bassewitz, 08.08.1998
;
; void __fastcall__ cvlinexy (unsigned char x, unsigned char y, unsigned char length);
; void __fastcall__ cvline (unsigned char length);
;
.export _cvlinexy, _cvline, cvlinedirect
.import popa, _gotoxy, putchar, newline
.include "zeropage.inc"
_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:
.ifdef __APPLE2ENH__
ldx #'|' | $80 ; Vertical line, screen code
.else
ldx #'!' | $80 ; Vertical line, screen code
.endif
cvlinedirect:
cmp #$00 ; Is the length zero?
beq done ; Jump if done
sta tmp1
: txa ; Screen code
jsr putchar ; Write, no cursor advance
jsr newline ; Advance cursor to next line
dec tmp1
bne :-
done: rts