class IS_STAL_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x102; this.Mnemonic = "STAL"; this.LongName = "STORE Register A to LOW Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_AL | CONTROL_RI; } } is_STAL_i = new IS_STAL_imm16; Instructions.push(is_STAL_i); class IS_STAH_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x103; this.Mnemonic = "STAH"; this.LongName = "STORE Register A to HIGH Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_AH | CONTROL_RI; } } is_STAH_i = new IS_STAH_imm16; Instructions.push(is_STAH_i); class IS_STBL_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x104; this.Mnemonic = "STBL"; this.LongName = "STORE Register B to LOW Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_BL | CONTROL_RI; } } is_STBL_i = new IS_STBL_imm16; Instructions.push(is_STBL_i); class IS_STBH_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x105; this.Mnemonic = "STBH"; this.LongName = "STORE Register B to HIGH Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_BH | CONTROL_RI; } } is_STBH_i = new IS_STBH_imm16; Instructions.push(is_STBH_i); class IS_STCL_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x106; this.Mnemonic = "STCL"; this.LongName = "STORE Register C to LOW Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_CL | CONTROL_RI; } } is_STCL_i = new IS_STCL_imm16; Instructions.push(is_STCL_i); class IS_STCH_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x107; this.Mnemonic = "STCH"; this.LongName = "STORE Register C to HIGH Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_CH | CONTROL_RI; } } is_STCH_i = new IS_STCH_imm16; Instructions.push(is_STCH_i); class IS_STDL_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x108; this.Mnemonic = "STDL"; this.LongName = "STORE Register D to LOW Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_DL | CONTROL_RI; } } is_STDL_i = new IS_STDL_imm16; Instructions.push(is_STDL_i); class IS_STDH_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x109; this.Mnemonic = "STDH"; this.LongName = "STORE Register D to HIGH Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_DH | CONTROL_RI; } } is_STDH_i = new IS_STDH_imm16; Instructions.push(is_STDH_i); class IS_STAB_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x10A; this.Mnemonic = "STAB"; this.LongName = "STORE Register A and B"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_AB | CONTROL_RI; } } is_STAB_i = new IS_STAB_imm16; Instructions.push(is_STAB_i); class IS_STAB_sp extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x156; this.Mnemonic = "STAB"; this.LongName = "STORE Register A and B"; this.Aliases = new Array(); this.Type = InstructionTypes.RegisterAbsolute; this.Operands = new Array({Operand: "SP", Bitwidth: 16}); this.Words = 1; this.Cycles = 6; this.Microcode[2] = CONTROL_SPC; this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI; this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_SPD | CONTROL_SPC; this.Microcode[5] = CONTROL_OUT_AB | CONTROL_RI; } } is_STAB_sp = new IS_STAB_sp; Instructions.push(is_STAB_sp); class IS_PSTAL_sp_ind extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x198; this.Mnemonic = "PSTAL"; this.LongName = "Page STORE Register A to LOW Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.RegisterIndirect; this.Operands = new Array({Operand: "[SP]", Bitwidth: 16}); this.Words = 1; this.Cycles = 6; this.Microcode[2] = CONTROL_SPC; this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI; this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_SPD | CONTROL_SPC; this.Microcode[5] = CONTROL_OUT_AL | CONTROL_RI; } } is_PSTAL_spin = new IS_PSTAL_sp_ind; Instructions.push(is_PSTAL_spin); class IS_PSTAL_imm16 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x102; this.Mnemonic = "PSTAL"; this.LongName = "Page STORE Register A to LOW Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.Immediate16; this.Operands = new Array({Operand: "$", Bitwidth: 16}); this.Words = 2; this.Cycles = 5; this.Microcode[2] = CONTROL_OUT_PC | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_PCC; this.Microcode[4] = CONTROL_OUT_AL | CONTROL_RI; } } is_PSTAL_i = new IS_PSTAL_imm16; Instructions.push(is_PSTAL_i); class IS_STAL_sp_ind24 extends Microcode_Instruction { constructor(props) { super(props); this.Bytecode = 0x1D8; this.Mnemonic = "STAL"; this.LongName = "STORE Register A to LOW Byte"; this.Aliases = new Array(); this.Type = InstructionTypes.RegisterIndirect; this.Operands = new Array({Operand: "[SP]", Bitwidth: 24}); this.Words = 1; this.Cycles = 12; this.Microcode[2] = CONTROL_OUT_SP | CONTROL_RRI; this.Microcode[3] = CONTROL_OUT_HO | CONTROL_RI | CONTROL_SPC; this.Microcode[4] = CONTROL_SPC; this.Microcode[5] = CONTROL_OUT_SP | CONTROL_RRI; this.Microcode[6] = CONTROL_OUT_RO | CONTROL_RHI | CONTROL_SPD | CONTROL_SPC; this.Microcode[7] = CONTROL_OUT_SP | CONTROL_RRI; this.Microcode[8] = CONTROL_OUT_RO | CONTROL_RRI | CONTROL_SPD | CONTROL_SPC; this.Microcode[9] = CONTROL_OUT_AL | CONTROL_RI; this.Microcode[10] = CONTROL_OUT_SP | CONTROL_RRI; this.Microcode[11] = CONTROL_OUT_RO | CONTROL_RHI; //this.Microcode[12] = 0; } } is_STAL_spin = new IS_STAL_sp_ind24; Instructions.push(is_STAL_spin);