1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-01 08:29:37 +00:00

TGI Implementation

git-svn-id: svn://svn.cc65.org/cc65/trunk@1313 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2002-06-21 13:39:32 +00:00
parent f82ac8a91c
commit 2614d20153
4 changed files with 73 additions and 0 deletions

View File

@ -14,6 +14,8 @@
C_OBJS =
S_OBJS = tgi-kernel.o \
tgi_circle.o \
tgi_clear.o \
tgi_done.o \
tgi_geterror.o \
tgi_getmaxx.o \
@ -21,6 +23,7 @@ S_OBJS = tgi-kernel.o \
tgi_getxres.o \
tgi_getyres.o \
tgi_init.o \
tgi_line.o \
tgi_map_mode.o \
tgi_unload.o

24
libsrc/tgi/tgi_circle.s Normal file
View File

@ -0,0 +1,24 @@
;
; Ullrich von Bassewitz, 21.06.2002
;
; void __fastcall__ tgi_circle (int x, int y, unsigned char radius);
; /* Draw a circle in the current drawing color */
.include "tgi-kernel.inc"
.import popax
.importzp ptr1, ptr2, tmp1
.export _tgi_circle
_tgi_circle:
sta tmp1 ; Get the coordinates
jsr popax
sta ptr2
stx ptr2+1
jsr popax
sta ptr1
stx ptr1+1
jmp tgi_circle ; Call the driver

17
libsrc/tgi/tgi_clear.s Normal file
View File

@ -0,0 +1,17 @@
;
; Ullrich von Bassewitz, 21.06.2002
;
; void __fastcall__ tgi_clear (void);
; /* Clear the screen */
.include "tgi-kernel.inc"
.export _tgi_clear
_tgi_clear = tgi_clear ; Call the driver

29
libsrc/tgi/tgi_line.s Normal file
View File

@ -0,0 +1,29 @@
;
; Ullrich von Bassewitz, 21.06.2002
;
; void __fastcall__ tgi_line (int x1, int y1, int x2, int y2);
; /* Draw a line in the current drawing color */
.include "tgi-kernel.inc"
.import popax
.importzp ptr1, ptr2, ptr3, ptr4
.export _tgi_line
_tgi_line:
sta ptr4 ; Get the coordinates
stx ptr4+1
jsr popax
sta ptr3
stx ptr3+1
jsr popax
sta ptr2
stx ptr2+1
jsr popax
sta ptr1
stx ptr1+1
jmp tgi_line ; Call the driver