Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- BEQ_L .macro
- bne .local_label_in_macro_\@
- jmp \1
- .local_label_in_macro_\@
- .endm
- BNE_L .macro
- beq .local_label_in_macro_\@
- jmp \1
- .local_label_in_macro_\@
- .endm
- BCS_L .macro
- bcc .local_label_in_macro_\@
- jmp \1
- .local_label_in_macro_\@
- .endm
- BCC_L .macro
- bcs .local_label_in_macro_\@
- jmp \1
- .local_label_in_macro_\@
- .endm
- BPL_L .macro
- bmi .local_label_in_macro_\@
- jmp \1
- .local_label_in_macro_\@
- .endm
- BMI_L .macro
- bpl .local_label_in_macro_\@
- jmp \1
- .local_label_in_macro_\@
- .endm
- BNEJSR .macro
- beq .local_label_in_macro_\@
- jsr \1
- .local_label_in_macro_\@
- .endm
- BEQJSR .macro
- bne .local_label_in_macro_\@
- jsr \1
- .local_label_in_macro_\@
- .endm
- BCSJSR .macro
- bcc .local_label_in_macro_\@
- jsr \1
- .local_label_in_macro_\@
- .endm
- BCCJSR .macro
- bcs .local_label_in_macro_\@
- jsr \1
- .local_label_in_macro_\@
- .endm
- BPLJSR .macro
- bmi .local_label_in_macro_\@
- jsr \1
- .local_label_in_macro_\@
- .endm
- BMIJSR .macro
- bpl .local_label_in_macro_\@
- jsr \1
- .local_label_in_macro_\@
- .endm
- BEQRTS .macro
- bne .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- BNERTS .macro
- beq .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- BPLRTS .macro
- bmi .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- BMIRTS .macro
- bpl .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- BCSRTS .macro
- bcc .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- BCCRTS .macro
- bcs .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- BVSRTS .macro
- bvc .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- BVCRTS .macro
- bvs .local_label_in_macro_\@
- rts
- .local_label_in_macro_\@
- .endm
- SETBANK8000 .macro
- local_label_in_macro_\@:
- .org ((local_label_in_macro_\@&$1FFF)|$8000)
- .endm
- SETBANKA000 .macro
- local_label_in_macro_\@:
- .org ((local_label_in_macro_\@&$1FFF)|$A000)
- .endm
- LONG_JUMP_8000 .macro
- jsr LONG_JUMP_8000_BODY
- .dw ((((\1)-1)&$1FFF)|$8000)
- .db BANK(\1)
- .endm
- LONG_JUMP_8000_D .macro
- jsr LONG_JUMP_8000_BODY
- .dw ((((\1)-1)&$1FFF)|$8000)
- .db (\1>>16)
- .endm
- LONG_JUMP_A000 .macro
- jsr LONG_JUMP_A000_BODY
- .dw ((((\1)-1)&$1FFF)|$A000)
- .db BANK(\1)
- .endm
- LONG_JUMP_A000_D .macro
- jsr LONG_JUMP_A000_BODY
- .dw ((((\1&$FFFF)-1)&$1FFF)|$A000)
- .db (\1>>16)
- .endm
- LONG_CALL .macro
- jsr LONG_CALL_BODY
- .db HIGH ((\1)-1)
- .db LOW ((\1)-1)
- .db BANK(\1)+$80
- .endm
- LONG_CALL_D .macro
- jsr LONG_CALL_BODY
- .dw ((\1&$FFFF)-1)
- .db (\1>>16)
- .endm
- BANKORG_D .macro
- .bank (\1>>16)
- .org (\1&$FFFF)
- .endm
- BANKORG .macro
- .bank BANK(\1)
- .org (\1)
- .endm
- ORG_DELTA .macro
- .local_\@
- .org (.local_\@+\1)
- .endm
- INV_A .macro
- eor #$FF
- clc
- adc #$01
- .endm
- INV_A_CC .macro
- bcs .local_label_in_macro_\@
- INV_A
- .local_label_in_macro_\@
- .endm
- TYAX .macro
- tya
- tax
- .endm
- TXAY .macro
- txa
- tay
- .endm
- ASSEMBLING_BANK_INC .macro
- local_label_in_macro_\@:
- .bank (BANK(local_label_in_macro_\@)+1)
- .org $A000
- nop
- .endm
- ASSEMBLING_BANK_INC_NO_PADDING .macro
- local_label_in_macro_\@:
- .bank (BANK(local_label_in_macro_\@)+1)
- .org $A000
- .endm
- TRASH_GLOBAL_LABEL .macro
- TRASH_GLOBAL_LABEL_\@
- .endm
- END_BOUNDARY_TEST .macro
- CurrentPosition\@:
- .IF ((CurrentPosition\@)&$FFFF)>((\1)&$FFFF)
- .FAIL ;END_BOUNDARY_TEST \1
- .ENDIF
- .endm
- END_BOUNDARY_TEST_1FFF .macro
- CurrentPosition\@:
- .IF ((CurrentPosition\@)&$1FFF)>((\1)&$1FFF)
- .FAIL ;END_BOUNDARY_TEST \1
- .ENDIF
- .endm
- BANK_BOUNDARY_TEST .macro
- CurrentPosition\@:
- .IF (bank(CurrentPosition\@))>=(\1)
- .FAIL ;BANK_BOUNDARY_TEST \1
- .ENDIF
- .endm
- BANKORG_ROM .macro
- .bank ((\1-$10)/$2000)
- .org (((\1-$10)&$1FFF)|$8000)
- .endm
- END_BOUNDARY_TEST_ROM .macro
- CurrentPosition\@:
- .IF ((CurrentPosition\@)&$1FFF)>(((\1)-$10)&$1FFF)
- .FAIL ;END_BOUNDARY_TEST \1
- .ENDIF
- .endm
- DB4 .macro
- .db LOW(\1>>24)
- .db LOW(\1>>16)
- .db LOW(\1>>8)
- .db LOW(\1)
- .endm
- DB3 .macro
- .db LOW(\1>>16)
- .db LOW(\1>>8)
- .db LOW(\1)
- .endm
- DB2 .macro
- .db LOW(\1>>8)
- .db LOW(\1)
- .endm
- BANKORG_DB .macro
- BANKORG_D \1
- .db \2
- .endm
- DB_HI .macro
- .db HIGH(\1)
- .endm
- DB_LO .macro
- .db LOW(\1)
- .endm
- M_DBAddrLHSplit .macro
- .db LOW (\1)
- ORG_DELTA ((\2)-1)
- .db HIGH(\1)
- ORG_DELTA (-(\2))
- .endm
- M_DBAddrLHSplit_G .macro
- TRASH_GLOBAL_LABEL_\@:
- .db LOW (\1)
- ORG_DELTA ((\2)-1)
- .db HIGH(\1)
- ORG_DELTA (-(\2))
- .endm
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement