2016-09-07 17:49:21 +00:00
|
|
|
|
|
|
|
.macpack cpu
|
|
|
|
|
|
|
|
; step 1: try to assemble an instruction that's exclusive to this set
|
|
|
|
; (when possible)
|
|
|
|
|
|
|
|
.ifp02
|
|
|
|
lda #$ea
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.ifpsc02
|
|
|
|
jmp ($1234,x)
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.ifpc02
|
|
|
|
rmb0 $12
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.ifp816
|
|
|
|
xba
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.ifp4510
|
|
|
|
taz
|
|
|
|
.endif
|
|
|
|
|
2020-11-16 21:16:40 +00:00
|
|
|
.ifpdtv
|
2020-11-19 20:22:40 +00:00
|
|
|
sac #$00
|
2020-11-16 21:16:40 +00:00
|
|
|
.endif
|
|
|
|
|
2016-09-07 17:49:21 +00:00
|
|
|
|
|
|
|
; step 2: check for bitwise compatibility of instructions sets
|
|
|
|
; (made verbose for better reading with hexdump/hd(1))
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_NONE)
|
|
|
|
.byte 0,"CPU_ISET_NONE"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_6502)
|
|
|
|
.byte 0,"CPU_ISET_6502"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_6502X)
|
|
|
|
.byte 0,"CPU_ISET_6502X"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_65SC02)
|
|
|
|
.byte 0,"CPU_ISET_65SC02"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_65C02)
|
|
|
|
.byte 0,"CPU_ISET_65C02"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_65816)
|
|
|
|
.byte 0,"CPU_ISET_65816"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_SWEET16)
|
|
|
|
.byte 0,"CPU_ISET_SWEET16"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_HUC6280)
|
|
|
|
.byte 0,"CPU_ISET_HUC6280"
|
|
|
|
.endif
|
|
|
|
|
|
|
|
.if (.cpu .bitand CPU_ISET_4510)
|
|
|
|
.byte 0,"CPU_ISET_4510"
|
|
|
|
.endif
|
|
|
|
|
2020-11-16 21:16:40 +00:00
|
|
|
.if (.cpu .bitand CPU_ISET_6502DTV)
|
|
|
|
.byte 0,"CPU_ISET_6502DTV"
|
|
|
|
.endif
|
|
|
|
|