Added all 45gs02 specific instructions.
2 files changed, 651 insertions(+), 196 deletions(-)

M jasm/processor/45gs02/instructions_45gs02.cpp
A => jasm/unit_tests/test_all_instructions_45gs02.asm
M jasm/processor/45gs02/instructions_45gs02.cpp +282 -196
@@ 65,9 65,9 @@ uint32_t __addressing_modes_mask[static_
 	/* ANDQ*/ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | BInd | ___ | ____ | ____ | BIQ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* ASL */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
-	/* ASLQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
+	/* ASLQ*/ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* ASR */ Bp | ___ | Bpx | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* ASRQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* ASRQ*/ Bp | ___ | Bpx | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* ASW */ __ | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* BBR */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | Bbr ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */

          
@@ 77,7 77,7 @@ uint32_t __addressing_modes_mask[static_
 	/* BEQ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | Rel | RelW | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* BIT */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
-	/* BITQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* BITQ*/ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* BMI */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | Rel | RelW | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* BNE */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | Rel | RelW | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* BPL */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | Rel | RelW | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,

          
@@ 93,25 93,25 @@ uint32_t __addressing_modes_mask[static_
 	/* CLE */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* CLI */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* CLV */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* CMP */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
+	/* CMP */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | BIQZ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
-	/* CMPQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* CMPQ*/ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | BInd | ___ | ____ | ____ | BIQ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* CPX */ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/* CPY */ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/* CPZ */ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/* DEC */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
-	/* DEQ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* DEQ */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* DEW */ Bp | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* DEX */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* DEY */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* DEZ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
 	/* EOM */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* EOR */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
-	/* EORQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* EOR */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | BIQZ | ____ | ___ | Imm | ____ | __ | ___ ,
+	/* EORQ*/ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | BInd | ___ | ____ | ____ | BIQ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* INC */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* INQ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* INQ */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* INW */ Bp | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
 	/* INX */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,

          
@@ 120,19 120,19 @@ uint32_t __addressing_modes_mask[static_
 	/* JMP */ __ | Abs | ___ | ____ | ___ | ____ | ____ | IndX | ___ | ____ | ____ | Ind | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* JSR */ __ | Abs | ___ | ____ | ___ | ____ | ____ | IndX | ___ | ____ | ____ | Ind | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
-	/* LDA */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | ____ | SpIY | ___ | Imm | ____ | __ | ___ ,
-	/* LDQ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* LDA */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | BIQZ | SpIY | ___ | Imm | ____ | __ | ___ ,
+	/* LDQ */ Bp | Abs | Bpx | AbsX | ___ | AbsY | ____ | ____ | ___ | ____ | BInd | ___ | BpIY | ____ | BIQ | ____ | SpIY | ___ | ___ | ____ | __ | ___ ,
 	/* LDX */ Bp | Abs | ___ | ____ | Bpy | AbsY | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/* LDY */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/* LDZ */ __ | Abs | ___ | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
 	/* LSR */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* LSRQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* LSRQ*/ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* MAP */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* NEG */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* ORA */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
+	/* ORA */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | BIQZ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
-	/* ORQ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* ORQ */ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | BInd | ___ | ____ | ____ | BIQ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/* PHA */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* PHP */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* PHW */ __ | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ImmW | __ | ___ ,

          
@@ 148,25 148,25 @@ uint32_t __addressing_modes_mask[static_
 	/* PLZ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* RMB */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | Bb | ___ ,
 	/* ROL */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* ROLQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* ROLQ*/ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
 	/* ROR */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* RORQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* RORQ*/ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* ROW */ __ | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* RTI */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* RTN */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
 	/* RTS */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
-	/* SBC */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | ____ | ____ | ___ | Imm | ____ | __ | ___ ,
-	/* SBCQ*/ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* SBC */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | BIQZ | ____ | ___ | Imm | ____ | __ | ___ ,
+	/* SBCQ*/ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | BInd | ___ | ____ | ____ | BIQ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* SEC */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* SED */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
 	/* SEE */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* SEI */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | Imp | ___ | ____ | __ | ___ ,
 	/* SMB */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | Bb | ___ ,
-	/* STA */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | ____ | SpIY | ___ | ___ | ____ | __ | ___ ,
-	/* STQ */ __ | ___ | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
+	/* STA */ Bp | Abs | Bpx | AbsX | ___ | AbsY | BpIX | ____ | ___ | ____ | ____ | ___ | BpIY | BpIZ | ___ | BIQZ | SpIY | ___ | ___ | ____ | __ | ___ ,
+	/* STQ */ Bp | Abs | ___ | ____ | ___ | ____ | ____ | ____ | ___ | ____ | BInd | ___ | ____ | ____ | BIQ | ____ | SpIY | ___ | ___ | ____ | __ | ___ ,
 	/*        Bp   Abs   Bpx   AbsX   Bpy   AbsY   BpIX   IndX   Rel   RelW   BInd   Ind   BpIY   BpIZ | BIQ | BIQZ   SpIY   Imp   Imm   ImmW   Bb   Bbr */
 	/* STX */ Bp | Abs | ___ | ____ | Bpy | AbsY | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,
 	/* STY */ Bp | Abs | Bpx | AbsX | ___ | ____ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ____ | ____ | ___ | ___ | ____ | __ | ___ ,

          
@@ 214,222 214,308 @@ OpCodes __opcodes[static_cast<int>(Instr
 	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
 	/* ASL */ {{op(0x06), op(0x0e), op(0x16), op(0x1e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x0a), op(), op(), op(), op()}},
 
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* ASLQ*/ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,                 ABSO,               BPX,                ABSX,               BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,               IMME, IMMW, BB,   BBR,*/
+	/* ASLQ*/ {{op(0x42,0x42,0x06), op(0x42,0x42,0x0e), op(0x42,0x42,0x16), op(0x42,0x42,0x1e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x0a), op(), op(), op(), op()}},
+	
 	/*          BP,       ABSO, BPX,      ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
 	/* ASR */ {{op(0x44), op(), op(0x54), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x43), op(), op(), op(), op()}},
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* ASRQ*/ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
+	/*          BP,                 ABSO, BPX,                ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,               IMME, IMMW, BB,   BBR,*/
+	/* ASRQ*/ {{op(0x42,0x42,0x44), op(), op(0x42,0x42,0x54), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x43), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
 	/* ASW */ {{op(), op(0xcb), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
 	/* BBR */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x0f)}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
 	/* BBS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x8f)}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
 	/* BCC */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x90), op(0x93), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
 	/* BCS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0xb0), op(0xb3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
 	/* BEQ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0xf0), op(0xf3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* BIT */ {{op(0x24), op(0x2c), op(0x34), op(0x3c), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x89), op(), op(), op()}    },
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BITQ*/ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BIT */ {{op(0x24), op(0x2c), op(0x34), op(0x3c), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x89), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* BITQ*/ {{op(0x42,0x42,0x24), op(0x42,0x42,0x2c), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BMI */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x30), op(0x33), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BMI */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x30), op(0x33), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BNE */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0xd0), op(0xd3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BNE */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0xd0), op(0xd3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BPL */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x10), op(0x13), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BPL */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x10), op(0x13), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* BRK */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x00), op(), op(), op(), op()}    },
+	/* BRK */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x00), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BRU */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x80), op(0x83), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BRU */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x80), op(0x83), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BSR */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x63), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BSR */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x63), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BVC */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x50), op(0x53), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BVC */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x50), op(0x53), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BVS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x70), op(0x73), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* BVS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x70), op(0x73), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* CLC */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x18), op(), op(), op(), op()}    },
+	/* CLC */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x18), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* CLD */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xd8), op(), op(), op(), op()}    },
+	/* CLD */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xd8), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* CLE */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x02), op(), op(), op(), op()}    },
+	/* CLE */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x02), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* CLI */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x58), op(), op(), op(), op()}    },
+	/* CLI */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x58), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* CLV */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xb8), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* CMP */ {{op(0xc5), op(0xcd), op(0xd5), op(0xdd), op(), op(0xd9), op(0xc1), op(), op(), op(), op(), op(), op(0xd1), op(0xd2), op(), op(), op(), op(), op(0xc9), op(), op(), op()}    },
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* CMPQ*/ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* CLV */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xb8), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ,          SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* CMP */ {{op(0xc5), op(0xcd), op(0xd5), op(0xdd), op(), op(0xd9), op(0xc1), op(), op(), op(), op(), op(), op(0xd1), op(0xd2), op(), op(0xea,0xd2), op(), op(), op(0xc9), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND,               INDI, BPIY, BPIZ, BIQ,                     BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* CMPQ*/ {{op(0x42,0x42,0xc5), op(0x42,0x42,0xcd), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0xd2), op(), op(), op(), op(0x42,0x42,0xea,0xd2), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,       ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* CPX */ {{op(0xe4), op(0xec), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xe0), op(), op(), op()}    },
+	/* CPX */ {{op(0xe4), op(0xec), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xe0), op(), op(), op()}},
+
 	/*          BP,       ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* CPY */ {{op(0xc4), op(0xcc), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xc0), op(), op(), op()}    },
