6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sat Sep 28, 2024 11:08 pm

All times are UTC




Post new topic Reply to topic  [ 7 posts ] 
Author Message
 Post subject: 65C02 bbrx instruction
PostPosted: Fri Dec 04, 2015 12:59 am 
Offline

Joined: Tue Feb 19, 2013 12:29 am
Posts: 32
Location: Marlborough, Ma
I have finished writing my assembler. It works perfect for 6502.

Now I need to test 65C02.
I can't get 64tass to use the -c (65c02 mode) to work so I can't verify my results.

My assembler generates the following I want to make sure output is correct.

Code:
;***************************************
;  65c02.a
;***************************************
                                                      * = $1000
                                                  lableHi
$1000: $0F $FE $12                                     bbr0 $12,lableHi
$1002: $0F $00 $12                                     bbr0 $12,lableLo
                                                  lableLo
$1004: $60                                            rts


Thanks for any help


Top
 Profile  
Reply with quote  
PostPosted: Fri Dec 04, 2015 1:16 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8520
Location: Southern California
I've never used BBR, but according to the Eyes & Liechty manual, the third byte (not the second byte) is the displacement. The first byte of the next instruction would be the displacement reference, so a 00 branch distance would do nothing except take some cycles, and branching back to lableHi would require $FD, not $FE. Unfortunately I'm not in a good position to test it.

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
PostPosted: Fri Dec 04, 2015 3:20 am 
Offline

Joined: Tue Feb 19, 2013 12:29 am
Posts: 32
Location: Marlborough, Ma
Thanks for your help. I think I have it now.

Code:
                                                      * = $1000
                                                  Label1
$1000: $8F $12 $FD                                    bbs0 $12,Label1
$1003: $8F $13 $00                                    bbs0 $13,Label2
                                                  Label2   
$1006: $60                                                rts


Top
 Profile  
Reply with quote  
PostPosted: Fri Dec 04, 2015 3:37 am 
Offline

Joined: Tue Feb 19, 2013 12:29 am
Posts: 32
Location: Marlborough, Ma
FYI here is my test file
Code:

;***************************************
;  test/wintest.a
;***************************************
                                                 
                                                      .C64            ; C64 output
                                                      .illegal OFF    ; no illegal opcodes
                                                 
                                                      .ORG $1000
                                                      ; Turn on 65C02
                                                      .65C02 on
                                                         
                                                      start
$1000: $DA               phx                              phx
$1001: $5A               phy                              phy
$1002: $0F $14 $02       bbr0 $14,$1007                   bbr0 20,LoadSLASH
                                                     
                                                      loadTAB
$1005: $A9 $09           lda #$09                         lda #'\t'
                                                      LoadSLASH
$1007: $A9 $5C           lda #$5C                         lda #'\\'
                                                 
                                                      .warn off
$1009: $F0 $03           beq $100E                    bne end
$100B: $4C $21 $14       jmp $1421
                                                      .warn on
                                                     
                                                  __ora   
$100E: $09 $16           ora #$16                     ora #22
$1010: $09 $16           ora #$16                     ora #$16
$1012: $05 $B2           ora $B2                      ora 178
$1014: $05 $B2           ora $B2                      ora $B2
$1016: $15 $1A           ora $1A,x                    ora 26,x
$1018: $15 $1A           ora $1A,x                    ora $1A,x
$101A: $01 $E5           ora ($E5,x)                  ora (229,x)
$101C: $01 $E5           ora ($E5,x)                  ora ($E5,x)
$101E: $11 $39           ora ($39),y                  ora (57),y
$1020: $11 $39           ora ($39),y                  ora ($39),y
$1022: $0D $23 $76       ora $7623                    ora 30243
$1025: $0D $23 $76       ora $7623                    ora $7623
$1028: $1D $B2 $65       ora $65B2,x                  ora 26034,x
$102B: $1D $B2 $65       ora $65B2,x                  ora $65B2,x
$102E: $19 $2C $BE       ora $BE2C,y                  ora 48684,y
$1031: $19 $2C $BE       ora $BE2C,y                  ora $BE2C,y
                                                 
                                                      ; and
                                                 
                                                  __and
$1034: $29 $88           and #$88                     and #136
$1036: $29 $88           and #$88                     and #$88
$1038: $25 $B7           and $B7                      and 183
$103A: $25 $B7           and $B7                      and $B7
$103C: $35 $97           and $97,x                    and 151,x
$103E: $35 $97           and $97,x                    and $97,x
$1040: $21 $14           and ($14,x)                  and (20,x)
$1042: $21 $14           and ($14,x)                  and ($14,x)
$1044: $31 $DB           and ($DB),y                  and (219),y
$1046: $31 $DB           and ($DB),y                  and ($DB),y
$1048: $2D $CC $18       and $18CC                    and 6348
$104B: $2D $CC $18       and $18CC                    and $18CC
$104E: $3D $FF $D2       and $D2FF,x                  and 54015,x
$1051: $3D $FF $D2       and $D2FF,x                  and $D2FF,x
$1054: $39 $1B $F4       and $F41B,y                  and 62491,y
$1057: $39 $1B $F4       and $F41B,y                  and $F41B,y
                                                 
                                                      ; eor
                                                 
                                                  __eor
$105A: $49 $33           eor #$33                     eor #51
$105C: $49 $33           eor #$33                     eor #$33
$105E: $45 $17           eor $17                      eor 23
$1060: $45 $17           eor $17                      eor $17
$1062: $55 $F5           eor $F5,x                    eor 245,x
$1064: $55 $F5           eor $F5,x                    eor $F5,x
$1066: $41 $D2           eor ($D2,x)                  eor (210,x)
$1068: $41 $D2           eor ($D2,x)                  eor ($D2,x)
$106A: $51 $72           eor ($72),y                  eor (114),y
$106C: $51 $72           eor ($72),y                  eor ($72),y
$106E: $4D $05 $85       eor $8505                    eor 34053
$1071: $4D $05 $85       eor $8505                    eor $8505
$1074: $5D $59 $6E       eor $6E59,x                  eor 28249,x
$1077: $5D $59 $6E       eor $6E59,x                  eor $6E59,x
$107A: $59 $77 $FB       eor $FB77,y                  eor 64375,y
$107D: $59 $77 $FB       eor $FB77,y                  eor $FB77,y
                                                 
                                                      ; adc
                                                 
                                                  __adc
$1080: $69 $63           adc #$63                     adc #99
$1082: $69 $63           adc #$63                     adc #$63
$1084: $65 $6F           adc $6F                      adc 111
$1086: $65 $6F           adc $6F                      adc $6F
$1088: $75 $9D           adc $9D,x                    adc 157,x
$108A: $75 $9D           adc $9D,x                    adc $9D,x
$108C: $61 $4A           adc ($4A,x)                  adc (74,x)
$108E: $61 $4A           adc ($4A,x)                  adc ($4A,x)
$1090: $71 $E4           adc ($E4),y                  adc (228),y
$1092: $71 $E4           adc ($E4),y                  adc ($E4),y
$1094: $6D $62 $31       adc $3162                    adc 12642
$1097: $6D $62 $31       adc $3162                    adc $3162
$109A: $7D $D8 $D8       adc $D8D8,x                  adc 55512,x
$109D: $7D $D8 $D8       adc $D8D8,x                  adc $D8D8,x
$10A0: $79 $9F $70       adc $709F,y                  adc 28831,y
$10A3: $79 $9F $70       adc $709F,y                  adc $709F,y
                                                 
                                                      ; sbc
                                                 
                                                  __sbc
$10A6: $E9 $11           sbc #$11                     sbc #17
$10A8: $E9 $11           sbc #$11                     sbc #$11
$10AA: $E5 $0E           sbc $0E                      sbc 14
$10AC: $E5 $0E           sbc $0E                      sbc $E
$10AE: $F5 $C5           sbc $C5,x                    sbc 197,x
$10B0: $F5 $C5           sbc $C5,x                    sbc $C5,x
$10B2: $E1 $00           sbc ($00,x)                  sbc (0,x)
$10B4: $E1 $00           sbc ($00,x)                  sbc ($0,x)
$10B6: $F1 $8B           sbc ($8B),y                  sbc (139),y
$10B8: $F1 $8B           sbc ($8B),y                  sbc ($8B),y
$10BA: $ED $C6 $79       sbc $79C6                    sbc 31174
$10BD: $ED $C6 $79       sbc $79C6                    sbc $79C6
$10C0: $FD $03 $4D       sbc $4D03,x                  sbc 19715,x
$10C3: $FD $03 $4D       sbc $4D03,x                  sbc $4D03,x
$10C6: $F9 $BC $81       sbc $81BC,y                  sbc 33212,y
$10C9: $F9 $BC $81       sbc $81BC,y                  sbc $81BC,y
                                                 
                                                      ; cmp
                                                 
                                                  __cmp
