114 lines
3.5 KiB
JavaScript
114 lines
3.5 KiB
JavaScript
class IS_PHA extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x280;
|
|
this.Mnemonic = "PHA";
|
|
this.LongName = "PUSH Register A to the STACK";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 4;
|
|
this.Microcode[2] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[3] = CONTROL_OUT_AL | CONTROL_RI | CONTROL_SPD | CONTROL_SPC;
|
|
}
|
|
}
|
|
is_PHA = new IS_PHA;
|
|
Instructions.push(is_PHA);
|
|
|
|
class IS_PHB extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x281;
|
|
this.Mnemonic = "PHB";
|
|
this.LongName = "PUSH Register B to the STACK";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 4;
|
|
this.Microcode[2] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[3] = CONTROL_OUT_BL | CONTROL_RI | CONTROL_SPD | CONTROL_SPC;
|
|
}
|
|
}
|
|
is_PHB = new IS_PHB;
|
|
Instructions.push(is_PHB);
|
|
|
|
class IS_PHC extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x282;
|
|
this.Mnemonic = "PHC";
|
|
this.LongName = "PUSH Register C to the STACK";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 4;
|
|
this.Microcode[2] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[3] = CONTROL_OUT_CL | CONTROL_RI | CONTROL_SPD | CONTROL_SPC;
|
|
}
|
|
}
|
|
is_PHC = new IS_PHC;
|
|
Instructions.push(is_PHC);
|
|
|
|
class IS_PHD extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x283;
|
|
this.Mnemonic = "PHD";
|
|
this.LongName = "PUSH Register D to the STACK";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 4;
|
|
this.Microcode[2] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[3] = CONTROL_OUT_DL | CONTROL_RI | CONTROL_SPD | CONTROL_SPC;
|
|
}
|
|
}
|
|
is_PHD = new IS_PHD;
|
|
Instructions.push(is_PHD);
|
|
|
|
class IS_PHAB extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x284;
|
|
this.Mnemonic = "PHAB";
|
|
this.LongName = "PUSH Register A and B to the STACK";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 4;
|
|
this.Microcode[2] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[3] = CONTROL_OUT_AB | CONTROL_RI | CONTROL_SPD | CONTROL_SPC;
|
|
}
|
|
}
|
|
is_PHAB = new IS_PHAB;
|
|
Instructions.push(is_PHAB);
|
|
|
|
class IS_PHCD extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x28C;
|
|
this.Mnemonic = "PHCD";
|
|
this.LongName = "PUSH Register C and D to the STACK";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 4;
|
|
this.Microcode[2] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[3] = CONTROL_OUT_CD | CONTROL_RI | CONTROL_SPD | CONTROL_SPC;
|
|
}
|
|
}
|
|
is_PHCD = new IS_PHCD;
|
|
Instructions.push(is_PHCD);
|