localparam ADDR_MODE_IMPLIED = 0; localparam ADDR_MODE_IMMEDIATE = 1; localparam ADDR_MODE_ABSOLUTE = 2; localparam ADDR_MODE_ZP = 3; localparam ADDR_MODE_INDEXED_ABSOLUTE = 4; localparam ADDR_MODE_INDEXED_ZP = 5; localparam ADDR_MODE_INDIRECT = 6; localparam ADDR_MODE_PREINDEXED_INDIRECT = 7; localparam ADDR_MODE_POSTINDEXED_INDIRECT = 8; localparam ADDR_MODE_RELATIVE = 9; localparam OP_OR = 0; localparam OP_AND = 1; localparam OP_EOR = 2; localparam OP_ADC = 3; localparam OP_SUB = 4; localparam OP_ROT = 5; localparam OP_SHF = 6; localparam SHIFT_LEFT = 0; localparam SHIFT_RIGHT = 1; localparam I_LDA = 0; localparam I_LDX = 1; localparam I_LDY = 2; localparam I_STA = 3; localparam I_STX = 4; localparam I_STY = 5; localparam I_TAX = 6; localparam I_TAY = 7; localparam I_TXA = 8; localparam I_TYA = 9; localparam I_TSX = 10; localparam I_TXS = 11; localparam I_PHA = 12; localparam I_PHP = 13; localparam I_PLA = 14; localparam I_PLP = 15; localparam I_AND = 16; localparam I_EOR = 17; localparam I_ORA = 18; localparam I_BIT = 19; localparam I_ADC = 20; localparam I_SBC = 21; localparam I_CMP = 22; localparam I_CPX = 23; localparam I_CPY = 24; localparam I_INC = 25; localparam I_INX = 26; localparam I_INY = 27; localparam I_DEC = 28; localparam I_DEX = 29; localparam I_DEY = 30; localparam I_ASL = 31; localparam I_LSR = 32; localparam I_ROL = 33; localparam I_ROR = 34; localparam I_JMP = 35; localparam I_JSR = 36; localparam I_RTS = 37; localparam I_BCC = 38; localparam I_BCS = 39; localparam I_BEQ = 40; localparam I_BMI = 41; localparam I_BNE = 42; localparam I_BPL = 43; localparam I_BVC = 44; localparam I_BVS = 45; localparam I_CLC = 46; localparam I_CLD = 47; localparam I_CLI = 48; localparam I_CLV = 49; localparam I_SEC = 50; localparam I_SED = 51; localparam I_SEI = 52; localparam I_BRK = 53; localparam I_NOP = 54; localparam I_RTI = 55; // Unofficial opcodes localparam I_STP = 56; localparam I_SHY = 57; localparam P_N = 7; localparam P_V = 6; localparam P_B = 5; localparam P_D = 3; localparam P_I = 2; localparam P_Z = 1; localparam P_C = 0; localparam DMUX_PC = 3'h0; localparam DMUX_A = 3'h1; localparam DMUX_X = 3'h2; localparam DMUX_Y = 3'h3; localparam DMUX_SP = 3'h4; localparam DMUX_AUX = 3'h5;