$10CC: $C9 $A0           cmp #$A0                     cmp #160
$10CE: $C9 $A0           cmp #$A0                     cmp #$A0
$10D0: $C5 $4D           cmp $4D                      cmp 77
$10D2: $C5 $4D           cmp $4D                      cmp $4D
$10D4: $D5 $F7           cmp $F7,x                    cmp 247,x
$10D6: $D5 $F7           cmp $F7,x                    cmp $F7,x
$10D8: $C1 $86           cmp ($86,x)                  cmp (134,x)
$10DA: $C1 $86           cmp ($86,x)                  cmp ($86,x)
$10DC: $D1 $7C           cmp ($7C),y                  cmp (124),y
$10DE: $D1 $7C           cmp ($7C),y                  cmp ($7C),y
$10E0: $CD $57 $E8       cmp $E857                    cmp 59479
$10E3: $CD $57 $E8       cmp $E857                    cmp $E857
$10E6: $DD $11 $20       cmp $2011,x                  cmp 8209,x
$10E9: $DD $11 $20       cmp $2011,x                  cmp $2011,x
$10EC: $D9 $1A $EF       cmp $EF1A,y                  cmp 61210,y
$10EF: $D9 $1A $EF       cmp $EF1A,y                  cmp $EF1A,y
                                                 
                                                      ; cpx
                                                 
                                                  __cpx
$10F2: $E0 $8C           cpx #$8C                     cpx #140
$10F4: $E0 $8C           cpx #$8C                     cpx #$8C
$10F6: $E4 $A1           cpx $A1                      cpx 161
$10F8: $E4 $A1           cpx $A1                      cpx $A1
$10FA: $EC $A2 $EA       cpx $EAA2                    cpx 60066
$10FD: $EC $A2 $EA       cpx $EAA2                    cpx $EAA2
                                                 
                                                      ; cpy
                                                 
                                                  __cpy
$1100: $C0 $C9           cpy #$C9                     cpy #201
$1102: $C0 $C9           cpy #$C9                     cpy #$C9
$1104: $C4 $5A           cpy $5A                      cpy 90
$1106: $C4 $5A           cpy $5A                      cpy $5A
$1108: $CC $D6 $E9       cpy $E9D6                    cpy 59862
$110B: $CC $D6 $E9       cpy $E9D6                    cpy $E9D6
                                                 
                                                      ; dec
                                                 
                                                  __dec
$110E: $C6 $64           dec $64                      dec 100
$1110: $C6 $64           dec $64                      dec $64
$1112: $D6 $04           dec $04,x                    dec 4,x
$1114: $D6 $04           dec $04,x                    dec $4,x
$1116: $CE $4F $84       dec $844F                    dec 33871
$1119: $CE $4F $84       dec $844F                    dec $844F
$111C: $DE $A1 $9D       dec $9DA1,x                  dec 40353,x
$111F: $DE $A1 $9D       dec $9DA1,x                  dec $9DA1,x
                                                 
                                                      ; dex
                                                 
                                                  __dex
$1122: $CA               dex                          dex
                                                 
                                                      ; dey
                                                 
                                                  __dey
$1123: $88               dey                          dey
                                                 
                                                      ; inc
                                                 
                                                  __inc
$1124: $E6 $39           inc $39                      inc 57
$1126: $E6 $39           inc $39                      inc $39
$1128: $F6 $B4           inc $B4,x                    inc 180,x
$112A: $F6 $B4           inc $B4,x                    inc $B4,x
$112C: $EE $EC $4D       inc $4DEC                    inc 19948
$112F: $EE $EC $4D       inc $4DEC                    inc $4DEC
$1132: $FE $10 $B3       inc $B310,x                  inc 45840,x
$1135: $FE $10 $B3       inc $B310,x                  inc $B310,x
                                                 
                                                      ; inx
                                                 
                                                  __inx
$1138: $E8               inx                          inx
                                                 
                                                      ; iny
                                                 
                                                  __iny
$1139: $C8               iny                          iny
                                                 
                                                      ; asl
                                                 
                                                  __asl
$113A: $0A               asl                          asl
$113B: $06 $31           asl $31                      asl 49
$113D: $06 $31           asl $31                      asl $31
$113F: $16 $DF           asl $DF,x                    asl 223,x
$1141: $16 $DF           asl $DF,x                    asl $DF,x
$1143: $0E $64 $88       asl $8864                    asl 34916
$1146: $0E $64 $88       asl $8864                    asl $8864
$1149: $1E $BF $06       asl $06BF,x                  asl 1727,x
$114C: $1E $BF $06       asl $06BF,x                  asl $6BF,x
$114F: $0A               asl                          asl A
                                                 
                                                      ; rol
                                                 
                                                  __rol
$1150: $2A               rol                          rol
$1151: $26 $59           rol $59                      rol 89
$1153: $26 $59           rol $59                      rol $59
$1155: $36 $91           rol $91,x                    rol 145,x
$1157: $36 $91           rol $91,x                    rol $91,x
$1159: $2E $DA $4A       rol $4ADA                    rol 19162
$115C: $2E $DA $4A       rol $4ADA                    rol $4ADA
$115F: $3E $F2 $47       rol $47F2,x                  rol 18418,x
$1162: $3E $F2 $47       rol $47F2,x                  rol $47F2,x
                                                 
                                                      ; lsr
                                                 
                                                  __lsr
$1165: $4A               lsr                          lsr
$1166: $46 $35           lsr $35                      lsr 53
$1168: $46 $35           lsr $35                      lsr $35
$116A: $56 $2B           lsr $2B,x                    lsr 43,x
$116C: $56 $2B           lsr $2B,x                    lsr $2B,x
$116E: $4E $3A $E8       lsr $E83A                    lsr 59450
$1171: $4E $3A $E8       lsr $E83A                    lsr $E83A
$1174: $5E $7E $F0       lsr $F07E,x                  lsr 61566,x
$1177: $5E $7E $F0       lsr $F07E,x                  lsr $F07E,x
                                                 
                                                      ; ror
                                                 
                                                  __ror
$117A: $6A               ror                          ror
$117B: $66 $B9           ror $B9                      ror 185
$117D: $66 $B9           ror $B9                      ror $B9
$117F: $76 $D1           ror $D1,x                    ror 209,x
$1181: $76 $D1           ror $D1,x                    ror $D1,x
$1183: $6E $2C $25       ror $252C                    ror 9516
$1186: $6E $2C $25       ror $252C                    ror $252C
$1189: $7E $A0 $91       ror $91A0,x                  ror 37280,x
$118C: $7E $A0 $91       ror $91A0,x                  ror $91A0,x
                                                 
                                                      ; lda
                                                 
                                                  __lda
$118F: $A9 $50           lda #$50                     lda #80
$1191: $A9 $50           lda #$50                     lda #$50
$1193: $A5 $31           lda $31                      lda 49
$1195: $A5 $31           lda $31                      lda $31
$1197: $B5 $54           lda $54,x                    lda 84,x
$1199: $B5 $54           lda $54,x                    lda $54,x
$119B: $A1 $1A           lda ($1A,x)                  lda (26,x)
$119D: $A1 $1A           lda ($1A,x)                  lda ($1A,x)
$119F: $B1 $EC           lda ($EC),y                  lda (236),y
$11A1: $B1 $EC           lda ($EC),y                  lda ($EC),y
$11A3: $AD $41 $31       lda $3141                    lda 12609
$11A6: $AD $41 $31       lda $3141                    lda $3141
$11A9: $BD $03 $20       lda $2003,x                  lda 8195,x
$11AC: $BD $03 $20       lda $2003,x                  lda $2003,x
$11AF: $B9 $97 $84       lda $8497,y                  lda 33943,y
$11B2: $B9 $97 $84       lda $8497,y                  lda $8497,y
                                                 
                                                      ; sta
                                                 
                                                  __sta
