home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
canada-remote-systems
/
geos
/
utils
/
natesmac.seq
(
.txt
)
< prev
next >
Wrap
GEOS ConVerT
|
2019-04-13
|
4KB
|
200 lines
natesMac
SEQ formatted GEOS file V1.0
Comm. Compat.
geosSym
BLASTER'S CONVERTER V2.5
Preferences
Pad Color Pref
Write Image V2.1
geoWrite V1.1
geosMac with bit macros removed and some more essential ones added.
.macro LoadB dest,value
lda #value
sta dest
.endm
.macro LoadW dest,value
lda #](value)
sta dest+1
lda #[(value)
sta dest+0
.endm
.macro MoveB source,dest
lda source
sta dest
.endm
.macro MoveW source,dest
lda source+1
sta dest+1
lda source+0
sta dest+0
.endm
.macro add source
adc source
.endm
.macro AddB source,dest
lda source
adc dest
sta dest
.endm
.macro AddW source,dest
lda source
adc dest+0
sta dest+0
lda source+1
adc dest+1
sta dest+1
.endm
.macro AddVB value,dest
lda dest
adc #value
sta dest
.endm
.macro AddVW value,dest
lda #[(value)
adc dest+0
sta dest+0
.if (value >= 0) && (value <= 255)
bcc noInc
inc dest+1
noInc:
.else
lda #](value)
adc dest+1
sta dest+1
.endif
.endm
.macro sub source
sbc source
.endm
.macro SubB source,dest
lda dest
sbc source
sta dest
.endm
.macro SubW source,dest
lda dest+0
sbc source+0
sta dest+0
lda dest+1
sbc source+1
.macro sub source
sbc source
.endm
.macro SubB source,dest
lda dest
sbc source
sta dest
.endm
.macro SubW source,dest
lda dest+0
sbc source+0
sta dest+0
lda dest+1
sbc source+1
sta dest+1
.endm
.macro CmpB source,dest
lda source
cmp dest
.endm
.macro CmpBI source,immed
lda source
cmp #immed
.endm
.macro CmpW source,dest
lda source+1
cmp dest+1
bne done
lda source+0
cmp dest+0
done:
.endm
.macro CmpWI source,immed
lda source+1
cmp #](immed)
bne done
lda source+0
cmp #[(immed)
done:
.endm
.macro PushB source
lda source
.endm
.macro PushW source
lda source+1
lda source+0
.endm
.macro PopB dest
sta dest
.endm
.macro PopW dest
.macro PopW dest
sta dest+0
sta dest+1
.endm
.macro bra addr
bvc addr
.endm
.macro IncW addr
inc addr
bne done
inc addr+1
done:
.endm
.macro SubVB value,dest
lda dest
sbc #value
sta dest
.endm
.macro SubVW value,dest
lda dest+0
sbc #[(value)
sta dest+0
.if (value >= 0) && (value <= 255)
bcs noInc
dec dest+1
noInc:
.else
lda dest+1
sbc #](value)
sta dest+1
.endif
.endm
.macro DecW zpaddr
ldx #zpaddr
jsr Ddec
.endm
.macro DecW2 addr
lda addr
bne noover
dec addr+1
noover:
dec addr
.endm
.macro SubBW source,dest
lda dest+0
sbc source
sta dest+0
bcs done
dec dest+1
done:
.endm
sta dest+0
bcc done
inc dest+1
done:
.endm
noInc:
.else
lda #](value)
adc dest+1
sta dest
.macro AddBW source,dest
lda source
adc dest+0
sta dest+0
bcc done
inc dest+1
done:
.endm