1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-11-03 23:06:09 +00:00
6502bench/SourceGen/SGTestData/Expected/2003-allops-zero-65C02_cc65.S
Andy McFadden 98914e9f80 Treat BRK as a 1-byte instruction
The 65816 definition makes it a two-byte instruction, like COP.  On
the 6502 it acted like a two-byte instruction, but in practice very
few assemblers treat it that way.  Very few humans, for that matter.
So it's now treated as a single byte instruction, with the following
byte encoded as a data value.
2019-08-02 17:21:50 -07:00

277 lines
5.7 KiB
ArmAsm

.setcpu "65C02"
; .segment "SEG000"
.org $1000
jsr L1014
jsr L108A
jsr L10C4
jsr L10D8
jsr L10F6
nop
nop
nop
brk
.byte $00
L1014: ora ($00,x)
.byte $02,$00
.byte $03
tsb $00
ora $00
asl $00
.byte $07
php
ora #$00
asl A
.byte $0b
tsb a:$0000
ora a:$0000
asl a:$0000
.byte $0f
bpl L1031
L1031: ora ($00),y
ora ($00)
.byte $13
trb $00
ora $00,x
asl $00,x
.byte $17
clc
ora $0000,y
inc A
.byte $1b
trb a:$0000
ora a:$0000,x
asl a:$0000,x
.byte $1f
jsr $0000
and ($00,x)
.byte $22,$00
.byte $23
bit $00
and $00
rol $00
.byte $27
plp
and #$00
rol A
.byte $2b
bit a:$0000
and a:$0000
rol a:$0000
.byte $2f
bmi L106D
L106D: and ($00),y
and ($00)
.byte $33
bit $00,x
and $00,x
rol $00,x
.byte $37
sec
and $0000,y
dec A
.byte $3b
bit a:$0000,x
and a:$0000,x
rol a:$0000,x
.byte $3f
rti
L108A: eor ($00,x)
.byte $42,$00
.byte $43
.byte $44,$00
eor $00
lsr $00
.byte $47
pha
eor #$00
lsr A
.byte $4b
jmp L109E
L109E: eor a:$0000
lsr a:$0000
.byte $4f
bvc L10A7
L10A7: eor ($00),y
eor ($00)
.byte $53
.byte $54,$00
eor $00,x
lsr $00,x
.byte $57
cli
eor $0000,y
phy
.byte $5b
.byte $5c,$00,$00
eor a:$0000,x
lsr a:$0000,x
.byte $5f
rts
L10C4: adc ($00,x)
.byte $62,$00
.byte $63
stz $00
adc $00
ror $00
.byte $67
pla
adc #$00
ror A
.byte $6b
jmp ($0000)
L10D8: adc a:$0000
ror a:$0000
.byte $6f
bvs L10E1
L10E1: adc ($00),y
adc ($00)
.byte $73
stz $00,x
adc $00,x
ror $00,x
.byte $77
sei
adc $0000,y
ply
.byte $7b
jmp ($0000,x)
L10F6: adc a:$0000,x
ror a:$0000,x
.byte $7f
bra L10FF
L10FF: sta ($00,x)
.byte $82,$00
.byte $83
sty $00
sta $00
stx $00
.byte $87
dey
bit #$00
txa
.byte $8b
sty a:$0000
sta a:$0000
stx a:$0000
.byte $8f
bcc L111C
L111C: sta ($00),y
sta ($00)
.byte $93
sty $00,x
sta $00,x
stx $00,y
.byte $97
tya
sta $0000,y
txs
.byte $9b
stz a:$0000
sta a:$0000,x
stz a:$0000,x
.byte $9f
ldy #$00
lda ($00,x)
ldx #$00
.byte $a3
ldy $00
lda $00
ldx $00
.byte $a7
tay
lda #$00
tax
.byte $ab
ldy a:$0000
lda a:$0000
ldx a:$0000
.byte $af
bcs L1157
L1157: lda ($00),y
lda ($00)
.byte $b3
ldy $00,x
lda $00,x
ldx $00,y
.byte $b7
clv
lda $0000,y
tsx
.byte $bb
ldy a:$0000,x
lda a:$0000,x
ldx a:$0000,y
.byte $bf
cpy #$00
cmp ($00,x)
.byte $c2,$00
.byte $c3
cpy $00
cmp $00
dec $00
.byte $c7
iny
cmp #$00
dex
.byte $cb
cpy a:$0000
cmp a:$0000
dec a:$0000
.byte $cf
bne L1192
L1192: cmp ($00),y
cmp ($00)
.byte $d3
.byte $d4,$00
cmp $00,x
dec $00,x
.byte $d7
cld
cmp $0000,y
phx
.byte $db
.byte $dc,$00,$00
cmp a:$0000,x
dec a:$0000,x
.byte $df
cpx #$00
sbc ($00,x)
.byte $e2,$00
.byte $e3
cpx $00
sbc $00
inc $00
.byte $e7
inx
sbc #$00
nop
.byte $eb
cpx a:$0000
sbc a:$0000
inc a:$0000
.byte $ef
beq L11CD
L11CD: sbc ($00),y
sbc ($00)
.byte $f3
.byte $f4,$00
sbc $00,x
inc $00,x
.byte $f7
sed
sbc $0000,y
plx
.byte $fb
.byte $fc,$00,$00
sbc a:$0000,x
inc a:$0000,x
.byte $ff