projects
/
Mograsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixed a bug in Am2900; created dlatch8/80; relayouted some components
[Mograsim.git]
/
net.mograsim.machine
/
src
/
net
/
mograsim
/
machine
/
mi
/
MicroInstruction.java
diff --git
a/net.mograsim.machine/src/net/mograsim/machine/mi/MicroInstruction.java
b/net.mograsim.machine/src/net/mograsim/machine/mi/MicroInstruction.java
index
d88a8ef
..
d45c277
100644
(file)
--- a/
net.mograsim.machine/src/net/mograsim/machine/mi/MicroInstruction.java
+++ b/
net.mograsim.machine/src/net/mograsim/machine/mi/MicroInstruction.java
@@
-4,27
+4,29
@@
import net.mograsim.logic.core.types.BitVector;
import net.mograsim.machine.mi.parameters.MicroInstructionParameter;
import net.mograsim.machine.mi.parameters.Mnemonic;
import net.mograsim.machine.mi.parameters.MicroInstructionParameter;
import net.mograsim.machine.mi.parameters.Mnemonic;
-public interface MicroInstruction {
-
+public interface MicroInstruction
+{
+
public MicroInstructionParameter getParameter(int index);
public MicroInstructionParameter getParameter(int index);
+
public void setParameter(int index, MicroInstructionParameter param);
public void setParameter(int index, MicroInstructionParameter param);
-
+
/**
* @return The amount of {@link Mnemonic}s, the instruction is composed of
*/
public int getSize();
/**
* @return The amount of {@link Mnemonic}s, the instruction is composed of
*/
public int getSize();
-
- public static MicroInstruction create(MicroInstructionParameter... parameters)
+
+ public static MicroInstruction create(
Runnable updateCallback,
MicroInstructionParameter... parameters)
{
{
- return new StandardMicroInstruction(parameters);
+ return new StandardMicroInstruction(
updateCallback,
parameters);
}
}
-
+
default BitVector toBitVector()
{
BitVector vector = BitVector.of();
int size = getSize();
default BitVector toBitVector()
{
BitVector vector = BitVector.of();
int size = getSize();
- for(int i = 0; i < size; i++)
- vector.concat(getParameter(i).getValue());
+ for
(int i = 0; i < size; i++)
+ vector
= vector
.concat(getParameter(i).getValue());
return vector;
}
}
return vector;
}
}