$11B5: $85 $F7           sta $F7                      sta 247
$11B7: $85 $F7           sta $F7                      sta $F7
$11B9: $95 $97           sta $97,x                    sta 151,x
$11BB: $95 $97           sta $97,x                    sta $97,x
$11BD: $81 $A0           sta ($A0,x)                  sta (160,x)
$11BF: $81 $A0           sta ($A0,x)                  sta ($A0,x)
$11C1: $91 $1A           sta ($1A),y                  sta (26),y
$11C3: $91 $1A           sta ($1A),y                  sta ($1A),y
$11C5: $8D $8B $B2       sta $B28B                    sta 45707
$11C8: $8D $8B $B2       sta $B28B                    sta $B28B
$11CB: $9D $8F $0F       sta $0F8F,x                  sta 3983,x
$11CE: $9D $8F $0F       sta $0F8F,x                  sta $F8F,x
$11D1: $99 $36 $65       sta $6536,y                  sta 25910,y
$11D4: $99 $36 $65       sta $6536,y                  sta $6536,y
                                                 
                                                      ; ldx
                                                 
                                                  __ldx
$11D7: $A2 $8C           ldx #$8C                     ldx #140
$11D9: $A2 $8C           ldx #$8C                     ldx #$8C
$11DB: $A6 $92           ldx $92                      ldx 146
$11DD: $A6 $92           ldx $92                      ldx $92
$11DF: $B6 $07           ldx $07,y                    ldx 7,y
$11E1: $B6 $07           ldx $07,y                    ldx $7,y
$11E3: $AE $03 $55       ldx $5503                    ldx 21763
$11E6: $AE $03 $55       ldx $5503                    ldx $5503
$11E9: $BE $09 $0F       ldx $0F09,y                  ldx 3849,y
$11EC: $BE $09 $0F       ldx $0F09,y                  ldx $F09,y
                                                 
                                                      ; stx
                                                 
                                                  __stx
$11EF: $86 $D0           stx $D0                      stx 208
$11F1: $86 $D0           stx $D0                      stx $D0
$11F3: $96 $08           stx $08,y                    stx 8,y
$11F5: $96 $08           stx $08,y                    stx $8,y
$11F7: $8E $7B $28       stx $287B                    stx 10363
$11FA: $8E $7B $28       stx $287B                    stx $287B
                                                 
                                                      ; ldy
                                                 
                                                  __ldy
$11FD: $A0 $46           ldy #$46                     ldy #70
$11FF: $A0 $46           ldy #$46                     ldy #$46
$1201: $A4 $B6           ldy $B6                      ldy 182
$1203: $A4 $B6           ldy $B6                      ldy $B6
$1205: $B4 $91           ldy $91,x                    ldy 145,x
$1207: $B4 $91           ldy $91,x                    ldy $91,x
$1209: $AC $3C $73       ldy $733C                    ldy 29500
$120C: $AC $3C $73       ldy $733C                    ldy $733C
$120F: $BC $5E $B7       ldy $B75E,x                  ldy 46942,x
$1212: $BC $5E $B7       ldy $B75E,x                  ldy $B75E,x
                                                 
                                                      ; sty
                                                 
                                                  __sty
$1215: $84 $46           sty $46                      sty 70
$1217: $84 $46           sty $46                      sty $46
$1219: $94 $3E           sty $3E,x                    sty 62,x
$121B: $94 $3E           sty $3E,x                    sty $3E,x
$121D: $8C $E4 $8B       sty $8BE4                    sty 35812
$1220: $8C $E4 $8B       sty $8BE4                    sty $8BE4
                                                 
                                                      ; tax
                                                 
                                                  __tax
$1223: $AA               tax                          tax
                                                 
                                                      ; txa
                                                 
                                                  __txa
$1224: $8A               txa                          txa
                                                 
                                                      ; tay
                                                 
                                                  __tay
$1225: $A8               tay                          tay
                                                 
                                                      ; tya
                                                     
                                                  __tya
$1226: $98               tya                          tya
                                                 
                                                      ; tsx
                                                     
                                                  __tsx
$1227: $BA               tsx                          tsx
                                                 
                                                      ; txs
                                                     
                                                  __txs
$1228: $9A               txs                          txs
                                                 
                                                      ; pla
                                                     
                                                  __pla
$1229: $68               pla                          pla
                                                 
                                                      ; pha
                                                     
                                                  __pha
$122A: $48               pha                          pha
                                                 
                                                      ; plp
                                                     
                                                  __plp
$122B: $28               plp                          plp
                                                 
                                                      ; php
                                                     
                                                  __php
$122C: $08               php                          php
                                                 
                                                      ; bpl
                                                     
                                                  __bpl
$122D: $10 $02           bpl $1231                    bpl __bmi
$122F: $10 $FB           bpl $122C                    bpl __php
                                                 
                                                      ; bmi
                                                     
                                                  __bmi
$1231: $30 $FA           bmi $122D                    bmi __bpl
$1233: $30 $F7           bmi $122C                    bmi __php
                                                 
                                                      ; bvc
                                                  __bvc
$1235: $50 $FA           bvc $1231                    bvc __bmi
$1237: $50 $F3           bvc $122C                    bvc __php
                                                 
                                                      ; bvs
                                                 
                                                  __bvs
$1239: $70 $02           bvs $123D                    bvs __bcc
$123B: $70 $EF           bvs $122C                    bvs __php
                                                 
                                                      ; bcc
                                                 
                                                  __bcc
$123D: $90 $ED           bcc $122C                    bcc __php
$123F: $90 $04           bcc $1245                    bcc __bne
                                                 
                                                      ; bcs
                                                 
                                                  __bcs
$1241: $B0 $30           bcs $1273                    bcs __nop
$1243: $B0 $2E           bcs $1273                    bcs __nop
                                                 
                                                      ; bne
                                                 
                                                  __bne
$1245: $D0 $06           bne $124D                    bne __brk
$1247: $D0 $05           bne $124E                    bne __rti
                                                 
                                                      ; beq
                                                 
                                                  __beq
$1249: $F0 $FA           beq $1245                    beq __bne
$124B: $F0 $02           beq $124F                    beq __jsr
                                                 
                                                      ; brk
                                                 
                                                  __brk
$124D: $00               brk                          brk
                                                 
                                                      ; rti
                                                 
                                                  __rti
$124E: $40               rti                          rti
                                                 
                                                      ; jsr
                                                 
                                                  __jsr
$124F: $20 $3C $5C       jsr $5C3C                    jsr 23612
$1252: $20 $3C $5C       jsr $5C3C                    jsr $5C3C
                                                 
                                                      ; rts
                                                 
                                                  __rts
$1255: $60               rts                          rts
                                                 
                                                      ; jmp
                                                 
                                                  __jmp
$1256: $4C $24 $93       jmp $9324                    jmp 37668
$1259: $4C $24 $93       jmp $9324                    jmp $9324
$125C: $6C $DC $5A       jmp ($5ADC)                  jmp (23260)
$125F: $6C $DC $5A       jmp ($5ADC)                  jmp ($5ADC)
                                                 
                                                      ; bit
                                                 
                                                  __bit
$1262: $24 $27           bit $27                      bit 39
$1264: $24 $27           bit $27                      bit $27
$1266: $2C $F5 $A1       bit $A1F5                    bit 41461
$1269: $2C $F5 $A1       bit $A1F5                    bit $A1F5
                                                 
                                                      ; clc
                                                 
                                                  __clc
$126C: $18               clc                          clc
                                                 
                                                      ; sec
                                                 
                                                  __sec
$126D: $38               sec                          sec
                                                 
                                                      ; cld
                                                 
                                                  __cld
$126E: $D8               cld                          cld
                                                 
                                                      ; sed
                                                 
                                                  __sed
$126F: $F8               sed                          sed
                                                 
                                                      ; cli
                                                 
                                                  __cli
$1270: $58               cli                          cli
                                                 
                                                      ; sei
                                                 
                                                  __sei
$1271: $78               sei                          sei
                                                 
                                                      ; clv
                                                 
                                                  __clv
$1272: $B8               clv                          clv
                                                 
                                                      ; nop
                                                 
                                                  __nop
$1273: $EA               nop                          nop
                                                 
                                                  ; illegal opcodes
                                                      .illegal ON
                                                      ; slo
                                                 
                                                  __slo
