--- /dev/null
+.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
--- /dev/null
+.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