.include "jumptab.inc"
.include "geossym.inc"
+ .include "geosmac.inc"
.include "const.inc"
- .include "geosmac.ca65.inc"
.code
+++ /dev/null
-;
-;GEOS macros
-;reassembled for 6502TASM/MMS by Maciej 'YTM/Elysium' Witkowiak
-;4-2-99
-
-;28-6-99 - ca65 port
-;macro 'sub' renamed to 'ssub' due to 65816 mnemonics
-
-;-------------------------------------------------------------------------
-
-.macro LoadB dest, value
- lda #value
- sta dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro LoadW dest, value
- LoadB dest+1, >(value)
- LoadB dest+0, <(value)
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro MoveB source, dest
- lda source
- sta dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro MoveW source, dest
- MoveB source+1, dest+1
- MoveB source+0, dest+0
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro add source
- clc
- adc source
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro AddB source, dest
- lda source
- add dest
- sta dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro AddW source, dest
- AddB source+0, dest+0
- lda source+1
- adc dest+1
- sta dest+1
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro AddVB value, dest
- lda dest
- clc
- adc #(value)
- sta dest
- .endmacro
-
-;-------------------------------------------------------------------------
-
-.macro AddVW value, dest
-.local Skip
- AddVB <(value), dest+0
- .if (>(value))=0
- bcc Skip
- inc dest+1
- .else
- lda #>(value)
- adc dest+1
- sta dest+1
- .endif
-Skip:
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro ssub source
- sec
- sbc source
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro SubB source, dest
- lda dest
- ssub source
- sta dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro SubW source, dest
- SubB source+0, dest+0
- lda dest+1
- sbc source+1
- sta dest+1
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro SubVW value, dest
- sec
- lda dest+0
- sbc #<(value)
- sta dest+0
- lda dest+1
- sbc #>(value)
- sta dest+1
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro CmpB source, dest
- lda source
- cmp dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro CmpBI source, immed
- lda source
- cmp #(immed)
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro CmpW source, dest
-.local Skip
- CmpB source+1, dest+1
- bne Skip
- CmpB source+0, dest+0
-Skip:
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro CmpWI source, immed
-.local Skip
- CmpBI source+1, >(immed)
- bne Skip
- CmpBI source+0, <(immed)
-Skip:
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro PushB source
- lda source
- pha
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro PushW source
- PushB source+1
- PushB source+0
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro PopB dest
- pla
- sta dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro PopW dest
- PopB dest+0
- PopB dest+1
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro smb bitNumber, dest
- pha
- lda #(1 << bitNumber)
- ora dest
- sta dest
- pla
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro smbf bitNumber, dest
- lda #(1 << bitNumber)
- ora dest
- sta dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro rmb bitNumber, dest
- pha
- lda #(1 << bitNumber) ^ $ff
- and dest
- sta dest
- pla
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro rmbf bitNumber, dest
- lda #(1 << bitNumber) ^ $ff
- and dest
- sta dest
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro bbs bitNumber, source, addr
-.local Skip
- php
- pha
- lda source
- and #(1 << bitNumber)
- beq Skip
- pla
- plp
- bra addr
-Skip: pla
- plp
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro bbsf bitNumber, source, addr
- .if bitNumber=7
- bit source
- bmi addr
- .else
- .if bitNumber=6
- bit source
- bvs addr
- .else
- lda source
- and #(1 << bitNumber)
- bne addr
- .endif
- .endif
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro bbr bitNumber, source, addr
-.local Skip
- php
- pha
- lda source
- and #(1 << bitNumber)
- bne Skip
- pla
- plp
- bra addr
-Skip: pla
- plp
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro bbrf bitNumber, source, addr
- .if bitNumber=7
- bit source
- bpl addr
- .else
- .if bitNumber=6
- bit source
- bvc addr
- .else
- lda source
- and #(1 << bitNumber)
- beq addr
- .endif
- .endif
-.endmacro
-
-;-------------------------------------------------------------------------
-
-;03.03.99 by Maciej Witkowiak
-
-;-------------------------------------------------------------------------
-
-.macro addv value
- clc
- adc #(value)
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro subv value
- sec
- sbc #(value)
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro bnex addr
- txa
- bne addr
-.endmacro
-
-;-------------------------------------------------------------------------
-
-.macro beqx addr
- txa
- beq addr
-.endmacro
-
-;-------------------------------------------------------------------------
--- /dev/null
+;
+;GEOS macros
+;reassembled for 6502TASM/MMS by Maciej 'YTM/Elysium' Witkowiak
+;4-2-99
+
+;28-6-99 - ca65 port
+;macro 'sub' renamed to 'ssub' due to 65816 mnemonics
+
+;-------------------------------------------------------------------------
+
+.macro LoadB dest, value
+ lda #value
+ sta dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro LoadW dest, value
+ LoadB dest+1, >(value)
+ LoadB dest+0, <(value)
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro MoveB source, dest
+ lda source
+ sta dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro MoveW source, dest
+ MoveB source+1, dest+1
+ MoveB source+0, dest+0
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro add source
+ clc
+ adc source
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro AddB source, dest
+ lda source
+ add dest
+ sta dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro AddW source, dest
+ AddB source+0, dest+0
+ lda source+1
+ adc dest+1
+ sta dest+1
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro AddVB value, dest
+ lda dest
+ clc
+ adc #(value)
+ sta dest
+ .endmacro
+
+;-------------------------------------------------------------------------
+
+.macro AddVW value, dest
+.local Skip
+ AddVB <(value), dest+0
+ .if (>(value))=0
+ bcc Skip
+ inc dest+1
+ .else
+ lda #>(value)
+ adc dest+1
+ sta dest+1
+ .endif
+Skip:
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro ssub source
+ sec
+ sbc source
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro SubB source, dest
+ lda dest
+ ssub source
+ sta dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro SubW source, dest
+ SubB source+0, dest+0
+ lda dest+1
+ sbc source+1
+ sta dest+1
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro SubVW value, dest
+ sec
+ lda dest+0
+ sbc #<(value)
+ sta dest+0
+ lda dest+1
+ sbc #>(value)
+ sta dest+1
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro CmpB source, dest
+ lda source
+ cmp dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro CmpBI source, immed
+ lda source
+ cmp #(immed)
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro CmpW source, dest
+.local Skip
+ CmpB source+1, dest+1
+ bne Skip
+ CmpB source+0, dest+0
+Skip:
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro CmpWI source, immed
+.local Skip
+ CmpBI source+1, >(immed)
+ bne Skip
+ CmpBI source+0, <(immed)
+Skip:
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro PushB source
+ lda source
+ pha
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro PushW source
+ PushB source+1
+ PushB source+0
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro PopB dest
+ pla
+ sta dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro PopW dest
+ PopB dest+0
+ PopB dest+1
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro smb bitNumber, dest
+ pha
+ lda #(1 << bitNumber)
+ ora dest
+ sta dest
+ pla
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro smbf bitNumber, dest
+ lda #(1 << bitNumber)
+ ora dest
+ sta dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro rmb bitNumber, dest
+ pha
+ lda #(1 << bitNumber) ^ $ff
+ and dest
+ sta dest
+ pla
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro rmbf bitNumber, dest
+ lda #(1 << bitNumber) ^ $ff
+ and dest
+ sta dest
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro bbs bitNumber, source, addr
+.local Skip
+ php
+ pha
+ lda source
+ and #(1 << bitNumber)
+ beq Skip
+ pla
+ plp
+ bra addr
+Skip: pla
+ plp
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro bbsf bitNumber, source, addr
+ .if bitNumber=7
+ bit source
+ bmi addr
+ .else
+ .if bitNumber=6
+ bit source
+ bvs addr
+ .else
+ lda source
+ and #(1 << bitNumber)
+ bne addr
+ .endif
+ .endif
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro bbr bitNumber, source, addr
+.local Skip
+ php
+ pha
+ lda source
+ and #(1 << bitNumber)
+ bne Skip
+ pla
+ plp
+ bra addr
+Skip: pla
+ plp
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro bbrf bitNumber, source, addr
+ .if bitNumber=7
+ bit source
+ bpl addr
+ .else
+ .if bitNumber=6
+ bit source
+ bvc addr
+ .else
+ lda source
+ and #(1 << bitNumber)
+ beq addr
+ .endif
+ .endif
+.endmacro
+
+;-------------------------------------------------------------------------
+
+;03.03.99 by Maciej Witkowiak
+
+;-------------------------------------------------------------------------
+
+.macro addv value
+ clc
+ adc #(value)
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro subv value
+ sec
+ sbc #(value)
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro bnex addr
+ txa
+ bne addr
+.endmacro
+
+;-------------------------------------------------------------------------
+
+.macro beqx addr
+ txa
+ beq addr
+.endmacro
+
+;-------------------------------------------------------------------------
.include "jumptab.inc"
.include "geossym.inc"
- .include "geosmac.ca65.inc"
+ .include "geosmac.inc"
_DrawLine:
tay
.include "../../libsrc/geos/inc/const.inc"
.include "../../libsrc/geos/inc/jumptab.inc"
.include "../../libsrc/geos/inc/geossym.inc"
- .include "../../libsrc/geos/inc/geosmac.ca65.inc"
+ .include "../../libsrc/geos/inc/geosmac.inc"
; import load addresses for all VLIR chains
; these labels are defined upon linking with ld65
.include "../../libsrc/geos/inc/const.inc"
.include "../../libsrc/geos/inc/jumptab.inc"
.include "../../libsrc/geos/inc/geossym.inc"
- .include "../../libsrc/geos/inc/geosmac.ca65.inc"
+ .include "../../libsrc/geos/inc/geosmac.inc"
; export names of functions that will be used in the main program
.include "../../libsrc/geos/inc/const.inc"
.include "../../libsrc/geos/inc/jumptab.inc"
.include "../../libsrc/geos/inc/geossym.inc"
- .include "../../libsrc/geos/inc/geosmac.ca65.inc"
+ .include "../../libsrc/geos/inc/geosmac.inc"
.export OVERLAY2_Function1
.export OVERLAY2_Function2