$1274: $07 $AC           slo $AC                      slo 172
$1276: $07 $AC           slo $AC                      slo $AC
$1278: $17 $EC           slo $EC,x                    slo 236,x
$127A: $17 $EC           slo $EC,x                    slo $EC,x
$127C: $03 $D8           slo ($D8,x)                  slo (216,x)
$127E: $03 $D8           slo ($D8,x)                  slo ($D8,x)
$1280: $13 $2B           slo ($2B),y                  slo (43),y
$1282: $13 $2B           slo ($2B),y                  slo ($2B),y
$1284: $0F $29 $10       slo $1029                    slo 4137
$1287: $0F $29 $10       slo $1029                    slo $1029
$128A: $1F $59 $19       slo $1959,x                  slo 6489,x
$128D: $1F $59 $19       slo $1959,x                  slo $1959,x
$1290: $1B $9F $0C       slo $0C9F,y                  slo 3231,y
$1293: $1B $9F $0C       slo $0C9F,y                  slo $C9F,y
                                                 
                                                      ; rla
                                                 
                                                  __rla
$1296: $27 $C2           rla $C2                      rla 194
$1298: $27 $C2           rla $C2                      rla $C2
$129A: $37 $A8           rla $A8,x                    rla 168,x
$129C: $37 $A8           rla $A8,x                    rla $A8,x
$129E: $23 $ED           rla ($ED,x)                  rla (237,x)
$12A0: $23 $ED           rla ($ED,x)                  rla ($ED,x)
$12A2: $33 $0E           rla ($0E),y                  rla (14),y
$12A4: $33 $0E           rla ($0E),y                  rla ($E),y
$12A6: $2F $B7 $D4       rla $D4B7                    rla 54455
$12A9: $2F $B7 $D4       rla $D4B7                    rla $D4B7
$12AC: $3F $87 $47       rla $4787,x                  rla 18311,x
$12AF: $3F $87 $47       rla $4787,x                  rla $4787,x
$12B2: $3B $6C $87       rla $876C,y                  rla 34668,y
$12B5: $3B $6C $87       rla $876C,y                  rla $876C,y
                                                 
                                                      ; sre
                                                 
                                                  __sre
$12B8: $47 $D2           sre $D2                      sre 210
$12BA: $47 $D2           sre $D2                      sre $D2
$12BC: $57 $73           sre $73,x                    sre 115,x
$12BE: $57 $73           sre $73,x                    sre $73,x
$12C0: $43 $90           sre ($90,x)                  sre (144,x)
$12C2: $43 $90           sre ($90,x)                  sre ($90,x)
$12C4: $53 $EF           sre ($EF),y                  sre (239),y
$12C6: $53 $EF           sre ($EF),y                  sre ($EF),y
$12C8: $4F $14 $34       sre $3414                    sre 13332
$12CB: $4F $14 $34       sre $3414                    sre $3414
$12CE: $5F $34 $6D       sre $6D34,x                  sre 27956,x
$12D1: $5F $34 $6D       sre $6D34,x                  sre $6D34,x
$12D4: $5B $1D $75       sre $751D,y                  sre 29981,y
$12D7: $5B $1D $75       sre $751D,y                  sre $751D,y
                                                 
                                                      ; rra
                                                 
                                                  __rra
$12DA: $67 $D1           rra $D1                      rra 209
$12DC: $67 $D1           rra $D1                      rra $D1
$12DE: $77 $41           rra $41,x                    rra 65,x
$12E0: $77 $41           rra $41,x                    rra $41,x
$12E2: $63 $06           rra ($06,x)                  rra (6,x)
$12E4: $63 $06           rra ($06,x)                  rra ($6,x)
$12E6: $73 $97           rra ($97),y                  rra (151),y
$12E8: $73 $97           rra ($97),y                  rra ($97),y
$12EA: $6F $4C $F3       rra $F34C                    rra 62284
$12ED: $6F $4C $F3       rra $F34C                    rra $F34C
$12F0: $7F $01 $FD       rra $FD01,x                  rra 64769,x
$12F3: $7F $01 $FD       rra $FD01,x                  rra $FD01,x
$12F6: $7B $25 $06       rra $0625,y                  rra 1573,y
$12F9: $7B $25 $06       rra $0625,y                  rra $625,y
                                                 
                                                      ; sax
                                                 
                                                  __sax
$12FC: $87 $FC           sax $FC                      sax 252
$12FE: $87 $FC           sax $FC                      sax $FC
$1300: $97 $C5           sax $C5,y                    sax 197,y
$1302: $97 $C5           sax $C5,y                    sax $C5,y
$1304: $83 $C8           sax ($C8,x)                  sax (200,x)
$1306: $83 $C8           sax ($C8,x)                  sax ($C8,x)
$1308: $8F $A4 $0C       sax $0CA4                    sax 3236
$130B: $8F $A4 $0C       sax $0CA4                    sax $CA4
                                                 
                                                      ; lax
                                                 
                                                  __lax
$130E: $A7 $41           lax $41                      lax 65
$1310: $A7 $41           lax $41                      lax $41
$1312: $B7 $94           lax $94,y                    lax 148,y
$1314: $B7 $94           lax $94,y                    lax $94,y
$1316: $A3 $A5           lax ($A5,x)                  lax (165,x)
$1318: $A3 $A5           lax ($A5,x)                  lax ($A5,x)
$131A: $B3 $96           lax ($96),y                  lax (150),y
$131C: $B3 $96           lax ($96),y                  lax ($96),y
$131E: $AF $65 $DA       lax $DA65                    lax 55909
$1321: $AF $65 $DA       lax $DA65                    lax $DA65
$1324: $BF $4D $EE       lax $EE4D,y                  lax 61005,y
$1327: $BF $4D $EE       lax $EE4D,y                  lax $EE4D,y
                                                 
                                                      ; dcp
                                                 
                                                  __dcp
$132A: $C7 $AF           dcp $AF                      dcp 175
$132C: $C7 $AF           dcp $AF                      dcp $AF
$132E: $D7 $9E           dcp $9E,x                    dcp 158,x
$1330: $D7 $9E           dcp $9E,x                    dcp $9E,x
$1332: $C3 $AF           dcp ($AF,x)                  dcp (175,x)
$1334: $C3 $AF           dcp ($AF,x)                  dcp ($AF,x)
$1336: $D3 $45           dcp ($45),y                  dcp (69),y
$1338: $D3 $45           dcp ($45),y                  dcp ($45),y
$133A: $CF $D3 $CB       dcp $CBD3                    dcp 52179
$133D: $CF $D3 $CB       dcp $CBD3                    dcp $CBD3
$1340: $DF $9D $D9       dcp $D99D,x                  dcp 55709,x
$1343: $DF $9D $D9       dcp $D99D,x                  dcp $D99D,x
$1346: $DB $43 $FB       dcp $FB43,y                  dcp 64323,y
$1349: $DB $43 $FB       dcp $FB43,y                  dcp $FB43,y
                                                 
                                                      ; isc
                                                 
                                                  __isc
$134C: $E7 $FC           isc $FC                      isc 252
$134E: $E7 $FC           isc $FC                      isc $FC
$1350: $F7 $74           isc $74,x                    isc 116,x
$1352: $F7 $74           isc $74,x                    isc $74,x
$1354: $E3 $53           isc ($53,x)                  isc (83,x)
$1356: $E3 $53           isc ($53,x)                  isc ($53,x)
$1358: $F3 $2E           isc ($2E),y                  isc (46),y
$135A: $F3 $2E           isc ($2E),y                  isc ($2E),y
$135C: $EF $69 $F2       isc $F269                    isc 62057
$135F: $EF $69 $F2       isc $F269                    isc $F269
$1362: $FF $D0 $21       isc $21D0,x                  isc 8656,x
$1365: $FF $D0 $21       isc $21D0,x                  isc $21D0,x
$1368: $FB $D9 $9A       isc $9AD9,y                  isc 39641,y
$136B: $FB $D9 $9A       isc $9AD9,y                  isc $9AD9,y
                                                 
                                                      ; anc
                                                 
                                                  __anc
$136E: $0B $63           anc #$63                     anc #99
$1370: $0B $63           anc #$63                     anc #$63
                                                 
                                                      ; anc2
                                                 
                                                  __anc2
$1372: $2B $2E           anc2 #$2E                    anc2 #46
$1374: $2B $2E           anc2 #$2E                    anc2 #$2E
                                                 
                                                      ; alr
                                                 
                                                  __alr
$1376: $4B $6B           alr #$6B                     alr #107
$1378: $4B $6B           alr #$6B                     alr #$6B
                                                 
                                                      ; arr
                                                 
                                                  __arr
$137A: $6B $45           arr #$45                     arr #69
$137C: $6B $45           arr #$45                     arr #$45
                                                 
                                                      ; xaa
                                                 
                                                  __xaa