+	/* CPY */ {{op(0xc4), op(0xcc), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xc0), op(), op(), op()}},
+
 	/*          BP,       ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* CPZ */ {{op(0xd4), op(0xdc), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xc2), op(), op(), op()}    },
+	/* CPZ */ {{op(0xd4), op(0xdc), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xc2), op(), op(), op()}},
+
 	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* DEC */ {{op(0xc6), op(0xce), op(0xd6), op(0xde), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x3a), op(), op(), op(), op()}    },
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* DEQ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* DEC */ {{op(0xc6), op(0xce), op(0xd6), op(0xde), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x3a), op(), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,                ABSX,               BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,               IMME, IMMW, BB,   BBR,*/
+	/* DEQ */ {{op(0x42,0x42,0xd6), op(0x42,0x42,0xce), op(0x42,0x42,0xd6), op(0x42,0x42,0xde), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x3a), op(), op(), op(), op()}},
+
 	/*          BP,       ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* DEW */ {{op(0xc3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* DEW */ {{op(0xc3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* DEX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xca), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* DEX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xca), op(), op(), op(), op()}    },
+	/* DEY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x88), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* DEZ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x3b), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* DEY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x88), op(), op(), op(), op()}    },
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* DEZ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x3b), op(), op(), op(), op()}    },
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* EOM */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xea), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* EOR */ {{op(0x45), op(0x4d), op(0x55), op(0x5d), op(), op(0x59), op(0x41), op(), op(), op(), op(), op(), op(0x51), op(0x52), op(), op(), op(), op(), op(0x49), op(), op(), op()}    },
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* EORQ*/ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* EOM */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xea), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ,          SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* EOR */ {{op(0x45), op(0x4d), op(0x55), op(0x5d), op(), op(0x59), op(0x41), op(), op(), op(), op(), op(), op(0x51), op(0x52), op(), op(0xea,0x52), op(), op(), op(0x49), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND,               INDI, BPIY, BPIZ, BIQ,                     BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* EORQ*/ {{op(0x42,0x42,0x45), op(0x42,0x42,0x4d), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x52), op(), op(), op(), op(0x42,0x42,0xea,0x52), op(), op(), op(), op(), op(), op(), op()}},
+
 	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* INC */ {{op(0xe6), op(0xee), op(0xf6), op(0xfe), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x1a), op(), op(), op(), op()}    },
