mirror of
https://github.com/callapple/Twilight_II.git
synced 2026-01-22 14:16:22 +00:00
116 lines
1.7 KiB
Plaintext
116 lines
1.7 KiB
Plaintext
MACRO
|
|
&lab pullword &SYSOPR
|
|
&lab ANOP
|
|
pla
|
|
AIF C:&SYSOPR=0,.end
|
|
sta &SYSOPR
|
|
.end
|
|
MEND
|
|
MACRO
|
|
&lab pushlong &addr,&offset
|
|
&lab ANOP
|
|
LCLC &C
|
|
LCLC &REST
|
|
&C AMID &addr,1,1
|
|
AIF "&C"="#",.immediate
|
|
AIF "&C"="[",.zeropage
|
|
AIF C:&offset=0,.nooffset
|
|
AIF "&offset"="s",.stack
|
|
pushword &addr+2,&offset
|
|
pushword &addr,&offset
|
|
MEXIT
|
|
.nooffset
|
|
pushword &addr+2
|
|
pushword &addr
|
|
MEXIT
|
|
.immediate
|
|
&REST AMID &addr,2,L:&addr-1
|
|
dc I1'$F4',I2'(&REST)|-16'
|
|
dc I1'$F4',I2'&REST'
|
|
MEXIT
|
|
.stack
|
|
pushword &addr+2,s
|
|
pushword &addr+2,s
|
|
MEXIT
|
|
.zeropage
|
|
ldy #&offset+2
|
|
pushword &addr,y
|
|
ldy #&offset
|
|
pushword &addr,y
|
|
MEND
|
|
MACRO
|
|
&lab pushword &SYSOPR
|
|
&lab ANOP
|
|
AIF C:&SYSOPR=0,.b
|
|
LCLC &C
|
|
&C AMID "&SYSOPR",1,1
|
|
AIF ("&C"="#").AND.(S:LONGA),.immediate
|
|
lda &SYSOPR
|
|
pha
|
|
MEXIT
|
|
.b
|
|
pha
|
|
MEXIT
|
|
.immediate
|
|
LCLC &REST
|
|
LCLA &BL
|
|
&BL ASEARCH "&SYSOPR"," ",1
|
|
AIF &BL>0,.a
|
|
&BL SETA L:&SYSOPR+1
|
|
.a
|
|
&REST AMID "&SYSOPR",2,&BL-2
|
|
dc I1'$F4',I2'&REST'
|
|
MEND
|
|
MACRO
|
|
&lab longm
|
|
&lab ANOP
|
|
rep #%00100000
|
|
longa on
|
|
MEND
|
|
MACRO
|
|
&lab shortm
|
|
&lab ANOP
|
|
sep #%00100000
|
|
longa off
|
|
MEND
|
|
MACRO
|
|
&LAB JNE &BP
|
|
&LAB BEQ *+5
|
|
BRL &BP
|
|
MEND
|
|
MACRO
|
|
&lab str &string
|
|
&lab dc i1'L:&string',C'&string'
|
|
MEND
|
|
macro
|
|
&lab ~WaitUntil &delayfrom,&delayamount
|
|
&lab WordResult
|
|
PushWord &delayfrom
|
|
PushWord &delayamount
|
|
Tool $3A03
|
|
mend
|
|
macro
|
|
&lab Tool &number
|
|
&lab ldx #&number
|
|
jsl $E10000
|
|
mend
|
|
macro
|
|
&lab WordResult &zero
|
|
&lab anop
|
|
aif c:&zeros=1,.zero
|
|
phd
|
|
mexit
|
|
.zero
|
|
&lab pea $0000
|
|
mend
|
|
MACRO
|
|
&lab Debug &string
|
|
aif t:debugSymbols="G",.begin
|
|
mexit
|
|
.begin
|
|
dc i1'$82'
|
|
dc i2'(L:&string)+3'
|
|
dc i2'$7771'
|
|
dc i1'L:&string',C'&string'
|
|
MEND
|