$137E: $8B $7B           xaa #$7B                     xaa #123
$1380: $8B $7B           xaa #$7B                     xaa #$7B
                                                 
                                                      ; lax2
                                                 
                                                  __lax2
$1382: $AB $C4           lax2 #$C4                    lax2 #196
$1384: $AB $C4           lax2 #$C4                    lax2 #$C4
                                                 
                                                      ; axs
                                                 
                                                  __axs
$1386: $CB $22           axs #$22                     axs #34
$1388: $CB $22           axs #$22                     axs #$22
                                                 
                                                      ; sbc2
                                                 
                                                  __sbc2
$138A: $EB $F2           sbc2 #$F2                    sbc2 #242
$138C: $EB $F2           sbc2 #$F2                    sbc2 #$F2
                                                 
                                                      ; ahx
                                                 
                                                  __ahx
$138E: $93 $84           ahx ($84),y                  ahx (132),y
$1390: $93 $84           ahx ($84),y                  ahx ($84),y
$1392: $9F $7F $08       ahx $087F,y                  ahx 2175,y
$1395: $9F $7F $08       ahx $087F,y                  ahx $87F,y
                                                 
                                                      ; shy
                                                 
                                                  __shy
$1398: $9C $19 $46       shy $4619,x                  shy 17945,x
$139B: $9C $19 $46       shy $4619,x                  shy $4619,x
                                                 
                                                      ; shx
                                                 
                                                  __shx
$139E: $9E $78 $53       shx $5378,y                  shx 21368,y
$13A1: $9E $78 $53       shx $5378,y                  shx $5378,y
                                                 
                                                      ; tas
                                                 
                                                  __tas
$13A4: $9B $F9 $D0       tas $D0F9,y                  tas 53497,y
$13A7: $9B $F9 $D0       tas $D0F9,y                  tas $D0F9,y
                                                 
                                                      ; las
                                                 
                                                  __las
$13AA: $BB $B8 $89       las $89B8,y                  las 35256,y
$13AD: $BB $B8 $89       las $89B8,y                  las $89B8,y
                                                 
                                                      .illegal OFF
                                                 
                                                      ; maxOpcode
                                                  __maxOpcode
$13B0: $65 $6E $64       .db 'e', 'n', 'd'            .db "end",0
$13B3: $00               .db $00
                                                 
                                                      ; loop test
                                                      .var count, aaa, bbb
                                                      .for count = 1 .To 3 .step 2
                                                          aaa = count
                                                          .while (aaa<6)
                                                              aaa = aaa + 1
                                                              ldx #aaa
                                                              .if (aaa>4)
                                                                  brk
                                                                  brk
                                                              .else
                                                                  bbb = 0
                                                                  .repeat
                                                                      nop
                                                                      bbb = bbb + 2
                                                                  .until (bbb > 6)
                                                                  .do
                                                                      lda #bbb
                                                                      bbb = bbb + 5
                                                                  .while bbb < 15
                                                              .endif
                                                          .wend
$13B4: $A2 $02           ldx #$02                     .next count
$13B6: $EA               nop
$13B7: $EA               nop
$13B8: $EA               nop
$13B9: $EA               nop
$13BA: $A9 $08           lda #$08
$13BC: $A9 $0D           lda #$0D
$13BE: $A2 $03           ldx #$03
$13C0: $EA               nop
$13C1: $EA               nop
$13C2: $EA               nop
$13C3: $EA               nop
$13C4: $A9 $08           lda #$08
$13C6: $A9 $0D           lda #$0D
$13C8: $A2 $04           ldx #$04
$13CA: $EA               nop
$13CB: $EA               nop
$13CC: $EA               nop
$13CD: $EA               nop
$13CE: $A9 $08           lda #$08
$13D0: $A9 $0D           lda #$0D
$13D2: $A2 $05           ldx #$05
$13D4: $00               brk
$13D5: $00               brk
$13D6: $A2 $06           ldx #$06
$13D8: $00               brk
$13D9: $00               brk
$13DA: $A2 $04           ldx #$04
$13DC: $EA               nop
$13DD: $EA               nop
$13DE: $EA               nop
$13DF: $EA               nop
$13E0: $A9 $08           lda #$08
$13E2: $A9 $0D           lda #$0D
$13E4: $A2 $05           ldx #$05
$13E6: $00               brk
$13E7: $00               brk
$13E8: $A2 $06           ldx #$06
$13EA: $00               brk
$13EB: $00               brk
                                                 
                                                      .macro macroNoParam
                                                          nop
                                                      .endm
                                                       
                                                      .macro macroTest
                                                          lda @0
                                                          sta @1
                                                          .if @0 <= @2
                                                              macroTest @0 + 1, @1 + 1
                                                          .endif
                                                      .endm
                                                     
$13EC: $48 $65 $6C       .db 'H', 'e', 'l'            .dw  "Hello World"
$13EF: $6C $6F $20       .db 'l', 'o', ' '
$13F2: $57 $6F $72       .db 'W', 'o', 'r'
$13F5: $6C $64 $00       .db 'l', 'd', $00
                                                     
$13F8: $A5 $FE           lda $FE                      macroTest $FE, $C000, $101
$13FA: $8D $00 $C0       sta $C000
$13FD: $A5 $FF           lda $FF
$13FF: $8D $01 $C0       sta $C001
$1402: $AD $00 $01       lda $0100
$1405: $8D $02 $C0       sta $C002
$1408: $AD $01 $01       lda $0101
$140B: $8D $03 $C0       sta $C003
$140E: $AD $02 $01       lda $0102
$1411: $8D $04 $C0       sta $C004
$1414: $60               rts                          rts
                                                 
$1415: $F3 $FF           .db $F3, $FF                 .dw $FFF3
                                                     
                                                      .warn OFF
$1417: $F0 $03           beq $141C                    bne __ora
$1419: $4C $0E $10       jmp $100E
                                                      .warn on
                                                     
$141C: $EA               nop                          macroNoParam
                                                     
                                                      .section  end
                                                          end
$141D: $4C $00 $10       jmp $1000                            jmp start
$1420: $60               rts                                  rts
                                                      .endsection       
                                                  end
                                                 


Top
 Profile  
Reply with quote  
PostPosted: Fri Dec 04, 2015 4:03 am 
Offline
User avatar

Joined: Sun Jun 30, 2013 10:26 pm
Posts: 1948
Location: Sacramento, CA, USA
If you want to give your 'c02 assembler a thorough work-out, don't forget to test the (zp) and (abs,x) modes, STZ and BIT# ... all of the yellow ones from Neil's table:

http://www.llx.com/~nparker/a2/opcodes.html

Mike B.


Top
 Profile  
Reply with quote  
PostPosted: Fri Dec 04, 2015 3:30 pm 
Offline

Joined: Tue Feb 19, 2013 12:29 am
Posts: 32
Location: Marlborough, Ma
Thanks.

I will be adding those to my test but I already know those work. I was just concerned with this particular mode.

I am writing a program that generates source code for all possible op codes in all possible modes.


Top
 Profile  
Reply with quote  
PostPosted: Tue Dec 08, 2015 4:07 am 
Offline

Joined: Tue Feb 19, 2013 12:29 am
Posts: 32
Location: Marlborough, Ma
barrym95838 wrote:
If you want to give your 'c02 assembler a thorough work-out, don't forget to test the (zp) and (abs,x) modes, STZ and BIT# ... all of the yellow ones from Neil's table:

http://www.llx.com/~nparker/a2/opcodes.html

Mike B.


Here is my generated test with all possible opcodes in all possible modes.
It does have branch out of range in it to test branch islands.
My assembler works with it but the listing is larger than the max allowed size
Code:
    .6502 ON
    .illegal On
   

Lable_6502_ora
    ora  #$29         ; immediate
    ora  $29          ; zero page
    ora  $29,x        ; zero page x
    ora  ($29,x)      ; zero page indirect x
    ora  ($29),y      ; zero page indirect y
    ora  $2923        ; absolute
    ora  $2923,x      ; absolute x
    ora  $2923,y      ; absolute y

Lable_6502_and
    and  #$BE         ; immediate
    and  $BE          ; zero page
    and  $BE,x        ; zero page x
    and  ($BE,x)      ; zero page indirect x
    and  ($BE),y      ; zero page indirect y
    and  $BE84        ; absolute
    and  $BE84,x      ; absolute x
    and  $BE84,y      ; absolute y

