diff --git a/index.html b/index.html
index e2ca4a7..a8d4293 100644
--- a/index.html
+++ b/index.html
@@ -50,10 +50,10 @@
- RAM : []
+ RAM : [] Lines:
- RAM (STACK):
+ RAM (STACK):
diff --git a/js/cpu.js b/js/cpu.js
index f88633a..c9c32b4 100644
--- a/js/cpu.js
+++ b/js/cpu.js
@@ -70,6 +70,7 @@ const OECONTROL_RO = 0b11111 // RAM to DATABUS Enable
let intval = null;
let breakpt = null;
+let ramlines = {value: 1};
function stringToRAM(rstring,ram,address) {
for (let a = 0; a < rstring.length; a++) {
@@ -182,15 +183,15 @@ function printTextOut(ram,startaddr,endaddr) {
}
}
-function printRAM(ram,lines = 4) {
- let addrSpan = lines;
- let startADDR = (cpu.ADDRBUS & 0xfff0) - ((addrSpan*16)/2);
+function printRAM(ram) {
+ let addrSpan = parseInt(ramlines.value);
+ let startADDR = (cpu.ADDRBUS & 0xfff0) - ((Math.ceil(addrSpan/2)*16));
if (startADDR < 0) startADDR = 0;
if (startADDR > 0xFEFF) startADDR = (0xFF00 + (addrSpan*16));
let sp_ram = document.getElementById("RAM");
- let ramtext = "ADDR : 0 1 2 3 4 5 6 7 8 9 A B C D E F
";
+ let ramtext = "ADDR : 0 1 2 3 4 5 6 7 8 9 A B C D E F
";
for (let a = startADDR; a < (startADDR+(addrSpan*16)); a+=16) {
- ramtext += "0x" + formatHex(a,4) + ": ";
+ ramtext += "0x" + formatHex(a,6) + ": ";
for (let b = 0; b < 16; b++) {
if (cpu.ADDRBUS === (a)+b) {
let bgcolor = "#ffff55";
diff --git a/js/main.js b/js/main.js
index 5c65e46..88566a4 100644
--- a/js/main.js
+++ b/js/main.js
@@ -51,6 +51,7 @@ let btn_runtil = document.getElementById("btn_runtil");
let brkpt = document.getElementById("addrbrk");
let clkinterval = document.getElementById("clkinterval");
let clkcycles = document.getElementById("clkcycles");
+ramlines = document.getElementById("ramlines");
let btn_rst = document.getElementById("btn_rst");
let clk_counter = document.getElementById("clk_counter");
let clk_count = 0;
@@ -65,6 +66,7 @@ btn_clk.addEventListener('mouseup', function(evt) {
cpu.CLOCK(false);
});
+
btn_runtil.addEventListener('click', function(evt) {
let addr = parseInt("0x" + brkpt.value);
let cpi = parseInt(clkcycles.value);