Documentation updates to accommodate the PDP-10 work that's starting now
This commit is contained in:
parent
c25ad00c41
commit
8320f58d44
20 changed files with 172 additions and 69 deletions
|
|
@ -119,6 +119,9 @@ class BusPDP10 extends Component {
|
|||
this.nBlockMask = this.nBlockTotal - 1;
|
||||
this.assert(this.nBlockMask <= BlockInfoPDP10.num.mask);
|
||||
|
||||
this.nDisableFaults = 0;
|
||||
this.fFault = false;
|
||||
|
||||
/*
|
||||
* Define all the properties to be initialized by initMemory()
|
||||
*/
|
||||
|
|
@ -524,7 +527,9 @@ class BusPDP10 extends Component {
|
|||
var w;
|
||||
var off = addr & this.nBlockLimit;
|
||||
var block = this.getBlockDirect(addr);
|
||||
this.nDisableFaults++;
|
||||
w = block.readWordDirect(off, addr);
|
||||
this.nDisableFaults--;
|
||||
return w;
|
||||
}
|
||||
|
||||
|
|
@ -541,7 +546,9 @@ class BusPDP10 extends Component {
|
|||
{
|
||||
var off = addr & this.nBlockLimit;
|
||||
var block = this.getBlockDirect(addr);
|
||||
this.nDisableFaults++;
|
||||
block.writeWordDirect(off, w & 0xffff, addr);
|
||||
this.nDisableFaults--;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -683,6 +690,42 @@ class BusPDP10 extends Component {
|
|||
return addr;
|
||||
}
|
||||
|
||||
/**
|
||||
* fault(addr, err, access)
|
||||
*
|
||||
* Bus interface for signaling alignment errors, invalid memory, etc.
|
||||
*
|
||||
* @this {BusPDP10}
|
||||
* @param {number} addr
|
||||
* @param {number} [err]
|
||||
* @param {number} [access] (for diagnostic purposes only)
|
||||
*/
|
||||
fault(addr, err, access)
|
||||
{
|
||||
this.fFault = true;
|
||||
if (!this.nDisableFaults) {
|
||||
if (DEBUGGER && this.dbg && this.dbg.messageEnabled(MessagesPDP10.FAULT)) {
|
||||
this.dbg.printMessage("memory fault on " + this.dbg.toStrBase(addr), true, true);
|
||||
this.dbg.stopCPU();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* checkFault()
|
||||
*
|
||||
* This also serves as a clearFault() function.
|
||||
*
|
||||
* @this {BusPDP10}
|
||||
* @return {boolean}
|
||||
*/
|
||||
checkFault()
|
||||
{
|
||||
var f = this.fFault;
|
||||
this.fFault = false;
|
||||
return f;
|
||||
}
|
||||
|
||||
/**
|
||||
* reportError(errNum, addr, size, fQuiet)
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in a new issue