Lable_6502_eor
    eor  #$E1         ; immediate
    eor  $E1          ; zero page
    eor  $E1,x        ; zero page x
    eor  ($E1,x)      ; zero page indirect x
    eor  ($E1),y      ; zero page indirect y
    eor  $E16C        ; absolute
    eor  $E16C,x      ; absolute x
    eor  $E16C,y      ; absolute y

Lable_6502_adc
    adc  #$D6         ; immediate
    adc  $D6          ; zero page
    adc  $D6,x        ; zero page x
    adc  ($D6,x)      ; zero page indirect x
    adc  ($D6),y      ; zero page indirect y
    adc  $D6AE        ; absolute
    adc  $D6AE,x      ; absolute x
    adc  $D6AE,y      ; absolute y

Lable_6502_sbc
    sbc  #$52         ; immediate
    sbc  $52          ; zero page
    sbc  $52,x        ; zero page x
    sbc  ($52,x)      ; zero page indirect x
    sbc  ($52),y      ; zero page indirect y
    sbc  $5290        ; absolute
    sbc  $5290,x      ; absolute x
    sbc  $5290,y      ; absolute y

Lable_6502_cmp
    cmp  #$49         ; immediate
    cmp  $49          ; zero page
    cmp  $49,x        ; zero page x
    cmp  ($49,x)      ; zero page indirect x
    cmp  ($49),y      ; zero page indirect y
    cmp  $49F1        ; absolute
    cmp  $49F1,x      ; absolute x
    cmp  $49F1,y      ; absolute y

Lable_6502_cpx
    cpx  #$F1         ; immediate
    cpx  $F1          ; zero page
    cpx  $F1BB        ; absolute

Lable_6502_cpy
    cpy  #$E9         ; immediate
    cpy  $E9          ; zero page
    cpy  $E9EB        ; absolute

Lable_6502_dec
    dec  $B3          ; zero page
    dec  $B3,x        ; zero page x
    dec  $B3A6        ; absolute
    dec  $B3A6,x      ; absolute x

Lable_6502_dex
    dex               ; implied

Lable_6502_dey
    dey               ; implied

Lable_6502_inc
    inc  $3E          ; zero page
    inc  $3E,x        ; zero page x
    inc  $3E99        ; absolute
    inc  $3E99,x      ; absolute x

Lable_6502_inx
    inx               ; implied

Lable_6502_iny
    iny               ; implied

Lable_6502_asl
    asl               ; implied
    asl  $06          ; zero page
    asl  $06,x        ; zero page x
    asl  $06B7        ; absolute
    asl  $06B7,x      ; absolute x
    asl  A            ; Accumulator

Lable_6502_rol
    rol               ; implied
    rol  $47          ; zero page
    rol  $47,x        ; zero page x
    rol  $47DE        ; absolute
    rol  $47DE,x      ; absolute x
    rol  A            ; Accumulator

Lable_6502_lsr
    lsr               ; implied
    lsr  $B3          ; zero page
    lsr  $B3,x        ; zero page x
    lsr  $B312        ; absolute
    lsr  $B312,x      ; absolute x
    lsr  A            ; Accumulator

Lable_6502_ror
    ror               ; implied
    ror  $4D          ; zero page
    ror  $4D,x        ; zero page x
    ror  $4DC8        ; absolute
    ror  $4DC8,x      ; absolute x
    ror  A            ; Accumulator

Lable_6502_lda
    lda  #$43         ; immediate
    lda  $43          ; zero page
    lda  $43,x        ; zero page x
    lda  ($43,x)      ; zero page indirect x
    lda  ($43),y      ; zero page indirect y
    lda  $43BB        ; absolute
    lda  $43BB,x      ; absolute x
    lda  $43BB,y      ; absolute y

Lable_6502_sta
    sta  $8B          ; zero page
    sta  $8B,x        ; zero page x
    sta  ($8B,x)      ; zero page indirect x
    sta  ($8B),y      ; zero page indirect y
    sta  $8BA6        ; absolute
    sta  $8BA6,x      ; absolute x
    sta  $8BA6,y      ; absolute y

Lable_6502_ldx
    ldx  #$1F         ; immediate
    ldx  $1F          ; zero page
    ldx  $1F,y        ; zero page y
    ldx  $1F03        ; absolute
    ldx  $1F03,y      ; absolute y

Lable_6502_stx
    stx  $5A          ; zero page
    stx  $5A,y        ; zero page y
    stx  $5A7D        ; absolute

Lable_6502_ldy
    ldy  #$09         ; immediate
    ldy  $09          ; zero page
    ldy  $09,x        ; zero page x
    ldy  $0938        ; absolute
    ldy  $0938,x      ; absolute x

Lable_6502_sty
    sty  $25          ; zero page
    sty  $25,x        ; zero page x
    sty  $251F        ; absolute

Lable_6502_tax
    tax               ; implied

Lable_6502_txa
    txa               ; implied

Lable_6502_tay
    tay               ; implied

Lable_6502_tya
    tya               ; implied

Lable_6502_tsx
    tsx               ; implied

Lable_6502_txs
    txs               ; implied

Lable_6502_pla
    pla               ; implied

Lable_6502_pha
    pha               ; implied

Lable_6502_plp
    plp               ; implied

Lable_6502_php
    php               ; implied

Lable_6502_bpl
    bpl  Lable_6502_dex        ; relative

Lable_6502_bmi
    bmi  Lable_6502_bbs6       ; relative

Lable_6502_bvc
    bvc  Lable_6502_cli        ; relative

Lable_6502_bvs
    bvs  Lable_6502_dex        ; relative

Lable_6502_bcc
    bcc  Lable_6502_shy        ; relative

Lable_6502_bcs
    bcs  Lable_6502_rts        ; relative

Lable_6502_bne
    bne  Lable_6502_bbs0       ; relative

Lable_6502_beq
    beq  Lable_6502_sei        ; relative

Lable_6502_brk
    brk               ; implied

Lable_6502_rti
    rti               ; implied

Lable_6502_jsr
    jsr  $121E        ; absolute

Lable_6502_rts
    rts               ; implied

Lable_6502_jmp
    jmp  $9E0C        ; absolute
    jmp  ($9E0C)      ; absolute indirect

Lable_6502_bit
    bit  $F4          ; zero page
    bit  $F4D5        ; absolute

Lable_6502_clc
    clc               ; implied

Lable_6502_sec
    sec               ; implied

Lable_6502_cld
    cld               ; implied

Lable_6502_sed
    sed               ; implied

Lable_6502_cli
    cli               ; implied

Lable_6502_sei
    sei               ; implied

Lable_6502_clv
    clv               ; implied

Lable_6502_nop
    nop               ; implied

Lable_6502_slo
    slo  $E6          ; zero page
    slo  $E6,x        ; zero page x
    slo  ($E6,x)      ; zero page indirect x
    slo  ($E6),y      ; zero page indirect y
    slo  $E6D9        ; absolute
    slo  $E6D9,x      ; absolute x
    slo  $E6D9,y      ; absolute y

Lable_6502_rla
    rla  $1D          ; zero page
    rla  $1D,x        ; zero page x
    rla  ($1D,x)      ; zero page indirect x
    rla  ($1D),y      ; zero page indirect y
    rla  $1D2A        ; absolute
    rla  $1D2A,x      ; absolute x
    rla  $1D2A,y      ; absolute y

Lable_6502_sre
    sre  $E5          ; zero page
    sre  $E5,x        ; zero page x
    sre  ($E5,x)      ; zero page indirect x
    sre  ($E5),y      ; zero page indirect y
    sre  $E5C0        ; absolute
    sre  $E5C0,x      ; absolute x
    sre  $E5C0,y      ; absolute y

Lable_6502_rra
    rra  $F7          ; zero page
    rra  $F7,x        ; zero page x
    rra  ($F7,x)      ; zero page indirect x
    rra  ($F7),y      ; zero page indirect y
    rra  $F72B        ; absolute
    rra  $F72B,x      ; absolute x
    rra  $F72B,y      ; absolute y

Lable_6502_sax
    sax  $78          ; zero page
    sax  $78,y        ; zero page y
    sax  ($78,x)      ; zero page indirect x
    sax  $7881        ; absolute

Lable_6502_lax
    lax  $87          ; zero page
    lax  $87,y        ; zero page y
    lax  ($87,x)      ; zero page indirect x
    lax  ($87),y      ; zero page indirect y
    lax  $8744        ; absolute
    lax  $8744,y      ; absolute y

