callbacks to support update LEDs
This commit is contained in:
22
index.html
22
index.html
@@ -75,13 +75,28 @@
|
||||
<script src="js/8080.js"></script>
|
||||
<script src="js/sim8800.js"></script>
|
||||
<script>
|
||||
function setAddressLedsCallback(bits) {
|
||||
for (let i = 0; i < bits.length; i++) {
|
||||
var ledElem = document.getElementById('a' + i);
|
||||
ledElem.innerHTML = bits[i] ? '●' : '○';
|
||||
}
|
||||
}
|
||||
|
||||
function setDataLedsCallback(bits) {
|
||||
for (let i = 0; i < bits.length; i++) {
|
||||
var ledElem = document.getElementById('d' + i);
|
||||
ledElem.innerHTML = bits[i] ? '●' : '○';
|
||||
}
|
||||
}
|
||||
|
||||
var dumpCpuElem = document.getElementById('cpu');
|
||||
var dumpMemElem = document.getElementById('mem');
|
||||
var sim = new Sim8800(256, 1000000,
|
||||
setAddressLedsCallback, setDataLedsCallback,
|
||||
dumpCpuElem, dumpMemElem);
|
||||
|
||||
function init() {
|
||||
sim.loadDataAsHexString(0, 'db ff d3 ff c3 00 00');
|
||||
sim.loadDataAsHexString(0, '00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f');
|
||||
sim.loadData(16, [0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07]);
|
||||
sim.dumpCpu();
|
||||
sim.dumpMem()
|
||||
@@ -94,7 +109,10 @@
|
||||
}
|
||||
|
||||
function run() {
|
||||
sim.loadDataAsHexString(0, 'db ff d3 ff c3 00 00');
|
||||
// Switch echo between A2 and A1.
|
||||
// sim.loadDataAsHexString(0, 'db ff d3 ff c3 00 00');
|
||||
// Pattern shift.
|
||||
sim.loadDataAsHexString(0, '3e 8c d3 ff 0f c3 02 00');
|
||||
sim.start();
|
||||
sim.dumpCpu();
|
||||
sim.dumpMem()
|
||||
|
||||
Reference in New Issue
Block a user