mirror of
https://github.com/pkimpel/retro-b5500.git
synced 2026-02-12 03:07:30 +00:00
140 lines
4.7 KiB
HTML
140 lines
4.7 KiB
HTML
<!DOCTYPE html>
|
|
<head>
|
|
<title>B5500 Emulator Operator Console</title>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
|
<meta name="Author" content="Nigel Williams & Paul Kimpel">
|
|
<meta http-equiv="Content-Script-Type" content="text/javascript">
|
|
<meta http-equiv="Content-Style-Type" content="text/css">
|
|
<link id=defaultStyleSheet rel=stylesheet type="text/css" href="B5500Console.css">
|
|
|
|
<script src="/B5500/B5500DummyUnit.js"></script>
|
|
<script src="/B5500/B5500SPOUnit.js"></script>
|
|
<script src="/B5500/B5500DiskUnit.js"></script>
|
|
|
|
<script src="/B5500EMU/B5500SystemConfiguration.js"></script>
|
|
<script src="/B5500EMU/B5500CentralControl.js"></script>
|
|
<script src="/B5500EMU/B5500Processor.js"></script>
|
|
<script src="/B5500EMU/B5500IOUnit.js"></script>
|
|
|
|
<script>
|
|
window.onload = function() {
|
|
var cc = new B5500CentralControl();
|
|
var paPanel;
|
|
var paState = 0;
|
|
var paTimer = null;
|
|
var pbState = 0;
|
|
var pbTimer = null;
|
|
|
|
var PAStateChange = function() {
|
|
var aNormal = document.getElementById("ANormalBtn");
|
|
var aControl = document.getElementById("AControlBtn");
|
|
var delay = Math.random();
|
|
|
|
if (paState || !pbState) { // PA will go to Normal State onlyl if PB is already in Normal State
|
|
paState = 0;
|
|
aNormal.className = "yellowButton";
|
|
aControl.className = "yellowButton yellowLit";
|
|
delay = Math.log(delay+1)*250;
|
|
} else {
|
|
paState = 1;
|
|
aNormal.className = "yellowButton yellowLit";
|
|
aControl.className = "yellowButton";
|
|
delay = Math.log(2-delay)*delay*250;
|
|
}
|
|
paTimer = setTimeout(PAStateChange, delay);
|
|
};
|
|
|
|
var PBStateChange = function() {
|
|
var bNormal = document.getElementById("BNormalBtn");
|
|
var delay = Math.random();
|
|
|
|
if (pbState) {
|
|
pbState = 0;
|
|
bNormal.className = "yellowButton";
|
|
delay = Math.log(delay+1)*1000;
|
|
} else {
|
|
pbState = 1;
|
|
bNormal.className = "yellowButton yellowLit";
|
|
delay = Math.log(2-delay)*delay*delay*1000;
|
|
}
|
|
pbTimer = setTimeout(PBStateChange, delay);
|
|
};
|
|
|
|
var PowerOnBtn_Click = function() {
|
|
document.getElementById("PowerOnBtn").className = "whiteButton whiteLit";
|
|
document.getElementById("AControlBtn").className = "yellowButton yellowLit";
|
|
paState = pbState = 0;
|
|
paTimer = setTimeout(PAStateChange, 3000);
|
|
pbTimer = setTimeout(PBStateChange, 10000);
|
|
cc.powerOn();
|
|
/******
|
|
if (!paPanel) {
|
|
paPanel = window.open("B5500ProcessorPanel.html", "PAPanel", "resizable=yes,scrollbars=yes,width=1,height=1");
|
|
}
|
|
*****/
|
|
return true;
|
|
};
|
|
|
|
var PowerOffBtn_Click = function() {
|
|
paState = pbSate = 0;
|
|
document.getElementById("PowerOnBtn").className = "whiteButton";
|
|
document.getElementById("ANormalBtn").className = "yellowButton";
|
|
document.getElementById("AControlBtn").className = "yellowButton";
|
|
document.getElementById("BNormalBtn").className = "yellowButton";
|
|
cc.powerOff();
|
|
/*****
|
|
if (paPanel) {
|
|
paPanel.close();
|
|
paPanel = null;
|
|
}
|
|
*****/
|
|
if (paTimer) {
|
|
clearTimeout(paTimer);
|
|
paTimer = null;
|
|
}
|
|
if (pbTimer) {
|
|
clearTimeout(pbTimer);
|
|
pbTimer = null;
|
|
}
|
|
return true;
|
|
};
|
|
|
|
/***** window.onload() outer block *****/
|
|
|
|
document.getElementById("PowerOnBtn").onclick = function() {
|
|
return PowerOnBtn_Click();
|
|
};
|
|
|
|
document.getElementById("PowerOffBtn").onclick = function() {
|
|
return PowerOffBtn_Click();
|
|
};
|
|
};
|
|
</script>
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<div id=consoleDiv>
|
|
<button id=HaltBtn class=blackButton>HALT</button>
|
|
|
|
<button id=NotReadyBtn class=yellowButton>NOT READY</button>
|
|
<button id=LoadSelectBtn class=blackButton>LOAD SELECT</button>
|
|
<button id=LoadBtn class=blackButton>LOAD</button>
|
|
|
|
<button id=MemoryCheckBtn class=yellowButton>MEMORY CHECK</button>
|
|
<button id=ANormalBtn class=yellowButton>A NORMAL</button>
|
|
<button id=AControlBtn class=yellowButton>A CONTROL</button>
|
|
<button id=BNormalBtn class=yellowButton>B NORMAL</button>
|
|
<button id=BControlBtn class=yellowButton>B CONTROL</button>
|
|
|
|
<button id=PowerOnBtn class=whiteButton>POWER<br>ON</button>
|
|
<button id=PowerOffBtn class=blackButton>POWER OFF</button>
|
|
|
|
<div id=BurroughsLogo>
|
|
<img id=BurroughsLogoImage src="Burroughs-Logo-Neg.jpg">
|
|
</div>
|
|
<div id=B5500Logo> B 5500 </div>
|
|
</div>
|
|
|
|
</body>
|
|
</html> |