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.logic.core
/
src
/
net
/
mograsim
/
logic
/
core
/
components
/
CoreTriStateBuffer.java
diff --git
a/net.mograsim.logic.core/src/net/mograsim/logic/core/components/CoreTriStateBuffer.java
b/net.mograsim.logic.core/src/net/mograsim/logic/core/components/CoreTriStateBuffer.java
index
6568d1b
..
4b7a339
100644
(file)
--- a/
net.mograsim.logic.core/src/net/mograsim/logic/core/components/CoreTriStateBuffer.java
+++ b/
net.mograsim.logic.core/src/net/mograsim/logic/core/components/CoreTriStateBuffer.java
@@
-3,7
+3,9
@@
package net.mograsim.logic.core.components;
import java.util.List;
import net.mograsim.logic.core.timeline.Timeline;
import java.util.List;
import net.mograsim.logic.core.timeline.Timeline;
+import net.mograsim.logic.core.timeline.TimelineEventHandler;
import net.mograsim.logic.core.types.Bit;
import net.mograsim.logic.core.types.Bit;
+import net.mograsim.logic.core.types.BitVector;
import net.mograsim.logic.core.wires.CoreWire.ReadEnd;
import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd;
import net.mograsim.logic.core.wires.CoreWire.ReadEnd;
import net.mograsim.logic.core.wires.CoreWire.ReadWriteEnd;
@@
-28,12
+30,14
@@
public class CoreTriStateBuffer extends BasicCoreComponent
}
@Override
}
@Override
- protected
void
compute()
+ protected
TimelineEventHandler
compute()
{
if (enable.getValue() == Bit.ONE)
{
if (enable.getValue() == Bit.ONE)
- out.feedSignals(in.getValues());
- else
- out.clearSignals();
+ {
+ BitVector inValues = in.getValues();
+ return e -> out.feedSignals(inValues);
+ }
+ return e -> out.clearSignals();
}
@Override
}
@Override