Reorganized test/asm
This commit is contained in:
BIN
test/asm/opcodes/4510-opcodes.ref
Normal file
BIN
test/asm/opcodes/4510-opcodes.ref
Normal file
Binary file not shown.
278
test/asm/opcodes/4510-opcodes.s
Normal file
278
test/asm/opcodes/4510-opcodes.s
Normal file
@@ -0,0 +1,278 @@
|
||||
.setcpu "4510"
|
||||
|
||||
brk
|
||||
ora ($05,x)
|
||||
cle
|
||||
see
|
||||
tsb $02
|
||||
ora $02
|
||||
asl $02
|
||||
rmb0 $02
|
||||
php
|
||||
ora #$01
|
||||
asl
|
||||
tsy
|
||||
tsb $1234
|
||||
ora $1234
|
||||
asl $1234
|
||||
bbr0 $02,*+$34
|
||||
|
||||
bpl *+$32
|
||||
ora ($06),y
|
||||
ora ($07),z
|
||||
lbpl *+$3133 ; bpl *+$3133
|
||||
trb $02
|
||||
ora $03,x
|
||||
asl $03,x
|
||||
rmb1 $02
|
||||
clc
|
||||
ora $1456,y
|
||||
inc
|
||||
inz
|
||||
trb $1234
|
||||
ora $1345,x
|
||||
asl $1345,x
|
||||
bbr1 $02,*+$34
|
||||
|
||||
jsr $1234
|
||||
and ($05,x)
|
||||
jsr ($2345)
|
||||
jsr ($2456,x)
|
||||
bit $02
|
||||
and $02
|
||||
rol $02
|
||||
rmb2 $02
|
||||
plp
|
||||
and #$01
|
||||
rol
|
||||
tys
|
||||
bit $1234
|
||||
and $1234
|
||||
rol $1234
|
||||
bbr2 $02,*+$34
|
||||
|
||||
bmi *+$32
|
||||
and ($06),y
|
||||
and ($07),z
|
||||
lbmi *+$3133 ; bmi *+$3133
|
||||
bit $03,x
|
||||
and $03,x
|
||||
rol $03,x
|
||||
rmb3 $02
|
||||
sec
|
||||
and $1456,y
|
||||
dec
|
||||
dez
|
||||
bit $1345,x
|
||||
and $1345,x
|
||||
rol $1345,x
|
||||
bbr3 $02,*+$34
|
||||
|
||||
rti
|
||||
eor ($05,x)
|
||||
neg
|
||||
asr
|
||||
asr $02
|
||||
eor $02
|
||||
lsr $02
|
||||
rmb4 $02
|
||||
pha
|
||||
eor #$01
|
||||
lsr
|
||||
taz
|
||||
jmp $1234
|
||||
eor $1234
|
||||
lsr $1234
|
||||
bbr4 $02,*+$34
|
||||
|
||||
bvc *+$32
|
||||
eor ($06),y
|
||||
eor ($07),z
|
||||
lbvc *+$3133 ; bvc *+$3133
|
||||
asr $03,x
|
||||
eor $03,x
|
||||
lsr $03,x
|
||||
rmb5 $02
|
||||
cli
|
||||
eor $1456,y
|
||||
phy
|
||||
tab
|
||||
map
|
||||
eor $1345,x
|
||||
lsr $1345,x
|
||||
bbr5 $02,*+$34
|
||||
|
||||
rts
|
||||
adc ($05,x)
|
||||
rtn #$09
|
||||
bsr *+$3133
|
||||
stz $02
|
||||
adc $02
|
||||
ror $02
|
||||
rmb6 $02
|
||||
pla
|
||||
adc #$01
|
||||
ror
|
||||
tza
|
||||
jmp ($2345)
|
||||
adc $1234
|
||||
ror $1234
|
||||
bbr6 $02,*+$34
|
||||
|
||||
bvs *+$32
|
||||
adc ($06),y
|
||||
adc ($07),z
|
||||
lbvs *+$3133 ; bvs *+$3133
|
||||
stz $03,x
|
||||
adc $03,x
|
||||
ror $03,x
|
||||
rmb7 $02
|
||||
sei
|
||||
adc $1456,y
|
||||
ply
|
||||
tba
|
||||
jmp ($2456,x)
|
||||
adc $1345,x
|
||||
ror $1345,x
|
||||
bbr7 $02,*+$34
|
||||
|
||||
bra *+$32
|
||||
sta ($05,x)
|
||||
sta ($0f,s),y
|
||||
sta ($0f,sp),y
|
||||
lbra *+$3133 ; bra *+$3133
|
||||
sty $02
|
||||
sta $02
|
||||
stx $02
|
||||
smb0 $02
|
||||
dey
|
||||
bit #$01
|
||||
txa
|
||||
sty $1345,x
|
||||
sty $1234
|
||||
sta $1234
|
||||
stx $1234
|
||||
bbs0 $02,*+$34
|
||||
|
||||
bcc *+$32
|
||||
sta ($06),y
|
||||
sta ($07),z
|
||||
lbcc *+$3133 ; bcc *+$3133
|
||||
sty $03,x
|
||||
sta $03,x
|
||||
stx $04,y
|
||||
smb1 $02
|
||||
tya
|
||||
sta $1456,y
|
||||
txs
|
||||
stx $1456,y
|
||||
stz $1234
|
||||
sta $1345,x
|
||||
stz $1345,x
|
||||
bbs1 $02,*+$34
|
||||
|
||||
ldy #$01
|
||||
lda ($05,x)
|
||||
ldx #$01
|
||||
ldz #$01
|
||||
ldy $02
|
||||
lda $02
|
||||
ldx $02
|
||||
smb2 $02
|
||||
tay
|
||||
lda #$01
|
||||
tax
|
||||
ldz $1234
|
||||
ldy $1234
|
||||
lda $1234
|
||||
ldx $1234
|
||||
bbs2 $02,*+$34
|
||||
|
||||
bcs *+$32
|
||||
lda ($06),y
|
||||
lda ($07),z
|
||||
lbcs *+$3133 ; bcs *+$3133
|
||||
ldy $03,x
|
||||
lda $03,x
|
||||
ldx $04,y
|
||||
smb3 $02
|
||||
clv
|
||||
lda $1456,y
|
||||
tsx
|
||||
ldz $1345,x
|
||||
ldy $1345,x
|
||||
lda $1345,x
|
||||
ldx $1456,y
|
||||
bbs3 $02,*+$34
|
||||
|
||||
cpy #$01
|
||||
cmp ($05,x)
|
||||
cpz #$01
|
||||
dew $02
|
||||
cpy $02
|
||||
cmp $02
|
||||
dec $02
|
||||
smb4 $02
|
||||
iny
|
||||
cmp #$01
|
||||
dex
|
||||
asw $1234
|
||||
cpy $1234
|
||||
cmp $1234
|
||||
dec $1234
|
||||
bbs4 $02,*+$34
|
||||
|
||||
bne *+$32
|
||||
cmp ($06),y
|
||||
cmp ($07),z
|
||||
lbne *+$3133 ; bne *+$3133
|
||||
cpz $02
|
||||
cmp $03,x
|
||||
dec $03,x
|
||||
smb5 $02
|
||||
cld
|
||||
cmp $1456,y
|
||||
phx
|
||||
phz
|
||||
cpz $1234
|
||||
cmp $1345,x
|
||||
dec $1345,x
|
||||
bbs5 $02,*+$34
|
||||
|
||||
cpx #$01
|
||||
sbc ($05,x)
|
||||
lda ($0f,s),y
|
||||
lda ($0f,sp),y
|
||||
inw $02
|
||||
cpx $02
|
||||
sbc $02
|
||||
inc $02
|
||||
smb6 $02
|
||||
inx
|
||||
sbc #$01
|
||||
eom
|
||||
nop
|
||||
row $1234
|
||||
cpx $1234
|
||||
sbc $1234
|
||||
inc $1234
|
||||
bbs6 $02,*+$34
|
||||
|
||||
beq *+$32
|
||||
sbc ($06),y
|
||||
sbc ($07),z
|
||||
lbeq *+$3133 ; beq *+$3133
|
||||
phd #$089a
|
||||
phw #$089a
|
||||
sbc $03,x
|
||||
inc $03,x
|
||||
smb7 $02
|
||||
sed
|
||||
sbc $1456,y
|
||||
plx
|
||||
plz
|
||||
phd $1234
|
||||
phw $1234
|
||||
sbc $1345,x
|
||||
inc $1345,x
|
||||
bbs7 $02,*+$34
|
||||
BIN
test/asm/opcodes/6502-opcodes.ref
Normal file
BIN
test/asm/opcodes/6502-opcodes.ref
Normal file
Binary file not shown.
257
test/asm/opcodes/6502-opcodes.s
Normal file
257
test/asm/opcodes/6502-opcodes.s
Normal file
@@ -0,0 +1,257 @@
|
||||
.setcpu "6502"
|
||||
|
||||
brk
|
||||
ora ($12,x)
|
||||
.byte $02
|
||||
.byte $03
|
||||
.byte $04
|
||||
ora $12
|
||||
asl $12
|
||||
.byte $07
|
||||
php
|
||||
ora #$12
|
||||
asl a
|
||||
.byte $0B
|
||||
.byte $0C
|
||||
ora $3456
|
||||
asl $3456
|
||||
.byte $0F
|
||||
bpl *+122
|
||||
ora ($12),y
|
||||
.byte $12
|
||||
.byte $13
|
||||
.byte $14
|
||||
ora $12,x
|
||||
asl $12,x
|
||||
.byte $17
|
||||
clc
|
||||
ora $3456,y
|
||||
.byte $1A
|
||||
.byte $1B
|
||||
.byte $1C
|
||||
ora $3456,x
|
||||
asl $3456,x
|
||||
.byte $1F
|
||||
jsr $3456
|
||||
and ($12,x)
|
||||
.byte $22
|
||||
.byte $23
|
||||
bit $12
|
||||
and $12
|
||||
rol $12
|
||||
.byte $27
|
||||
plp
|
||||
and #$12
|
||||
rol a
|
||||
.byte $2B
|
||||
bit $3456
|
||||
and $3456
|
||||
rol $3456
|
||||
.byte $2F
|
||||
bmi *+122
|
||||
and ($12),y
|
||||
.byte $32
|
||||
.byte $33
|
||||
.byte $34
|
||||
and $12,x
|
||||
rol $12,x
|
||||
.byte $37
|
||||
sec
|
||||
and $3456,y
|
||||
.byte $3A
|
||||
.byte $3B
|
||||
.byte $3C
|
||||
and $3456,x
|
||||
rol $3456,x
|
||||
.byte $3F
|
||||
rti
|
||||
eor ($12,x)
|
||||
.byte $42
|
||||
.byte $43
|
||||
.byte $44
|
||||
eor $12
|
||||
lsr $12
|
||||
.byte $47
|
||||
pha
|
||||
eor #$12
|
||||
lsr a
|
||||
.byte $4B
|
||||
jmp $3456
|
||||
eor $3456
|
||||
lsr $3456
|
||||
.byte $4F
|
||||
bvc *+122
|
||||
eor ($12),y
|
||||
.byte $52
|
||||
.byte $53
|
||||
.byte $54
|
||||
eor $12,x
|
||||
lsr $12,x
|
||||
.byte $57
|
||||
cli
|
||||
eor $3456,y
|
||||
.byte $5A
|
||||
.byte $5B
|
||||
.byte $5C
|
||||
eor $3456,x
|
||||
lsr $3456,x
|
||||
.byte $5F
|
||||
rts
|
||||
adc ($12,x)
|
||||
.byte $62
|
||||
.byte $63
|
||||
.byte $64
|
||||
adc $12
|
||||
ror $12
|
||||
.byte $67
|
||||
pla
|
||||
adc #$12
|
||||
ror a
|
||||
.byte $6B
|
||||
jmp ($3456)
|
||||
adc $3456
|
||||
ror $3456
|
||||
.byte $6F
|
||||
bvs *+122
|
||||
adc ($12),y
|
||||
.byte $72
|
||||
.byte $73
|
||||
.byte $74
|
||||
adc $12,x
|
||||
ror $12,x
|
||||
.byte $77
|
||||
sei
|
||||
adc $3456,y
|
||||
.byte $7A
|
||||
.byte $7B
|
||||
.byte $7C
|
||||
adc $3456,x
|
||||
ror $3456,x
|
||||
.byte $7F
|
||||
.byte $80
|
||||
sta ($12,x)
|
||||
.byte $82
|
||||
.byte $83
|
||||
sty $12
|
||||
sta $12
|
||||
stx $12
|
||||
.byte $87
|
||||
dey
|
||||
.byte $89
|
||||
txa
|
||||
.byte $8B
|
||||
sty $3456
|
||||
sta $3456
|
||||
stx $3456
|
||||
.byte $8F
|
||||
bcc *+122
|
||||
sta ($12),y
|
||||
.byte $92
|
||||
.byte $93
|
||||
sty $12,x
|
||||
sta $12,x
|
||||
stx $12,y
|
||||
.byte $97
|
||||
tya
|
||||
sta $3456,y
|
||||
txs
|
||||
.byte $9B
|
||||
.byte $9C
|
||||
sta $3456,x
|
||||
.byte $9E
|
||||
.byte $9F
|
||||
ldy #$12
|
||||
lda ($12,x)
|
||||
ldx #$12
|
||||
.byte $A3
|
||||
ldy $12
|
||||
lda $12
|
||||
ldx $12
|
||||
.byte $A7
|
||||
tay
|
||||
lda #$12
|
||||
tax
|
||||
.byte $AB
|
||||
ldy $3456
|
||||
lda $3456
|
||||
ldx $3456
|
||||
.byte $AF
|
||||
bcs *+122
|
||||
lda ($12),y
|
||||
.byte $B2
|
||||
.byte $B3
|
||||
ldy $12,x
|
||||
lda $12,x
|
||||
ldx $12,y
|
||||
.byte $B7
|
||||
clv
|
||||
lda $3456,y
|
||||
tsx
|
||||
.byte $BB
|
||||
ldy $3456,x
|
||||
lda $3456,x
|
||||
ldx $3456,y
|
||||
.byte $BF
|
||||
cpy #$12
|
||||
cmp ($12,x)
|
||||
.byte $C2
|
||||
.byte $C3
|
||||
cpy $12
|
||||
cmp $12
|
||||
dec $12
|
||||
.byte $C7
|
||||
iny
|
||||
cmp #$12
|
||||
dex
|
||||
.byte $CB
|
||||
cpy $3456
|
||||
cmp $3456
|
||||
dec $3456
|
||||
.byte $CF
|
||||
bne *+122
|
||||
cmp ($12),y
|
||||
.byte $D2
|
||||
.byte $D3
|
||||
.byte $D4
|
||||
cmp $12,x
|
||||
dec $12,x
|
||||
.byte $D7
|
||||
cld
|
||||
cmp $3456,y
|
||||
.byte $DA
|
||||
.byte $DB
|
||||
.byte $DC
|
||||
cmp $3456,x
|
||||
dec $3456,x
|
||||
.byte $DF
|
||||
cpx #$12
|
||||
sbc ($12,x)
|
||||
.byte $E2
|
||||
.byte $E3
|
||||
cpx $12
|
||||
sbc $12
|
||||
inc $12
|
||||
.byte $E7
|
||||
inx
|
||||
sbc #$12
|
||||
.byte $EB
|
||||
cpx $3456
|
||||
sbc $3456
|
||||
inc $3456
|
||||
.byte $EF
|
||||
beq *+122
|
||||
sbc ($12),y
|
||||
.byte $F2
|
||||
.byte $F3
|
||||
.byte $F4
|
||||
sbc $12,x
|
||||
inc $12,x
|
||||
.byte $F7
|
||||
sed
|
||||
sbc $3456,y
|
||||
.byte $FA
|
||||
.byte $FB
|
||||
.byte $FC
|
||||
sbc $3456,x
|
||||
inc $3456,x
|
||||
.byte $FF
|
||||
BIN
test/asm/opcodes/6502dtv-opcodes.ref
Normal file
BIN
test/asm/opcodes/6502dtv-opcodes.ref
Normal file
Binary file not shown.
258
test/asm/opcodes/6502dtv-opcodes.s
Normal file
258
test/asm/opcodes/6502dtv-opcodes.s
Normal file
@@ -0,0 +1,258 @@
|
||||
.setcpu "6502DTV"
|
||||
|
||||
brk
|
||||
ora ($12,x)
|
||||
.byte $02
|
||||
.byte $03
|
||||
nop $12
|
||||
ora $12
|
||||
asl $12
|
||||
.byte $07
|
||||
php
|
||||
ora #$12
|
||||
asl a
|
||||
anc #$12
|
||||
nop $3456
|
||||
ora $3456
|
||||
asl $3456
|
||||
.byte $0f
|
||||
bpl *+122
|
||||
ora ($12),y
|
||||
bra *+122
|
||||
.byte $13
|
||||
nop $12,x
|
||||
ora $12,x
|
||||
asl $12,x
|
||||
.byte $17
|
||||
clc
|
||||
ora $3456,y
|
||||
.byte $1a ; nop
|
||||
.byte $1b
|
||||
nop $3456,x
|
||||
ora $3456,x
|
||||
asl $3456,x
|
||||
.byte $1f
|
||||
jsr $3456
|
||||
and ($12,x)
|
||||
.byte $22
|
||||
rla ($12,x)
|
||||
bit $12
|
||||
and $12
|
||||
rol $12
|
||||
rla $12
|
||||
plp
|
||||
and #$12
|
||||
rol a
|
||||
.byte $2b,$12 ; anc #$12
|
||||
bit $3456
|
||||
and $3456
|
||||
rol $3456
|
||||
rla $3456
|
||||
bmi *+122
|
||||
and ($12),y
|
||||
sac #$12
|
||||
rla ($12),y
|
||||
.byte $34,$12 ; nop $12,x
|
||||
and $12,x
|
||||
rol $12,x
|
||||
rla $12,x
|
||||
sec
|
||||
and $3456,y
|
||||
.byte $3a ; nop
|
||||
rla $3456,y
|
||||
.byte $3c,$56,$34 ; nop $3456,x
|
||||
and $3456,x
|
||||
rol $3456,x
|
||||
rla $3456,x
|
||||
rti
|
||||
eor ($12,x)
|
||||
sir #$12
|
||||
.byte $43
|
||||
.byte $44,$12 ; nop $12
|
||||
eor $12
|
||||
lsr $12
|
||||
.byte $47
|
||||
pha
|
||||
eor #$12
|
||||
lsr a
|
||||
alr #$12
|
||||
jmp $3456
|
||||
eor $3456
|
||||
lsr $3456
|
||||
.byte $4f
|
||||
bvc *+122
|
||||
eor ($12),y
|
||||
.byte $52
|
||||
.byte $53
|
||||
.byte $54,$12 ; nop $12,x
|
||||
eor $12,x
|
||||
lsr $12,x
|
||||
.byte $57
|
||||
cli
|
||||
eor $3456,y
|
||||
.byte $5a ; nop
|
||||
.byte $5b
|
||||
.byte $5c,$56,$34 ; nop $3456,x
|
||||
eor $3456,x
|
||||
lsr $3456,x
|
||||
.byte $5f
|
||||
rts
|
||||
adc ($12,x)
|
||||
.byte $62
|
||||
rra ($12,x)
|
||||
.byte $64,$12 ; nop $12
|
||||
adc $12
|
||||
ror $12
|
||||
rra $12
|
||||
pla
|
||||
adc #$12
|
||||
ror a
|
||||
arr #$12
|
||||
jmp ($3456)
|
||||
adc $3456
|
||||
ror $3456
|
||||
rra $3456
|
||||
bvs *+122
|
||||
adc ($12),y
|
||||
.byte $72
|
||||
rra ($12),y
|
||||
.byte $74,$12 ; nop $12,x
|
||||
adc $12,x
|
||||
ror $12,x
|
||||
rra $12,x
|
||||
sei
|
||||
adc $3456,y
|
||||
.byte $7a ; nop
|
||||
rra $3456,y
|
||||
.byte $7c,$56,$34 ; nop $3456,x
|
||||
adc $3456,x
|
||||
ror $3456,x
|
||||
rra $3456,x
|
||||
nop #$12
|
||||
sta ($12,x)
|
||||
.byte $82,$12 ; nop #$12
|
||||
.byte $83
|
||||
sty $12
|
||||
sta $12
|
||||
stx $12
|
||||
.byte $87
|
||||
dey
|
||||
.byte $89,$12 ; nop #$12
|
||||
txa
|
||||
.byte $8b
|
||||
sty $3456
|
||||
sta $3456
|
||||
stx $3456
|
||||
.byte $8f
|
||||
bcc *+122
|
||||
sta ($12),y
|
||||
.byte $92
|
||||
.byte $93
|
||||
sty $12,x
|
||||
sta $12,x
|
||||
stx $12,y
|
||||
.byte $97
|
||||
tya
|
||||
sta $3456,y
|
||||
txs
|
||||
.byte $9b
|
||||
shy $3456,x
|
||||
sta $3456,x
|
||||
shx $3456,y
|
||||
.byte $9f
|
||||
ldy #$12
|
||||
lda ($12,x)
|
||||
ldx #$12
|
||||
lax ($12,x)
|
||||
ldy $12
|
||||
lda $12
|
||||
ldx $12
|
||||
lax $12
|
||||
tay
|
||||
lda #$12
|
||||
tax
|
||||
lax #$12
|
||||
ldy $3456
|
||||
lda $3456
|
||||
ldx $3456
|
||||
lax $3456
|
||||
bcs *+122
|
||||
lda ($12),y
|
||||
.byte $b2
|
||||
lax ($12),y
|
||||
ldy $12,x
|
||||
lda $12,x
|
||||
ldx $12,y
|
||||
lax $12,y
|
||||
clv
|
||||
lda $3456,y
|
||||
tsx
|
||||
las $3456,y
|
||||
ldy $3456,x
|
||||
lda $3456,x
|
||||
ldx $3456,y
|
||||
lax $3456,y
|
||||
cpy #$12
|
||||
cmp ($12,x)
|
||||
.byte $c2,$12 ; nop #$12
|
||||
.byte $c3
|
||||
cpy $12
|
||||
cmp $12
|
||||
dec $12
|
||||
.byte $c7
|
||||
iny
|
||||
cmp #$12
|
||||
dex
|
||||
axs #$12
|
||||
cpy $3456
|
||||
cmp $3456
|
||||
dec $3456
|
||||
.byte $cf
|
||||
bne *+122
|
||||
cmp ($12),y
|
||||
.byte $d2
|
||||
.byte $d3
|
||||
.byte $d4,$12 ; nop $12,x
|
||||
cmp $12,x
|
||||
dec $12,x
|
||||
.byte $d7
|
||||
cld
|
||||
cmp $3456,y
|
||||
.byte $da ; nop
|
||||
.byte $db
|
||||
.byte $dc,$56,$34 ; nop $3456,x
|
||||
cmp $3456,x
|
||||
dec $3456,x
|
||||
.byte $df
|
||||
cpx #$12
|
||||
sbc ($12,x)
|
||||
.byte $e2,$12 ; nop #$12
|
||||
.byte $e3
|
||||
cpx $12
|
||||
sbc $12
|
||||
inc $12
|
||||
.byte $e7
|
||||
inx
|
||||
sbc #$12
|
||||
nop
|
||||
.byte $eb,$12 ; sbc #$12
|
||||
cpx $3456
|
||||
sbc $3456
|
||||
inc $3456
|
||||
.byte $ef
|
||||
beq *+122
|
||||
sbc ($12),y
|
||||
.byte $f2
|
||||
.byte $f3
|
||||
.byte $f4,$12 ; nop $12,x
|
||||
sbc $12,x
|
||||
inc $12,x
|
||||
.byte $f7
|
||||
sed
|
||||
sbc $3456,y
|
||||
.byte $fa ; nop
|
||||
.byte $fb
|
||||
.byte $fc,$56,$34 ; nop $3456,x
|
||||
sbc $3456,x
|
||||
inc $3456,x
|
||||
.byte $ff
|
||||
BIN
test/asm/opcodes/6502x-opcodes.ref
Normal file
BIN
test/asm/opcodes/6502x-opcodes.ref
Normal file
Binary file not shown.
258
test/asm/opcodes/6502x-opcodes.s
Normal file
258
test/asm/opcodes/6502x-opcodes.s
Normal file
@@ -0,0 +1,258 @@
|
||||
.setcpu "6502X"
|
||||
|
||||
brk
|
||||
ora ($12,x)
|
||||
jam
|
||||
slo ($12,x)
|
||||
nop $12
|
||||
ora $12
|
||||
asl $12
|
||||
slo $12
|
||||
php
|
||||
ora #$12
|
||||
asl a
|
||||
anc #$12
|
||||
nop $3456
|
||||
ora $3456
|
||||
asl $3456
|
||||
slo $3456
|
||||
bpl *+122
|
||||
ora ($12),y
|
||||
.byte $12 ; jam
|
||||
slo ($12),y
|
||||
nop $12,x
|
||||
ora $12,x
|
||||
asl $12,x
|
||||
slo $12,x
|
||||
clc
|
||||
ora $3456,y
|
||||
.byte $1a ; nop
|
||||
slo $3456,y
|
||||
nop $3456,x
|
||||
ora $3456,x
|
||||
asl $3456,x
|
||||
slo $3456,x
|
||||
jsr $3456
|
||||
and ($12,x)
|
||||
.byte $22 ; jam
|
||||
rla ($12,x)
|
||||
bit $12
|
||||
and $12
|
||||
rol $12
|
||||
rla $12
|
||||
plp
|
||||
and #$12
|
||||
rol a
|
||||
.byte $2b ; anc #$12
|
||||
bit $3456
|
||||
and $3456
|
||||
rol $3456
|
||||
rla $3456
|
||||
bmi *+122
|
||||
and ($12),y
|
||||
.byte $32 ; jam
|
||||
rla ($12),y
|
||||
.byte $34,$12 ; nop $12,x
|
||||
and $12,x
|
||||
rol $12,x
|
||||
rla $12,x
|
||||
sec
|
||||
and $3456,y
|
||||
.byte $3a ; nop
|
||||
rla $3456,y
|
||||
.byte $3c,$56,$34 ; nop $3456,x
|
||||
and $3456,x
|
||||
rol $3456,x
|
||||
rla $3456,x
|
||||
rti
|
||||
eor ($12,x)
|
||||
.byte $42 ; jam
|
||||
sre ($12,x)
|
||||
.byte $44,$12 ; nop $12
|
||||
eor $12
|
||||
lsr $12
|
||||
sre $12
|
||||
pha
|
||||
eor #$12
|
||||
lsr a
|
||||
alr #$12
|
||||
jmp $3456
|
||||
eor $3456
|
||||
lsr $3456
|
||||
sre $3456
|
||||
bvc *+122
|
||||
eor ($12),y
|
||||
.byte $52 ; jam
|
||||
sre ($12),y
|
||||
.byte $54,$12 ; nop $12,x
|
||||
eor $12,x
|
||||
lsr $12,x
|
||||
sre $12,x
|
||||
cli
|
||||
eor $3456,y
|
||||
.byte $5a ; nop
|
||||
sre $3456,y
|
||||
nop $3456,x
|
||||
eor $3456,x
|
||||
lsr $3456,x
|
||||
sre $3456,x
|
||||
rts
|
||||
adc ($12,x)
|
||||
.byte $62 ; jam
|
||||
rra ($12,x)
|
||||
.byte $64,$12 ; nop $12
|
||||
adc $12
|
||||
ror $12
|
||||
rra $12
|
||||
pla
|
||||
adc #$12
|
||||
ror a
|
||||
arr #$12
|
||||
jmp ($3456)
|
||||
adc $3456
|
||||
ror $3456
|
||||
rra $3456
|
||||
bvs *+122
|
||||
adc ($12),y
|
||||
.byte $72 ; jam
|
||||
rra ($12),y
|
||||
.byte $74,$12 ; nop $12,x
|
||||
adc $12,x
|
||||
ror $12,x
|
||||
rra $12,x
|
||||
sei
|
||||
adc $3456,y
|
||||
.byte $7a ; nop
|
||||
rra $3456,y
|
||||
.byte $7c,$56,$34 ; nop $3456,x
|
||||
adc $3456,x
|
||||
ror $3456,x
|
||||
rra $3456,x
|
||||
nop #$12
|
||||
sta ($12,x)
|
||||
.byte $82,$12 ; nop #$12
|
||||
sax ($12,x)
|
||||
sty $12
|
||||
sta $12
|
||||
stx $12
|
||||
sax $12
|
||||
dey
|
||||
.byte $89,$12 ; nop #$12
|
||||
txa
|
||||
.byte $8b,$12 ; xaa #$12
|
||||
sty $3456
|
||||
sta $3456
|
||||
stx $3456
|
||||
sax $3456
|
||||
bcc *+122
|
||||
sta ($12),y
|
||||
.byte $92 ; jam
|
||||
.byte $93,$12 ; ahx ($12),y
|
||||
sty $12,x
|
||||
sta $12,x
|
||||
stx $12,y
|
||||
sax $12,y
|
||||
tya
|
||||
sta $3456,y
|
||||
txs
|
||||
tas $3456,y
|
||||
shy $3456,x
|
||||
sta $3456,x
|
||||
shx $3456,y
|
||||
.byte $9f,$56,$34 ; ahx $3456,y
|
||||
ldy #$12
|
||||
lda ($12,x)
|
||||
ldx #$12
|
||||
lax ($12,x)
|
||||
ldy $12
|
||||
lda $12
|
||||
ldx $12
|
||||
lax $12
|
||||
tay
|
||||
lda #$12
|
||||
tax
|
||||
lax #$12
|
||||
ldy $3456
|
||||
lda $3456
|
||||
ldx $3456
|
||||
lax $3456
|
||||
bcs *+122
|
||||
lda ($12),y
|
||||
.byte $b2 ; jam
|
||||
lax ($12),y
|
||||
ldy $12,x
|
||||
lda $12,x
|
||||
ldx $12,y
|
||||
lax $12,y
|
||||
clv
|
||||
lda $3456,y
|
||||
tsx
|
||||
las $3456,y
|
||||
ldy $3456,x
|
||||
lda $3456,x
|
||||
ldx $3456,y
|
||||
lax $3456,y
|
||||
cpy #$12
|
||||
cmp ($12,x)
|
||||
.byte $c2,$12 ; nop #$12
|
||||
dcp ($12,x)
|
||||
cpy $12
|
||||
cmp $12
|
||||
dec $12
|
||||
dcp $12
|
||||
iny
|
||||
cmp #$12
|
||||
dex
|
||||
axs #$12
|
||||
cpy $3456
|
||||
cmp $3456
|
||||
dec $3456
|
||||
dcp $3456
|
||||
bne *+122
|
||||
cmp ($12),y
|
||||
.byte $d2 ; jam
|
||||
dcp ($12),y
|
||||
.byte $d4,$12 ; nop $12,x
|
||||
cmp $12,x
|
||||
dec $12,x
|
||||
dcp $12,x
|
||||
cld
|
||||
cmp $3456,y
|
||||
.byte $da ; nop
|
||||
dcp $3456,y
|
||||
.byte $dc,$56,$34 ; nop $3456,x
|
||||
cmp $3456,x
|
||||
dec $3456,x
|
||||
dcp $3456,x
|
||||
cpx #$12
|
||||
sbc ($12,x)
|
||||
.byte $e2,$12 ; nop #$12
|
||||
isc ($12,x)
|
||||
cpx $12
|
||||
sbc $12
|
||||
inc $12
|
||||
isc $12
|
||||
inx
|
||||
sbc #$12
|
||||
nop
|
||||
.byte $eb ; nop
|
||||
cpx $3456
|
||||
sbc $3456
|
||||
inc $3456
|
||||
isc $3456
|
||||
beq *+122
|
||||
sbc ($12),y
|
||||
.byte $f2 ; jam
|
||||
isc ($12),y
|
||||
.byte $f4,$12 ; nop $12,x
|
||||
sbc $12,x
|
||||
inc $12,x
|
||||
isc $12,x
|
||||
sed
|
||||
sbc $3456,y
|
||||
.byte $fa ; nop
|
||||
isc $3456,y
|
||||
.byte $fc,$56,$34 ; nop $3456,x
|
||||
sbc $3456,x
|
||||
inc $3456,x
|
||||
isc $3456,x
|
||||
BIN
test/asm/opcodes/65c02-opcodes.ref
Normal file
BIN
test/asm/opcodes/65c02-opcodes.ref
Normal file
Binary file not shown.
258
test/asm/opcodes/65c02-opcodes.s
Normal file
258
test/asm/opcodes/65c02-opcodes.s
Normal file
@@ -0,0 +1,258 @@
|
||||
.setcpu "65C02"
|
||||
|
||||
brk
|
||||
ora ($12,x)
|
||||
.byte $02
|
||||
.byte $03
|
||||
tsb $12
|
||||
ora $12
|
||||
asl $12
|
||||
rmb0 $12
|
||||
php
|
||||
ora #$12
|
||||
asl a
|
||||
.byte $0B
|
||||
tsb $3456
|
||||
ora $3456
|
||||
asl $3456
|
||||
bbr0 $12,*+122
|
||||
bpl *+122
|
||||
ora ($12),y
|
||||
ora ($12)
|
||||
.byte $13
|
||||
trb $12
|
||||
ora $12,x
|
||||
asl $12,x
|
||||
rmb1 $12
|
||||
clc
|
||||
ora $3456,y
|
||||
inc a
|
||||
.byte $1B
|
||||
trb $3456
|
||||
ora $3456,x
|
||||
asl $3456,x
|
||||
bbr1 $12,*+122
|
||||
jsr $3456
|
||||
and ($12,x)
|
||||
.byte $22
|
||||
.byte $23
|
||||
bit $12
|
||||
and $12
|
||||
rol $12
|
||||
rmb2 $12
|
||||
plp
|
||||
and #$12
|
||||
rol a
|
||||
.byte $2B
|
||||
bit $3456
|
||||
and $3456
|
||||
rol $3456
|
||||
bbr2 $12,*+122
|
||||
bmi *+122
|
||||
and ($12),y
|
||||
and ($12)
|
||||
.byte $33
|
||||
bit $12,x
|
||||
and $12,x
|
||||
rol $12,x
|
||||
rmb3 $12
|
||||
sec
|
||||
and $3456,y
|
||||
dec a
|
||||
.byte $3B
|
||||
bit $3456,x
|
||||
and $3456,x
|
||||
rol $3456,x
|
||||
bbr3 $12,*+122
|
||||
rti
|
||||
eor ($12,x)
|
||||
.byte $42
|
||||
.byte $43
|
||||
.byte $44
|
||||
eor $12
|
||||
lsr $12
|
||||
rmb4 $12
|
||||
pha
|
||||
eor #$12
|
||||
lsr a
|
||||
.byte $4B
|
||||
jmp $3456
|
||||
eor $3456
|
||||
lsr $3456
|
||||
bbr4 $12,*+122
|
||||
bvc *+122
|
||||
eor ($12),y
|
||||
eor ($12)
|
||||
.byte $53
|
||||
.byte $54
|
||||
eor $12,x
|
||||
lsr $12,x
|
||||
rmb5 $12
|
||||
cli
|
||||
eor $3456,y
|
||||
phy
|
||||
.byte $5B
|
||||
.byte $5C
|
||||
eor $3456,x
|
||||
lsr $3456,x
|
||||
bbr5 $12,*+122
|
||||
rts
|
||||
adc ($12,x)
|
||||
.byte $62
|
||||
.byte $63
|
||||
stz $12
|
||||
adc $12
|
||||
ror $12
|
||||
rmb6 $12
|
||||
pla
|
||||
adc #$12
|
||||
ror a
|
||||
.byte $6B
|
||||
jmp ($3456)
|
||||
adc $3456
|
||||
ror $3456
|
||||
bbr6 $12,*+122
|
||||
bvs *+122
|
||||
adc ($12),y
|
||||
adc ($12)
|
||||
.byte $73
|
||||
stz $12,x
|
||||
adc $12,x
|
||||
ror $12,x
|
||||
rmb7 $12
|
||||
sei
|
||||
adc $3456,y
|
||||
ply
|
||||
.byte $7B
|
||||
jmp ($3456,x)
|
||||
adc $3456,x
|
||||
ror $3456,x
|
||||
bbr7 $12,*+122
|
||||
bra *+122
|
||||
sta ($12,x)
|
||||
.byte $82
|
||||
.byte $83
|
||||
sty $12
|
||||
sta $12
|
||||
stx $12
|
||||
smb0 $12
|
||||
dey
|
||||
bit #$12
|
||||
txa
|
||||
.byte $8B
|
||||
sty $3456
|
||||
sta $3456
|
||||
stx $3456
|
||||
bbs0 $12,*+122
|
||||
bcc *+122
|
||||
sta ($12),y
|
||||
sta ($12)
|
||||
.byte $93
|
||||
sty $12,x
|
||||
sta $12,x
|
||||
stx $12,y
|
||||
smb1 $12
|
||||
tya
|
||||
sta $3456,y
|
||||
txs
|
||||
.byte $9B
|
||||
stz $3456
|
||||
sta $3456,x
|
||||
stz $3456,x
|
||||
bbs1 $12,*+122
|
||||
ldy #$12
|
||||
lda ($12,x)
|
||||
ldx #$12
|
||||
.byte $A3
|
||||
ldy $12
|
||||
lda $12
|
||||
ldx $12
|
||||
smb2 $12
|
||||
tay
|
||||
lda #$12
|
||||
tax
|
||||
.byte $AB
|
||||
ldy $3456
|
||||
lda $3456
|
||||
ldx $3456
|
||||
bbs2 $12,*+122
|
||||
bcs *+122
|
||||
lda ($12),y
|
||||
lda ($12)
|
||||
.byte $B3
|
||||
ldy $12,x
|
||||
lda $12,x
|
||||
ldx $12,y
|
||||
smb3 $12
|
||||
clv
|
||||
lda $3456,y
|
||||
tsx
|
||||
.byte $BB
|
||||
ldy $3456,x
|
||||
lda $3456,x
|
||||
ldx $3456,y
|
||||
bbs3 $12,*+122
|
||||
cpy #$12
|
||||
cmp ($12,x)
|
||||
.byte $C2
|
||||
.byte $C3
|
||||
cpy $12
|
||||
cmp $12
|
||||
dec $12
|
||||
smb4 $12
|
||||
iny
|
||||
cmp #$12
|
||||
dex
|
||||
.byte $CB
|
||||
cpy $3456
|
||||
cmp $3456
|
||||
dec $3456
|
||||
bbs4 $12,*+122
|
||||
bne *+122
|
||||
cmp ($12),y
|
||||
cmp ($12)
|
||||
.byte $D3
|
||||
.byte $D4
|
||||
cmp $12,x
|
||||
dec $12,x
|
||||
smb5 $12
|
||||
cld
|
||||
cmp $3456,y
|
||||
phx
|
||||
.byte $DB
|
||||
.byte $DC
|
||||
cmp $3456,x
|
||||
dec $3456,x
|
||||
bbs5 $12,*+122
|
||||
cpx #$12
|
||||
sbc ($12,x)
|
||||
.byte $E2
|
||||
.byte $E3
|
||||
cpx $12
|
||||
sbc $12
|
||||
inc $12
|
||||
smb6 $12
|
||||
inx
|
||||
sbc #$12
|
||||
nop
|
||||
.byte $EB
|
||||
cpx $3456
|
||||
sbc $3456
|
||||
inc $3456
|
||||
bbs6 $12,*+122
|
||||
beq *+122
|
||||
sbc ($12),y
|
||||
sbc ($12)
|
||||
.byte $F3
|
||||
.byte $F4
|
||||
sbc $12,x
|
||||
inc $12,x
|
||||
smb7 $12
|
||||
sed
|
||||
sbc $3456,y
|
||||
plx
|
||||
.byte $FB
|
||||
.byte $FC
|
||||
sbc $3456,x
|
||||
inc $3456,x
|
||||
bbs7 $12,*+122
|
||||
BIN
test/asm/opcodes/65sc02-opcodes.ref
Normal file
BIN
test/asm/opcodes/65sc02-opcodes.ref
Normal file
Binary file not shown.
258
test/asm/opcodes/65sc02-opcodes.s
Normal file
258
test/asm/opcodes/65sc02-opcodes.s
Normal file
@@ -0,0 +1,258 @@
|
||||
.setcpu "65SC02"
|
||||
|
||||
brk
|
||||
ora ($12,x)
|
||||
.byte $02
|
||||
.byte $03
|
||||
tsb $12
|
||||
ora $12
|
||||
asl $12
|
||||
.byte $07
|
||||
php
|
||||
ora #$12
|
||||
asl a
|
||||
.byte $0B
|
||||
tsb $3456
|
||||
ora $3456
|
||||
asl $3456
|
||||
.byte $0F
|
||||
bpl *+122
|
||||
ora ($12),y
|
||||
ora ($12)
|
||||
.byte $13
|
||||
trb $12
|
||||
ora $12,x
|
||||
asl $12,x
|
||||
.byte $17
|
||||
clc
|
||||
ora $3456,y
|
||||
inc a
|
||||
.byte $1B
|
||||
trb $3456
|
||||
ora $3456,x
|
||||
asl $3456,x
|
||||
.byte $1F
|
||||
jsr $3456
|
||||
and ($12,x)
|
||||
.byte $22
|
||||
.byte $23
|
||||
bit $12
|
||||
and $12
|
||||
rol $12
|
||||
.byte $27
|
||||
plp
|
||||
and #$12
|
||||
rol a
|
||||
.byte $2B
|
||||
bit $3456
|
||||
and $3456
|
||||
rol $3456
|
||||
.byte $2F
|
||||
bmi *+122
|
||||
and ($12),y
|
||||
and ($12)
|
||||
.byte $33
|
||||
bit $12,x
|
||||
and $12,x
|
||||
rol $12,x
|
||||
.byte $37
|
||||
sec
|
||||
and $3456,y
|
||||
dec a
|
||||
.byte $3B
|
||||
bit $3456,x
|
||||
and $3456,x
|
||||
rol $3456,x
|
||||
.byte $3F
|
||||
rti
|
||||
eor ($12,x)
|
||||
.byte $42
|
||||
.byte $43
|
||||
.byte $44
|
||||
eor $12
|
||||
lsr $12
|
||||
.byte $47
|
||||
pha
|
||||
eor #$12
|
||||
lsr a
|
||||
.byte $4B
|
||||
jmp $3456
|
||||
eor $3456
|
||||
lsr $3456
|
||||
.byte $4F
|
||||
bvc *+122
|
||||
eor ($12),y
|
||||
eor ($12)
|
||||
.byte $53
|
||||
.byte $54
|
||||
eor $12,x
|
||||
lsr $12,x
|
||||
.byte $57
|
||||
cli
|
||||
eor $3456,y
|
||||
phy
|
||||
.byte $5B
|
||||
.byte $5C
|
||||
eor $3456,x
|
||||
lsr $3456,x
|
||||
.byte $5F
|
||||
rts
|
||||
adc ($12,x)
|
||||
.byte $62
|
||||
.byte $63
|
||||
stz $12
|
||||
adc $12
|
||||
ror $12
|
||||
.byte $67
|
||||
pla
|
||||
adc #$12
|
||||
ror a
|
||||
.byte $6B
|
||||
jmp ($3456)
|
||||
adc $3456
|
||||
ror $3456
|
||||
.byte $6F
|
||||
bvs *+122
|
||||
adc ($12),y
|
||||
adc ($12)
|
||||
.byte $73
|
||||
stz $12,x
|
||||
adc $12,x
|
||||
ror $12,x
|
||||
.byte $77
|
||||
sei
|
||||
adc $3456,y
|
||||
ply
|
||||
.byte $7B
|
||||
jmp ($3456,x)
|
||||
adc $3456,x
|
||||
ror $3456,x
|
||||
.byte $7F
|
||||
bra *+122
|
||||
sta ($12,x)
|
||||
.byte $82
|
||||
.byte $83
|
||||
sty $12
|
||||
sta $12
|
||||
stx $12
|
||||
.byte $87
|
||||
dey
|
||||
bit #$12
|
||||
txa
|
||||
.byte $8B
|
||||
sty $3456
|
||||
sta $3456
|
||||
stx $3456
|
||||
.byte $8F
|
||||
bcc *+122
|
||||
sta ($12),y
|
||||
sta ($12)
|
||||
.byte $93
|
||||
sty $12,x
|
||||
sta $12,x
|
||||
stx $12,y
|
||||
.byte $97
|
||||
tya
|
||||
sta $3456,y
|
||||
txs
|
||||
.byte $9B
|
||||
stz $3456
|
||||
sta $3456,x
|
||||
stz $3456,x
|
||||
.byte $9F
|
||||
ldy #$12
|
||||
lda ($12,x)
|
||||
ldx #$12
|
||||
.byte $A3
|
||||
ldy $12
|
||||
lda $12
|
||||
ldx $12
|
||||
.byte $A7
|
||||
tay
|
||||
lda #$12
|
||||
tax
|
||||
.byte $AB
|
||||
ldy $3456
|
||||
lda $3456
|
||||
ldx $3456
|
||||
.byte $AF
|
||||
bcs *+122
|
||||
lda ($12),y
|
||||
lda ($12)
|
||||
.byte $B3
|
||||
ldy $12,x
|
||||
lda $12,x
|
||||
ldx $12,y
|
||||
.byte $B7
|
||||
clv
|
||||
lda $3456,y
|
||||
tsx
|
||||
.byte $BB
|
||||
ldy $3456,x
|
||||
lda $3456,x
|
||||
ldx $3456,y
|
||||
.byte $BF
|
||||
cpy #$12
|
||||
cmp ($12,x)
|
||||
.byte $C2
|
||||
.byte $C3
|
||||
cpy $12
|
||||
cmp $12
|
||||
dec $12
|
||||
.byte $C7
|
||||
iny
|
||||
cmp #$12
|
||||
dex
|
||||
.byte $CB
|
||||
cpy $3456
|
||||
cmp $3456
|
||||
dec $3456
|
||||
.byte $CF
|
||||
bne *+122
|
||||
cmp ($12),y
|
||||
cmp ($12)
|
||||
.byte $D3
|
||||
.byte $D4
|
||||
cmp $12,x
|
||||
dec $12,x
|
||||
.byte $D7
|
||||
cld
|
||||
cmp $3456,y
|
||||
phx
|
||||
.byte $DB
|
||||
.byte $DC
|
||||
cmp $3456,x
|
||||
dec $3456,x
|
||||
.byte $DF
|
||||
cpx #$12
|
||||
sbc ($12,x)
|
||||
.byte $E2
|
||||
.byte $E3
|
||||
cpx $12
|
||||
sbc $12
|
||||
inc $12
|
||||
.byte $E7
|
||||
inx
|
||||
sbc #$12
|
||||
nop
|
||||
.byte $EB
|
||||
cpx $3456
|
||||
sbc $3456
|
||||
inc $3456
|
||||
.byte $EF
|
||||
beq *+122
|
||||
sbc ($12),y
|
||||
sbc ($12)
|
||||
.byte $F3
|
||||
.byte $F4
|
||||
sbc $12,x
|
||||
inc $12,x
|
||||
.byte $F7
|
||||
sed
|
||||
sbc $3456,y
|
||||
plx
|
||||
.byte $FB
|
||||
.byte $FC
|
||||
sbc $3456,x
|
||||
inc $3456,x
|
||||
.byte $FF
|
||||
61
test/asm/opcodes/Makefile
Normal file
61
test/asm/opcodes/Makefile
Normal file
@@ -0,0 +1,61 @@
|
||||
# Makefile for the assembler regression tests
|
||||
|
||||
ifneq ($(shell echo),)
|
||||
CMD_EXE = 1
|
||||
endif
|
||||
|
||||
ifdef CMD_EXE
|
||||
EXE = .exe
|
||||
MKDIR = mkdir $(subst /,\,$1)
|
||||
RMDIR = -rmdir /q /s $(subst /,\,$1)
|
||||
else
|
||||
EXE =
|
||||
MKDIR = mkdir -p $1
|
||||
RMDIR = $(RM) -r $1
|
||||
endif
|
||||
|
||||
ifdef QUIET
|
||||
.SILENT:
|
||||
endif
|
||||
|
||||
CA65 := $(if $(wildcard ../../../bin/ca65*),../../../bin/ca65,ca65)
|
||||
LD65 := $(if $(wildcard ../../../bin/ld65*),../../../bin/ld65,ld65)
|
||||
|
||||
WORKDIR = ../../../testwrk/asm/opcodes
|
||||
|
||||
ISEQUAL = ../../../testwrk/isequal$(EXE)
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -O2
|
||||
|
||||
.PHONY: all clean
|
||||
|
||||
OPCODE_REFS := $(wildcard *-opcodes.ref)
|
||||
OPCODE_BINS = $(OPCODE_REFS:%.ref=$(WORKDIR)/%.bin)
|
||||
OPCODE_CPUS = $(OPCODE_REFS:%-opcodes.ref=%)
|
||||
|
||||
all: $(OPCODE_BINS)
|
||||
|
||||
$(WORKDIR):
|
||||
$(call MKDIR,$(WORKDIR))
|
||||
|
||||
$(ISEQUAL): ../../isequal.c | $(WORKDIR)
|
||||
$(CC) $(CFLAGS) -o $@ $<
|
||||
|
||||
define OPCODE_template
|
||||
|
||||
$(WORKDIR)/$1-opcodes.bin: $1-opcodes.s $(ISEQUAL)
|
||||
$(if $(QUIET),echo asm/$1-opcodes.bin)
|
||||
$(CA65) -t none --cpu $1 -l $$(@:.bin=.lst) -o $$(@:.bin=.o) $$<
|
||||
$(LD65) -t none -o $$@ $$(@:.bin=.o) none.lib
|
||||
$(ISEQUAL) $1-opcodes.ref $$@
|
||||
|
||||
endef # OPCODE_template
|
||||
|
||||
$(foreach cpu,$(OPCODE_CPUS),$(eval $(call OPCODE_template,$(cpu))))
|
||||
|
||||
$(WORKDIR)/%.o: %.s | $(WORKDIR)
|
||||
$(CA65) -l $(@:.o=.lst) -o $@ $<
|
||||
|
||||
clean:
|
||||
@$(call RMDIR,$(WORKDIR))
|
||||
BIN
test/asm/opcodes/huc6280-opcodes.ref
Normal file
BIN
test/asm/opcodes/huc6280-opcodes.ref
Normal file
Binary file not shown.
258
test/asm/opcodes/huc6280-opcodes.s
Normal file
258
test/asm/opcodes/huc6280-opcodes.s
Normal file
@@ -0,0 +1,258 @@
|
||||
.setcpu "huc6280"
|
||||
|
||||
brk
|
||||
ora ($12,x)
|
||||
sxy
|
||||
st0 #$12
|
||||
tsb $12
|
||||
ora $12
|
||||
asl $12
|
||||
rmb0 $12
|
||||
php
|
||||
ora #$12
|
||||
asl a
|
||||
.byte $0B
|
||||
tsb $3456
|
||||
ora $3456
|
||||
asl $3456
|
||||
bbr0 $12,*+122
|
||||
bpl *+122
|
||||
ora ($12),y
|
||||
ora ($12)
|
||||
st1 #$12
|
||||
trb $12
|
||||
ora $12,x
|
||||
asl $12,x
|
||||
rmb1 $12
|
||||
clc
|
||||
ora $3456,y
|
||||
inc a
|
||||
.byte $1B
|
||||
trb $3456
|
||||
ora $3456,x
|
||||
asl $3456,x
|
||||
bbr1 $12,*+122
|
||||
jsr $3456
|
||||
and ($12,x)
|
||||
sax
|
||||
st2 #$12
|
||||
bit $12
|
||||
and $12
|
||||
rol $12
|
||||
rmb2 $12
|
||||
plp
|
||||
and #$12
|
||||
rol a
|
||||
.byte $2B
|
||||
bit $3456
|
||||
and $3456
|
||||
rol $3456
|
||||
bbr2 $12,*+122
|
||||
bmi *+122
|
||||
and ($12),y
|
||||
and ($12)
|
||||
.byte $33
|
||||
bit $12,x
|
||||
and $12,x
|
||||
rol $12,x
|
||||
rmb3 $12
|
||||
sec
|
||||
and $3456,y
|
||||
dec a
|
||||
.byte $3B
|
||||
bit $3456,x
|
||||
and $3456,x
|
||||
rol $3456,x
|
||||
bbr3 $12,*+122
|
||||
rti
|
||||
eor ($12,x)
|
||||
say
|
||||
tma #$02
|
||||
bsr *+122
|
||||
eor $12
|
||||
lsr $12
|
||||
rmb4 $12
|
||||
pha
|
||||
eor #$12
|
||||
lsr a
|
||||
.byte $4B
|
||||
jmp $3456
|
||||
eor $3456
|
||||
lsr $3456
|
||||
bbr4 $12,*+122
|
||||
bvc *+122
|
||||
eor ($12),y
|
||||
eor ($12)
|
||||
tam #$12
|
||||
csl
|
||||
eor $12,x
|
||||
lsr $12,x
|
||||
rmb5 $12
|
||||
cli
|
||||
eor $3456,y
|
||||
phy
|
||||
.byte $5B
|
||||
.byte $5C
|
||||
eor $3456,x
|
||||
lsr $3456,x
|
||||
bbr5 $12,*+122
|
||||
rts
|
||||
adc ($12,x)
|
||||
cla
|
||||
.byte $63
|
||||
stz $12
|
||||
adc $12
|
||||
ror $12
|
||||
rmb6 $12
|
||||
pla
|
||||
adc #$12
|
||||
ror a
|
||||
.byte $6B
|
||||
jmp ($3456)
|
||||
adc $3456
|
||||
ror $3456
|
||||
bbr6 $12,*+122
|
||||
bvs *+122
|
||||
adc ($12),y
|
||||
adc ($12)
|
||||
tii $3333,$7373,$1111
|
||||
stz $12,x
|
||||
adc $12,x
|
||||
ror $12,x
|
||||
rmb7 $12
|
||||
sei
|
||||
adc $3456,y
|
||||
ply
|
||||
.byte $7B
|
||||
jmp ($3456,x)
|
||||
adc $3456,x
|
||||
ror $3456,x
|
||||
bbr7 $12,*+122
|
||||
bra *+122
|
||||
sta ($12,x)
|
||||
clx
|
||||
tst #$12,$EA
|
||||
sty $12
|
||||
sta $12
|
||||
stx $12
|
||||
smb0 $12
|
||||
dey
|
||||
bit #$12
|
||||
txa
|
||||
.byte $8B
|
||||
sty $3456
|
||||
sta $3456
|
||||
stx $3456
|
||||
bbs0 $12,*+122
|
||||
bcc *+122
|
||||
sta ($12),y
|
||||
sta ($12)
|
||||
tst #$12,$EAEA
|
||||
sty $12,x
|
||||
sta $12,x
|
||||
stx $12,y
|
||||
smb1 $12
|
||||
tya
|
||||
sta $3456,y
|
||||
txs
|
||||
.byte $9B
|
||||
stz $3456
|
||||
sta $3456,x
|
||||
stz $3456,x
|
||||
bbs1 $12,*+122
|
||||
ldy #$12
|
||||
lda ($12,x)
|
||||
ldx #$12
|
||||
tst #$12,$EA,x
|
||||
ldy $12
|
||||
lda $12
|
||||
ldx $12
|
||||
smb2 $12
|
||||
tay
|
||||
lda #$12
|
||||
tax
|
||||
.byte $AB
|
||||
ldy $3456
|
||||
lda $3456
|
||||
ldx $3456
|
||||
bbs2 $12,*+122
|
||||
bcs *+122
|
||||
lda ($12),y
|
||||
lda ($12)
|
||||
tst #$12,$EAEA,x
|
||||
ldy $12,x
|
||||
lda $12,x
|
||||
ldx $12,y
|
||||
smb3 $12
|
||||
clv
|
||||
lda $3456,y
|
||||
tsx
|
||||
.byte $BB
|
||||
ldy $3456,x
|
||||
lda $3456,x
|
||||
ldx $3456,y
|
||||
bbs3 $12,*+122
|
||||
cpy #$12
|
||||
cmp ($12,x)
|
||||
cly
|
||||
tdd $3333,$C3C3,$1111
|
||||
cpy $12
|
||||
cmp $12
|
||||
dec $12
|
||||
smb4 $12
|
||||
iny
|
||||
cmp #$12
|
||||
dex
|
||||
.byte $CB
|
||||
cpy $3456
|
||||
cmp $3456
|
||||
dec $3456
|
||||
bbs4 $12,*+122
|
||||
bne *+122
|
||||
cmp ($12),y
|
||||
cmp ($12)
|
||||
tin $3333,$D3D3,$1111
|
||||
.byte $D4
|
||||
cmp $12,x
|
||||
dec $12,x
|
||||
smb5 $12
|
||||
cld
|
||||
cmp $3456,y
|
||||
phx
|
||||
.byte $DB
|
||||
.byte $DC
|
||||
cmp $3456,x
|
||||
dec $3456,x
|
||||
bbs5 $12,*+122
|
||||
cpx #$12
|
||||
sbc ($12,x)
|
||||
.byte $E2
|
||||
tia $3333,$E3E3,$1111
|
||||
cpx $12
|
||||
sbc $12
|
||||
inc $12
|
||||
smb6 $12
|
||||
inx
|
||||
sbc #$12
|
||||
nop
|
||||
.byte $EB
|
||||
cpx $3456
|
||||
sbc $3456
|
||||
inc $3456
|
||||
bbs6 $12,*+122
|
||||
beq *+122
|
||||
sbc ($12),y
|
||||
sbc ($12)
|
||||
tai $3333,$F3F3,$1111
|
||||
.byte $F4
|
||||
sbc $12,x
|
||||
inc $12,x
|
||||
smb7 $12
|
||||
sed
|
||||
sbc $3456,y
|
||||
plx
|
||||
.byte $FB
|
||||
.byte $FC
|
||||
sbc $3456,x
|
||||
inc $3456,x
|
||||
bbs7 $12,*+122
|
||||
260
test/asm/opcodes/m740-opcodes.s
Normal file
260
test/asm/opcodes/m740-opcodes.s
Normal file
@@ -0,0 +1,260 @@
|
||||
.setcpu "65C02"
|
||||
; copy of 65c02, comments note changes to the m740 according to
|
||||
; http://documentation.renesas.com/doc/products/mpumcu/rej09b0322_740sm.pdf
|
||||
|
||||
brk
|
||||
ora ($12,x)
|
||||
.byte $02,$00,$00 ; jsr zp,ind
|
||||
.byte $03,$00,$00 ; bbs 0,a
|
||||
tsb $12 ; .byte $04
|
||||
ora $12
|
||||
asl $12
|
||||
rmb0 $12 ; bbs 0,zp
|
||||
php
|
||||
ora #$12
|
||||
asl a
|
||||
.byte $0B,$00,$00 ; seb 0,a
|
||||
tsb $3456 ; .byte $0c
|
||||
ora $3456
|
||||
asl $3456
|
||||
bbr0 $12,*+122 ; seb 0,zp
|
||||
bpl *+122
|
||||
ora ($12),y
|
||||
ora ($12) ; clt
|
||||
.byte $13,$00,$00 ; bbc 0,a
|
||||
trb $12 ; .byte $14
|
||||
ora $12,x
|
||||
asl $12,x
|
||||
rmb1 $12 ; bbc 0,zp
|
||||
clc
|
||||
ora $3456,y
|
||||
inc a
|
||||
.byte $1B,$00,$00 ; clb 0,a
|
||||
trb $3456 ; .byte $1c
|
||||
ora $3456,x
|
||||
asl $3456,x
|
||||
bbr1 $12,*+122 ; clb 0,zp
|
||||
jsr $3456
|
||||
and ($12,x)
|
||||
.byte $22,$00,$00 ; jsr sp
|
||||
.byte $23,$00,$00 ; bbs 1,a
|
||||
bit $12
|
||||
and $12
|
||||
rol $12
|
||||
rmb2 $12 ; bbs 1,zp
|
||||
plp
|
||||
and #$12
|
||||
rol a
|
||||
.byte $2B,$00,$00 ; seb 1,a
|
||||
bit $3456
|
||||
and $3456
|
||||
rol $3456
|
||||
bbr2 $12,*+122 ; seb 1,zp
|
||||
bmi *+122
|
||||
and ($12),y
|
||||
and ($12) ; set
|
||||
.byte $33,$00,$00 ; bbc 1,a
|
||||
bit $12,x ; .byte $34
|
||||
and $12,x
|
||||
rol $12,x
|
||||
rmb3 $12 ; bbc 1,zp
|
||||
sec
|
||||
and $3456,y
|
||||
dec a
|
||||
.byte $3B,$00,$00 ; clb 1,a
|
||||
bit $3456,x ; ldm zp
|
||||
and $3456,x
|
||||
rol $3456,x
|
||||
bbr3 $12,*+122 ; clb 1,zp
|
||||
rti
|
||||
eor ($12,x)
|
||||
.byte $42,$00,$00 ; stp
|
||||
.byte $43,$00,$00 ; bbs 2,a
|
||||
.byte $44,$00,$00 ; com zp
|
||||
eor $12
|
||||
lsr $12
|
||||
rmb4 $12 ; bbs 2,zp
|
||||
pha
|
||||
eor #$12
|
||||
lsr a
|
||||
.byte $4B,$00,$00 ; seb 2,a
|
||||
jmp $3456
|
||||
eor $3456
|
||||
lsr $3456
|
||||
bbr4 $12,*+122 ; seb 2,zp
|
||||
bvc *+122
|
||||
eor ($12),y
|
||||
eor ($12) ; .byte $52
|
||||
.byte $53,$00,$00 ; bbc 2,a
|
||||
.byte $54,$00,$00
|
||||
eor $12,x
|
||||
lsr $12,x
|
||||
rmb5 $12 ; bbc 2,zp
|
||||
cli
|
||||
eor $3456,y
|
||||
phy
|
||||
.byte $5B,$00,$00 ; clb 2,a
|
||||
.byte $5C,$00,$00
|
||||
eor $3456,x
|
||||
lsr $3456,x
|
||||
bbr5 $12,*+122 ; clb 2,zp
|
||||
rts
|
||||
adc ($12,x)
|
||||
.byte $62,$00,$00 ; mul zp,x
|
||||
.byte $63,$00,$00 ; bbs 3,a
|
||||
stz $12 ; tst zp
|
||||
adc $12
|
||||
ror $12
|
||||
rmb6 $12 ; bbs 3,zp
|
||||
pla
|
||||
adc #$12
|
||||
ror a
|
||||
.byte $6B,$00,$00 ; seb 3,a
|
||||
jmp ($3456)
|
||||
adc $3456
|
||||
ror $3456
|
||||
bbr6 $12,*+122 ; seb 3,zp
|
||||
bvs *+122
|
||||
adc ($12),y
|
||||
adc ($12) ; .byte $72
|
||||
.byte $73,$00,$00 ; bbc 3,a
|
||||
stz $12,x ; .byte $74
|
||||
adc $12,x
|
||||
ror $12,x
|
||||
rmb7 $12 ; bbc 3,zp
|
||||
sei
|
||||
adc $3456,y
|
||||
ply
|
||||
.byte $7B,$00,$00 ; clb 3,a
|
||||
jmp ($3456,x) ; .byte $7c
|
||||
adc $3456,x
|
||||
ror $3456,x
|
||||
bbr7 $12,*+122 ; clb 3,zp
|
||||
bra *+122
|
||||
sta ($12,x)
|
||||
.byte $82,$00,$00 ; rrf zp
|
||||
.byte $83,$00,$00 ; bbs 4,a
|
||||
sty $12
|
||||
sta $12
|
||||
stx $12
|
||||
smb0 $12 ; bbs 4,zp
|
||||
dey
|
||||
bit #$12
|
||||
txa
|
||||
.byte $8B,$00,$00 ; seb 4,a
|
||||
sty $3456
|
||||
sta $3456
|
||||
stx $3456
|
||||
bbs0 $12,*+122 ; seb 4,zp
|
||||
bcc *+122
|
||||
sta ($12),y
|
||||
sta ($12) ; .byte $92
|
||||
.byte $93,$00,$00 ; bbc 4,a
|
||||
sty $12,x
|
||||
sta $12,x
|
||||
stx $12,y
|
||||
smb1 $12 ; bbc 4,zp
|
||||
tya
|
||||
sta $3456,y
|
||||
txs
|
||||
.byte $9B,$00,$00 ; clb 4,a
|
||||
stz $3456 ; .byte $9c
|
||||
sta $3456,x
|
||||
stz $3456,x ; .byte $9e
|
||||
bbs1 $12,*+122 ; clb 4,zp
|
||||
ldy #$12
|
||||
lda ($12,x)
|
||||
ldx #$12
|
||||
.byte $A3,$00,$00 ; bbs 5,a
|
||||
ldy $12
|
||||
lda $12
|
||||
ldx $12
|
||||
smb2 $12 ; bbs 5,zp
|
||||
tay
|
||||
lda #$12
|
||||
tax
|
||||
.byte $AB,$00,$00 ; seb 5,a
|
||||
ldy $3456
|
||||
lda $3456
|
||||
ldx $3456
|
||||
bbs2 $12,*+122 ; seb 5,zp
|
||||
bcs *+122
|
||||
lda ($12),y
|
||||
lda ($12) ; .byte $b2
|
||||
.byte $B3,$00,$00 ; bbc 5,a
|
||||
ldy $12,x
|
||||
lda $12,x
|
||||
ldx $12,y
|
||||
smb3 $12 ; bbc 5,zp
|
||||
clv
|
||||
lda $3456,y
|
||||
tsx
|
||||
.byte $BB,$00,$00 ; clb 5,a
|
||||
ldy $3456,x
|
||||
lda $3456,x
|
||||
ldx $3456,y
|
||||
bbs3 $12,*+122 ; clb 5,zp
|
||||
cpy #$12
|
||||
cmp ($12,x)
|
||||
.byte $C2,$00,$00 ; wit
|
||||
.byte $C3,$00,$00 ; bbs 6,a
|
||||
cpy $12
|
||||
cmp $12
|
||||
dec $12
|
||||
smb4 $12 ; bbs 6,zp
|
||||
iny
|
||||
cmp #$12
|
||||
dex
|
||||
.byte $CB,$00,$00 ; seb 6,a
|
||||
cpy $3456
|
||||
cmp $3456
|
||||
dec $3456
|
||||
bbs4 $12,*+122 ; seb 6,zp
|
||||
bne *+122
|
||||
cmp ($12),y
|
||||
cmp ($12) ; .byte $d2
|
||||
.byte $D3,$00,$00 ; bbc 6,a
|
||||
.byte $D4,$00,$00
|
||||
cmp $12,x
|
||||
dec $12,x
|
||||
smb5 $12 ; bbc 6,zp
|
||||
cld
|
||||
cmp $3456,y
|
||||
phx
|
||||
.byte $DB,$00,$00 ; clb 6,a
|
||||
.byte $DC,$00,$00
|
||||
cmp $3456,x
|
||||
dec $3456,x
|
||||
bbs5 $12,*+122 ; clb 6,zp
|
||||
cpx #$12
|
||||
sbc ($12,x)
|
||||
.byte $E2,$00,$00 ; div zp,x
|
||||
.byte $E3,$00,$00 ; bbs 7,a
|
||||
cpx $12
|
||||
sbc $12
|
||||
inc $12
|
||||
smb6 $12 ; bbs 7,zp
|
||||
inx
|
||||
sbc #$12
|
||||
nop
|
||||
.byte $EB,$00,$00 ; seb 7,a
|
||||
cpx $3456
|
||||
sbc $3456
|
||||
inc $3456
|
||||
bbs6 $12,*+122 ; seb 7,zp
|
||||
beq *+122
|
||||
sbc ($12),y
|
||||
sbc ($12) ; .byte $f2
|
||||
.byte $F3,$00,$00 ; bbc 7,a
|
||||
.byte $F4,$00,$00
|
||||
sbc $12,x
|
||||
inc $12,x
|
||||
smb7 $12 ; bbc 7,zp
|
||||
sed
|
||||
sbc $3456,y
|
||||
plx
|
||||
.byte $FB,$00,$00 ; clb 7,a
|
||||
.byte $FC,$00,$00
|
||||
sbc $3456,x
|
||||
inc $3456,x
|
||||
bbs7 $12,*+122 ; clb 7,zp
|
||||
Reference in New Issue
Block a user