callInstruction #3
@@ -20,6 +20,5 @@ class Main
|
|||||||
program.get(0).execute();
|
program.get(0).execute();
|
||||||
|
|
||||||
//ProgramCounter.incPC();
|
//ProgramCounter.incPC();
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
22
de/darkress/pic16f84sim/commands/Call.java
Normal file
22
de/darkress/pic16f84sim/commands/Call.java
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
package de.darkress.pic16f84sim.commands;
|
||||||
|
|
||||||
|
import de.darkress.pic16f84sim.microcontroller.Memory;
|
||||||
|
import de.darkress.pic16f84sim.microcontroller.ProgramCounter;
|
||||||
|
import de.darkress.pic16f84sim.microcontroller.Stack;
|
||||||
|
|
||||||
|
public class Call extends CommandUtils implements Command
|
||||||
|
{
|
||||||
|
private final int literal;
|
||||||
|
|
||||||
|
public Call(int input)
|
||||||
|
{
|
||||||
|
literal = input & 0x07FF;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute()
|
||||||
|
{
|
||||||
|
Stack.push(ProgramCounter.getPc() + 1);
|
||||||
|
ProgramCounter.setPcForGotoCall(literal);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user