Lable_6502_dcp
    dcp  $0E          ; zero page
    dcp  $0E,x        ; zero page x
    dcp  ($0E,x)      ; zero page indirect x
    dcp  ($0E),y      ; zero page indirect y
    dcp  $0E5F        ; absolute
    dcp  $0E5F,x      ; absolute x
    dcp  $0E5F,y      ; absolute y

Lable_6502_isc
    isc  $50          ; zero page
    isc  $50,x        ; zero page x
    isc  ($50,x)      ; zero page indirect x
    isc  ($50),y      ; zero page indirect y
    isc  $5000        ; absolute
    isc  $5000,x      ; absolute x
    isc  $5000,y      ; absolute y

Lable_6502_anc
    anc  #$D4         ; immediate

Lable_6502_anc2
    anc2 #$8D         ; immediate

Lable_6502_alr
    alr  #$7B         ; immediate

Lable_6502_arr
    arr  #$15         ; immediate

Lable_6502_xaa
    xaa  #$3B         ; immediate

Lable_6502_lax2
    lax2 #$82         ; immediate

Lable_6502_axs
    axs  #$18         ; immediate

Lable_6502_sbc2
    sbc2 #$92         ; immediate

Lable_6502_ahx
    ahx  ($64),y      ; zero page indirect y
    ahx  $6454,y      ; absolute y

Lable_6502_shy
    shy  $CEB1,x      ; absolute x

Lable_6502_shx
    shx  $853E,y      ; absolute y

Lable_6502_tas
    tas  $6915,y      ; absolute y

Lable_6502_las
    las  $F846,y      ; absolute y



    .65C02 ON

Lable_65c02_ora
    ora  #$6A         ; immediate
    ora  $6A          ; zero page
    ora  ($6A)        ; zero page indirect
    ora  $6A,x        ; zero page x
    ora  ($6A,x)      ; zero page indirect x
    ora  ($6A),y      ; zero page indirect y
    ora  $6A04        ; absolute
    ora  $6A04,x      ; absolute x
    ora  $6A04,y      ; absolute y

Lable_65c02_and
    and  #$96         ; immediate
    and  $96          ; zero page
    and  ($96)        ; zero page indirect
    and  $96,x        ; zero page x
    and  ($96,x)      ; zero page indirect x
    and  ($96),y      ; zero page indirect y
    and  $9673        ; absolute
    and  $9673,x      ; absolute x
    and  $9673,y      ; absolute y

Lable_65c02_eor
    eor  #$0E         ; immediate
    eor  $0E          ; zero page
    eor  ($0E)        ; zero page indirect
    eor  $0E,x        ; zero page x
    eor  ($0E,x)      ; zero page indirect x
    eor  ($0E),y      ; zero page indirect y
    eor  $0ED9        ; absolute
    eor  $0ED9,x      ; absolute x
    eor  $0ED9,y      ; absolute y

Lable_65c02_adc
    adc  #$16         ; immediate
    adc  $16          ; zero page
    adc  ($16)        ; zero page indirect
    adc  $16,x        ; zero page x
    adc  ($16,x)      ; zero page indirect x
    adc  ($16),y      ; zero page indirect y
    adc  $162F        ; absolute
    adc  $162F,x      ; absolute x
    adc  $162F,y      ; absolute y

Lable_65c02_sbc
    sbc  #$67         ; immediate
    sbc  $67          ; zero page
    sbc  ($67)        ; zero page indirect
    sbc  $67,x        ; zero page x
    sbc  ($67,x)      ; zero page indirect x
    sbc  ($67),y      ; zero page indirect y
    sbc  $6768        ; absolute
    sbc  $6768,x      ; absolute x
    sbc  $6768,y      ; absolute y

Lable_65c02_cmp
    cmp  #$D4         ; immediate
    cmp  $D4          ; zero page
    cmp  ($D4)        ; zero page indirect
    cmp  $D4,x        ; zero page x
    cmp  ($D4,x)      ; zero page indirect x
    cmp  ($D4),y      ; zero page indirect y
    cmp  $D4F7        ; absolute
    cmp  $D4F7,x      ; absolute x
    cmp  $D4F7,y      ; absolute y

Lable_65c02_cpx
    cpx  #$4A         ; immediate
    cpx  $4A          ; zero page
    cpx  $4A4A        ; absolute

Lable_65c02_cpy
    cpy  #$D0         ; immediate
    cpy  $D0          ; zero page
    cpy  $D057        ; absolute

Lable_65c02_dec
    dec               ; implied
    dec  $68          ; zero page
    dec  $68,x        ; zero page x
    dec  $6876        ; absolute
    dec  $6876,x      ; absolute x
    dec  A            ; Accumulator

Lable_65c02_dex
    dex               ; implied

Lable_65c02_dey
    dey               ; implied

Lable_65c02_inc
    inc               ; implied
    inc  $AD          ; zero page
    inc  $AD,x        ; zero page x
    inc  $ADAE        ; absolute
    inc  $ADAE,x      ; absolute x
    inc  A            ; Accumulator

Lable_65c02_inx
    inx               ; implied

Lable_65c02_iny
    iny               ; implied

Lable_65c02_asl
    asl               ; implied
    asl  $52          ; zero page
    asl  $52,x        ; zero page x
    asl  $52DB        ; absolute
    asl  $52DB,x      ; absolute x
    asl  A            ; Accumulator

Lable_65c02_rol
    rol               ; implied
    rol  $25          ; zero page
    rol  $25,x        ; zero page x
    rol  $2543        ; absolute
    rol  $2543,x      ; absolute x
    rol  A            ; Accumulator

Lable_65c02_lsr
    lsr               ; implied
    lsr  $E5          ; zero page
    lsr  $E5,x        ; zero page x
    lsr  $E53C        ; absolute
    lsr  $E53C,x      ; absolute x
    lsr  A            ; Accumulator

Lable_65c02_ror
    ror               ; implied
    ror  $F4          ; zero page
    ror  $F4,x        ; zero page x
    ror  $F445        ; absolute
    ror  $F445,x      ; absolute x
    ror  A            ; Accumulator

Lable_65c02_lda
    lda  #$D3         ; immediate
    lda  $D3          ; zero page
    lda  ($D3)        ; zero page indirect
    lda  $D3,x        ; zero page x
    lda  ($D3,x)      ; zero page indirect x
    lda  ($D3),y      ; zero page indirect y
    lda  $D3D8        ; absolute
    lda  $D3D8,x      ; absolute x
    lda  $D3D8,y      ; absolute y

Lable_65c02_sta
    sta  $28          ; zero page
    sta  ($28)        ; zero page indirect
    sta  $28,x        ; zero page x
    sta  ($28,x)      ; zero page indirect x
    sta  ($28),y      ; zero page indirect y
    sta  $28CE        ; absolute
    sta  $28CE,x      ; absolute x
    sta  $28CE,y      ; absolute y

Lable_65c02_ldx
    ldx  #$0B         ; immediate
    ldx  $0B          ; zero page
    ldx  $0B,y        ; zero page y
    ldx  $0BF5        ; absolute
    ldx  $0BF5,y      ; absolute y

Lable_65c02_stx
    stx  $C5          ; zero page
    stx  $C5,y        ; zero page y
    stx  $C560        ; absolute

Lable_65c02_ldy
    ldy  #$59         ; immediate
    ldy  $59          ; zero page
    ldy  $59,x        ; zero page x
    ldy  $593D        ; absolute
    ldy  $593D,x      ; absolute x

Lable_65c02_sty
    sty  $97          ; zero page
    sty  $97,x        ; zero page x
    sty  $9727        ; absolute

Lable_65c02_rmb0
    rmb0 $8A          ; zero page

Lable_65c02_rmb1
    rmb1 $76          ; zero page

Lable_65c02_rmb2
    rmb2 $D0          ; zero page

Lable_65c02_rmb3
    rmb3 $C9          ; zero page

Lable_65c02_rmb4
    rmb4 $68          ; zero page

Lable_65c02_rmb5
    rmb5 $49          ; zero page

Lable_65c02_rmb6
    rmb6 $79          ; zero page

Lable_65c02_rmb7
    rmb7 $08          ; zero page

Lable_65c02_smb0
    smb0 $40          ; zero page

Lable_65c02_smb1
    smb1 $B1          ; zero page

Lable_65c02_smb2
    smb2 $6A          ; zero page

Lable_65c02_smb3
    smb3 $11          ; zero page

