mirror of
https://github.com/simon987/Much-Assembly-Required.git
synced 2025-04-20 11:06:46 +00:00
add alias constructors for the Jcc instructions
This commit is contained in:
parent
40f268d8f2
commit
d1112237cb
@ -16,6 +16,11 @@ public class JcInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JcInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (status.isCarryFlag()) {
|
if (status.isCarryFlag()) {
|
||||||
|
@ -17,6 +17,11 @@ public class JgInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JgInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (status.isSignFlag() == status.isOverflowFlag() && !status.isZeroFlag()) {
|
if (status.isSignFlag() == status.isOverflowFlag() && !status.isZeroFlag()) {
|
||||||
|
@ -20,6 +20,11 @@ public class JgeInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JgeInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (status.isSignFlag() == status.isOverflowFlag()) {
|
if (status.isSignFlag() == status.isOverflowFlag()) {
|
||||||
|
@ -17,6 +17,11 @@ public class JlInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JlInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (status.isSignFlag() != status.isOverflowFlag()) {
|
if (status.isSignFlag() != status.isOverflowFlag()) {
|
||||||
|
@ -17,6 +17,11 @@ public class JleInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JleInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (status.isSignFlag() != status.isOverflowFlag() || status.isZeroFlag()) {
|
if (status.isSignFlag() != status.isOverflowFlag() || status.isZeroFlag()) {
|
||||||
|
@ -20,6 +20,11 @@ public class JnaInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JnaInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (status.isCarryFlag() || status.isZeroFlag()) {
|
if (status.isCarryFlag() || status.isZeroFlag()) {
|
||||||
|
@ -16,6 +16,11 @@ public class JncInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JncInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (!status.isCarryFlag()) {
|
if (!status.isCarryFlag()) {
|
||||||
|
@ -17,6 +17,11 @@ public class JnzInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JnzInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (!status.isZeroFlag()) {
|
if (!status.isZeroFlag()) {
|
||||||
|
@ -20,6 +20,11 @@ public class JzInstruction extends Instruction {
|
|||||||
this.cpu = cpu;
|
this.cpu = cpu;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JzInstruction(String alias, CPU cpu) {
|
||||||
|
super(alias, OPCODE);
|
||||||
|
this.cpu = cpu;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Status execute(Target src, int srcIndex, Status status) {
|
public Status execute(Target src, int srcIndex, Status status) {
|
||||||
if (status.isZeroFlag()) {
|
if (status.isZeroFlag()) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user