Add step 1 of assembler
diff --git a/instructions.h b/instructions.h
index ba3d99d..082016f 100644
--- a/instructions.h
+++ b/instructions.h
@@ -2,160 +2,160 @@
// AUTO GENERATED FILE, DO NOT EDIT BY HAND
#define INSTRUCTIONS \
- INST(ADC, AM_IMM, 0x69 ) \
- INST(ADC, AM_ZP, 0x65 ) \
- INST(ADC, AM_ZPX, 0x75 ) \
- INST(ADC, AM_ABS, 0x6d ) \
- INST(ADC, AM_AX, 0x7d ) \
- INST(ADC, AM_AY, 0x79 ) \
- INST(ADC, AM_ZIX, 0x61 ) \
- INST(ADC, AM_ZIY, 0x71 ) \
- INST(AND, AM_IMM, 0x29 ) \
- INST(AND, AM_ZP, 0x25 ) \
- INST(AND, AM_ZPX, 0x35 ) \
- INST(AND, AM_ABS, 0x2d ) \
- INST(AND, AM_AX, 0x3d ) \
- INST(AND, AM_AY, 0x39 ) \
- INST(AND, AM_ZIX, 0x21 ) \
- INST(AND, AM_ZIY, 0x31 ) \
- INST(ASL, AM_ACC, 0x0a ) \
- INST(ASL, AM_ZP, 0x06 ) \
- INST(ASL, AM_ZPX, 0x16 ) \
- INST(ASL, AM_ABS, 0x0e ) \
- INST(ASL, AM_AX, 0x1e ) \
- INST(BCC, AM_REL, 0x90 ) \
- INST(BCS, AM_REL, 0xB0 ) \
- INST(BEQ, AM_REL, 0xF0 ) \
- INST(BMI, AM_REL, 0x30 ) \
- INST(BNE, AM_REL, 0xD0 ) \
- INST(BPL, AM_REL, 0x10 ) \
- INST(BVC, AM_REL, 0x50 ) \
- INST(BVS, AM_REL, 0x70 ) \
- INST(BIT, AM_ZP, 0x24 ) \
- INST(BIT, AM_ABS, 0x2c ) \
- INST(BIT, AM_IMM, 0x89 ) \
- INST(BIT, AM_ZPX, 0x34 ) \
- INST(BIT, AM_AX, 0x3c ) \
- INST(BRK, AM_IMP, 0x00 ) \
- INST(CLC, AM_IMP, 0x18 ) \
- INST(CLD, AM_IMP, 0xd8 ) \
- INST(CLI, AM_IMP, 0x58 ) \
- INST(CLV, AM_IMP, 0xb8 ) \
- INST(NOP, AM_IMP, 0xea ) \
- INST(PHA, AM_IMP, 0x48 ) \
- INST(PLA, AM_IMP, 0x68 ) \
- INST(PHP, AM_IMP, 0x08 ) \
- INST(PLP, AM_IMP, 0x28 ) \
- INST(RTI, AM_IMP, 0x40 ) \
- INST(RTS, AM_IMP, 0x60 ) \
- INST(SEC, AM_IMP, 0x38 ) \
- INST(SED, AM_IMP, 0xf8 ) \
- INST(SEI, AM_IMP, 0x78 ) \
- INST(TAX, AM_IMP, 0xaa ) \
- INST(TXA, AM_IMP, 0x8a ) \
- INST(TAY, AM_IMP, 0xa8 ) \
- INST(TYA, AM_IMP, 0x98 ) \
- INST(TSX, AM_IMP, 0xba ) \
- INST(TXS, AM_IMP, 0x9a ) \
- INST(CMP, AM_IMM, 0xc9 ) \
- INST(CMP, AM_ZP, 0xc5 ) \
- INST(CMP, AM_ZPX, 0xd5 ) \
- INST(CMP, AM_ABS, 0xcd ) \
- INST(CMP, AM_AX, 0xdd ) \
- INST(CMP, AM_AY, 0xd9 ) \
- INST(CMP, AM_ZIX, 0xc1 ) \
- INST(CMP, AM_ZIY, 0xd1 ) \
- INST(CPX, AM_IMM, 0xe0 ) \
- INST(CPX, AM_ZP, 0xe4 ) \
- INST(CPX, AM_ABS, 0xec ) \
- INST(CPY, AM_IMM, 0xc0 ) \
- INST(CPY, AM_ZP, 0xc4 ) \
- INST(CPY, AM_ABS, 0xcc ) \
- INST(DEC, AM_ZP, 0xc6 ) \
- INST(DEC, AM_ZPX, 0xd6 ) \
- INST(DEC, AM_ABS, 0xce ) \
- INST(DEC, AM_AX, 0xde ) \
- INST(DEC, AM_ACC, 0x3a ) \
- INST(DEX, AM_IMP, 0xca ) \
- INST(DEY, AM_IMP, 0x88 ) \
- INST(INX, AM_IMP, 0xe8 ) \
- INST(INY, AM_IMP, 0xc8 ) \
- INST(EOR, AM_IMM, 0x49 ) \
- INST(EOR, AM_ZP, 0x45 ) \
- INST(EOR, AM_ZPX, 0x55 ) \
- INST(EOR, AM_ABS, 0x4d ) \
- INST(EOR, AM_AX, 0x5d ) \
- INST(EOR, AM_AY, 0x59 ) \
- INST(EOR, AM_ZIX, 0x41 ) \
- INST(EOR, AM_ZIY, 0x51 ) \
- INST(INC, AM_ZP, 0xe6 ) \
- INST(INC, AM_ZPX, 0xf6 ) \
- INST(INC, AM_ABS, 0xee ) \
- INST(INC, AM_AX, 0xfe ) \
- INST(INC, AM_ACC, 0x1a ) \
- INST(JMP, AM_ABS, 0x4c ) \
- INST(JMP, AM_IND, 0x6c ) \
- INST(JMP, AM_AX, 0x7c ) \
- INST(JSR, AM_ABS, 0x20 ) \
- INST(LDA, AM_IMM, 0xa9 ) \
- INST(LDA, AM_ZP, 0xa5 ) \
- INST(LDA, AM_ZPX, 0xb5 ) \
- INST(LDA, AM_ABS, 0xad ) \
- INST(LDA, AM_AX, 0xbd ) \
- INST(LDA, AM_AY, 0xb9 ) \
- INST(LDA, AM_ZIX, 0xa1 ) \
- INST(LDA, AM_ZIY, 0xb1 ) \
- INST(LDX, AM_IMM, 0xa2 ) \
- INST(LDX, AM_ZP, 0xa6 ) \
- INST(LDX, AM_ZPY, 0xb6 ) \
- INST(LDX, AM_ABS, 0xae ) \
- INST(LDX, AM_AY, 0xbe ) \
- INST(LDY, AM_IMM, 0xa0 ) \
- INST(LDY, AM_ZP, 0xa4 ) \
- INST(LDY, AM_ZPX, 0xb4 ) \
- INST(LDY, AM_ABS, 0xac ) \
- INST(LDY, AM_AX, 0xbc ) \
- INST(LSR, AM_ACC, 0x4a ) \
- INST(LSR, AM_ZP, 0x46 ) \
- INST(LSR, AM_ZPX, 0x56 ) \
- INST(LSR, AM_ABS, 0x4e ) \
- INST(LSR, AM_AX, 0x5e ) \
- INST(ORA, AM_IMM, 0x09 ) \
- INST(ORA, AM_ZP, 0x05 ) \
- INST(ORA, AM_ZPX, 0x15 ) \
- INST(ORA, AM_ABS, 0x0d ) \
- INST(ORA, AM_AX, 0x1d ) \
- INST(ORA, AM_AY, 0x19 ) \
- INST(ORA, AM_ZIX, 0x01 ) \
- INST(ORA, AM_ZIY, 0x11 ) \
- INST(ROL, AM_ACC, 0x2a ) \
- INST(ROL, AM_ZP, 0x26 ) \
- INST(ROL, AM_ZPX, 0x36 ) \
- INST(ROL, AM_ABS, 0x2e ) \
- INST(ROL, AM_AX, 0x3e ) \
- INST(ROR, AM_ACC, 0x6a ) \
- INST(ROR, AM_ZP, 0x66 ) \
- INST(ROR, AM_ZPX, 0x76 ) \
- INST(ROR, AM_ABS, 0x7e ) \
- INST(ROR, AM_AX, 0x6e ) \
- INST(SBC, AM_IMM, 0xe9 ) \
- INST(SBC, AM_ZP, 0xe5 ) \
- INST(SBC, AM_ZPX, 0xf5 ) \
- INST(SBC, AM_ABS, 0xed ) \
- INST(SBC, AM_AX, 0xfd ) \
- INST(SBC, AM_AY, 0xf9 ) \
- INST(SBC, AM_ZIX, 0xe1 ) \
- INST(SBC, AM_ZIY, 0xf1 ) \
- INST(STA, AM_ZP, 0x85 ) \
- INST(STA, AM_ZPX, 0x95 ) \
- INST(STA, AM_ABS, 0x8d ) \
- INST(STA, AM_AX, 0x9d ) \
- INST(STA, AM_AY, 0x99 ) \
- INST(STA, AM_ZIX, 0x81 ) \
- INST(STA, AM_ZIY, 0x91 ) \
- INST(STX, AM_ZP, 0x86 ) \
- INST(STX, AM_ZPY, 0x96 ) \
- INST(STX, AM_ABS, 0x8e ) \
- INST(STY, AM_ZP, 0x84 ) \
- INST(STY, AM_ZPX, 0x94 ) \
- INST(STY, AM_ABS, 0x8c ) \
+ INST(ADC, AM_IMM, 0x69, 2) \
+ INST(ADC, AM_ZP, 0x65, 2) \
+ INST(ADC, AM_ZPX, 0x75, 2) \
+ INST(ADC, AM_ABS, 0x6d, 3) \
+ INST(ADC, AM_AX, 0x7d, 3) \
+ INST(ADC, AM_AY, 0x79, 3) \
+ INST(ADC, AM_ZIX, 0x61, 2) \
+ INST(ADC, AM_ZIY, 0x71, 2) \
+ INST(AND, AM_IMM, 0x29, 2) \
+ INST(AND, AM_ZP, 0x25, 2) \
+ INST(AND, AM_ZPX, 0x35, 2) \
+ INST(AND, AM_ABS, 0x2d, 3) \
+ INST(AND, AM_AX, 0x3d, 3) \
+ INST(AND, AM_AY, 0x39, 3) \
+ INST(AND, AM_ZIX, 0x21, 2) \
+ INST(AND, AM_ZIY, 0x31, 2) \
+ INST(ASL, AM_ACC, 0x0a, 1) \
+ INST(ASL, AM_ZP, 0x06, 2) \
+ INST(ASL, AM_ZPX, 0x16, 2) \
+ INST(ASL, AM_ABS, 0x0e, 3) \
+ INST(ASL, AM_AX, 0x1e, 3) \
+ INST(BCC, AM_REL, 0x90, 2) \
+ INST(BCS, AM_REL, 0xB0, 2) \
+ INST(BEQ, AM_REL, 0xF0, 2) \
+ INST(BMI, AM_REL, 0x30, 2) \
+ INST(BNE, AM_REL, 0xD0, 2) \
+ INST(BPL, AM_REL, 0x10, 2) \
+ INST(BVC, AM_REL, 0x50, 2) \
+ INST(BVS, AM_REL, 0x70, 2) \
+ INST(BIT, AM_ZP, 0x24, 2) \
+ INST(BIT, AM_ABS, 0x2c, 3) \
+ INST(BIT, AM_IMM, 0x89, 2) \
+ INST(BIT, AM_ZPX, 0x34, 2) \
+ INST(BIT, AM_AX, 0x3c, 3) \
+ INST(BRK, AM_IMP, 0x00, 1) \
+ INST(CLC, AM_IMP, 0x18, 1) \
+ INST(CLD, AM_IMP, 0xd8, 1) \
+ INST(CLI, AM_IMP, 0x58, 1) \
+ INST(CLV, AM_IMP, 0xb8, 1) \
+ INST(NOP, AM_IMP, 0xea, 1) \
+ INST(PHA, AM_IMP, 0x48, 1) \
+ INST(PLA, AM_IMP, 0x68, 1) \
+ INST(PHP, AM_IMP, 0x08, 1) \
+ INST(PLP, AM_IMP, 0x28, 1) \
+ INST(RTI, AM_IMP, 0x40, 1) \
+ INST(RTS, AM_IMP, 0x60, 1) \
+ INST(SEC, AM_IMP, 0x38, 1) \
+ INST(SED, AM_IMP, 0xf8, 1) \
+ INST(SEI, AM_IMP, 0x78, 1) \
+ INST(TAX, AM_IMP, 0xaa, 1) \
+ INST(TXA, AM_IMP, 0x8a, 1) \
+ INST(TAY, AM_IMP, 0xa8, 1) \
+ INST(TYA, AM_IMP, 0x98, 1) \
+ INST(TSX, AM_IMP, 0xba, 1) \
+ INST(TXS, AM_IMP, 0x9a, 1) \
+ INST(CMP, AM_IMM, 0xc9, 2) \
+ INST(CMP, AM_ZP, 0xc5, 2) \
+ INST(CMP, AM_ZPX, 0xd5, 2) \
+ INST(CMP, AM_ABS, 0xcd, 3) \
+ INST(CMP, AM_AX, 0xdd, 3) \
+ INST(CMP, AM_AY, 0xd9, 3) \
+ INST(CMP, AM_ZIX, 0xc1, 2) \
+ INST(CMP, AM_ZIY, 0xd1, 2) \
+ INST(CPX, AM_IMM, 0xe0, 2) \
+ INST(CPX, AM_ZP, 0xe4, 2) \
+ INST(CPX, AM_ABS, 0xec, 3) \
+ INST(CPY, AM_IMM, 0xc0, 2) \
+ INST(CPY, AM_ZP, 0xc4, 2) \
+ INST(CPY, AM_ABS, 0xcc, 3) \
+ INST(DEC, AM_ZP, 0xc6, 2) \
+ INST(DEC, AM_ZPX, 0xd6, 2) \
+ INST(DEC, AM_ABS, 0xce, 3) \
+ INST(DEC, AM_AX, 0xde, 3) \
+ INST(DEC, AM_ACC, 0x3a, 1) \
+ INST(DEX, AM_IMP, 0xca, 1) \
+ INST(DEY, AM_IMP, 0x88, 1) \
+ INST(INX, AM_IMP, 0xe8, 1) \
+ INST(INY, AM_IMP, 0xc8, 1) \
+ INST(EOR, AM_IMM, 0x49, 2) \
+ INST(EOR, AM_ZP, 0x45, 2) \
+ INST(EOR, AM_ZPX, 0x55, 2) \
+ INST(EOR, AM_ABS, 0x4d, 3) \
+ INST(EOR, AM_AX, 0x5d, 3) \
+ INST(EOR, AM_AY, 0x59, 3) \
+ INST(EOR, AM_ZIX, 0x41, 2) \
+ INST(EOR, AM_ZIY, 0x51, 2) \
+ INST(INC, AM_ZP, 0xe6, 2) \
+ INST(INC, AM_ZPX, 0xf6, 2) \
+ INST(INC, AM_ABS, 0xee, 3) \
+ INST(INC, AM_AX, 0xfe, 3) \
+ INST(INC, AM_ACC, 0x1a, 1) \
+ INST(JMP, AM_ABS, 0x4c, 3) \
+ INST(JMP, AM_IND, 0x6c, 3) \
+ INST(JMP, AM_AX, 0x7c, 3) \
+ INST(JSR, AM_ABS, 0x20, 3) \
+ INST(LDA, AM_IMM, 0xa9, 2) \
+ INST(LDA, AM_ZP, 0xa5, 2) \
+ INST(LDA, AM_ZPX, 0xb5, 2) \
+ INST(LDA, AM_ABS, 0xad, 3) \
+ INST(LDA, AM_AX, 0xbd, 3) \
+ INST(LDA, AM_AY, 0xb9, 3) \
+ INST(LDA, AM_ZIX, 0xa1, 2) \
+ INST(LDA, AM_ZIY, 0xb1, 2) \
+ INST(LDX, AM_IMM, 0xa2, 2) \
+ INST(LDX, AM_ZP, 0xa6, 2) \
+ INST(LDX, AM_ZPY, 0xb6, 2) \
+ INST(LDX, AM_ABS, 0xae, 3) \
+ INST(LDX, AM_AY, 0xbe, 3) \
+ INST(LDY, AM_IMM, 0xa0, 2) \
+ INST(LDY, AM_ZP, 0xa4, 2) \
+ INST(LDY, AM_ZPX, 0xb4, 2) \
+ INST(LDY, AM_ABS, 0xac, 3) \
+ INST(LDY, AM_AX, 0xbc, 3) \
+ INST(LSR, AM_ACC, 0x4a, 1) \
+ INST(LSR, AM_ZP, 0x46, 2) \
+ INST(LSR, AM_ZPX, 0x56, 2) \
+ INST(LSR, AM_ABS, 0x4e, 3) \
+ INST(LSR, AM_AX, 0x5e, 3) \
+ INST(ORA, AM_IMM, 0x09, 2) \
+ INST(ORA, AM_ZP, 0x05, 2) \
+ INST(ORA, AM_ZPX, 0x15, 2) \
+ INST(ORA, AM_ABS, 0x0d, 3) \
+ INST(ORA, AM_AX, 0x1d, 3) \
+ INST(ORA, AM_AY, 0x19, 3) \
+ INST(ORA, AM_ZIX, 0x01, 2) \
+ INST(ORA, AM_ZIY, 0x11, 2) \
+ INST(ROL, AM_ACC, 0x2a, 1) \
+ INST(ROL, AM_ZP, 0x26, 2) \
+ INST(ROL, AM_ZPX, 0x36, 2) \
+ INST(ROL, AM_ABS, 0x2e, 3) \
+ INST(ROL, AM_AX, 0x3e, 3) \
+ INST(ROR, AM_ACC, 0x6a, 1) \
+ INST(ROR, AM_ZP, 0x66, 2) \
+ INST(ROR, AM_ZPX, 0x76, 2) \
+ INST(ROR, AM_ABS, 0x7e, 3) \
+ INST(ROR, AM_AX, 0x6e, 3) \
+ INST(SBC, AM_IMM, 0xe9, 2) \
+ INST(SBC, AM_ZP, 0xe5, 2) \
+ INST(SBC, AM_ZPX, 0xf5, 2) \
+ INST(SBC, AM_ABS, 0xed, 3) \
+ INST(SBC, AM_AX, 0xfd, 3) \
+ INST(SBC, AM_AY, 0xf9, 3) \
+ INST(SBC, AM_ZIX, 0xe1, 2) \
+ INST(SBC, AM_ZIY, 0xf1, 2) \
+ INST(STA, AM_ZP, 0x85, 2) \
+ INST(STA, AM_ZPX, 0x95, 2) \
+ INST(STA, AM_ABS, 0x8d, 3) \
+ INST(STA, AM_AX, 0x9d, 3) \
+ INST(STA, AM_AY, 0x99, 3) \
+ INST(STA, AM_ZIX, 0x81, 2) \
+ INST(STA, AM_ZIY, 0x91, 2) \
+ INST(STX, AM_ZP, 0x86, 2) \
+ INST(STX, AM_ZPY, 0x96, 2) \
+ INST(STX, AM_ABS, 0x8e, 3) \
+ INST(STY, AM_ZP, 0x84, 2) \
+ INST(STY, AM_ZPX, 0x94, 2) \
+ INST(STY, AM_ABS, 0x8c, 3) \