120 lines
3.7 KiB
JavaScript
120 lines
3.7 KiB
JavaScript
class IS_PLA extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x2A0;
|
|
this.Mnemonic = "PLA";
|
|
this.LongName = "PULL Stack and place in Register A (Low BYTE)";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 5;
|
|
this.Microcode[2] = CONTROL_SPC;
|
|
this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RAIL;
|
|
}
|
|
}
|
|
is_PLA = new IS_PLA;
|
|
Instructions.push(is_PLA);
|
|
|
|
class IS_PLB extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x2A1;
|
|
this.Mnemonic = "PLB";
|
|
this.LongName = "PULL Stack and place in Register B (Low BYTE)";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Words = 1;
|
|
this.Cycles = 5;
|
|
this.Operands = new Array();
|
|
this.Microcode[2] = CONTROL_SPC;
|
|
this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RBIL;
|
|
}
|
|
}
|
|
is_PLB = new IS_PLB;
|
|
Instructions.push(is_PLB);
|
|
|
|
class IS_PLC extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x2A2;
|
|
this.Mnemonic = "PLC";
|
|
this.LongName = "PULL Stack and place in Register C (Low BYTE)";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 5;
|
|
this.Microcode[2] = CONTROL_SPC;
|
|
this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RCIL;
|
|
}
|
|
}
|
|
is_PLC = new IS_PLC;
|
|
Instructions.push(is_PLC);
|
|
|
|
class IS_PLD extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x2A3;
|
|
this.Mnemonic = "PLD";
|
|
this.LongName = "PULL Stack and place in Register D (Low BYTE)";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 5;
|
|
this.Microcode[2] = CONTROL_SPC;
|
|
this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RDIL;
|
|
}
|
|
}
|
|
is_PLD = new IS_PLD;
|
|
Instructions.push(is_PLD);
|
|
|
|
class IS_PLAB extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x2A4;
|
|
this.Mnemonic = "PLAB";
|
|
this.LongName = "PULL Stack and place in Register A and B";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 5;
|
|
this.Microcode[2] = CONTROL_SPC;
|
|
this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RAIL | CONTROL_RBIH;
|
|
}
|
|
}
|
|
is_PLAB = new IS_PLAB;
|
|
Instructions.push(is_PLAB);
|
|
|
|
class IS_PLCD extends Microcode_Instruction {
|
|
constructor(props) {
|
|
super(props);
|
|
this.Bytecode = 0x2AC;
|
|
this.Mnemonic = "PLCD";
|
|
this.LongName = "PULL Stack and place in Register C and D";
|
|
this.Aliases = new Array();
|
|
|
|
this.Type = InstructionTypes.Register;
|
|
this.Operands = new Array();
|
|
this.Words = 1;
|
|
this.Cycles = 5;
|
|
this.Microcode[2] = CONTROL_SPC;
|
|
this.Microcode[3] = CONTROL_OUT_SP | CONTROL_RRI;
|
|
this.Microcode[4] = CONTROL_OUT_RO | CONTROL_RCIL | CONTROL_RDIH;
|
|
}
|
|
}
|
|
is_PLCD = new IS_PLCD;
|
|
Instructions.push(is_PLCD);
|