mirror of
https://github.com/cc65/cc65.git
synced 2024-08-19 02:29:33 +00:00
About all CONIO functions offering a <...>xy variant call popa _gotoxy By providing an internal gotoxy variant that starts with a popa all those CONIO function can be shortened by 3 bytes. As soon as program calls more than one CONIO function this means an overall code size reduction.
26 lines
620 B
ArmAsm
26 lines
620 B
ArmAsm
;
|
|
; void gotoxy (unsigned char x, unsigned char y);
|
|
;
|
|
|
|
.export gotoxy, _gotoxy
|
|
.import popa, plot
|
|
|
|
.include "pce.inc"
|
|
.include "extzp.inc"
|
|
|
|
gotoxy:
|
|
jsr popa ; Get Y
|
|
|
|
_gotoxy:
|
|
sta CURS_Y ; Set Y
|
|
jsr popa ; Get X
|
|
sta CURS_X ; Set X
|
|
jmp plot ; Set the cursor position
|
|
|
|
;-------------------------------------------------------------------------------
|
|
; force the init constructor to be imported
|
|
|
|
.import initconio
|
|
conio_init = initconio
|
|
|