home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Fish 1
/
GoldFishApril1994_CD2.img
/
d4xx
/
d498
/
cpalette
/
src
/
includes
/
texts.asm
< prev
next >
Wrap
Assembly Source File
|
1991-06-06
|
2KB
|
85 lines
* TEXTS.ASM
; TEXT SUPPORT ROUTINES
; MAKE AND PRINT NEW ITEXT. RETURNS NEW ITEST STRUCTURE IN D0
PRINTNEWAT MACRO
MOVE.L \1,A0 ;\1 <- WINDOW
LEA \2,A1 ;\2 <- TEXT
MOVE.W #\3,D0 ;\3 <- LEFT
MOVE.W #\4,D1 ;\4 <- TOP
BSR _PRINTTEXT ;\5 <- ERROR
TST.L D0
BEQ \5
ENDM
; PRINT EXISTING INTUITEXT STRUCTURE
PRINTOLDAT MACRO
MOVE.L \1,A0 ;\1 <- WINDOW
MOVE.L \2,A1 ;\2 <- ITEXT
MOVE.W #\3,D0 ;\3 <- LEFT
MOVE.W #\4,D1 ;\4 <- TOP
BSR _PRINTTXT
ENDM
; MAKE AN INTUITEXT, RETURN ADDRESS IN D0
MAKEITEX MACRO
LEA \1,A0 ;\1 <- TEXT
BSR MAKEATEXT ;\2 <- ERROR
TST.L D0 ;\3 <- RESULTPTR
BEQ \2
MOVE.L D0,\3
ENDM
MAKEATEXT
PUSHREG A0 ;A0 <- N.T. TEXT PTR
REMEMBERPUBMEM REMEMBERKEY,#SIZE.IT,ERR_MITEXT
MOVE.L D0,A0
PULLREG A1
PUSHREG A0
BSR CREATETEXT
PULLREG D0
RTS
ERR_MITEXT
PULLREG A0
RTS
CREATETEXT
MOVE.B #1,IT.FRONTPEN(A0) ;A0 <- INTUITEXT SIZED MEM BLOCK
MOVE.B #JAM1,IT.DRAWMODE(A0) ;A1 <- NULL TERMINATING TEXT
MOVE.W #2,IT.LEFTEDGE(A0)
MOVE.W #2,IT.TOPEDGE(A0)
MOVE.L A1,IT.TEXT(A0)
RTS
_PRINTTEXT
PUSHREG D0-D1/A0 ;A0 <- WINDOW PTR
PUSHREG A1 ;A1 <- N.T. TEXT
REMEMBERPUBMEM REMEMBERKEY,#SIZE.IT
TST.L D0 ;D0 <- LEFTEDGE
BEQ.S ERR_TEXT ;D1 <- TOPEDGE
MOVE.L D0,A0
PULLREG A1
BSR CREATETEXT
MOVE.L A0,A1
MOVE.L A1,_THISITEXT
PULLREG D0-D1/A0
_PRINTTXT
MOVE.L WW.RPORT(A0),A0 ;A0 <- WINDOW
INTLIB PRINTITEXT ;A1 <- N.T. TEXT
MOVE.L _THISITEXT,D0
RTS
ERR_TEXT
PULLREG A1
PULLREG D0-D1/A0
ZERO D0
RTS
_THISITEXT
DC.L 0