-	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* INQ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* INC */ {{op(0xe6), op(0xee), op(0xf6), op(0xfe), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x1a), op(), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,                ABSX,               BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,               IMME, IMMW, BB,   BBR,*/
+	/* INQ */ {{op(0x42,0x42,0xe6), op(0x42,0x42,0xee), op(0x42,0x42,0xf6), op(0x42,0x42,0xfe), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x1a), op(), op(), op(), op()}},
+
 	/*          BP,       ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* INW */ {{op(0xe3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
+	/* INW */ {{op(0xe3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* INX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xe8), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* INY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xc8), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* INX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xe8), op(), op(), op(), op()}    },
+	/* INZ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x1b), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX,     RELA, RELW, BIND, INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* JMP */ {{op(), op(0x4c), op(), op(), op(), op(), op(), op(0x7c), op(), op(), op(), op(0x6c), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX,     RELA, RELW, BIND, INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* JSR */ {{op(), op(0x20), op(), op(), op(), op(), op(), op(0x23), op(), op(), op(), op(0x22), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ,          SPIY,     IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* LDA */ {{op(0xa5), op(0xad), op(0xb5), op(0xbd), op(), op(0xb9), op(0xa1), op(), op(), op(), op(), op(), op(0xb1), op(0xb2), op(), op(0xea,0xb2), op(0xe2), op(), op(0xa9), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,                ABSX,               BPY,  ABSY,               BPIX, INDX, RELA, RELW, BIND,               INDI, BPIY,               BPIZ, BIQ,                     BIQZ, SPIY,               IMPL, IMME, IMMW, BB,   BBR,*/
+	/* LDQ */ {{op(0x42,0x42,0xa5), op(0x42,0x42,0xad), op(0x42,0x42,0xb5), op(0x42,0x42,0xbd), op(), op(0x42,0x42,0xb9), op(), op(), op(), op(), op(0x42,0x42,0xb2), op(), op(0x42,0x42,0xb1), op(), op(0x42,0x42,0xea,0xb2), op(), op(0x42,0x42,0xe2), op(), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,  ABSX, BPY,      ABSY,     BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* LDX */ {{op(0xa6), op(0xae), op(), op(), op(0xb6), op(0xbe), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xa2), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* LDY */ {{op(0xa4), op(0xac), op(0xb4), op(0xbc), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xa0), op(), op(), op()}},
+
+	/*          BP,   ABSO,     BPX,  ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* LDZ */ {{op(), op(0xab), op(), op(0xbb), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xa3), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* LSR */ {{op(0x46), op(0x4e), op(0x56), op(0x5e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x4a), op(), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,                ABSX,               BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,               IMME, IMMW, BB,   BBR,*/
+	/* LSRQ*/ {{op(0x42,0x42,0x46), op(0x42,0x42,0x4e), op(0x42,0x42,0x56), op(0x42,0x42,0x5e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x4a), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* INY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xc8), op(), op(), op(), op()}    },
+	/* MAP */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x5c), op(), op(), op(), op()}},
+
 	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* INZ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x1b), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* JMP */ {{op(),     op(0x4c), op(),     op(),     op(),     op(),     op(),     op(0x7c), op(),     op(),     op(),     op(0x6c), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* JSR */ {{op(),     op(0x20), op(),     op(),     op(),     op(),     op(),     op(0x23), op(),     op(),     op(),     op(0x22), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY,     BPIZ,     BIQ,  BIQZ, SPIY,     IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* LDA */ {{op(0xa5), op(0xad), op(0xb5), op(0xbd), op(),     op(0xb9), op(0xa1), op(),     op(),     op(),     op(),     op(),     op(0xb1), op(0xb2), op(), op(), op(0xe2), op(), op(0xa9), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* LDQ */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* LDX */ {{op(0xa6), op(0xae), op(),     op(),     op(0xb6), op(0xbe), op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(0xa2), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* LDY */ {{op(0xa4), op(0xac), op(0xb4), op(0xbc), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(0xa0), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* LDZ */ {{op(),     op(0xab), op(),     op(0xbb), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(0xa3), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* LSR */ {{op(0x46), op(0x4e), op(0x56), op(0x5e), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x4a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* LSRQ*/ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* MAP */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x5c), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* NEG */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x42), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY,     BPIZ,     BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* ORA */ {{op(0x05), op(0x0d), op(0x15), op(0x1d), op(),     op(0x19), op(0x01), op(),     op(),     op(),     op(),     op(),     op(0x11), op(0x12), op(), op(), op(), op(), op(0x09), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* ORQ */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PHA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x48), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PHP */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x08), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW,     BB,   BBR,*/
-	/* PHW */ {{op(),     op(0xfc), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(0xf4), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PHX */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xda), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PHY */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x5a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PHZ */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xdb), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PLA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x68), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PLP */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x28), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PLX */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xfa), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PLY */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x7a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* PLZ */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xfb), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,       BBR,*/
-	/* RMB */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(0x07), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* ROL */ {{op(0x26), op(0x2e), op(0x36), op(0x3e), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x2a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* ROLQ*/ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* ROR */ {{op(0x66), op(0x6e), op(0x76), op(0x7e), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x6a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* RORQ*/ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* ROW */ {{op(),     op(0xeb), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* RTI */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x40), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* RTN */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(0x62), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* RTS */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x60), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY,     BPIZ,     BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
-	/* SBC */ {{op(0xe5), op(0xed), op(0xf5), op(0xfd), op(),     op(0xf9), op(0xe1), op(),     op(),     op(),     op(),     op(),     op(0xf1), op(0xf2), op(), op(), op(), op(), op(0xe9), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* SBCQ*/ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* SEC */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x38), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* SED */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xf8), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* SEE */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x03), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* SEI */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x78), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,       BBR,*/
-	/* SMB */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(0x87), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY,     BPIZ,     BIQ,  BIQZ, SPIY,     IMPL, IMME, IMMW, BB,   BBR,*/
-	/* STA */ {{op(0x85), op(0x8d), op(0x95), op(0x9d), op(),     op(0x99), op(0x81), op(),     op(),     op(),     op(),     op(),     op(0x91), op(0x92), op(), op(), op(0x82), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* STQ */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* STX */ {{op(0x86), op(0x8e), op(),     op(),     op(0x96), op(0x9b), op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* STY */ {{op(0x84), op(0x8c), op(0x94), op(0x8b), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* STZ */ {{op(0x64), op(0x9c), op(0x74), op(0x9e), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TAB */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x5b), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TAX */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xaa), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TAY */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xa8), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TAZ */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x4b), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TBA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x7b), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* TRB */ {{op(0x14), op(0x1c), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* TSB */ {{op(0x04), op(0x0c), op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TSX */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0xba), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TSY */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x0b), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TXA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x8a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TXS */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x9a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TYA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x98), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TYS */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x2b), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* TZA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x6b), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BHS */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(0xb0), op(0xb3), op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BLT */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(0x90), op(0x93), op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
-	/* BRA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(0x80), op(0x83), op(),     op(),     op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* DEA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x3a), op(), op(), op(), op()}    },
-	/*          BP,       ABSO,     BPX,      ABSX,     BPY,      ABSY,     BPIX,     INDX,     RELA,     RELW,     BIND,     INDI,     BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
-	/* INA */ {{op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(),     op(), op(), op(), op(), op(), op(0x1a), op(), op(), op(), op()}    },
+	/* NEG */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ,          SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* ORA */ {{op(0x05), op(0x0d), op(0x15), op(0x1d), op(), op(0x19), op(0x01), op(), op(), op(), op(), op(), op(0x11), op(0x12), op(), op(0xea,0x12), op(), op(), op(0x09), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND,               INDI, BPIY, BPIZ, BIQ,                     BIQZ, SPIY, IMPL, IMME,               IMMW, BB,   BBR,*/
+	/* ORQ */ {{op(0x42,0x42,0x05), op(0x42,0x42,0x0d), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x12), op(), op(), op(), op(0x42,0x42,0xea,0x12), op(), op(), op(), op(0x42,0x42,0x09), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PHA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x48), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PHP */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x08), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW,     BB,   BBR,*/
+	/* PHW */ {{op(), op(0xfc), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xf4), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PHX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xda), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PHY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x5a), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PHZ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xdb), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PLA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x68), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PLP */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x28), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PLX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xfa), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PLY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x7a), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* PLZ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xfb), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,       BBR,*/
+	/* RMB */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x07), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* ROL */ {{op(0x26), op(0x2e), op(0x36), op(0x3e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x2a), op(), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,                ABSX,               BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,               IMME, IMMW, BB,   BBR,*/
+	/* ROLQ*/ {{op(0x42,0x42,0x26), op(0x42,0x42,0x2e), op(0x42,0x42,0x36), op(0x42,0x42,0x3e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x2a), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* ROR */ {{op(0x66), op(0x6e), op(0x76), op(0x7e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x6a), op(), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,                ABSX,               BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,               IMME, IMMW, BB,   BBR,*/
+	/* RORQ*/ {{op(0x42,0x42,0x66), op(0x42,0x42,0x6e), op(0x42,0x42,0x76), op(0x42,0x42,0x7e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x6a), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* ROW */ {{op(), op(0xeb), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* RTI */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x40), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* RTN */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x62), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* RTS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x60), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ,          SPIY, IMPL, IMME,     IMMW, BB,   BBR,*/
+	/* SBC */ {{op(0xe5), op(0xed), op(0xf5), op(0xfd), op(), op(0xf9), op(0xe1), op(), op(), op(), op(), op(), op(0xf1), op(0xf2), op(), op(0xea,0xf2), op(), op(), op(0xe9), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND,               INDI, BPIY, BPIZ, BIQ,                     BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* SBCQ*/ {{op(0x42,0x42,0xe5), op(0x42,0x42,0xed), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0xf2), op(), op(), op(), op(0x42,0x42,0xea,0xf2), op(), op(), op(), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* SEC */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x38), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* SED */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xf8), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* SEE */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x03), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* SEI */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x78), op(), op(), op(), op()}},
+
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,       BBR,*/
+	/* SMB */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x87), op()}},
+
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY,     BPIX,     INDX, RELA, RELW, BIND, INDI, BPIY,     BPIZ,     BIQ,  BIQZ,          SPIY,     IMPL, IMME, IMMW, BB,   BBR,*/
+	/* STA */ {{op(0x85), op(0x8d), op(0x95), op(0x9d), op(), op(0x99), op(0x81), op(), op(), op(), op(), op(), op(0x91), op(0x92), op(), op(0xea,0x92), op(0x82), op(), op(), op(), op(), op()}},
+
+	/*          BP,                 ABSO,               BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND,               INDI, BPIY, BPIZ, BIQ,                     BIQZ, SPIY,               IMPL, IMME, IMMW, BB,   BBR,*/
+	/* STQ */ {{op(0x42,0x42,0x85), op(0x42,0x42,0x8d), op(), op(), op(), op(), op(), op(), op(), op(), op(0x42,0x42,0x92), op(), op(), op(), op(0x42,0x42,0xea,0x92), op(), op(0x42,0x42,0x82), op(), op(), op(), op(), op()}},
+
+	/*          BP,       ABSO,     BPX,  ABSX, BPY,      ABSY,     BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* STX */ {{op(0x86), op(0x8e), op(), op(), op(0x96), op(0x9b), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* STY */ {{op(0x84), op(0x8c), op(0x94), op(0x8b), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,       ABSO,     BPX,      ABSX,     BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* STZ */ {{op(0x64), op(0x9c), op(0x74), op(0x9e), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TAB */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x5b), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TAX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xaa), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TAY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xa8), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TAZ */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x4b), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TBA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x7b), op(), op(), op(), op()}},
+	/*          BP,       ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* TRB */ {{op(0x14), op(0x1c), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,       ABSO,     BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* TSB */ {{op(0x04), op(0x0c), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TSX */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0xba), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TSY */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x0b), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TXA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x8a), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TXS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x9a), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TYA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x98), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TYS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x2b), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* TZA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x6b), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* BHS */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0xb0), op(0xb3), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* BLT */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x90), op(0x93), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA,     RELW,     BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL, IMME, IMMW, BB,   BBR,*/
+	/* BRA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(0x80), op(0x83), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* DEA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x3a), op(), op(), op(), op()}},
+	/*          BP,   ABSO, BPX,  ABSX, BPY,  ABSY, BPIX, INDX, RELA, RELW, BIND, INDI, BPIY, BPIZ, BIQ,  BIQZ, SPIY, IMPL,     IMME, IMMW, BB,   BBR,*/
+	/* INA */ {{op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(), op(0x1a), op(), op(), op(), op()}},
 };
 
 InstructionType __inverse_branch_instruction[static_cast<int>(InstructionType::NumTypes)] = {

          
A => jasm/unit_tests/test_all_instructions_45gs02.asm +369 -0
@@ 0,0 1,369 @@ 
+// assembler command line arguments: 45gs02 [-v0]
+
+const address nn = $01
+const address nnnn = $0302
+
+section code, "main", $1000
+{
+	// 6502 compatible
+	adc #0
+	adc nn
+	adc nn,x
+	adc nn,y
+	adc nnnn
+	adc nnnn,x
+	adc nnnn,y
+	adc (nn,x)
+	adc (nn),y
+	and #0
+	and nn
+	and nn,x
+	and nn,y
+	and nnnn
+	and nnnn,x
+	and nnnn,y
+	and (nn,x)
+	and (nn),y
+	asl
+	asl nn
+	asl nn,x
+	asl nnnn
+	asl nnnn,x
+	bcc *
+	bcs *
+	beq *
+	bit nn
+	bit nnnn
+	bmi *
+	bne *
+	bpl *
+	brk
+	bvc *
+	bvs *
+	clc
+	cld
+	cli
+	clv
+	cmp #0
+	cmp nn
+	cmp nn,x
+	cmp nn,y
+	cmp nnnn
+	cmp nnnn,x
+	cmp nnnn,y
+	cmp (nn,x)
+	cmp (nn),y
+	cpx #0
+	cpx nn
+	cpx nnnn
+	cpy #0
+	cpy nn
+	cpy nnnn
+	dec nn
+	dec nn,x
+	dec nnnn
+	dec nnnn,x
+	dex
+	dey
+	eor #0
+	eor nn
+	eor nn,x
+	eor nn,y
+	eor nnnn
+	eor nnnn,x
+	eor nnnn,y
+	eor (nn,x)
+	eor (nn),y
+	inc nn
+	inc nn,x
+	inc nnnn
+	inc nnnn,x
+	inx
+	iny
+	jmp nn
+	jmp nnnn
+	jmp (nnnn)
+	jsr nn
+	jsr nnnn
+	lda #0
+	lda nn
+	lda nn,x
+	lda nn,y
+	lda nnnn
+	lda nnnn,x
+	lda nnnn,y
+	lda (nn,x)
+	lda (nn),y
+	ldx #0
+	ldx nn
+	ldx nn,y
+	ldx nnnn
+	ldx nnnn,y
+	ldy #0
+	ldy nn
+	ldy nn,x
+	ldy nnnn
+	ldy nnnn,x
+	lsr
+	lsr nn
+	lsr nn,x
+	lsr nnnn
+	lsr nnnn,x
+	ora #0
+	ora nn
+	ora nn,x
+	ora nn,y
+	ora nnnn
+	ora nnnn,x
+	ora nnnn,y
+	ora (nn,x)
+	ora (nn),y
+	pha
+	php
+	pla
+	plp
+	rol
+	rol nn
+	rol nn,x
+	rol nnnn
+	rol nnnn,x
+	ror
+	ror nn
+	ror nn,x
+	ror nnnn
+	ror nnnn,x
+	rti
+	rts
+	sbc #0
+	sbc nn
+	sbc nn,x
+	sbc nn,y
+	sbc nnnn
+	sbc nnnn,x
+	sbc nnnn,y
+	sbc (nn,x)
+	sbc (nn),y
+	sec
+	sed
+	sei
+	sta nn
+	sta nn,x
+	sta nn,y
+	sta nnnn
+	sta nnnn,x
+	sta nnnn,y
+	sta (nn,x)
+	sta (nn),y
+	stx nn
+	stx nn,y
+	stx nnnn
+	sty nn
+	sty nn,x
+	sty nnnn
+	tax
+	tay
+	tsx
+	txa
+	txs
+	tya
+
+	// 65c02 specific
+	bit #0
+	bit nn,x
+	bit nnnn,x
+	dec
+	inc
+	jmp (nnnn,x)
+	phx
+	phy
+	plx
+	ply
+	stz nn
+	stz nn,x
+	stz nnnn
+	stz nnnn,x
+	trb nn
+	trb nnnn
+	tsb nn
+	tsb nnnn
+	bbr 0,nn,*
+	bbr 1,nn,*
+	bbr 2,nn,*
+	bbr 3,nn,*
+	bbr 4,nn,*
+	bbr 5,nn,*
+	bbr 6,nn,*
+	bbr 7,nn,*
+	bbs 0,nn,*
+	bbs 1,nn,*
+	bbs 2,nn,*
+	bbs 3,nn,*
+	bbs 4,nn,*
+	bbs 5,nn,*
+	bbs 6,nn,*
+	bbs 7,nn,*
+	rmb 0,nn
+	rmb 1,nn
+	rmb 2,nn
+	rmb 3,nn
+	rmb 4,nn
+	rmb 5,nn
+	rmb 6,nn
+	rmb 7,nn
+	smb 0,nn
+	smb 1,nn
+	smb 2,nn
+	smb 3,nn
+	smb 4,nn
+	smb 5,nn
+	smb 6,nn
+	smb 7,nn
+
+	// 65ce02 specific
+	adc (nn),z
+	and (nn),z
+	asr
+	asr nn
+	asr nn,x
+	asw nnnn
+	bcc 0
+	bcs 0
+	beq 0
+	bmi 0
+	bne 0
+	bpl 0
+	bru *
+	bru 0
+	bsr *
+	bvc 0
+	bvs 0
+	cle
+	cmp (nn),z
+	cpz #0
+	cpz nn
+	cpz nnnn
+	dew nn
+	dez
+	eor (nn),z
+	inw nn
+	inz
+	jsr (nnnn)
+	jsr (nnnn,x)
+	lda (nn),z
+	lda (nn,sp),y
+	ldz #0
+	ldz nnnn
+	ldz nnnn,x
+	neg
+	ora (nn),z
+	phw #nnnn
+	phw nnnn
+	phz
+	plz
+	row nnnn
+	rtn #0
+	sbc (nn),z
+	see
+	sta (nn),z
+	sta (nn,sp),y
+	stx nnnn,y
+	sty nnnn,x
+	stz nn
+	stz nn,x
+	stz nnnn
+	stz nnnn,x
+	tab
+	taz
+	tba
+	tsy
+	tys
+	tza
+
+	// 4502 specific
+	eom
+	map
+
+	// 45gs02 specific
+	adc [nn],z		// ea72
+	adcq nn		// 424265
+	adcq nnnn		// 42426d
+	adcq (nn)		// 424272
+	adcq [nn]		// 4242ea72
+	and [nn],z		// ea32
+	andq nn		// 424225
+	andq nnnn		// 42422d
+	andq (nn)		// 424232
+	andq [nn]		// 4242ea32
+	aslq			// 42420a
+	aslq nn		// 424206
+	aslq nn,x		// 424216
+	aslq nnnn		// 42420e
+	aslq nnnn,x	// 42421e
+	asrq			// 424243
+	asrq nn		// 424244
+	asrq nn,x		// 424254
+	bitq nn		// 424224
+	bitq nnnn		// 42422c
+	cmp [nn],z		// ead2
+	cmpq nn		// 4242c5
+	cmpq nnnn		// 4242cd
+	cmpq (nn)		// 4242d2
+	cmpq [nn]		// 4242ead2
+	deq				// 42423a
+	deq nn			// 4242c6
+	deq nn,x		// 4242d6
+	deq nnnn		// 4242ce
+	deq nnnn,x		// 4242de
+	eor [nn],z		// ea52
+	eorq nn		// 424245
+	eorq nnnn		// 42424d
+	eorq (nn)		// 424252
+	eorq [nn]		// 4242ea52
+	inq				// 42421a
+	inq nn			// 4242e6
+	inq nn,x		// 4242f6
+	inq nnnn		// 4242ee
+	inq nnnn,x		// 4242fe
+	lda [nn],z		// eab2
+	ldq nn			// 4242a5
+	ldq nn,x		// 4242b5
+	ldq nnnn		// 4242ad
+	ldq nnnn,x		// 4242bd
+	ldq nnnn,y		// 4242b9
+	ldq (nn)		// 4242b2
+	ldq (nn),y		// 4242b1
+	ldq (nn,sp),y	// 4242e2
+	ldq [nn]		// 4242eab2
+	lsrq			// 42424a
+	lsrq nn		// 424246
+	lsrq nn,x		// 424256
+	lsrq nnnn		// 42424e
+	lsrq nnnn,x	// 42425e
+	ora [nn],z		// ea12
+	orq #nn		// 424209
+	orq nn			// 424205
+	orq nnnn		// 42420d
+	orq (nn)		// 424212
+	orq [nn]		// 4242ea12
+	rolq			// 42422a
+	rolq nn		// 424226
+	rolq nn,x		// 424236
+	rolq nnnn		// 42422e
+	rolq nnnn,x	// 42423e
+	rorq			// 42426a
+	rorq nn		// 424266
+	rorq nn,x		// 424276
+	rorq nnnn		// 42426e
+	rorq nnnn,x	// 42427e
+	sbc [nn],z		// eaf2
+	sbcq nn		// 4242e5
+	sbcq nnnn		// 4242ed
+	sbcq (nn)		// 4242f2
+	sbcq [nn]		// 4242eaf2
+	sta [nn],z		// ea92
+	stq nn			// 424285
+	stq nnnn		// 42428d
+	stq (nn)		// 424292
+	stq (nn,sp),y	// 424282
+	stq [nn]		// 4242ea92
+}