Lable_65c02_smb4
    smb4 $C1          ; zero page

Lable_65c02_smb5
    smb5 $D6          ; zero page

Lable_65c02_smb6
    smb6 $0B          ; zero page

Lable_65c02_smb7
    smb7 $97          ; zero page

Lable_65c02_stz
    stz  $2F          ; zero page
    stz  $2F,x        ; zero page x
    stz  $2FF1        ; absolute
    stz  $2FF1,x      ; absolute x

Lable_65c02_tax
    tax               ; implied

Lable_65c02_txa
    txa               ; implied

Lable_65c02_tay
    tay               ; implied

Lable_65c02_tya
    tya               ; implied

Lable_65c02_tsx
    tsx               ; implied

Lable_65c02_txs
    txs               ; implied

Lable_65c02_pla
    pla               ; implied

Lable_65c02_pha
    pha               ; implied

Lable_65c02_plp
    plp               ; implied

Lable_65c02_php
    php               ; implied

Lable_65c02_phx
    phx               ; implied

Lable_65c02_phy
    phy               ; implied

Lable_65c02_plx
    plx               ; implied

Lable_65c02_ply
    ply               ; implied

Lable_65c02_bra
    bra  Lable_65c02_alr        ; relative

Lable_65c02_bpl
    bpl  Lable_65c02_sax        ; relative

Lable_65c02_bmi
    bmi  Lable_65c02_bbs6       ; relative

Lable_65c02_bvc
    bvc  Lable_65c02_pha        ; relative

Lable_65c02_bvs
    bvs  Lable_65c02_lsr        ; relative

Lable_65c02_bcc
    bcc  Lable_65c02_sbc2       ; relative

Lable_65c02_bcs
    bcs  Lable_65c02_anc2       ; relative

Lable_65c02_bne
    bne  Lable_65c02_anc2       ; relative

Lable_65c02_beq
    beq  Lable_65c02_smb4       ; relative

Lable_65c02_bbr0
    bbr0 $B4,Lable_65c02_bbr7   ; zero page relative

Lable_65c02_bbr1
    bbr1 $65,Lable_65c02_bp7    ; zero page relative

Lable_65c02_bbr2
    bbr2 $2A,Lable_65c02_bbr6   ; zero page relative

Lable_65c02_bbr3
    bbr3 $89,Lable_65c02_bbr1    ; zero page relative

Lable_65c02_bbr4
    bbr4 $82,Lable_65c02_bbr5    ; zero page relative

Lable_65c02_bbr5
    bbr5 $7A,Lable_65c02_bbr6   ; zero page relative

Lable_65c02_bbr6
    bbr6 $78,Lable_65c02_bbs2   ; zero page relative

Lable_65c02_bbr7
    bbr7 $63,Lable_65c02_bbr3    ; zero page relative

Lable_65c02_bbs0
    bbs0 $26,Lable_65c02_dcp    ; zero page relative

Lable_65c02_bbs1
    bbs1 $DA,Lable_65c02_bbs3    ; zero page relative

Lable_65c02_bbs2
    bbs2 $6D,Lable_65c02_bbs1    ; zero page relative

Lable_65c02_bbs3
    bbs3 $62,Lable_65c02_bbs2    ; zero page relative

Lable_65c02_bbs4
    bbs4 $96,Lable_65c02_lda    ; zero page relative

Lable_65c02_bbs5
    bbs5 $34,Lable_65c02_bbs0   ; zero page relative

Lable_65c02_bbs6
    bbs6 $39,Lable_65c02_bbs4    ; zero page relative

Lable_65c02_bbs7
    bbs7 $3F,Lable_65c02_bbs5    ; zero page relative

Lable_65c02_stp
    stp               ; implied

Lable_65c02_wai
    wai               ; implied

Lable_65c02_brk
    brk               ; implied

Lable_65c02_rti
    rti               ; implied

Lable_65c02_jsr
    jsr  $1E20        ; absolute

Lable_65c02_rts
    rts               ; implied

Lable_65c02_jmp
    jmp  $C203        ; absolute
    jmp  ($C203,x)    ; absolute indirect x
    jmp  ($C203)      ; absolute indirect

Lable_65c02_bit
    bit  #$3F         ; immediate
    bit  $3F          ; zero page
    bit  $3F,x        ; zero page x
    bit  $3F41        ; absolute
    bit  $3F41,x      ; absolute x

Lable_65c02_trb
    trb  $07          ; zero page
    trb  $0784        ; absolute

Lable_65c02_tsb
    tsb  $0F          ; zero page
    tsb  $0F14        ; absolute

Lable_65c02_clc
    clc               ; implied

Lable_65c02_sec
    sec               ; implied

Lable_65c02_cld
    cld               ; implied

Lable_65c02_sed
    sed               ; implied

Lable_65c02_cli
    cli               ; implied

Lable_65c02_sei
    sei               ; implied

Lable_65c02_clv
    clv               ; implied

Lable_65c02_nop
    nop               ; implied

Lable_65c02_slo
    slo  $8D          ; zero page
    slo  $8D,x        ; zero page x
    slo  ($8D,x)      ; zero page indirect x
    slo  ($8D),y      ; zero page indirect y
    slo  $8DFE        ; absolute
    slo  $8DFE,x      ; absolute x
    slo  $8DFE,y      ; absolute y

Lable_65c02_rla
    rla  $BE          ; zero page
    rla  $BE,x        ; zero page x
    rla  ($BE,x)      ; zero page indirect x
    rla  ($BE),y      ; zero page indirect y
    rla  $BEF2        ; absolute
    rla  $BEF2,x      ; absolute x
    rla  $BEF2,y      ; absolute y

Lable_65c02_sre
    sre  $EB          ; zero page
    sre  $EB,x        ; zero page x
    sre  ($EB,x)      ; zero page indirect x
    sre  ($EB),y      ; zero page indirect y
    sre  $EB71        ; absolute
    sre  $EB71,x      ; absolute x
    sre  $EB71,y      ; absolute y

Lable_65c02_rra
    rra  $FF          ; zero page
    rra  $FF,x        ; zero page x
    rra  ($FF,x)      ; zero page indirect x
    rra  ($FF),y      ; zero page indirect y
    rra  $FFA0        ; absolute
    rra  $FFA0,x      ; absolute x
    rra  $FFA0,y      ; absolute y

Lable_65c02_sax
    sax  $D0          ; zero page
    sax  $D0,y        ; zero page y
    sax  ($D0,x)      ; zero page indirect x
    sax  $D03B        ; absolute

Lable_65c02_lax
    lax  $75          ; zero page
    lax  $75,y        ; zero page y
    lax  ($75,x)      ; zero page indirect x
    lax  ($75),y      ; zero page indirect y
    lax  $7506        ; absolute
    lax  $7506,y      ; absolute y

Lable_65c02_dcp
    dcp  $8C          ; zero page
    dcp  $8C,x        ; zero page x
    dcp  ($8C,x)      ; zero page indirect x
    dcp  ($8C),y      ; zero page indirect y
    dcp  $8C7E        ; absolute
    dcp  $8C7E,x      ; absolute x
    dcp  $8C7E,y      ; absolute y

Lable_65c02_isc
    isc  $87          ; zero page
    isc  $87,x        ; zero page x
    isc  ($87,x)      ; zero page indirect x
    isc  ($87),y      ; zero page indirect y
    isc  $8778        ; absolute
    isc  $8778,x      ; absolute x
    isc  $8778,y      ; absolute y

Lable_65c02_anc
    anc  #$73         ; immediate

Lable_65c02_anc2
    anc2 #$D0         ; immediate

Lable_65c02_alr
    alr  #$82         ; immediate

Lable_65c02_arr
    arr  #$DB         ; immediate

Lable_65c02_xaa
    xaa  #$46         ; immediate

Lable_65c02_lax2
    lax2 #$2B         ; immediate

Lable_65c02_axs
    axs  #$FA         ; immediate

Lable_65c02_sbc2
    sbc2 #$7F         ; immediate

Lable_65c02_ahx
    ahx  ($F0),y      ; zero page indirect y
    ahx  $F0A7,y      ; absolute y

Lable_65c02_shy
    shy  $5486,x      ; absolute x

Lable_65c02_shx
    shx  $3295,y      ; absolute y

Lable_65c02_tas
    tas  $AA5B,y      ; absolute y

Lable_65c02_las
    las  $6813,y      ; absolute y


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 7 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 10 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: