home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crawly Crypt Collection 2
/
crawlyvol2.bin
/
program
/
pascal
/
pas_lina
/
linea.s
< prev
next >
Wrap
Text File
|
1987-11-29
|
4KB
|
177 lines
****************************************
** LINE A CALLS DONE TO HELP WITH **
** PERSONAL PASCAL II. **
****************************************
** FUNCTION LINEA_INIT **
** RETURNS ADDRESS OF LINEA VARIABLES **
** AND SAVES ADDRESS FOR LATER USE **
** - needs nothing - **
.globl LINEA_INIT
LINEA_INIT: .dc.w $A000
move.l D0,LINEA_VARS
rts
.even
LINEA_VARS: .dc.l $0000 * pointer to LINEA variables
** FUNCTION LINEA_PUTPIXEL **
** x in ptsin(0), **
** y in ptsin(1) **
** color in intin(0) **
.globl LINEA_PUTPIXEL
LINEA_PUTPIXEL: .dc.w $A001
rts
** FUNCTION LINEA_GETPIXEL **
** x in ptsin(0), **
** y in ptsin(1) **
** returns color as an integer **
.globl LINEA_GETPIXEL
LINEA_GETPIXEL: .dc.w $A002
rts
** FUNCTION LINEA_LINE **
** - See system docs - **
** **
.globl LINEA_LINE
LINEA_LINE: .dc.w $A003
rts
** FUNCTION LINEA_HLINE **
** - See system docs - **
** **
.globl LINEA_HLINE
LINEA_HLINE: .dc.w $A004
rts
** FUNCTION LINEA_RCT **
** - See system docs - **
** **
.globl LINEA_RCT
LINEA_RCT: .dc.w $A005
rts
** FUNCTION LINEA_PLY **
** - See system docs - **
** **
.globl LINEA_PLY
LINEA_PLY: .dc.w $A006
rts
** FUNCTION LINEA_TEXTBLT **
** - See system docs - **
** **
.globl LINEA_TXTBLT
LINEA_TEXTBLT: .dc.w $A008
rts
** FUNCTION LINEA_SHOWMS **
** - See system docs - **
** **
.globl LINEA_SHOWMS
LINEA_SHOWMS: .dc.w $A009
rts
** FUNCTION LINEA_HDCURS **
** - See system docs - **
** **
.globl LINEA_HDCURS
LINEA_HDCURS: .dc.w $A00A
rts
** FUNCTION LINEA_TRANMS **
** - See system docs - **
** **
.globl LINEA_TRANMS
LINEA_TRANMS: .dc.w $A00B
rts
** FUNCTION UNDRAW_SPRITE **
** - See system docs - **
** **
.globl UNDRAW_SPRITE
UNDRAW_SPRITE: move.l A6,STOREA6 * Save A6 from destruction!
move.l (A7)+,D3 * Get return address
move.l (A7)+,A2 * Get address of Sprite Save Block
move.l D3,-(A7) * Restore return address
.dc.w $A00C * Do the undraw_sprite
move.l STOREA6,A6 * Restore A6
rts
.even
STOREA6: .dc.l $0000
** FUNCTION DRAW_SPRITE **
** - See system docs - **
** **
.globl DRAW_SPRITE
DRAW_SPRITE: move.l A6,STOREA6 * Save A6 from destruction!
move.l (A7)+,D3 * Get return address
move.l (A7)+,A2 * Get address of Sprite Save Block
move.l (A7)+,A0 * Get modified Sprite Define Block
move.l D3,-(A7) * Restore return address
clr.l D0 * Clear D0 & D1 for X,Y data
clr.l D1 *
move.w (A0)+,D0 * Should load X
move.w (A0)+,D1 * Should load Y
.dc.w $A00D * Do the draw_sprite
move.l STOREA6,A6 * Restore A6
rts