Implemented more opcode decoders

This commit is contained in:
Jeff 2016-09-27 16:21:55 -07:00 committed by Jeff Parsons
commit b2c66b5374
6 changed files with 829 additions and 1619 deletions

View file

@ -52,6 +52,81 @@ PDP11.fnADD = function(src, dst)
return result & 0xffff; return result & 0xffff;
}; };
/**
* fnADDB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src
* @param {number} dst
* @return {number} (dst + src)
*/
PDP11.fnADDB = function(src, dst)
{
var result = dst + src;
this.updateAddFlags(result << 8, src << 8, dst << 8);
return result & 0xff;
};
/**
* fnASL(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst << 1)
*/
PDP11.fnASL = function(src, dst)
{
var result = dst << 1;
this.updateLogFlags(result);
return result & 0xffff;
};
/**
* fnASLB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst << 1)
*/
PDP11.fnASLB = function(src, dst)
{
var result = dst << 1;
this.updateLogFlags(result << 8);
return result & 0xff;
};
/**
* fnASR(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst >> 1)
*/
PDP11.fnASR = function(src, dst)
{
var result = (dst & 0x8000) | (dst >> 1) | (dst << 16);
this.updateLogFlags(result);
return result & 0xffff;
};
/**
* fnASRB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst >> 1)
*/
PDP11.fnASRB = function(src, dst)
{
var result = (dst & 0x800) | (dst >> 1) | (dst << 8);
this.updateLogFlags(result << 8);
return result & 0xff;
};
/** /**
* fnBIC(src, dst) * fnBIC(src, dst)
* *
@ -112,6 +187,36 @@ PDP11.fnBISB = function(src, dst)
return result; return result;
}; };
/**
* fnCOM(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (~dst)
*/
PDP11.fnCOM = function(src, dst)
{
var result = ~dst | 0x10000;
this.updateNZCFlags(result);
return result & 0xffff;
};
/**
* fnCOMB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (~dst)
*/
PDP11.fnCOMB = function(src, dst)
{
var result = ~dst | 0x100;
this.updateNZCFlags(result << 8);
return result & 0xff;
};
/** /**
* fnDEC(src, dst) * fnDEC(src, dst)
* *
@ -123,10 +228,25 @@ PDP11.fnBISB = function(src, dst)
PDP11.fnDEC = function(src, dst) PDP11.fnDEC = function(src, dst)
{ {
var result = dst - src; var result = dst - src;
this.updateDecFlags(result, src, dst); this.updateDecFlags(result, dst);
return result & 0xffff; return result & 0xffff;
}; };
/**
* fnDECB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ie, 1)
* @param {number} dst
* @return {number} (dst - src)
*/
PDP11.fnDECB = function(src, dst)
{
var result = dst - src;
this.updateDecFlags(result << 8, dst << 8);
return result & 0xff;
};
/** /**
* fnINC(src, dst) * fnINC(src, dst)
* *
@ -138,10 +258,121 @@ PDP11.fnDEC = function(src, dst)
PDP11.fnINC = function(src, dst) PDP11.fnINC = function(src, dst)
{ {
var result = dst + src; var result = dst + src;
this.updateIncFlags(result, src, dst); this.updateIncFlags(result, dst);
return result & 0xffff; return result & 0xffff;
}; };
/**
* fnINCB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ie, 1)
* @param {number} dst
* @return {number} (dst + src)
*/
PDP11.fnINCB = function(src, dst)
{
var result = dst + src;
this.updateIncFlags(result << 8, dst << 8);
return result & 0xff;
};
/**
* fnNEG(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (-dst)
*/
PDP11.fnNEG = function(src, dst)
{
var result = -dst;
/*
* If the sign bit of both dst and result are set, the original value must have been 0x8000, triggering overflow.
*/
this.updateNZCFlags(result, result & dst & 0x8000);
return result & 0xffff;
};
/**
* fnNEGB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (-dst)
*/
PDP11.fnNEGB = function(src, dst)
{
var result = -dst;
/*
* If the sign bit of both dst and result are set, the original value must have been 0x80, which triggers overflow.
*/
this.updateNZCFlags(result << 8, (result & dst & 0x80) << 8);
return result & 0xff;
};
/**
* fnROL(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst >> 1)
*/
PDP11.fnROL = function(src, dst)
{
var result = (dst << 1) | ((this.flagC >> 16) & 1);
this.updateLogFlags(result);
return result & 0xffff;
};
/**
* fnROLB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst >> 1)
*/
PDP11.fnROLB = function(src, dst)
{
var result = (dst << 1) | ((this.flagC >> 16) & 1);
this.updateLogFlags(result << 8);
return result & 0xff;
};
/**
* fnROR(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst >> 1)
*/
PDP11.fnROR = function(src, dst)
{
var result = (((this.flagC & 0x10000) | dst) >> 1) | (dst << 16);
this.updateLogFlags(result);
return result & 0xffff;
};
/**
* fnRORB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src (ignored)
* @param {number} dst
* @return {number} (dst >> 1)
*/
PDP11.fnRORB = function(src, dst)
{
var result = ((((this.flagC & 0x10000) >> 8) | dst) >> 1) | (dst << 8);
this.updateLogFlags(result << 8);
return result & 0xff;
};
/** /**
* fnSUB(src, dst) * fnSUB(src, dst)
* *
@ -157,6 +388,36 @@ PDP11.fnSUB = function(src, dst)
return result & 0xffff; return result & 0xffff;
}; };
/**
* fnSUBB(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src
* @param {number} dst
* @return {number} (dst - src)
*/
PDP11.fnSUBB = function(src, dst)
{
var result = dst - src;
this.updateSubFlags(result << 8, src << 8, dst << 8);
return result & 0xff;
};
/**
* fnXOR(src, dst)
*
* @this {CPUStatePDP11}
* @param {number} src
* @param {number} dst
* @return {number} (dst ^ src)
*/
PDP11.fnXOR = function(src, dst)
{
var result = dst ^ src;
this.updateNZFlags(result);
return result & 0xffff;
};
/** /**
* opADC(opCode) * opADC(opCode)
* *
@ -165,10 +426,7 @@ PDP11.fnSUB = function(src, dst)
*/ */
PDP11.opADC = function(opCode) PDP11.opADC = function(opCode)
{ {
/* this.updateWordByMode(opCode, this.getCF()? 1 : 0, PDP11.fnADD);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -180,10 +438,7 @@ PDP11.opADC = function(opCode)
*/ */
PDP11.opADCB = function(opCode) PDP11.opADCB = function(opCode)
{ {
/* this.updateByteByMode(opCode, this.getCF()? 1 : 0, PDP11.fnADDB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -207,10 +462,30 @@ PDP11.opADD = function(opCode)
*/ */
PDP11.opASH = function(opCode) PDP11.opASH = function(opCode)
{ {
/* var src = this.readWordByMode(opCode);
* TODO: Implement var reg = (opCode >> 6) & 7;
*/ var result = this.regsGen[reg];
this.regOp = -1; if (result & 0x8000) result |= 0xffff0000;
this.flagC = this.flagV = 0;
src &= 0x3F;
if (src & 0x20) { // shift right
src = 64 - src;
if (src > 16) src = 16;
this.flagC = result << (17 - src);
result = result >> src;
} else if (src) {
if (src > 16) {
this.flagV = result;
result = 0;
} else {
result = result << src;
this.flagC = result;
var dst = (result >> 15) & 0xffff; // check successive sign bits
if (dst && dst !== 0xffff) this.flagV = 0x8000;
}
}
this.regsGen[reg] = result & 0xffff;
this.flagN = this.flagZ = result;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -222,10 +497,37 @@ PDP11.opASH = function(opCode)
*/ */
PDP11.opASHC = function(opCode) PDP11.opASHC = function(opCode)
{ {
/* var src = this.readWordByMode(opCode);
* TODO: Implement var reg = (opCode >> 6) & 7;
*/ var dst = (this.regsGen[reg] << 16) | this.regsGen[reg | 1];
this.regOp = -1; this.flagC = this.flagV = 0;
src &= 0x3F;
if (src & 0x20) {
src = 64 - src;
if (src > 32) src = 32;
var result = dst >> (src - 1);
this.flagC = result << 16;
result >>= 1;
if (dst & 0x80000000) result |= 0xffffffff << (32 - src);
} else {
if (src) { // shift left
result = dst << (src - 1);
this.flagC = result >> 15;
result <<= 1;
if (src > 32) src = 32;
dst = dst >> (32 - src);
if (dst) {
dst |= (0xffffffff << src) & 0xffffffff;
if (dst !== 0xffffffff) this.flagV = 0x8000;
}
} else {
result = dst;
}
}
this.regsGen[reg] = (result >> 16) & 0xffff;
this.regsGen[reg | 1] = result & 0xffff;
this.flagN = result >> 16;
this.flagZ = result >> 16 | result;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -237,10 +539,7 @@ PDP11.opASHC = function(opCode)
*/ */
PDP11.opASL = function(opCode) PDP11.opASL = function(opCode)
{ {
/* this.updateWordByMode(opCode, 0, PDP11.fnASL);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -252,10 +551,7 @@ PDP11.opASL = function(opCode)
*/ */
PDP11.opASLB = function(opCode) PDP11.opASLB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 0, PDP11.fnASLB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -267,10 +563,7 @@ PDP11.opASLB = function(opCode)
*/ */
PDP11.opASR = function(opCode) PDP11.opASR = function(opCode)
{ {
/* this.updateWordByMode(opCode, 0, PDP11.fnASR);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -282,10 +575,7 @@ PDP11.opASR = function(opCode)
*/ */
PDP11.opASRB = function(opCode) PDP11.opASRB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 0, PDP11.fnASRB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -689,10 +979,7 @@ PDP11.opCMPB = function(opCode)
*/ */
PDP11.opCOM = function(opCode) PDP11.opCOM = function(opCode)
{ {
/* this.updateWordByMode(opCode, 0, PDP11.fnCOM);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -704,10 +991,7 @@ PDP11.opCOM = function(opCode)
*/ */
PDP11.opCOMB = function(opCode) PDP11.opCOMB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 0, PDP11.fnCOMB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -731,10 +1015,7 @@ PDP11.opDEC = function(opCode)
*/ */
PDP11.opDECB = function(opCode) PDP11.opDECB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 1, PDP11.fnDECB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -746,10 +1027,32 @@ PDP11.opDECB = function(opCode)
*/ */
PDP11.opDIV = function(opCode) PDP11.opDIV = function(opCode)
{ {
/* var src = this.readWordByMode(opCode);
* TODO: Implement if (!src) {
*/ this.flagN = 0; // NZVC
this.regOp = -1; this.flagZ = 0;
this.flagV = 0x8000;
this.flagC = 0x10000; // divide by zero
} else {
var reg = (opCode >> 6) & 7;
var dst = (this.regsGen[reg] << 16) | this.regsGen[reg | 1];
this.flagC = this.flagV = 0;
if (src & 0x8000) src |= ~0xffff;
var result = ~~(dst / src);
if (result >= -32768 && result <= 32767) {
this.regsGen[reg] = result & 0xffff;
this.regsGen[reg | 1] = (dst - (result * src)) & 0xffff;
this.flagZ = (result >> 16) | result;
this.flagN = result >> 16;
} else {
this.flagV = 0x8000; // overflow - following are indeterminate
this.flagZ = (result >> 15) | result; // dodgy
this.flagN = dst >> 16; // just as dodgy
if (src === -1 && this.regsGen[reg] === 0xfffe) {
this.regsGen[reg] = this.regsGen[reg | 1] = 1; // etc
}
}
}
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -761,10 +1064,7 @@ PDP11.opDIV = function(opCode)
*/ */
PDP11.opEMT = function(opCode) PDP11.opEMT = function(opCode)
{ {
/* this.trap(PDP11.TRAP.EMULATOR, 2);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -776,10 +1076,13 @@ PDP11.opEMT = function(opCode)
*/ */
PDP11.opHALT = function(opCode) PDP11.opHALT = function(opCode)
{ {
/* if (this.regPSW & PDP11.PSW.CMODE) {
* TODO: Implement this.regErr |= PDP11.CPUERR.BADHALT;
*/ this.trap(PDP11.TRAP.BUS_ERROR, 46);
this.regOp = -1; } else {
this.runState = 3;
this.endBurst();
}
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -803,10 +1106,7 @@ PDP11.opINC = function(opCode)
*/ */
PDP11.opINCB = function(opCode) PDP11.opINCB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 1, PDP11.fnINCB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -994,10 +1294,18 @@ PDP11.opMTPS = function(opCode)
*/ */
PDP11.opMUL = function(opCode) PDP11.opMUL = function(opCode)
{ {
/* var src = this.readWordByMode(opCode);
* TODO: Implement var reg = (opCode >> 6) & 7;
*/ if (src & 0x8000) src |= ~0xffff;
this.regOp = -1; var dst = this.regsGen[reg];
if (dst & 0x8000) dst |= ~0xffff;
var result = ~~(src * dst);
this.regsGen[reg] = (result >> 16) & 0xffff;
this.regsGen[reg | 1] = result & 0xffff;
this.flagN = result >> 16;
this.flagZ = this.flagN | result;
this.flagV = 0;
this.flagC = (result < -32768 || result > 32767)? 0x10000 : 0;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1009,10 +1317,7 @@ PDP11.opMUL = function(opCode)
*/ */
PDP11.opNEG = function(opCode) PDP11.opNEG = function(opCode)
{ {
/* this.updateWordByMode(opCode, 0, PDP11.fnNEG);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1024,10 +1329,7 @@ PDP11.opNEG = function(opCode)
*/ */
PDP11.opNEGB = function(opCode) PDP11.opNEGB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 0, PDP11.fnNEGB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1050,7 +1352,7 @@ PDP11.opNOP = function(opCode)
*/ */
PDP11.opRESET = function(opCode) PDP11.opRESET = function(opCode)
{ {
if (!(this.PSW & PDP11.PSW.CMODE)) { if (!(this.regPSW & PDP11.PSW.CMODE)) {
this.resetRegs(); this.resetRegs();
this.bus.reset(); this.bus.reset();
// display.data = this.regsGen[0]; // TODO: Review // display.data = this.regsGen[0]; // TODO: Review
@ -1066,10 +1368,7 @@ PDP11.opRESET = function(opCode)
*/ */
PDP11.opROL = function(opCode) PDP11.opROL = function(opCode)
{ {
/* this.updateWordByMode(opCode, 0, PDP11.fnROL);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1081,10 +1380,7 @@ PDP11.opROL = function(opCode)
*/ */
PDP11.opROLB = function(opCode) PDP11.opROLB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 0, PDP11.fnROLB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1096,10 +1392,7 @@ PDP11.opROLB = function(opCode)
*/ */
PDP11.opROR = function(opCode) PDP11.opROR = function(opCode)
{ {
/* this.updateWordByMode(opCode, 0, PDP11.fnROR);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1111,10 +1404,7 @@ PDP11.opROR = function(opCode)
*/ */
PDP11.opRORB = function(opCode) PDP11.opRORB = function(opCode)
{ {
/* this.updateByteByMode(opCode, 0, PDP11.fnRORB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1126,10 +1416,11 @@ PDP11.opRORB = function(opCode)
*/ */
PDP11.opRTI = function(opCode) PDP11.opRTI = function(opCode)
{ {
this.trapReturn();
/* /*
* TODO: Implement * Unlike RTT, RTI enables immediate trace
*/ */
this.regOp = -1; this.opFlags |= (this.regPSW & PDP11.PSW.TF);
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1157,10 +1448,7 @@ PDP11.opRTS = function(opCode)
*/ */
PDP11.opRTT = function(opCode) PDP11.opRTT = function(opCode)
{ {
/* this.trapReturn();
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1172,10 +1460,7 @@ PDP11.opRTT = function(opCode)
*/ */
PDP11.opSBC = function(opCode) PDP11.opSBC = function(opCode)
{ {
/* this.updateWordByMode(opCode, this.getCF()? 1 : 0, PDP11.fnSUB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1187,10 +1472,7 @@ PDP11.opSBC = function(opCode)
*/ */
PDP11.opSBCB = function(opCode) PDP11.opSBCB = function(opCode)
{ {
/* this.updateByteByMode(opCode, this.getCF()? 1 : 0, PDP11.fnSUBB);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1281,8 +1563,8 @@ PDP11.opSOB = function(opCode)
PDP11.opSPL = function(opCode) PDP11.opSPL = function(opCode)
{ {
this.assert(opCode & 0x08); this.assert(opCode & 0x08);
if (!(this.PSW & PDP11.PSW.CMODE)) { if (!(this.regPSW & PDP11.PSW.CMODE)) {
this.PSW = (this.PSW & ~(PDP11.PSW.UNUSED | PDP11.PSW.PRI)) | ((opCode & 0x7) << PDP11.PSW.SHIFT.PRI); this.regPSW = (this.regPSW & ~(PDP11.PSW.UNUSED | PDP11.PSW.PRI)) | ((opCode & 0x7) << PDP11.PSW.SHIFT.PRI);
this.priorityReview = 1; this.priorityReview = 1;
} }
this.nStepCycles -= 1; this.nStepCycles -= 1;
@ -1308,10 +1590,7 @@ PDP11.opSUB = function(opCode)
*/ */
PDP11.opSXT = function(opCode) PDP11.opSXT = function(opCode)
{ {
/* this.updateNZFlags(this.writeWordByMode(opCode, this.getNF? 0xffff : 0));
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1323,10 +1602,7 @@ PDP11.opSXT = function(opCode)
*/ */
PDP11.opTRAP = function(opCode) PDP11.opTRAP = function(opCode)
{ {
/* this.trap(PDP11.TRAP.TRAP, 4);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1338,10 +1614,9 @@ PDP11.opTRAP = function(opCode)
*/ */
PDP11.opTST = function(opCode) PDP11.opTST = function(opCode)
{ {
/* var result = this.readWordByMode(opCode);
* TODO: Implement this.assert(!(result & ~0xffff)); // assert that C flag will be clear
*/ this.updateNZCFlags(result);
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1353,10 +1628,9 @@ PDP11.opTST = function(opCode)
*/ */
PDP11.opTSTB = function(opCode) PDP11.opTSTB = function(opCode)
{ {
/* var result = this.readByteByMode(opCode);
* TODO: Implement this.assert(!(result & ~0xff)); // assert that C flag will be clear
*/ this.updateNZCFlags(result << 8);
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };
@ -1383,10 +1657,7 @@ PDP11.opWAIT = function(opCode)
*/ */
PDP11.opXOR = function(opCode) PDP11.opXOR = function(opCode)
{ {
/* this.updateWordByMode(opCode, this.readWordByMode((opCode & PDP11.SRCMODE.REG) >> PDP11.SRCMODE.SHIFT), PDP11.fnXOR);
* TODO: Implement
*/
this.regOp = -1;
this.nStepCycles -= 1; this.nStepCycles -= 1;
}; };

File diff suppressed because it is too large Load diff

View file

@ -188,10 +188,14 @@ var PDP11 = {
MASK: 0x38 MASK: 0x38
}, },
DSTMODE: { DSTMODE: {
REG: 0x0007,
MODE: 0x0038,
MASK: 0x003F, MASK: 0x003F,
SHIFT: 0 SHIFT: 0
}, },
SRCMODE: { SRCMODE: {
REG: 0x01C0,
MODE: 0x0E00,
MASK: 0x0FC0, MASK: 0x0FC0,
SHIFT: 6 SHIFT: 6
}, },

View file

@ -1017,7 +1017,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
break; break;
case 0x3FFFCE: /*017777716*/ // User and Super SP case 0x3FFFCE: /*017777716*/ // User and Super SP
if (physicalAddress & 1) { if (physicalAddress & 1) {
if ((cpu.PSW >> 14) & 3 == 3) { // User Mode if ((cpu.regPSW >> 14) & 3 == 3) { // User Mode
if (data >= 0) cpu.regsGen[6] = data; if (data >= 0) cpu.regsGen[6] = data;
result = cpu.regsGen[6]; result = cpu.regsGen[6];
} else { } else {
@ -1025,7 +1025,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
result = cpu.regsAltStack[3]; result = cpu.regsAltStack[3];
} }
} else { } else {
if ((cpu.PSW >> 14) & 3 == 1) { // Super Mode if ((cpu.regPSW >> 14) & 3 == 1) { // Super Mode
if (data >= 0) cpu.regsGen[6] = data; if (data >= 0) cpu.regsGen[6] = data;
result = cpu.regsGen[6]; result = cpu.regsGen[6];
} else { } else {
@ -1038,7 +1038,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
case 0x3FFFCA: /*017777712*/ case 0x3FFFCA: /*017777712*/
case 0x3FFFC8: /*017777710*/ // Register set 1 case 0x3FFFC8: /*017777710*/ // Register set 1
idx = physicalAddress & 7; idx = physicalAddress & 7;
if (cpu.PSW & 0x800) { if (cpu.regPSW & 0x800) {
if (data >= 0) cpu.regsGen[idx] = data; if (data >= 0) cpu.regsGen[idx] = data;
result = cpu.regsGen[idx]; result = cpu.regsGen[idx];
} else { } else {
@ -1051,7 +1051,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
if (data >= 0) cpu.regsGen[7] = data; if (data >= 0) cpu.regsGen[7] = data;
result = cpu.regsGen[7]; result = cpu.regsGen[7];
} else { } else {
if ((cpu.PSW >> 14) & 3 == 0) { // Kernel Mode if ((cpu.regPSW >> 14) & 3 == 0) { // Kernel Mode
if (data >= 0) cpu.regsGen[6] = data; if (data >= 0) cpu.regsGen[6] = data;
result = cpu.regsGen[6]; result = cpu.regsGen[6];
} else { } else {
@ -1064,7 +1064,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
case 0x3FFFC2: /*017777702*/ case 0x3FFFC2: /*017777702*/
case 0x3FFFC0: /*017777700*/ // Register set 0 case 0x3FFFC0: /*017777700*/ // Register set 0
idx = physicalAddress & 7; idx = physicalAddress & 7;
if (cpu.PSW & 0x800) { if (cpu.regPSW & 0x800) {
if (data >= 0) cpu.regsAlt[idx] = data; if (data >= 0) cpu.regsAlt[idx] = data;
result = cpu.regsAlt[idx]; result = cpu.regsAlt[idx];
} else { } else {

View file

@ -1,204 +1,209 @@
(function(){var l; (function(){var l;
function ca(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d&&(d=a.charAt(1),"b"==d&&f&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));var e,d=a;((f=b)&&10!=f?16==f?d.match(/^[0-9a-f]+$/i):8==f?d.match(/^[0-7]+$/):2==f&& function aa(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d&&(d=a.charAt(1),"b"==d&&f&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));var e,d=a;((f=b)&&10!=f?16==f?d.match(/^[0-9a-f]+$/i):8==f?d.match(/^[0-7]+$/):2==f&&
d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(e=parseInt(a,b))&&(c=e|0)}return c}function da(a,b,c){var d="";b?11<b&&(b=11):b=a&-65536?11:6;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;)d=String.fromCharCode((a&7)+48)+d,a>>=3;return(c?"0o":"")+d}function r(a,b,c){var d="";b?8<b&&(b=8):b=a&-65536?8:4;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;){var f=a&15,f=f+(0<=f&&9>=f?48:55),d=String.fromCharCode(f)+d;a>>=4}return(c?"0x":"")+d} d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(e=parseInt(a,b))&&(c=e|0)}return c}function ba(a,b,c){var d="";b?11<b&&(b=11):b=a&-65536?11:6;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;)d=String.fromCharCode((a&7)+48)+d,a>>=3;return(c?"0o":"")+d}function r(a,b,c){var d="";b?8<b&&(b=8):b=a&-65536?8:4;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;){var f=a&15,f=f+(0<=f&&9>=f?48:55),d=String.fromCharCode(f)+d;a>>=4}return(c?"0x":"")+d}
function ea(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0<c&&(b=b.substr(0,c));return b}function fa(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function ga(){var a=ha();return-1!==a.indexOf("pcjs.org",a.length-8)}var ia={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ja(a){return a.replace(/[&<>"']/g,function(a){return ia[a]})}function ka(a,b){return(a+" ").slice(0,b)} function ga(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0<c&&(b=b.substr(0,c));return b}function ha(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function ia(){var a=ja();return-1!==a.indexOf("pcjs.org",a.length-8)}var ka={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function la(a){return a.replace(/[&<>"']/g,function(a){return ka[a]})}function ma(a,b){return(a+" ").slice(0,b)}
function ma(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function na(a,b,c){var d=0,f=a.length,e=0;for(c||(c=function(a,b){return a>b?1:a<b?-1:0});d<f;){var g=d+f>>1,h;h=c(b,a[g]);0<h?d=g+1:(f=g,e=!h)}return e?d:~d}var oa=Date.now||function(){return+new Date};function sa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} function na(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function oa(a,b,c){var d=0,f=a.length,e=0;for(c||(c=function(a,b){return a>b?1:a<b?-1:0});d<f;){var g=d+f>>1,h;h=c(b,a[g]);0<h?d=g+1:(f=g,e=!h)}return e?d:~d}var pa=Date.now||function(){return+new Date};function ra(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
function ta(a,b,c,d){var f=0,e=null,g=null;if("object"==typeof resources&&(e=resources[a]))return d&&d(a,e,f),[e,f];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(e=h.responseText,200==h.status||!h.status&&e.length&&"file:"==(window?window.location.protocol:"file:")||(f=h.status||-1),d&&d(a,e,f))});if(b&&"object"== function sa(a,b,c,d){var f=0,e=null,g=null;if("object"==typeof resources&&(e=resources[a]))return d&&d(a,e,f),[e,f];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(e=h.responseText,200==h.status||!h.status&&e.length&&"file:"==(window?window.location.protocol:"file:")||(f=h.status||-1),d&&d(a,e,f))});if(b&&"object"==
typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(e=h.responseText,200!=h.status&&(f=h.status||-1),d&&d(a,e,f),g=[e,f]);return g}function ha(){return"http://"+(window?window.location.host:"www.pcjs.org")} typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(e=h.responseText,200!=h.status&&(f=h.status||-1),d&&d(a,e,f),g=[e,f]);return g}function ja(){return"http://"+(window?window.location.host:"www.pcjs.org")}
function t(a){window&&window.alert(a)}function ua(a){var b=!1;window&&(b=window.confirm(a));return b}var va=null;function wa(){if(null==va){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}va=a}return va}function xa(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b} function t(a){window&&window.alert(a)}function wa(a){var b=!1;window&&(b=window.confirm(a));return b}var xa=null;function ya(){if(null==xa){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}xa=a}return xa}function za(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}
function ya(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function za(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function Aa(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()} function Aa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function Ba(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function Ca(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0<a?setTimeout(d,0):c()}d()}
function Ga(a,b){function c(){b(100===d)&&(f=setTimeout(c,d),d=100)}var d=0,f=null,e=!1;a.onmousedown=function(){e||f||(d=500,c())};a.ontouchstart=function(){f||(d=500,c())};a.onmouseup=a.onmouseout=function(){f&&(clearTimeout(f),f=null)};a.ontouchend=a.ontouchcancel=function(){f&&(clearTimeout(f),f=null);e=!0}}var Ha={init:[],show:[],exit:[]},Ia=!1,Ja=!1,Ka=!0;function La(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Ma(a){Ha.init.push(a)} function Da(a,b){function c(){b(100===d)&&(f=setTimeout(c,d),d=100)}var d=0,f=null,e=!1;a.onmousedown=function(){e||f||(d=500,c())};a.ontouchstart=function(){f||(d=500,c())};a.onmouseup=a.onmouseout=function(){f&&(clearTimeout(f),f=null)};a.ontouchend=a.ontouchcancel=function(){f&&(clearTimeout(f),f=null);e=!0}}var Ja={init:[],show:[],exit:[]},Ka=!1,La=!1,Ma=!0;function Na(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function Oa(a){Ja.init.push(a)}
function Na(a){if(Ka)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){t(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function Oa(a){!Ka&&a?(Ka=!0,Ia&&Pa("init"),Ja&&Pa("show")):Ka=a}function Pa(a){Ha[a]&&Na(Ha[a])}La("onload",function(){Ia=!0;Na(Ha.init)});La("onpageshow",function(){Ja=!0;Na(Ha.show)});La(za("Opera")||za("iOS")?"onunload":"onbeforeunload",function(){Na(Ha.exit)}); function Pa(a){if(Ma)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){t(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function Qa(a){!Ma&&a?(Ma=!0,Ka&&Ra("init"),La&&Ra("show")):Ma=a}function Ra(a){Ja[a]&&Pa(Ja[a])}Na("onload",function(){Ka=!0;Pa(Ja.init)});Na("onpageshow",function(){La=!0;Pa(Ja.show)});Na(Ba("Opera")||Ba("iOS")?"onunload":"onbeforeunload",function(){Pa(Ja.exit)});
function u(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.rc=b.comment;this.Nc=b;b=this.id.indexOf(".");0>b?this.Ab=this.id:(this.tc=this.id.substr(0,b),this.Ab=this.id.substr(b+1));this[a]=c;this.j={ready:!1,ob:!1,fc:!1,ba:!1,error:!1};this.Xb=null;this.j.error=!1;this.I={};this.F=null;this.da=d||0;v.push(this)}var Qa=void 0,Ra={}; function u(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.sc=b.comment;this.Oc=b;b=this.id.indexOf(".");0>b?this.Db=this.id:(this.rc=this.id.substr(0,b),this.Db=this.id.substr(b+1));this[a]=c;this.u={ready:!1,pb:!1,fc:!1,ga:!1,error:!1};this.Zb=null;this.u.error=!1;this.I={};this.C=null;this.ia=d||0;v.push(this)}var Sa=void 0,Ta={};
if(window){Qa||(Qa=window.location.search.substr(1));for(var Sa,Ta=/\+/g,Ua=/([^&=]+)=?([^&]*)/g;Sa=Ua.exec(Qa);)Ra[decodeURIComponent(Sa[1].replace(Ta," "))]=decodeURIComponent(Sa[2].replace(Ta," "))}function Va(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b} if(window){Sa||(Sa=window.location.search.substr(1));for(var Ua,Va=/\+/g,Wa=/([^&=]+)=?([^&]*)/g;Ua=Wa.exec(Sa);)Ta[decodeURIComponent(Ua[1].replace(Va," "))]=decodeURIComponent(Ua[2].replace(Va," "))}function Xa(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
function w(a,b){b||(b=u);a.prototype=Va(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Wa=window.PCjs.Machines||(window.PCjs.Machines={}),v=window.PCjs.Components||(window.PCjs.Components=[])}else Wa={},v=[];function Xa(a,b,c){Wa[a]&&b&&(Wa[a][b]=c)}function Ya(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<v.length;b++){var d=v[b];a&&d.id.indexOf(a)||c.push(d)}return c} function w(a,b){b||(b=u);a.prototype=Xa(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Ya=window.PCjs.Machines||(window.PCjs.Machines={}),v=window.PCjs.Components||(window.PCjs.Components=[])}else Ya={},v=[];function Za(a,b,c){Ya[a]&&b&&(Ya[a][b]=c)}function $a(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<v.length;b++){var d=v[b];a&&d.id.indexOf(a)||c.push(d)}return c}
function Za(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<v.length;d++)if(c)c==v[d]&&(c=null);else if(!(a!=v[d].type||b&&v[d].id.indexOf(b)))return v[d]}return null}function y(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){t(c.message+" ("+a+")")}return b} function ab(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<v.length;d++)if(c)c==v[d]&&(c=null);else if(!(a!=v[d].type||b&&v[d].id.indexOf(b)))return v[d]}return null}function y(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){t(c.message+" ("+a+")")}return b}
function $a(a,b){b=C(b.parentNode,"pdp11-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,f=0;f<d.length;f++){var e=d[f];if(1===e.nodeType){var g=e.getAttribute("class");if(g)for(var h=g.split(" "),k=0;k<h.length;k++)switch(g=h[k],g){case "pdp11-binding":(g=y(e))&&g.binding&&a.ta(g.type,g.binding,e,g.value),k=h.length}}}} function bb(a,b){b=C(b.parentNode,"pdp11-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,f=0;f<d.length;f++){var e=d[f];if(1===e.nodeType){var g=e.getAttribute("class");if(g)for(var h=g.split(" "),k=0;k<h.length;k++)switch(g=h[k],g){case "pdp11-binding":(g=y(e))&&g.binding&&a.ta(g.type,g.binding,e,g.value),k=h.length}}}}
function C(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var f=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)f.test(a[b].className)&&c.push(a[b]);return c} function C(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var f=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)f.test(a[b].className)&&c.push(a[b]);return c}
u.prototype={constructor:u,parent:null,toString:function(){return this.name?this.name:this.id||this.type},ta:function(a,b,c){switch(b){case "clear":return this.I[b]||(this.I[b]=c,c.onclick=function(a){return function(){a.I.print&&(a.I.print.value="")}}(this)),!0;case "print":return this.I[b]||(this.ib=this.I[b]=c,c.value="",this.g=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c), u.prototype={constructor:u,parent:null,toString:function(){return this.name?this.name:this.id||this.type},ta:function(a,b,c){switch(b){case "clear":return this.I[b]||(this.I[b]=c,c.onclick=function(a){return function(){a.I.print&&(a.I.print.value="")}}(this)),!0;case "print":return this.I[b]||(this.kb=this.I[b]=c,c.value="",this.f=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),
this.ma=function(a){this.g(a,this.Ab)}),!0;default:return!1}},log:function(){},g:function(){},status:function(a){this.g(this.Ab+": "+a)},ma:function(a,b,c){c=c||this.type;b||t((c?c+": ":"")+a)},Ma:function(){return this.j.ba=!0},La:function(a,b){b&&(this.j.ba=!1);return!0}};function mb(a,b){if(a.F){a===a.F?b|=0:b=b||a.da;var c=a.F.da&b;return!!b&&c===b||!!(c&a.F.Jc)}return!1} this.oa=function(a){this.f(a,this.Db)}),!0;default:return!1}},log:function(){},f:function(){},status:function(a){this.f(this.Db+": "+a)},oa:function(a,b,c){c=c||this.type;b||t((c?c+": ":"")+a)},Na:function(){return this.u.ga=!0},Ma:function(a,b){b&&(this.u.ga=!1);return!0}};function cb(a,b){if(a.C){a===a.C?b|=0:b=b||a.ia;var c=a.C.ia&b;return!!b&&c===b||!!(c&a.C.Jc)}return!1}
function nb(a,b){if(a.j.fc)return a.j.ob&&(a.j.ob=!1),a.j.fc=!1;if(a.j.error)return a.g(a.toString()+" error"),!1;a.j.ob=b;return a.j.ob}function ob(a,b){a.j.ob&&(b?a.j.fc=!0:void 0===b&&a.g(a.toString()+" busy"));return a.j.ob}function D(a){if(!a.j.error&&(a.j.ready=!0,a.j.ready)){var b=a.Xb;a.Xb=null;b&&b()}}function pb(a,b){b&&(a.j.ready?b():a.Xb=b);return a.j.ready}function qb(a,b){a.j.error=!0;a.ma(b)} function pb(a,b){if(a.u.fc)return a.u.pb&&(a.u.pb=!1),a.u.fc=!1;if(a.u.error)return a.f(a.toString()+" error"),!1;a.u.pb=b;return a.u.pb}function qb(a,b){a.u.pb&&(b?a.u.fc=!0:void 0===b&&a.f(a.toString()+" busy"));return a.u.pb}function D(a){if(!a.u.error&&(a.u.ready=!0,a.u.ready)){var b=a.Zb;a.Zb=null;b&&b()}}function rb(a,b){b&&(a.u.ready?b():a.Zb=b);return a.u.ready}function sb(a,b){a.u.error=!0;a.oa(b)}
var rb="undefined"!==typeof ArrayBuffer,E={cpu:1,bus:64,mem:128,keyboard:65536,key:131072,disk:2097152,serial:8388608,speaker:33554432,computer:67108864,log:268435456,warn:536870912,buffer:1073741824,halt:-2147483648};function sb(a){u.call(this,"Panel",a,sb)}w(sb);l=sb.prototype;l.ta=function(a,b,c,d){return this.u&&this.u.ta(a,b,c,d)||this.b&&this.b.ta(a,b,c,d)||this.F&&this.F.ta(a,b,c,d)?!0:this.parent.ta.call(this,a,b,c,d)};l.Va=function(a,b,c,d){this.u=a;this.C=b;this.b=c;this.F=d}; var tb="undefined"!==typeof ArrayBuffer,E={cpu:1,bus:64,mem:128,keyboard:65536,key:131072,disk:2097152,serial:8388608,speaker:33554432,computer:67108864,log:268435456,warn:536870912,buffer:1073741824,halt:-2147483648};function ub(a){u.call(this,"Panel",a,ub)}w(ub);l=ub.prototype;l.ta=function(a,b,c,d){return this.i&&this.i.ta(a,b,c,d)||this.b&&this.b.ta(a,b,c,d)||this.C&&this.C.ta(a,b,c,d)?!0:this.parent.ta.call(this,a,b,c,d)};l.Xa=function(a,b,c,d){this.i=a;this.F=b;this.b=c;this.C=d};
l.Ma=function(a,b){b||tb();return!0};l.La=function(){return!0};l.ya=function(){};function tb(){for(var a=!1,b=C(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],f=y(d),e;a:{e=f.id;if(void 0!==e){var g;for(g=0;g<v.length;g++)if(v[g].id===e){e=v[g];break a}}e=null}e||(a=!0,e=new sb(f));$a(e,d);a&&D(e)}}Ma(tb); l.Na=function(a,b){b||vb();return!0};l.Ma=function(){return!0};l.ya=function(){};function vb(){for(var a=!1,b=C(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],f=y(d),e;a:{e=f.id;if(void 0!==e){var g;for(g=0;g<v.length;g++)if(v[g].id===e){e=v[g];break a}}e=null}e||(a=!0,e=new ub(f));bb(e,d);a&&D(e)}}Oa(vb);
function ub(a,b,c){u.call(this,"Bus",a,ub);this.b=b;this.F=c;this.G=a.busWidth||16;this.B=Math.pow(2,this.G);this.C=this.B-1|0;this.T=(this.G>>1)+2;10>this.T&&(this.T=10);15<this.T&&(this.T=15);this.Aa=1<<this.T;this.J=this.Aa>>2;this.f=this.Aa-1;this.w=this.B/this.Aa|0;this.u=this.w-1;this.Qa=[];this.D=null;this.Ib=this.Fc;a=new F;vb(a,this.F);this.L=Array(this.w);for(b=0;b<this.w;b++)this.L[b]=a;this.Cb=Array(4);this.Cb[0]=wb;this.Cb[1]=xb;this.Cb[2]=yb;this.Cb[3]=zb;Ab(this,this.B-8192,8192,Bb, function wb(a,b,c){u.call(this,"Bus",a,wb);this.b=b;this.C=c;this.J=a.busWidth||16;this.D=Math.pow(2,this.J);this.j=this.D-1|0;this.W=(this.J>>1)+2;10>this.W&&(this.W=10);15<this.W&&(this.W=15);this.za=1<<this.W;this.O=this.za>>2;this.i=this.za-1;this.B=this.D/this.za|0;this.A=this.B-1;this.Sa=[];this.G=null;this.Lb=this.Fc;a=new F;xb(a,this.C);this.L=Array(this.B);for(b=0;b<this.B;b++)this.L[b]=a;this.Gb=Array(4);this.Gb[0]=yb;this.Gb[1]=zb;this.Gb[2]=Ab;this.Gb[3]=Bb;Cb(this,this.D-8192,8192,Db,
this);Ab(this,57344,8192,Bb,this);D(this)}w(ub);function wb(a,b){var c=this.controller,d=c.Qa[a];if(d){if(d[0])return d[0](b);if(d[2])return b&1?d[2](b&-2)>>8:d[2](b)&255}else if(b&1&&(d=c.Qa[a&-2],d[2]))return d[2](b&-2)>>8;c.g("warning: unconverted read access to byte @"+da(b));return c.Ib(b,-1,1)} this);Cb(this,57344,8192,Db,this);D(this)}w(wb);function yb(a,b){var c=this.controller,d=c.Sa[a];if(d){if(d[0])return d[0](b);if(d[2])return b&1?d[2](b&-2)>>8:d[2](b)&255}else if(b&1&&(d=c.Sa[a&-2],d[2]))return d[2](b&-2)>>8;c.f("warning: unconverted read access to byte @"+ba(b));return c.Lb(b,-1,1)}
function xb(a,b,c){var d=this.controller,f=d.Qa[a];if(f){if(f[1]){f[1](b,c);return}if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);return}}else if(c&1&&(f=d.Qa[a&-2],f[3])){c&=-2;a=f[2]?f[2](c):0;f[3](a&255|b<<8,c);return}d.g("warning: unconverted write access to byte @"+da(c));d.Ib(c,b,1)} function zb(a,b,c){var d=this.controller,f=d.Sa[a];if(f){if(f[1]){f[1](b,c);return}if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);return}}else if(c&1&&(f=d.Sa[a&-2],f[3])){c&=-2;a=f[2]?f[2](c):0;f[3](a&255|b<<8,c);return}d.f("warning: unconverted write access to byte @"+ba(c));d.Lb(c,b,1)}
function yb(a,b){var c=this.controller;if(a=c.Qa[a]){if(a[2])return a[2](b);if(a[0])return a[0](b)|a[0](b+1)<<8}c.g("warning: unconverted read access to word @"+da(b));return c.Ib(b,-1,0)}function zb(a,b,c){var d=this.controller;if(a=d.Qa[a]){if(a[3]){a[3](b,c);return}if(a[1]){a[1](b&255,c);a[1](b>>8,c+1);return}}d.g("warning: unconverted write access to word @"+da(c));d.Ib(c,b,0)}l=ub.prototype;l.reset=function(){this.D&&this.D()};l.Fc=function(){return 0};l.Ma=function(a,b){b||this.reset();return!0}; function Ab(a,b){var c=this.controller;if(a=c.Sa[a]){if(a[2])return a[2](b);if(a[0])return a[0](b)|a[0](b+1)<<8}c.f("warning: unconverted read access to word @"+ba(b));return c.Lb(b,-1,0)}function Bb(a,b,c){var d=this.controller;if(a=d.Sa[a]){if(a[3]){a[3](b,c);return}if(a[1]){a[1](b&255,c);a[1](b>>8,c+1);return}}d.f("warning: unconverted write access to word @"+ba(c));d.Lb(c,b,0)}l=wb.prototype;l.reset=function(){this.G&&this.G()};l.Fc=function(){return 0};l.Na=function(a,b){b||this.reset();return!0};
function Ab(a,b,c,d,f){for(var e=b,g=c,h=e>>>a.T;0<g&&h<a.L.length;){var k=a.L[h],m=h*a.Aa,n=a.Aa-(e-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==f){if(e+g<=k.A)return k.Ub+=k.A-e,k.A=e,!0;if(e>=k.A+k.Ub){n=k.size-(e-m);n>g&&(n=g);k.Ub=e-k.A+n;e=m+a.Aa;g-=n;h++;continue}}return Cb(1,e,g)}e=new F(e,n,a.Aa,d,f);vb(e,a.F,k);a.L[h++]=e;e=m+a.Aa;g-=n}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Db[d]+" at "+r(b,8,!0)),!0):Cb(2,b,c)} function Cb(a,b,c,d,f){for(var e=b,g=c,h=e>>>a.W;0<g&&h<a.L.length;){var k=a.L[h],m=h*a.za,n=a.za-(e-m);n>g&&(n=g);if(k&&k.size){if(k.type==d&&k.controller==f){if(e+g<=k.w)return k.Xb+=k.w-e,k.w=e,!0;if(e>=k.w+k.Xb){n=k.size-(e-m);n>g&&(n=g);k.Xb=e-k.w+n;e=m+a.za;g-=n;h++;continue}}return Eb(1,e,g)}e=new F(e,n,a.za,d,f);xb(e,a.C,k);a.L[h++]=e;e=m+a.za;g-=n}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Fb[d]+" at "+r(b,8,!0)),!0):Eb(2,b,c)}
l.Jb=function(a){return this.L[(a&this.C)>>>this.T].tb(a&this.f,a)};l.Fa=function(a){var b=a&this.f,c=(a&this.C)>>>this.T;return b!=this.f?this.L[c].Ob(b,a):this.L[c++].tb(b,a)|this.L[c&this.u].tb(0,a+1)<<8};function Eb(a,b){var c=b&a.f,d=(b&a.C)>>>a.T;return c!=a.f?a.L[d].kc(c,b):a.L[d++].Nb(c,b)|a.L[d&a.u].Nb(0,b+1)<<8}l.dc=function(a,b){this.L[(a&this.C)>>>this.T].yb(a&this.f,b&255,a)}; l.rb=function(a){return this.L[(a&this.j)>>>this.W].vb(a&this.i,a)};l.Fa=function(a){var b=a&this.i,c=(a&this.j)>>>this.W;return b!=this.i?this.L[c].Qb(b,a):this.L[c++].vb(b,a)|this.L[c&this.A].vb(0,a+1)<<8};function Gb(a,b){var c=b&a.i,d=(b&a.j)>>>a.W;return c!=a.i?a.L[d].lc(c,b):a.L[d++].Pb(c,b)|a.L[d&a.A].Pb(0,b+1)<<8}l.Ub=function(a,b){this.L[(a&this.j)>>>this.W].Bb(a&this.i,b&255,a)};
l.nc=function(a,b){var c=a&this.f,d=(a&this.C)>>>this.T;c!=this.f?this.L[d].Ec(c,b&65535,a):(this.L[d++].yb(c,b&255,a),this.L[d&this.u].yb(0,b>>8&255,a+1))};function Fb(a){for(var b=0,c=[],d=0;d<a.w;d++){var f=a.L[d];if(f.Ua||f.Mc){c[b++]=d;var e=b++;if(f=f.save()){for(var g=0,h=0,k=[];g<f.length;){for(var m=f[g],n=g+1;n<f.length&&f[n]===m;)n++;k[h++]=n-g;k[h++]=m;g=n}k.length<f.length&&(f=k)}c[e]=f}}return c} l.zb=function(a,b){var c=a&this.i,d=(a&this.j)>>>this.W;c!=this.i?this.L[d].Ec(c,b&65535,a):(this.L[d++].Bb(c,b&255,a),this.L[d&this.A].Bb(0,b>>8&255,a+1))};function Hb(a){for(var b=0,c=[],d=0;d<a.B;d++){var f=a.L[d];if(f.Wa||f.Nc){c[b++]=d;var e=b++;if(f=f.save()){for(var g=0,h=0,k=[];g<f.length;){for(var m=f[g],n=g+1;n<f.length&&f[n]===m;)n++;k[h++]=n-g;k[h++]=m;g=n}k.length<f.length&&(f=k)}c[e]=f}}return c}
function Gb(a,b){var c=Hb,d;for(d in c)for(var f=c[d],e=a,g=+d,h=f[0]?f[0].bind(b):null,k=f[1]?f[1].bind(b):null,m=f[2]?f[2].bind(b):null,f=f[3]?f[3].bind(b):null,n=+d;n<=g;n+=2){var p=n&8191;void 0!==e.Qa[p]?t("I/O address already registered: "+r(n,8,!0)):e.Qa[p]=[h,k,m,f,!1]}}function Rb(a,b,c){a.D=b;a.Ib=c}function Cb(a,b,c){t("Memory block error ("+a+": "+r(b)+","+r(c)+")");return!1} function Ib(a,b){var c=Jb,d;for(d in c)for(var f=c[d],e=a,g=+d,h=f[0]?f[0].bind(b):null,k=f[1]?f[1].bind(b):null,m=f[2]?f[2].bind(b):null,f=f[3]?f[3].bind(b):null,n=+d;n<=g;n+=2){var p=n&8191;void 0!==e.Sa[p]?t("I/O address already registered: "+r(n,8,!0)):e.Sa[p]=[h,k,m,f,!1]}}function Kb(a,b,c){a.G=b;a.Lb=c}function Eb(a,b,c){t("Memory block error ("+a+": "+r(b)+","+r(c)+")");return!1}
function G(a){u.call(this,"Device",a,G);this.u={jc:[],Ga:0,ua:128,F:127,Lc:0};this.w={data:0,pd:0,qb:20,jd:0};this.f={K:0,pc:-1};this.B={Qb:2496,ia:0,M:128,Rb:0,Pb:0,sa:0,zc:0,la:[],gb:[406,406,406,406],V:[12,12,12,12]};this.D={K:129,Fb:0,$:0,Xa:0,Ra:0,bb:0,la:[],V:[40,40,40,40],gb:[1024,1024,512,512],Hc:[157,157,29,29]};this.G={b:[8210,8208,8210,8226],V:[22,22,22,50],fb:[19,19,19,32],ec:[815,411,815,630],la:[],N:2176,wb:0,ub:0,Ca:[0,0,0,0,0,0,0,0],Ba:0,na:[4544,4544,4544,4544,4544,4544,4544,4544], function G(a){u.call(this,"Device",a,G);this.j={kc:[],Ga:0,ua:128,C:127,Lc:0};this.A={data:0,qd:0,sb:20,kd:0};this.i={K:0,pc:-1};this.B={Sb:2496,la:0,N:128,Tb:0,Rb:0,sa:0,zc:0,na:[],ib:[406,406,406,406],Z:[12,12,12,12]};this.D={K:129,Jb:0,ea:0,Za:0,Ta:0,eb:0,na:[],Z:[40,40,40,40],ib:[1024,1024,512,512],Hc:[157,157,29,29]};this.G={b:[8210,8208,8210,8226],Z:[22,22,22,50],hb:[19,19,19,32],ec:[815,411,815,630],na:[],P:2176,yb:0,wb:0,Ba:[0,0,0,0,0,0,0,0],Aa:0,pa:[4544,4544,4544,4544,4544,4544,4544,4544],
vb:[0,0,0,0,0,0,0,0],lb:0,gd:[0,0,0,0,0,0,0,0],Ac:0,Bc:[0,0,0,0,0,0,0,0],f:[0,0,0,0,0,0,0,0],hd:[1,2,3,4,5,6,7,8],Cc:[0,0,0,0,0,0,0,0],Pa:[0,0,0,0,0,0,0,0],cc:[0,0,0,0,0,0,0,0],ed:[0,0,0,0,0,0,0,0],fd:[0,0,0,0,0,0,0,0],cd:[0,0,0,0,0,0,0,0],dd:[0,0,0,0,0,0,0,0],ab:0,mc:0}}w(G); xb:[0,0,0,0,0,0,0,0],nb:0,hd:[0,0,0,0,0,0,0,0],Ac:0,Bc:[0,0,0,0,0,0,0,0],I:[0,0,0,0,0,0,0,0],jd:[1,2,3,4,5,6,7,8],Cc:[0,0,0,0,0,0,0,0],Qa:[0,0,0,0,0,0,0,0],dc:[0,0,0,0,0,0,0,0],fd:[0,0,0,0,0,0,0,0],gd:[0,0,0,0,0,0,0,0],dd:[0,0,0,0,0,0,0,0],ed:[0,0,0,0,0,0,0,0],cb:0,nc:0}}w(G);
var Sb=[4127,448,4191,450,4383,452,2591,454,21983,32768,65534,13791,16384,65534,770,2719,454,2591,65534,257,0,2566,33028,34051,33282,1281,33537,0,2758,32771,770,1025,1793,0,3078,33794,34305,513,0,5574,43690,4480,4097,4162,4227,4292,4357,57665,1281,769,0,3138,34305,1281,0,24707,2691,2627,24769,34561,1793,0,3076,20739,24899,2691,34562,2753,1281,0,2624,33537,0,16385,24641,1537,1793,0,193,8279,21589,516,12549,1538,2629,513,0,38336,65281,32769,0,32258,2561,2689,32258,3008,514,3009,769,0,5574,510,2551, var Ub=[4127,448,4191,450,4383,452,2591,454,21983,32768,65534,13791,16384,65534,770,2719,454,2591,65534,257,0,2566,33028,34051,33282,1281,33537,0,2758,32771,770,1025,1793,0,3078,33794,34305,513,0,5574,43690,4480,4097,4162,4227,4292,4357,57665,1281,769,0,3138,34305,1281,0,24707,2691,2627,24769,34561,1793,0,3076,20739,24899,2691,34562,2753,1281,0,2624,33537,0,16385,24641,1537,1793,0,193,8279,21589,516,12549,1538,2629,513,0,38336,65281,32769,0,32258,2561,2689,32258,3008,514,3009,769,0,5574,510,2551,
2,0,9678,208,769,0,5582,226,135,0,2598,5606,236,2,0,95,242,128,5573,57344,2591,6,5599,256,4,5574,510,3045,5599,460,76,2591,78,5571,65510,5579,12,5570,512,4224,4104,3024,8197,33788,4224,4609,8193,769,0,2640,8197,33785,6145,2625,8193,769,0,8194,761,2574,5572,43690,5579,24,5568,2048,5570,512,2628,4360,2632,2632,8708,769,0,3103,65514,34562,0,305,35406,754,258,119,65160,3024,32403,5579,36,5568,3072,35446,1,740,5570,512,4224,4104,3024,8197,33788,5569,3,2574,3039,454,528,5582,24,4224,2632,2632,8200,769, 2,0,9678,208,769,0,5582,226,135,0,2598,5606,236,2,0,95,242,128,5573,57344,2591,6,5599,256,4,5574,510,3045,5599,460,76,2591,78,5571,65510,5579,12,5570,512,4224,4104,3024,8197,33788,4224,4609,8193,769,0,2640,8197,33785,6145,2625,8193,769,0,8194,761,2574,5572,43690,5579,24,5568,2048,5570,512,2628,4360,2632,2632,8708,769,0,3103,65514,34562,0,305,35406,754,258,119,65160,3024,32403,5579,36,5568,3072,35446,1,740,5570,512,4224,4104,3024,8197,33788,5569,3,2574,3039,454,528,5582,24,4224,2632,2632,8200,769,
0,3024,3103,65514,34562,0,264,8197,33779,5003,2574,32337,260,0,258,5579,12,6080,448,6081,450,6084,452,116,2,6084,65400,17860,65024,21956,62976,38848,65401,3200,161,76,0,16944,10797];l=G.prototype;l.Va=function(a,b,c,d){this.C=b;this.b=c;this.F=d;var f=this;this.f.pc=Tb(this.b,function(){f.f.Wa|=128;f.f.Wa&64&&(H(f.b,0,6,64),Ub(f.b,f.f.pc))});Gb(b,this);Rb(b,this.reset.bind(this),this.Gc.bind(this));D(this)};l.Wc=function(){var a=this.f.Wa;this.f.Wa&=-129;return a}; 0,3024,3103,65514,34562,0,264,8197,33779,5003,2574,32337,260,0,258,5579,12,6080,448,6081,450,6084,452,116,2,6084,65400,17860,65024,21956,62976,38848,65401,3200,161,76,0,16944,10797];l=G.prototype;l.Xa=function(a,b,c,d){this.F=b;this.b=c;this.C=d;var f=this;this.i.pc=Vb(this.b,function(){f.i.Ya|=128;f.i.Ya&64&&(H(f.b,0,6,64),Wb(f.b,f.i.pc))});Ib(b,this);Kb(b,this.reset.bind(this),this.Gc.bind(this));D(this)};l.Xc=function(){var a=this.i.Ya;this.i.Ya&=-129;return a};
l.ld=function(a){this.f.Wa=a;a&64&&Ub(this.b,this.f.pc);this.f.Wa=a&-129};l.Xc=function(){var a=this.b;return a.B&62337|a.oa<<5|a.va<<1};l.md=function(a){var b=4,c=this.b;c.B=a&=62337;c.oa=a>>5&3;c.va=a>>1&15;c.Yb=a&257?a&1?6:4:0;Vb(c);a=c.B;a&1|256&&(b=this.b.eb&16?1:2);this.w.qb=this.w.qb&-8|b};l.Zc=function(){return this.u.ua};l.od=function(a){if(128==(this.u.ua&192)&&a&64){var b=this;H(this.b,8,4,52,function(){b.u.ua|=128;return!!(b.u.ua&64)})}this.u.ua=this.u.ua&128|a&-129};l.Yc=function(){return Wb(this.b)}; l.md=function(a){this.i.Ya=a;a&64&&Wb(this.b,this.i.pc);this.i.Ya=a&-129};l.Yc=function(){var a=this.b;return a.A&62337|a.qa<<5|a.ra<<1};l.nd=function(a){var b=4,c=this.b;c.A=a&=62337;c.qa=a>>5&3;c.ra=a>>1&15;c.$b=a&257?a&1?6:4:0;Xb(c);a=c.A;a&1|256&&(b=this.b.gb&16?1:2);this.A.sb=this.A.sb&-8|b};l.$c=function(){return this.j.ua};l.pd=function(a){if(128==(this.j.ua&192)&&a&64){var b=this;H(this.b,8,4,52,function(){b.j.ua|=128;return!!(b.j.ua&64)})}this.j.ua=this.j.ua&128|a&-129};l.Zc=function(){return Yb(this.b)};
l.nd=function(a){Xb(this.b,a&-1809|Wb(this.b)&1808);this.b.R|=128}; l.od=function(a){Zb(this.b,a&-1809|Yb(this.b)&1808);this.b.M|=128};
function Yb(a){var b=a.B,c,d,f,e=b.sa>>13&7;"undefined"===typeof b.la[e]&&(b.la[e]={cache:[],postProcess:a.$c,drive:e,blocksize:256,mapped:0,maxblock:b.gb[e]*b.V[e],url:"rk"+e+".dsk"});b.M&=-129;switch(b.M>>1&7){case 0:b.Qb=2496;b.ia=0;b.M=128;b.sa=0;break;case 1:if((b.sa>>4&511)>=b.gb[e]){b.ia|=32832;b.M|=49152;break}if((b.sa&15)>=b.V[e]){b.ia|=32800;b.M|=49152;break}c=(b.sa>>4&511)*b.V[e]+(b.sa&15);d=(b.M&48)<<12|b.Pb;f=65536-b.Rb&65535;Zb(a,b.la[e],c,d,f);return;case 2:if((b.sa>>4&511)>=b.gb[e])b.ia|= function $b(a){var b=a.B,c,d,f,e=b.sa>>13&7;"undefined"===typeof b.na[e]&&(b.na[e]={cache:[],postProcess:a.ad,drive:e,blocksize:256,mapped:0,maxblock:b.ib[e]*b.Z[e],url:"rk"+e+".dsk"});b.N&=-129;switch(b.N>>1&7){case 0:b.Sb=2496;b.la=0;b.N=128;b.sa=0;break;case 1:if((b.sa>>4&511)>=b.ib[e]){b.la|=32832;b.N|=49152;break}if((b.sa&15)>=b.Z[e]){b.la|=32800;b.N|=49152;break}c=(b.sa>>4&511)*b.Z[e]+(b.sa&15);d=(b.N&48)<<12|b.Rb;f=65536-b.Tb&65535;ac(a,b.na[e],c,d,f);return;case 2:if((b.sa>>4&511)>=b.ib[e])b.la|=
32832,b.M|=49152;else if((b.sa&15)>=b.V[e])b.ia|=32800,b.M|=49152;else{c=(b.sa>>4&511)*b.V[e]+(b.sa&15);d=(b.M&48)<<12|b.Pb;f=65536-b.Rb&65535;a.ac(b.la[e],c,d,f);return}}b.Qb=e<<13|b.Qb&8176|b.sa%9&15;H(a.b,20,5,144,function(){b.M=b.M&65534|128;return!!(b.M&64)})}l.$c=function(a,b,c,d,f){var e=this.B;e.Pb=d&65535;e.M=e.M&-49|d>>12&48;e.Rb=65536-f&65535;switch(a){case 1:e.ia|=33024;e.M|=49152;break;case 2:e.ia|=33792,e.M|=49152}H(this.b,20,5,144,function(){e.M=e.M&65534|128;return!!(e.M&64)})}; 32832,b.N|=49152;else if((b.sa&15)>=b.Z[e])b.la|=32800,b.N|=49152;else{c=(b.sa>>4&511)*b.Z[e]+(b.sa&15);d=(b.N&48)<<12|b.Rb;f=65536-b.Tb&65535;a.bc(b.na[e],c,d,f);return}}b.Sb=e<<13|b.Sb&8176|b.sa%9&15;H(a.b,20,5,144,function(){b.N=b.N&65534|128;return!!(b.N&64)})}l.ad=function(a,b,c,d,f){var e=this.B;e.Rb=d&65535;e.N=e.N&-49|d>>12&48;e.Tb=65536-f&65535;switch(a){case 1:e.la|=33024;e.N|=49152;break;case 2:e.la|=33792,e.N|=49152}H(this.b,20,5,144,function(){e.N=e.N&65534|128;return!!(e.N&64)})};
function $b(a){var b=a.D,c,d,f,e=b.K>>8&3;b.K&=-2;"undefined"===typeof b.la[e]&&(b.la[e]={cache:[],postProcess:a.ad,drive:e,blocksize:128,mapped:1,maxblock:b.gb[e]*b.V[e],url:"rl"+e+".dsk"});switch(b.K>>1&7){case 2:b.Xa&8&&(b.K&=63);b.Xa=b.Hc[e]|b.bb&64;break;case 3:1==(b.$&3)&&(b.bb=b.$&4?b.bb+(b.$&65408)&65408|b.$<<2&64:b.bb-(b.$&65408)&65408|b.$<<2&64,b.$=b.bb);break;case 4:b.Xa=b.bb;break;case 5:if(b.$>>6>=b.gb[e]){b.K|=37888;break}if((b.$&63)>=b.V[e]){b.K|=37888;break}c=(b.$>>6)*b.V[e]+(b.$& function bc(a){var b=a.D,c,d,f,e=b.K>>8&3;b.K&=-2;"undefined"===typeof b.na[e]&&(b.na[e]={cache:[],postProcess:a.bd,drive:e,blocksize:128,mapped:1,maxblock:b.ib[e]*b.Z[e],url:"rl"+e+".dsk"});switch(b.K>>1&7){case 2:b.Za&8&&(b.K&=63);b.Za=b.Hc[e]|b.eb&64;break;case 3:1==(b.ea&3)&&(b.eb=b.ea&4?b.eb+(b.ea&65408)&65408|b.ea<<2&64:b.eb-(b.ea&65408)&65408|b.ea<<2&64,b.ea=b.eb);break;case 4:b.Za=b.eb;break;case 5:if(b.ea>>6>=b.ib[e]){b.K|=37888;break}if((b.ea&63)>=b.Z[e]){b.K|=37888;break}c=(b.ea>>6)*b.Z[e]+
63);d=(b.Ra&63)<<16|b.Fb;f=65536-b.Xa&65535;Zb(a,b.la[e],c,d,f);return;case 6:if(b.$>>6>=b.gb[e])b.K|=37888;else if((b.$&63)>=b.V[e])b.K|=37888;else{c=(b.$>>6)*b.V[e]+(b.$&63);d=(b.Ra&63)<<16|b.Fb;f=65536-b.Xa&65535;a.ac(b.la[e],c,d,f);return}}H(a.b,20,5,112,function(){b.K|=129;return!!(b.K&64)})} (b.ea&63);d=(b.Ta&63)<<16|b.Jb;f=65536-b.Za&65535;ac(a,b.na[e],c,d,f);return;case 6:if(b.ea>>6>=b.ib[e])b.K|=37888;else if((b.ea&63)>=b.Z[e])b.K|=37888;else{c=(b.ea>>6)*b.Z[e]+(b.ea&63);d=(b.Ta&63)<<16|b.Jb;f=65536-b.Za&65535;a.bc(b.na[e],c,d,f);return}}H(a.b,20,5,112,function(){b.K|=129;return!!(b.K&64)})}
l.ad=function(a,b,c,d,f){var e=this.D;e.Fb=d&65535;e.K=e.K&-49|d>>12&48;e.Ra=d>>16&63;e.$=~~(c/e.V[b.Ka])<<6|c%e.V[b.Ka];e.bb=e.$;e.Xa=65536-f&65535;switch(a){case 1:e.K|=33792;break;case 2:e.K|=40960}H(this.b,20,5,112,function(){e.K|=129;return!!(e.K&64)})};function ac(a){a=a.G;a.N=2176;a.Ba=0;a.na=[4544,4544,4544,4544,4544,4544,4544,4544];a.vb=[0,0,0,0,0,0,0,0];a.lb=a.wb=a.ub=a.ab=a.mc=0} l.bd=function(a,b,c,d,f){var e=this.D;e.Jb=d&65535;e.K=e.K&-49|d>>12&48;e.Ta=d>>16&63;e.ea=~~(c/e.Z[b.Ka])<<6|c%e.Z[b.Ka];e.eb=e.ea;e.Za=65536-f&65535;switch(a){case 1:e.K|=33792;break;case 2:e.K|=40960}H(this.b,20,5,112,function(){e.K|=129;return!!(e.K&64)})};function cc(a){a=a.G;a.P=2176;a.Aa=0;a.pa=[4544,4544,4544,4544,4544,4544,4544,4544];a.xb=[0,0,0,0,0,0,0,0];a.nb=a.yb=a.wb=a.cb=a.nc=0}
function bc(a,b){var c=a.G,d,f,e;c.N&=-16513;c.Ba&=-2049;c.na[b]&=-1153;H(a.b,-1,0,172);"undefined"===typeof c.la[b]&&(c.la[b]={cache:[],postProcess:a.bd,drive:b,blocksize:256,mapped:0,maxblock:c.ec[0]*c.fb[0]*c.V[0],url:"rp"+b+".dsk"});switch(c.N&63){case 5:c.cc[b]=c.Pa[b];c.N|=32896;c.na[b]|=32896;c.lb|=1<<b;break;case 9:ac(a);break;case 19:c.na[b]|=64;break;case 49:if(c.Pa[b]>=c.ec[0]||c.Ca[b]>>8>=c.fb[0]||(c.Ca[b]&255)>=c.V[0]){c.vb[b]|=1024;c.N|=49152;break}d=(c.Pa[b]*c.fb[0]+(c.Ca[b]>>8))*c.V[0]+ function dc(a,b){var c=a.G,d,f,e;c.P&=-16513;c.Aa&=-2049;c.pa[b]&=-1153;H(a.b,-1,0,172);"undefined"===typeof c.na[b]&&(c.na[b]={cache:[],postProcess:a.cd,drive:b,blocksize:256,mapped:0,maxblock:c.ec[0]*c.hb[0]*c.Z[0],url:"rp"+b+".dsk"});switch(c.P&63){case 5:c.dc[b]=c.Qa[b];c.P|=32896;c.pa[b]|=32896;c.nb|=1<<b;break;case 9:cc(a);break;case 19:c.pa[b]|=64;break;case 49:if(c.Qa[b]>=c.ec[0]||c.Ba[b]>>8>=c.hb[0]||(c.Ba[b]&255)>=c.Z[0]){c.xb[b]|=1024;c.P|=49152;break}d=(c.Qa[b]*c.hb[0]+(c.Ba[b]>>8))*c.Z[0]+
(c.Ca[b]&255);f=(c.ab&63)<<16|c.ub;e=65536-c.wb&65535;Zb(a,c.la[b],d,f,e);return;case 57:if(c.Pa[b]>=c.ec[0]||c.Ca[b]>>8>=c.fb[0]||(c.Ca[b]&255)>=c.V[0])c.vb[b]|=1024,c.N|=49152;else{d=(c.Pa[b]*c.fb[0]+(c.Ca[b]>>8))*c.V[0]+(c.Ca[b]&255);f=(c.ab&63)<<16|c.ub;e=65536-c.wb&65535;a.ac(c.la[b],d,f,e);return}}H(a.b,3,5,172,function(){c.N=c.N&65534|128;c.na[b]|=128;return!!(c.N&64)})} (c.Ba[b]&255);f=(c.cb&63)<<16|c.wb;e=65536-c.yb&65535;ac(a,c.na[b],d,f,e);return;case 57:if(c.Qa[b]>=c.ec[0]||c.Ba[b]>>8>=c.hb[0]||(c.Ba[b]&255)>=c.Z[0])c.xb[b]|=1024,c.P|=49152;else{d=(c.Qa[b]*c.hb[0]+(c.Ba[b]>>8))*c.Z[0]+(c.Ba[b]&255);f=(c.cb&63)<<16|c.wb;e=65536-c.yb&65535;a.bc(c.na[b],d,f,e);return}}H(a.b,3,5,172,function(){c.P=c.P&65534|128;c.pa[b]|=128;return!!(c.P&64)})}
l.bd=function(a,b,c,d,f){var e=this.G;e.wb=65536-f&65535;e.ub=d&65535;e.N=e.N&-769|d>>8&768;e.ab=d>>16&63;f=~~(c/e.V[0]);d=~~(f/e.fb[0]);e.Ca[b.Ka]=f%e.fb[0]<<8|c%e.V[0];e.cc[b.Ka]=e.Pa[b.Ka]=d;e.lb|=1<<b.Ka;c>=b.Tc-1&&(e.na[b.Ka]|=1024);switch(a){case 1:e.Ba|=512;e.N|=49152;break;case 2:e.Ba|=2048,e.N|=49152}H(this.b,20,5,172,function(){e.na[b.Ka]|=128;e.N=e.N&65534|128;return!!(e.N&64)})}; l.cd=function(a,b,c,d,f){var e=this.G;e.yb=65536-f&65535;e.wb=d&65535;e.P=e.P&-769|d>>8&768;e.cb=d>>16&63;f=~~(c/e.Z[0]);d=~~(f/e.hb[0]);e.Ba[b.Ka]=f%e.hb[0]<<8|c%e.Z[0];e.dc[b.Ka]=e.Qa[b.Ka]=d;e.nb|=1<<b.Ka;c>=b.Uc-1&&(e.pa[b.Ka]|=1024);switch(a){case 1:e.Aa|=512;e.P|=49152;break;case 2:e.Aa|=2048,e.P|=49152}H(this.b,20,5,172,function(){e.pa[b.Ka]|=128;e.P=e.P&65534|128;return!!(e.P&64)})};
function cc(a,b,c,d,f,e){var g=~~((e+c.Sa-1)/c.Sa),h=new XMLHttpRequest;2048>g&&d+2048<c.Tc&&(g=2048);h.open("GET",c.url,!0);h.setRequestHeader("Range","bytes="+(d*c.Sa<<1)+"-"+(((d+g)*c.Sa<<1)-1));h.responseType="arraybuffer";h.onreadystatechange=function(){if(4==h.readyState){var g=b.bind(a),m,n,p,q;m=h.response;if(h.status&&206!=h.status||!m)c.$b(1,c,d,f,e);else{m=new Uint8Array(m);n=d;for(q=0;q<m.length;){if("undefined"===typeof c.cache[n])for(c.cache[n]=[],p=0;p<c.Sa;p++)c.cache[n][p]=q<m.length? function ec(a,b,c,d,f,e){var g=~~((e+c.Ua-1)/c.Ua),h=new XMLHttpRequest;2048>g&&d+2048<c.Uc&&(g=2048);h.open("GET",c.url,!0);h.setRequestHeader("Range","bytes="+(d*c.Ua<<1)+"-"+(((d+g)*c.Ua<<1)-1));h.responseType="arraybuffer";h.onreadystatechange=function(){if(4==h.readyState){var g=b.bind(a),m,n,p,q;m=h.response;if(h.status&&206!=h.status||!m)c.jc(1,c,d,f,e);else{m=new Uint8Array(m);n=d;for(q=0;q<m.length;){if("undefined"===typeof c.cache[n])for(c.cache[n]=[],p=0;p<c.Ua;p++)c.cache[n][p]=q<m.length?
m[q]&255|m[q+1]<<8&65280:0,q+=2;else q+=c.Sa<<1;n++}g(c,d,f,e)}}};h.send(null)}function I(a,b,c,d,f){c&1?f?d=0<=d?d<<8&65280|b&255:b:J(a.b,4):0<=d?f&&(d=b&65280|d&255):d=b;return d}l.ac=function(a,b,c,d){for(var f;0<d;){if("undefined"===typeof a.cache[b]){cc(this,this.ac,a,b,c,d);return}for(f=0;f<a.Sa&&0<d;f++){if(0>dc(this.b,a.Sc?ec(this.b,c):c,a.cache[b][f])){a.$b(2,a,b,c,d);return}c+=2;--d}b++}a.$b(0,a,b,c,d)}; m[q]&255|m[q+1]<<8&65280:0,q+=2;else q+=c.Ua<<1;n++}g(c,d,f,e)}}};h.send(null)}function I(a,b,c,d,f){c&1?f?d=0<=d?d<<8&65280|b&255:b:J(a.b,4):0<=d?f&&(d=b&65280|d&255):d=b;return d}l.bc=function(a,b,c,d){for(var f;0<d;){if("undefined"===typeof a.cache[b]){ec(this,this.bc,a,b,c,d);return}for(f=0;f<a.Ua&&0<d;f++){var e=a.Tc?fc(this.b,c):c;this.b.F.zb(e,a.cache[b][f]&65535);c+=2;--d}b++}a.jc(0,a,b,c,d)};
function Zb(a,b,c,d,f){for(var e,g;0<f;){if("undefined"===typeof b.cache[c])for(b.cache[c]=[],e=0;e<b.Sa;e++)b.cache[c][e]=0;for(e=0;e<b.Sa&&0<f;e++){g=a.b.bc(b.Sc?ec(a.b,d):d);if(0>g){b.$b(2,b,c,d,f);return}b.cache[c][e]=g;d+=2;--f}c++}b.$b(0,b,c,d,f)}l.reset=function(){this.w.qb=this.w.qb&-120|20;this.u.Ga=0;this.u.ua=128;this.f.Wa=0;this.B.M=128;this.D.K=128;ac(this)}; function ac(a,b,c,d,f){for(var e,g;0<f;){if("undefined"===typeof b.cache[c])for(b.cache[c]=[],e=0;e<b.Ua;e++)b.cache[c][e]=0;for(e=0;e<b.Ua&&0<f;e++){g=a.b.cc(b.Tc?fc(a.b,d):d);if(0>g){b.jc(2,b,c,d,f);return}b.cache[c][e]=g;d+=2;--f}c++}b.jc(0,b,c,d,f)}l.reset=function(){this.A.sb=this.A.sb&-120|20;this.j.Ga=0;this.j.ua=128;this.i.Ya=0;this.B.N=128;this.D.K=128;cc(this)};
l.Gc=function(a,b,c){var d,f,e=this.b;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=e.Za&65280:(a&1&&(b<<=8),e.Za=b|255,d=0);break;case 4194298:if(0>b)d=e.lc;else{a&1&&(b<<=8);if(d=b&65024){f=d>>9;do d+=34;while(f>>=1)}e.lc=d;e.Na=2}break;case 4194294:if(70!==e.jb)return J(e,4);0>b?d=e.H:d=e.H=0;break;case 4194292:if(70!==e.jb)return J(e,4);d=1;break;case 4194290:if(70!==e.jb)return J(e,4);d=0;break;case 4194288:if(70!==e.jb)return J(e,4);d=61183;break;case 4194296:0<=b&&!(a&1)&&(b&= l.Gc=function(a,b,c){var d,f,e=this.b;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=e.ab&65280:(a&1&&(b<<=8),e.ab=b|255,d=0);break;case 4194298:if(0>b)d=e.mc;else{a&1&&(b<<=8);if(d=b&65024){f=d>>9;do d+=34;while(f>>=1)}e.mc=d;e.Oa=2}break;case 4194294:if(70!==e.lb)return J(e,4);0>b?d=e.H:d=e.H=0;break;case 4194292:if(70!==e.lb)return J(e,4);d=1;break;case 4194290:if(70!==e.lb)return J(e,4);d=0;break;case 4194288:if(70!==e.lb)return J(e,4);d=61183;break;case 4194296:0<=b&&!(a&1)&&(b&=
255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==e.jb)return J(e,4);f=a-4194272>>1;0>b?d=e.hc[f]:(d=I(this,e.hc[f],a,b,c),0<=d&&(e.hc[f]=d));break;case 4194254:return a&1?e.fa>>14&1?(0<=b&&(e.i[6]=b),d=e.i[6]):(0<=b&&(e.Oa[3]=b),d=e.Oa[3]):e.fa>>14&0?(0<=b&&(e.i[6]=b),d=e.i[6]):(0<=b&&(e.Oa[1]=b),d=e.Oa[1]),d;case 4194252:case 4194250:case 4194248:return f=a&7,e.fa&2048?(0<=b&&(e.i[f]=b),d=e.i[f]):(0<=b&&(e.$a[f]=b),d=e.$a[f]),d; 255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==e.lb)return J(e,4);f=a-4194272>>1;0>b?d=e.hc[f]:(d=I(this,e.hc[f],a,b,c),0<=d&&(e.hc[f]=d));break;case 4194254:return a&1?e.aa>>14&1?(0<=b&&(e.g[6]=b),d=e.g[6]):(0<=b&&(e.Pa[3]=b),d=e.Pa[3]):e.aa>>14&0?(0<=b&&(e.g[6]=b),d=e.g[6]):(0<=b&&(e.Pa[1]=b),d=e.Pa[1]),d;case 4194252:case 4194250:case 4194248:return f=a&7,e.aa&2048?(0<=b&&(e.g[f]=b),d=e.g[f]):(0<=b&&(e.bb[f]=b),d=e.bb[f]),d;
case 4194246:return a&1?(0<=b&&(e.i[7]=b),d=e.i[7]):e.fa>>14&0?(0<=b&&(e.i[6]=b),d=e.i[6]):(0<=b&&(e.Oa[0]=b),d=e.Oa[0]),d;case 4194244:case 4194242:case 4194240:return f=a&7,e.fa&2048?(0<=b&&(e.$a[f]=b),d=e.$a[f]):(0<=b&&(e.i[f]=b),d=e.i[f]),d;default:return e.H|=16,J(e,4)}break;case 4194176:f=a>>1&31;d=I(this,e.ha[3][f],a,b,c);0<=d&&(e.ha[3][f]=d,e.ha[3][f&15]&=65295);break;case 4194112:var g=this.u;switch(a&-2){case 4194174:d=I(this,e.Vb,a,b,c);0<=d&&(e.Vb=d);break;case 4194172:d=e.cb;d&65280&& case 4194246:return a&1?(0<=b&&(e.g[7]=b),d=e.g[7]):e.aa>>14&0?(0<=b&&(e.g[6]=b),d=e.g[6]):(0<=b&&(e.Pa[0]=b),d=e.Pa[0]),d;case 4194244:case 4194242:case 4194240:return f=a&7,e.aa&2048?(0<=b&&(e.bb[f]=b),d=e.bb[f]):(0<=b&&(e.g[f]=b),d=e.g[f]),d;default:return e.H|=16,J(e,4)}break;case 4194176:f=a>>1&31;d=I(this,e.ka[3][f],a,b,c);0<=d&&(e.ka[3][f]=d,e.ka[3][f&15]&=65295);break;case 4194112:var g=this.j;switch(a&-2){case 4194174:d=I(this,e.Yb,a,b,c);0<=d&&(e.Yb=d);break;case 4194172:d=e.fb;d&65280&&
(d=(d<<8|d>>8)&65535);break;case 4194168:0>b?d=this.w.jd&65535:(d=I(this,this.w.data,a,b,c),0<=d&&(this.w.data=d));break;case 4194166:0<=b&&(b&127&&(g.Lc=0),g.ua&=-129,H(e,100,4,52,function(){g.ua|=128;return!!(g.ua&64)}));d=0;break;case 4194162:d=0;0>b&&(g.Ga&=-129,0<g.jc.length&&(d=g.jc.shift(),0<g.jc.length&&setTimeout(function(){g.Ga|=128;g.Ga&64&&H(e,40,4,48)},50)));break;case 4194160:0>b?d=g.Ga:(d=I(this,g.Ga,a,b,c),0<=d&&(g.Ga=g.Ga&128|d&-129));break;default:return e.H|=16,J(e,4)}break;case 4194048:f= (d=(d<<8|d>>8)&65535);break;case 4194168:0>b?d=this.A.kd&65535:(d=I(this,this.A.data,a,b,c),0<=d&&(this.A.data=d));break;case 4194166:0<=b&&(b&127&&(g.Lc=0),g.ua&=-129,H(e,100,4,52,function(){g.ua|=128;return!!(g.ua&64)}));d=0;break;case 4194162:d=0;0>b&&(g.Ga&=-129,0<g.kc.length&&(d=g.kc.shift(),0<g.kc.length&&setTimeout(function(){g.Ga|=128;g.Ga&64&&H(e,40,4,48)},50)));break;case 4194160:0>b?d=g.Ga:(d=I(this,g.Ga,a,b,c),0<=d&&(g.Ga=g.Ga&128|d&-129));break;default:return e.H|=16,J(e,4)}break;case 4194048:f=
this.B;switch(a&-2){case 4194048:d=I(this,f.Qb,a,b,c);0<=d&&(f.Qb=d);break;case 4194050:d=I(this,f.ia,a,b,c);0<=d&&(f.ia=d);break;case 4194052:d=I(this,f.M,a,b,c);0<=b&&0<=d&&(f.M=d&-36993|f.M&36992,f.M&1&&Yb(this));break;case 4194054:d=I(this,f.Rb,a,b,c);0<=d&&(f.Rb=d);break;case 4194056:d=I(this,f.Pb,a,b,c);0<=d&&(f.Pb=d);break;case 4194058:d=I(this,f.sa,a,b,c);0<=d&&(f.sa=d);break;case 4194060:break;case 4194062:d=I(this,f.zc,a,b,c);0<=d&&(f.zc=d);break;default:return e.H|=16,J(e,4)}break;case 4193728:var h= this.B;switch(a&-2){case 4194048:d=I(this,f.Sb,a,b,c);0<=d&&(f.Sb=d);break;case 4194050:d=I(this,f.la,a,b,c);0<=d&&(f.la=d);break;case 4194052:d=I(this,f.N,a,b,c);0<=b&&0<=d&&(f.N=d&-36993|f.N&36992,f.N&1&&$b(this));break;case 4194054:d=I(this,f.Tb,a,b,c);0<=d&&(f.Tb=d);break;case 4194056:d=I(this,f.Rb,a,b,c);0<=d&&(f.Rb=d);break;case 4194058:d=I(this,f.sa,a,b,c);0<=d&&(f.sa=d);break;case 4194060:break;case 4194062:d=I(this,f.zc,a,b,c);0<=d&&(f.zc=d);break;default:return e.H|=16,J(e,4)}break;case 4193728:var h=
this.G;f=h.Ba&7;switch(a&-2){case 4193728:d=I(this,h.N,a,b,c);0<=b&&0<=d&&(h.ab=h.ab&60|d>>8&3,h.N=d&17279|h.N&34944|2048,d&1&&h.N&128?bc(this,f):192==(d&192)&&H(e,0,5,172));break;case 4193730:d=I(this,h.wb,a,b,c);0<=d&&(h.wb=d);break;case 4193732:d=I(this,h.ub,a,b,c);0<=d&&(h.ub=d&65534);break;case 4193734:d=I(this,h.Ca[f],a,b,c);0<=d&&(h.Ca[f]=d&7967);break;case 4193736:d=I(this,h.Ba,a,b,c);0<=d&&(h.Ba=d&63|h.Ba&65472,d&128&&ac(this));break;case 4193738:d=h.na[f];break;case 4193740:d=h.vb[f];break; this.G;f=h.Aa&7;switch(a&-2){case 4193728:d=I(this,h.P,a,b,c);0<=b&&0<=d&&(h.cb=h.cb&60|d>>8&3,h.P=d&17279|h.P&34944|2048,d&1&&h.P&128?dc(this,f):192==(d&192)&&H(e,0,5,172));break;case 4193730:d=I(this,h.yb,a,b,c);0<=d&&(h.yb=d);break;case 4193732:d=I(this,h.wb,a,b,c);0<=d&&(h.wb=d&65534);break;case 4193734:d=I(this,h.Ba[f],a,b,c);0<=d&&(h.Ba[f]=d&7967);break;case 4193736:d=I(this,h.Aa,a,b,c);0<=d&&(h.Aa=d&63|h.Aa&65472,d&128&&cc(this));break;case 4193738:d=h.pa[f];break;case 4193740:d=h.xb[f];break;
case 4193742:d=I(this,h.lb,a,b,c);0<=d&&(h.lb=d&255);break;case 4193744:d=h.gd[f];break;case 4193746:d=I(this,h.Ac,a,b,c);0<=d&&(h.Ac=d);break;case 4193748:d=I(this,h.Bc[f],a,b,c);0<=d&&(h.Bc[f]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=h.hd[f];break;case 4193754:d=I(this,h.Cc[f],a,b,c);0<=d&&(h.Cc[f]=d);break;case 4193756:d=I(this,h.Pa[f],a,b,c);0<=d&&(h.Pa[f]=d&511);break;case 4193758:h.cc[f]=h.Pa[f];d=h.cc[f];break;case 4193760:d=h.ed[f];break;case 4193762:d=h.fd[f];break;case 4193764:d= case 4193742:d=I(this,h.nb,a,b,c);0<=d&&(h.nb=d&255);break;case 4193744:d=h.hd[f];break;case 4193746:d=I(this,h.Ac,a,b,c);0<=d&&(h.Ac=d);break;case 4193748:d=I(this,h.Bc[f],a,b,c);0<=d&&(h.Bc[f]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=h.jd[f];break;case 4193754:d=I(this,h.Cc[f],a,b,c);0<=d&&(h.Cc[f]=d);break;case 4193756:d=I(this,h.Qa[f],a,b,c);0<=d&&(h.Qa[f]=d&511);break;case 4193758:h.dc[f]=h.Qa[f];d=h.dc[f];break;case 4193760:d=h.fd[f];break;case 4193762:d=h.gd[f];break;case 4193764:d=
h.cd[f];break;case 4193766:d=h.dd[f];break;case 4193768:d=I(this,h.ab,a,b,c);0<=d&&(h.ab=d&63,h.N=h.N&-769|(d&3)<<8);break;case 4193770:d=I(this,h.mc,a,b,c);0<=d&&(h.mc=d);break;default:return e.H|=16,J(e,4)}break;case 4192512:f=this.D;switch(a&-2){case 4192512:d=I(this,f.K,a,b,c);0<=b&&0<=d&&(f.Ra=f.Ra&60|d>>4&3,f.K=f.K&-1023|d&1022,f.K&128||$b(this));break;case 4192514:d=I(this,f.Fb,a,b,c);0<=d&&(f.Fb=d&65534);break;case 4192516:d=I(this,f.$,a,b,c);0<=d&&(f.$=d);break;case 4192518:d=I(this,f.Xa, h.dd[f];break;case 4193766:d=h.ed[f];break;case 4193768:d=I(this,h.cb,a,b,c);0<=d&&(h.cb=d&63,h.P=h.P&-769|(d&3)<<8);break;case 4193770:d=I(this,h.nc,a,b,c);0<=d&&(h.nc=d);break;default:return e.H|=16,J(e,4)}break;case 4192512:f=this.D;switch(a&-2){case 4192512:d=I(this,f.K,a,b,c);0<=b&&0<=d&&(f.Ta=f.Ta&60|d>>4&3,f.K=f.K&-1023|d&1022,f.K&128||bc(this));break;case 4192514:d=I(this,f.Jb,a,b,c);0<=d&&(f.Jb=d&65534);break;case 4192516:d=I(this,f.ea,a,b,c);0<=d&&(f.ea=d);break;case 4192518:d=I(this,f.Za,
a,b,c);0<=d&&(f.Xa=d);break;case 4192520:d=I(this,f.Ra,a,b,c);0<=d&&(f.Ra=d&63,f.K=f.K&-49|(f.Ra&3)<<4);break;default:return e.H|=16,J(e,4)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=e.eb:(d=I(this,e.eb,a,b,c),0<=d&&(70!==e.jb&&(d&=-49),e.eb=d,e.Zb[0]=d&4?15:7,e.Zb[1]=d&2?15:7,e.Zb[3]=d&1?15:7,e.Yb&&(f=2,e.eb&16&&(f=1),this.w.qb=this.w.qb&-8|f)));break;default:return e.H|=16,J(e,4)}break;case 4191424:f=a>>1&31;d=I(this,e.ha[0][f],a,b,c);0<=d&&(e.ha[0][f]=d,e.ha[0][f&15]&=65295);break;case 4191360:f= a,b,c);0<=d&&(f.Za=d);break;case 4192520:d=I(this,f.Ta,a,b,c);0<=d&&(f.Ta=d&63,f.K=f.K&-49|(f.Ta&3)<<4);break;default:return e.H|=16,J(e,4)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=e.gb:(d=I(this,e.gb,a,b,c),0<=d&&(70!==e.lb&&(d&=-49),e.gb=d,e.ac[0]=d&4?15:7,e.ac[1]=d&2?15:7,e.ac[3]=d&1?15:7,e.$b&&(f=2,e.gb&16&&(f=1),this.A.sb=this.A.sb&-8|f)));break;default:return e.H|=16,J(e,4)}break;case 4191424:f=a>>1&31;d=I(this,e.ka[0][f],a,b,c);0<=d&&(e.ka[0][f]=d,e.ka[0][f&15]&=65295);break;case 4191360:f=
a>>1&31;d=I(this,e.ha[1][f],a,b,c);0<=d&&(e.ha[1][f]=d,e.ha[1][f&15]&=65295);break;case 4190400:case 4190336:if(70!==e.jb)return J(e,4);f=a>>2&31;d=e.Sb[f];a&2&&(d>>=16);d&=65535;0<=b&&(d=I(this,d,a,b,c),0<=d&&(e.Sb[f]=a&2?d<<16|e.Sb[f]&65535:e.Sb[f]&4294901760|d&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)d=Sb[a>>1&255];else return e.H|=16,J(e,4);break;default:return e.H|=16,J(e,4)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"=== a>>1&31;d=I(this,e.ka[1][f],a,b,c);0<=d&&(e.ka[1][f]=d,e.ka[1][f&15]&=65295);break;case 4190400:case 4190336:if(70!==e.lb)return J(e,4);f=a>>2&31;d=e.Vb[f];a&2&&(d>>=16);d&=65535;0<=b&&(d=I(this,d,a,b,c),0<=d&&(e.Vb[f]=a&2?d<<16|e.Vb[f]&65535:e.Vb[f]&4294901760|d&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)d=Ub[a>>1&255];else return e.H|=16,J(e,4);break;default:return e.H|=16,J(e,4)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===
typeof d&&console.log("panic(76)");return d};var fc={},Hb=(fc[65382]=[null,null,G.prototype.Wc,G.prototype.ld],fc[65402]=[null,null,G.prototype.Xc,G.prototype.md],fc[65396]=[null,null,G.prototype.Zc,G.prototype.od],fc[65534]=[null,null,G.prototype.Yc,G.prototype.nd],fc);Ma(function(){for(var a=C(document,"pdp11","device"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new G(d);$a(d,c)}});var gc; typeof d&&console.log("panic(76)");return d};var gc={},Jb=(gc[65382]=[null,null,G.prototype.Xc,G.prototype.md],gc[65402]=[null,null,G.prototype.Yc,G.prototype.nd],gc[65396]=[null,null,G.prototype.$c,G.prototype.pd],gc[65534]=[null,null,G.prototype.Zc,G.prototype.od],gc);Oa(function(){for(var a=C(document,"pdp11","device"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new G(d);bb(d,c)}});var hc;
if(rb){var hc=new ArrayBuffer(2);(new DataView(hc)).setUint16(0,256,!0);gc=256===(new Uint16Array(hc))[0]}else gc=!1;var ic=gc; if(tb){var ic=new ArrayBuffer(2);(new DataView(ic)).setUint16(0,256,!0);hc=256===(new Uint16Array(ic))[0]}else hc=!1;var jc=hc;
function F(a,b,c,d,f){this.id=jc+=2;this.b=null;this.A=a;this.Ub=b;this.size=c||0;this.type=d||kc;this.C=d==lc;this.controller=null;vb(this);this.Ua=this.Mc=!1;if(c)if(f)this.controller=f,this.b=null,mc(this,f.Cb);else if(rb)this.B=new ArrayBuffer(c),this.D=new DataView(this.B,0,c),this.f=new Uint8Array(this.B,0,c),this.J=new Uint16Array(this.B,0,c>>1),this.b=new Int32Array(this.B,0,c>>2),mc(this,ic?nc:oc);else{this.b=Array(c>>2);for(a=0;a<this.b.length;a++)this.b[a]=0;mc(this,pc)}else mc(this)} function F(a,b,c,d,f){this.id=kc+=2;this.b=null;this.w=a;this.Xb=b;this.size=c||0;this.type=d||lc;this.i=d==mc;this.controller=null;xb(this);this.Wa=this.Nc=!1;if(c)if(f)this.controller=f,this.b=null,nc(this,f.Gb);else if(tb)this.D=new ArrayBuffer(c),this.G=new DataView(this.D,0,c),this.I=new Uint8Array(this.D,0,c),this.O=new Uint16Array(this.D,0,c>>1),this.b=new Int32Array(this.D,0,c>>2),nc(this,jc?oc:pc);else{this.b=Array(c>>2);for(a=0;a<this.b.length;a++)this.b[a]=0;nc(this,qc)}else nc(this)}
var kc=0,lc=2,Bb=4,Db=["NONE","RAM","ROM","VID","H/W"],jc=0; var lc=0,mc=2,Db=4,Fb=["NONE","RAM","ROM","VID","H/W"],kc=0;
F.prototype={constructor:F,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(rb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.D.getInt32(b<<2,!0);else a=this.b;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(rb)for(b=0;b<a.length;b++)this.D.setInt32(b<<2,a[b],!0);else this.b=a;return this.Ua=!0}return!1},hb:function(a,b){b?this.u++||qc(this,rc,!1):this.I++||sc(this,rc,!1)},O:function(){this.F&&mb(this.F,129)&&this.F.message("attempt to read invalid block %"+ F.prototype={constructor:F,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(tb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.G.getInt32(b<<2,!0);else a=this.b;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(tb)for(b=0;b<a.length;b++)this.G.setInt32(b<<2,a[b],!0);else this.b=a;return this.Wa=!0}return!1},jb:function(a,b){b?this.A++||rc(this,sc,!1):this.j++||tc(this,sc,!1)},R:function(){this.C&&cb(this.C,129)&&this.C.message("attempt to read invalid block %"+
r(this.A),!0);return 255},w:function(a,b){this.F&&mb(this.F,129)&&this.F.message("attempt to write "+r(b,4,!0)+" to invalid block %"+r(this.A),!0)},P:function(a,b){return this.tb(a++,b++)|this.tb(a,b)<<8},G:function(a,b,c){this.yb(a++,b&255,c++);this.yb(a,b>>8,c)},Y:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ka:function(a){var b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+1]&255)<<8},xa:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<<a)|b<<a;this.Ua= r(this.w),!0);return 255},B:function(a,b){this.C&&cb(this.C,129)&&this.C.message("attempt to write "+r(b,4,!0)+" to invalid block %"+r(this.w),!0)},U:function(a,b){return this.vb(a++,b++)|this.vb(a,b)<<8},J:function(a,b,c){this.Bb(a++,b&255,c++);this.Bb(a,b>>8,c)},da:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ra:function(a){var b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+1]&255)<<8},Ca:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<<a)|b<<a;this.Wa=
!0},Ab:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<<a)|b<<a:(this.b[c]=this.b[c]&16777215|b<<24,c++,this.b[c]=this.b[c]&-256|b>>8);this.Ua=!0},U:function(a,b){if(this.F&&null!=this.A){var c=this.F;tc(c,this.A+a,1,c.S)&&c.ja(!0)}return this.Nb(a,b)},aa:function(a,b){if(this.F&&null!=this.A){var c=this.F;tc(c,this.A+a,2,c.S)&&c.ja(!0)}return this.kc(a,b)},va:function(a,b,c){if(this.F&&null!=this.A){var d=this.F;tc(d,this.A+a,1,d.D)&&d.ja(!0)}this.C?this.w(a,b,c):this.zb(a,b, !0},Ra:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<<a)|b<<a:(this.b[c]=this.b[c]&16777215|b<<24,c++,this.b[c]=this.b[c]&-256|b>>8);this.Wa=!0},ba:function(a,b){if(this.C&&null!=this.w){var c=this.C;uc(c,this.w+a,1,c.U)&&c.ma(!0)}return this.Pb(a,b)},ha:function(a,b){if(this.C&&null!=this.w){var c=this.C;uc(c,this.w+a,2,c.U)&&c.ma(!0)}return this.lc(a,b)},wa:function(a,b,c){if(this.C&&null!=this.w){var d=this.C;uc(d,this.w+a,1,d.D)&&d.ma(!0)}this.i?this.B(a,b,c):this.Cb(a,
c)},Da:function(a,b,c){if(this.F&&null!=this.A){var d=this.F;tc(d,this.A+a,2,d.D)&&d.ja(!0)}this.C?this.w(a,b,c):this.qc(a,b,c)},S:function(a){return this.f[a]},W:function(a){return this.f[a]},Z:function(a){return this.D.getUint16(a,!0)},ca:function(a){return a&1?this.f[a]|this.f[a+1]<<8:this.J[a>>1]},oa:function(a,b){this.f[a]=b;this.Ua=!0},wa:function(a,b){this.f[a]=b;this.Ua=!0},za:function(a,b){this.D.setUint16(a,b,!0);this.Ua=!0},Ia:function(a,b){a&1?(this.f[a]=b,this.f[a+1]=b>>8):this.J[a>> b,c)},Ia:function(a,b,c){if(this.C&&null!=this.w){var d=this.C;uc(d,this.w+a,2,d.D)&&d.ma(!0)}this.i?this.B(a,b,c):this.qc(a,b,c)},Y:function(a){return this.I[a]},ca:function(a){return this.I[a]},fa:function(a){return this.G.getUint16(a,!0)},qa:function(a){return a&1?this.I[a]|this.I[a+1]<<8:this.O[a>>1]},va:function(a,b){this.I[a]=b;this.Wa=!0},xa:function(a,b){this.I[a]=b;this.Wa=!0},Da:function(a,b){this.G.setUint16(a,b,!0);this.Wa=!0},Db:function(a,b){a&1?(this.I[a]=b,this.I[a+1]=b>>8):this.O[a>>
1]=b;this.Ua=!0}};function vb(a,b,c){a.F=b;a.I=a.u=0;c&&((a.I=c.I)&&sc(a,rc,!1),(a.u=c.u)&&qc(a,rc,!1))}function uc(a,b){b?--a.u||(a.yb=a.C?a.w:a.zb,a.Ec=a.C?a.G:a.qc):--a.I||(a.tb=a.Nb,a.Ob=a.kc)}function qc(a,b,c){c&&a.u||(a.yb=!a.C&&b[1]||a.w,a.Ec=!a.C&&b[3]||a.G);if(c||void 0===c)a.zb=b[1]||a.w,a.qc=b[3]||a.G}function sc(a,b,c){c&&a.I||(a.tb=b[0]||a.O,a.Ob=b[2]||a.P);if(c||void 0===c)a.Nb=b[0]||a.O,a.kc=b[2]||a.P}function mc(a,b){b||(b=Jc);sc(a,b,void 0);qc(a,b,void 0)} 1]=b;this.Wa=!0}};function xb(a,b,c){a.C=b;a.j=a.A=0;c&&((a.j=c.j)&&tc(a,sc,!1),(a.A=c.A)&&rc(a,sc,!1))}function vc(a,b){b?--a.A||(a.Bb=a.i?a.B:a.Cb,a.Ec=a.i?a.J:a.qc):--a.j||(a.vb=a.Pb,a.Qb=a.lc)}function rc(a,b,c){c&&a.A||(a.Bb=!a.i&&b[1]||a.B,a.Ec=!a.i&&b[3]||a.J);if(c||void 0===c)a.Cb=b[1]||a.B,a.qc=b[3]||a.J}function tc(a,b,c){c&&a.j||(a.vb=b[0]||a.R,a.Qb=b[2]||a.U);if(c||void 0===c)a.Pb=b[0]||a.R,a.lc=b[2]||a.U}function nc(a,b){b||(b=wc);tc(a,b,void 0);rc(a,b,void 0)}
var Jc=[],pc=[F.prototype.Y,F.prototype.xa,F.prototype.ka,F.prototype.Ab],rc=[F.prototype.U,F.prototype.va,F.prototype.aa,F.prototype.Da];if(rb)var oc=[F.prototype.S,F.prototype.oa,F.prototype.Z,F.prototype.za],nc=[F.prototype.W,F.prototype.wa,F.prototype.ca,F.prototype.Ia]; var wc=[],qc=[F.prototype.da,F.prototype.Ca,F.prototype.ra,F.prototype.Ra],sc=[F.prototype.ba,F.prototype.wa,F.prototype.ha,F.prototype.Ia];if(tb)var pc=[F.prototype.Y,F.prototype.va,F.prototype.fa,F.prototype.Da],oc=[F.prototype.ca,F.prototype.xa,F.prototype.qa,F.prototype.Db];
function Kc(a,b){u.call(this,"CPU",a,Kc,1);var c=a.multiplier||1;this.xa=a.cycles||b;this.Ya=c;this.Da=Math.round(this.xa/1E4)/100;this.kb=this.Da*this.Ya;this.j.ea=!1;this.j.oc=!1;this.j.Db=a.autoStart;this.j.wc=!1;this.j.pb=!1;this.Kb=this.Y=0;this.Lb=a.csStart;this.rb=a.csInterval;this.sb=a.csStop;this.G=[];this.Hb=this.mb.bind(this);D(this)}w(Kc);var Lc=["power","reset"];l=Kc.prototype; function xc(a,b){u.call(this,"CPU",a,xc,1);var c=a.multiplier||1;this.wa=a.cycles||b;this.$a=c;this.Ca=Math.round(this.wa/1E4)/100;this.mb=this.Ca*this.$a;this.u.ja=!1;this.u.oc=!1;this.u.Hb=a.autoStart;this.u.wc=!1;this.u.qb=!1;this.Mb=this.ba=0;this.Nb=a.csStart;this.tb=a.csInterval;this.ub=a.csStop;this.D=[];this.Kb=this.ob.bind(this);D(this)}w(xc);var yc=["power","reset"];l=xc.prototype;
l.Va=function(a,b,c,d){this.u=a;this.C=b;this.F=d;for(b=0;b<Lc.length;b++)(c=this.I[Lc[b]])&&this.u.ta(null,Lc[b],c);this.ca=null;a=Mc(a,"autoStart");null!=a&&(this.j.Db="true"==a?!0:"false"==a?!1:!!a);D(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1}; l.Xa=function(a,b,c,d){this.i=a;this.F=b;this.C=d;for(b=0;b<yc.length;b++)(c=this.I[yc[b]])&&this.i.ta(null,yc[b],c);this.fa=null;a=zc(a,"autoStart");null!=a&&(this.u.Hb="true"==a?!0:"false"==a?!1:!!a);D(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};
l.Ma=function(a,b){if(!b){if(a&&this.restore){Nc(this);if(!this.restore(a))return!1;Oc(this)}else this.reset();this.F?(a=this.F,a.g("Type ? for help with PDP11 Debugger commands"),a.ya(),a.nb&&(b=a.nb,a.nb=null,Pc(a,b))):this.g("No debugger detected")}K(this);return!0};l.La=function(a){return a?this.save():!0};l.Db=function(){return this.j.Db||!this.F&&void 0===this.I.run?(this.mb(!0),!0):!1};l.yc=function(){return 0}; l.Na=function(a,b){if(!b){if(a&&this.restore){Ac(this);if(!this.restore(a))return!1;Pc(this)}else this.reset();this.C?(a=this.C,a.f("Type ? for help with PDP11 Debugger commands"),a.ya(),a.Ra&&(b=a.Ra,a.Ra=null,Qc(a,b))):this.f("No debugger detected")}K(this);return!0};l.Ma=function(a){return a?this.save():!0};l.Hb=function(){return this.u.Hb||!this.C&&void 0===this.I.run?(this.ob(!0),!0):!1};l.yc=function(){return 0};
function Oc(a){void 0===a.Lb&&(a.Lb=0);void 0===a.rb&&(a.rb=-1);void 0===a.sb&&(a.sb=-1);a.j.pb=0<=a.Lb&&0<a.rb;a.j.pb&&(a.Kb=0,a.Y=a.Lb-a.W)}function Qc(a,b){if(a.j.pb){var c=!1;a.Kb=a.Kb+a.yc()|0;a.Y-=b;0>=a.Y&&(a.Y+=a.rb,c=!0);0<=a.sb&&a.sb<=Rc(a)&&(a.rb=a.sb=-1,Oc(a),a.ja(),c=!0);c&&a.g(Rc(a)+" cycles: checksum="+r(a.Kb))}} function Pc(a){void 0===a.Nb&&(a.Nb=0);void 0===a.tb&&(a.tb=-1);void 0===a.ub&&(a.ub=-1);a.u.qb=0<=a.Nb&&0<a.tb;a.u.qb&&(a.Mb=0,a.ba=a.Nb-a.Y)}function Rc(a,b){if(a.u.qb){var c=!1;a.Mb=a.Mb+a.yc()|0;a.ba-=b;0>=a.ba&&(a.ba+=a.tb,c=!0);0<=a.ub&&a.ub<=Sc(a)&&(a.tb=a.ub=-1,Pc(a),a.ma(),c=!0);c&&a.f(Sc(a)+" cycles: checksum="+r(a.Mb))}}
function Sc(a,b,c,d){if(a.I[b]){void 0===c&&(qb(a,"Value for "+b+" is invalid"),a.ja());var f=a.F&&a.F.Z||8;c=!a.j.ea||a.j.wc?8==f?da(c,d):r(c,d):"--------".substr(0,d||4);a.I[b].textContent!=c&&(a.I[b].textContent=c)}} function Tc(a,b,c,d){if(a.I[b]){void 0===c&&(sb(a,"Value for "+b+" is invalid"),a.ma());var f=a.C&&a.C.da||8;c=!a.u.ja||a.u.wc?8==f?ba(c,d):r(c,d):"--------".substr(0,d||4);a.I[b].textContent!=c&&(a.I[b].textContent=c)}}
l.ta=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.I[b]=c;a=!0;break;case "run":this.I[b]=c;c.onclick=function(){var a;if(a=d.u)if(a=d.u,a.j.ba)a=!0;else{var b=null,c,h=Ya(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.j.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.j.ba);c++);c==h.length&&(b=a);t("The "+b.type+" component ("+b.id+") is not "+(b.j.ready?"powered yet":"ready yet"+(b.Xb?" (waiting for notification)":""))+".");a=!1}a&&(d.j.ea?d.ja():d.mb())}; l.ta=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.I[b]=c;a=!0;break;case "run":this.I[b]=c;c.onclick=function(){var a;if(a=d.i)if(a=d.i,a.u.ga)a=!0;else{var b=null,c,h=$a(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.u.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.u.ga);c++);c==h.length&&(b=a);t("The "+b.type+" component ("+b.id+") is not "+(b.u.ready?"powered yet":"ready yet"+(b.Zb?" (waiting for notification)":""))+".");a=!1}a&&(d.u.ja?d.ma():d.ob())};
a=!0;break;case "speed":this.I[b]=c;a=!0;break;case "setSpeed":this.I[b]=c,c.onclick=function(){Tc(d,d.Ya<<1,!0)},c.textContent=this.kb.toFixed(2)+"Mhz",a=!0}return a};function Uc(a,b,c){a.W+=b;c&&(a.J=a.b=0)}function Vc(a,b){var c=1;b&&1<a.Ya&&a.S&&(c=a.S/a.Da);a.Eb=Math.round(1E3/30);a.za=Math.floor(a.xa/30*c);b||(a.Z=a.za);a.Ia=0}function Rc(a){return a.W+a.P+a.J-a.b}function Nc(a){a.S=0;a.Gb=0;a.W=a.P=a.J=a.b=0;Oc(a);Tc(a,1)} a=!0;break;case "speed":this.I[b]=c;a=!0;break;case "setSpeed":this.I[b]=c,c.onclick=function(){Uc(d,d.$a<<1,!0)},c.textContent=this.mb.toFixed(2)+"Mhz",a=!0}return a};function Vc(a,b,c){a.Y+=b;c&&(a.U=a.b=0)}function Wc(a,b){var c=1;b&&1<a.$a&&a.O&&(c=a.O/a.Ca);a.Fb=Math.round(1E3/30);a.xa=Math.floor(a.wa/30*c);b||(a.ca=a.xa);a.Da=0}function Sc(a){return a.Y+a.J+a.U-a.b}function Ac(a){a.O=0;a.Ib=0;a.Y=a.J=a.U=a.b=0;Pc(a);Uc(a,1)}
function Tc(a,b,c){var d=!1;if(void 0!==b){.8>a.S/a.kb?b=1:d=!0;a.Ya=b;b=a.Da*a.Ya;if(a.kb!=b){a.kb=b;b=a.kb.toFixed(2)+"Mhz";var f=a.I.setSpeed;f&&(f.textContent=b);a.g("target speed: "+b)}c&&a.u&&a.u.Tb()}Uc(a,a.P);a.P=0;a.O=oa();a.U=0;Vc(a);return d}function Tb(a,b){var c=a.G.length;a.G.push([-1,b]);return c}function Ub(a,b){var c;0<=b&&b<a.G.length&&0>a.G[b][0]&&(c=a.xa*a.Ya/1E3*(1E3/60),a.G[b][0]=c)} function Uc(a,b,c){var d=!1;if(void 0!==b){.8>a.O/a.mb?b=1:d=!0;a.$a=b;b=a.Ca*a.$a;if(a.mb!=b){a.mb=b;b=a.mb.toFixed(2)+"Mhz";var f=a.I.setSpeed;f&&(f.textContent=b);a.f("target speed: "+b)}c&&a.i&&a.i.Wb()}Vc(a,a.J);a.J=0;a.G=pa();a.R=0;Wc(a);return d}function Vb(a,b){var c=a.D.length;a.D.push([-1,b]);return c}function Wb(a,b){var c;0<=b&&b<a.D.length&&0>a.D[b][0]&&(c=a.wa*a.$a/1E3*(1E3/60),a.D[b][0]=c)}function Xc(a){a.U-=a.b;a.b=0}
l.mb=function(a){if(nb(this,!0)){if(!this.j.ea){Tc(this);this.u&&this.u.start(this.O,Rc(this));this.j.ea=!0;this.j.oc=!0;this.ca&&this.ca.start();var b=this.I.run;b&&(b.textContent="Halt");this.u&&(this.u.ya(!0),a&&this.u.Tb(!0))}this.Ia>=this.xa&&Vc(this,!0);this.ka=0;this.wa=oa();this.U&&(a=this.wa-this.U,a>this.Eb&&(this.O+=a,this.O>this.wa&&(this.O=this.wa)));try{do{for(var c,d=this.j.pb?1:this.za,f=this.G.length-1;0<=f;f--){var e=this.G[f];0>e[0]||d>e[0]&&(d=e[0])}c=d;try{this.xb(c)}catch(m){if("number"!= l.ob=function(a){if(pb(this,!0)){if(!this.u.ja){Uc(this);this.i&&this.i.start(this.G,Sc(this));this.u.ja=!0;this.u.oc=!0;this.fa&&this.fa.start();var b=this.I.run;b&&(b.textContent="Halt");this.i&&(this.i.ya(!0),a&&this.i.Wb(!0))}this.Da>=this.wa&&Wc(this,!0);this.ha=0;this.va=pa();this.R&&(a=this.va-this.R,a>this.Fb&&(this.G+=a,this.G>this.va&&(this.G=this.va)));try{do{for(var c,d=this.u.qb?1:this.xa,f=this.D.length-1;0<=f;f--){var e=this.D[f];0>e[0]||d>e[0]&&(d=e[0])}c=d;try{this.Ab(c)}catch(m){if("number"!=
typeof m)throw m;}var g=this.J-this.b;a=g;for(var h=this.G.length-1;0<=h;h--){var k=this.G[h];0>k[0]||(k[0]-=a,0>=k[0]&&(k[0]=-1,k[1]()))}this.ka+=g;this.P+=g;Uc(this,0,!0);Qc(this,g);this.Z-=g;if(0>=this.Z){this.Z+=this.za;15<=++this.Gb&&(this.u&&this.u.ya(),this.Gb=0);break}}while(this.j.ea)}catch(m){this.ja();K(this);this.u&&this.u.stop(oa(),Rc(this));nb(this,!1);qb(this,m.stack||m.message);return}c=setTimeout;d=this.Hb;this.U=oa();f=this.Eb;this.ka&&(f=Math.round(f*this.ka/this.za));f-=this.U- typeof m)throw m;}var g=this.U-this.b;a=g;for(var h=this.D.length-1;0<=h;h--){var k=this.D[h];0>k[0]||(k[0]-=a,0>=k[0]&&(k[0]=-1,k[1]()))}this.ha+=g;this.J+=g;Vc(this,0,!0);Rc(this,g);this.ca-=g;if(0>=this.ca){this.ca+=this.xa;15<=++this.Ib&&(this.i&&this.i.ya(),this.Ib=0);break}}while(this.u.ja)}catch(m){this.ma();K(this);this.i&&this.i.stop(pa(),Sc(this));pb(this,!1);sb(this,m.stack||m.message);return}c=setTimeout;d=this.Kb;this.R=pa();f=this.Fb;this.ha&&(f=Math.round(f*this.ha/this.xa));f-=this.R-
this.wa;if(e=this.U-this.O)this.S=Math.round(this.P/(10*e))/100,864E5<=e&&(this.W=0,Tc(this));if(0>f||this.S<this.kb)-1E3>f&&(this.O-=f),f=0;this.Ia+=this.ka;this.U+=f;c(d,f)}else K(this),this.u&&this.u.stop(oa(),Rc(this))};l.xb=function(){return 0};l.ja=function(a){ob(this,!0);this.J-=this.b;this.b=0;Uc(this,this.P);this.P=0;if(this.j.ea){this.j.ea=!1;this.ca&&this.ca.stop();var b=this.I.run;b&&(b.textContent="Run")}this.j.complete=a};function K(a,b){a.u&&a.u.ya(b)} this.va;if(e=this.R-this.G)this.O=Math.round(this.J/(10*e))/100,864E5<=e&&(this.Y=0,Uc(this));if(0>f||this.O<this.mb)-1E3>f&&(this.G-=f),f=0;this.Da+=this.ha;this.R+=f;c(d,f)}else K(this),this.i&&this.i.stop(pa(),Sc(this))};l.Ab=function(){return 0};l.ma=function(a){qb(this,!0);Xc(this);Vc(this,this.J);this.J=0;if(this.u.ja){this.u.ja=!1;this.fa&&this.fa.stop();var b=this.I.run;b&&(b.textContent="Run")}this.u.complete=a};function K(a,b){a.i&&a.i.ya(b)}
function Wc(a){this.Uc=+a.model||1170;this.ic=a.resetAddr||0;Kc.call(this,a,1E6);this.Bb=0;this.decode=Xc.bind(this);this.ga=65536;this.qa=32768;this.ra=65535;this.pa=32768;this.i=[0,0,0,0,0,0,0,this.ic];this.$a=[0,0,0,0,0,0];this.Oa=[0,0,0,0];this.va=this.D=0;this.ha=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0, function Yc(a){this.Vc=+a.model||1170;this.ic=a.resetAddr||0;xc.call(this,a,1E6);this.Eb=0;this.decode=Zc.bind(this);this.S=65536;this.T=32768;this.X=65535;this.V=32768;this.aa=15;this.g=[0,0,0,0,0,0,0,this.ic];this.bb=[0,0,0,0,0,0];this.Pa=[0,0,0,0];this.ra=this.B=0;this.ka=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.Sb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.hc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.f=-1;this.R=0;this.jb=70;this.aa=-1;this.Wb=0;Yc(this);this.j.complete=this.j.Kc=!1}w(Wc,Kc);l=Wc.prototype;l.reset=function(){this.j.ea&&this.ja();Yc(this);Nc(this);this.j.error=!1;this.parent.reset.call(this)}; 0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.Vb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.hc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.M=0;this.lb=70;this.da=-1;this.Ia=0;$c(this);this.u.complete=this.u.Kc=!1}w(Yc,xc);l=Yc.prototype;l.reset=function(){this.u.ja&&this.ma();$c(this);Ac(this);this.u.error=!1;this.parent.reset.call(this)};
function Yc(a){a.Za=255;a.H=0;a.lc=0;a.B=0;a.cb=0;a.Vb=0;a.eb=0;a.Yb=0;a.oa=0;a.Zb=[7,7,7,7];a.w=[];a.Na=2;Vb(a)}function Vb(a){a.Yb?(a.nb=65536,a.X=a.Pc,a.Ob=a.Ha):(a.nb=0,a.X=a.Oc,a.Ob=a.bc)}l.yc=function(){return 0};l.save=function(){var a=new L(this);a.set(0,[]);a.set(1,[this.W,this.Ya]);a.set(2,Fb(this.C));return a.data()}; function $c(a){a.ab=255;a.H=0;a.mc=0;a.A=0;a.fb=0;a.Yb=0;a.gb=0;a.$b=0;a.qa=0;a.ac=[7,7,7,7];a.j=[];a.Oa=2;Xb(a)}function Xb(a){a.$b?(a.Ra=65536,a.$=a.Rc,a.Qb=a.Ha):(a.Ra=0,a.$=a.Qc,a.Qb=a.cc)}l.yc=function(){return 0};l.save=function(){var a=new L(this);a.set(0,[]);a.set(1,[this.Y,this.$a]);a.set(2,Hb(this.F));return a.data()};
l.restore=function(a){var b=a[1];this.W=b[1];Tc(this,b[3]);a:{b=this.C;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],f=a[c+1];if(f&&f.length<b.J){for(var e=0,g=Array(b.J),h=0;h<f.length-1;)for(var k=f[h++],m=f[h++];k--;)g[e++]=m;f=g}e=b.L[d];if(!e||!e.restore(f)){t("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b}; l.restore=function(a){var b=a[1];this.Y=b[1];Uc(this,b[3]);a:{b=this.F;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],f=a[c+1];if(f&&f.length<b.O){for(var e=0,g=Array(b.O),h=0;h<f.length-1;)for(var k=f[h++],m=f[h++];k--;)g[e++]=m;f=g}e=b.L[d];if(!e||!e.restore(f)){t("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};
l.ta=function(a,b,c){switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":this.I[b]=c;this.Bb++;a=!0;break;default:a=this.parent.ta.call(this,a,b,c)}return a}; l.ta=function(a,b,c){switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":this.I[b]=c;this.Eb++;a=!0;break;default:a=this.parent.ta.call(this,a,b,c)}return a};
l.ya=function(a){if(this.Bb&&(a||!this.j.ea||this.j.wc)){for(a=0;a<this.i.length;a++)Sc(this,"R"+a,this.i[a]);a=Wb(this);Sc(this,"PS",a);Sc(this,"NF",a&8?1:0,1);Sc(this,"ZF",a&4?1:0,1);Sc(this,"VF",a&2?1:0,1);Sc(this,"CF",a&1?1:0,1)}if(a=this.I.speed)a.textContent=this.j.ea&&this.S?this.S.toFixed(2)+"Mhz":"Stopped"};function Zc(a){return a.qa&32768?2:0}function $c(a){return a.ra&65535?0:4}function ad(a){return a.pa&32768?8:0} l.ya=function(a){if(this.Eb&&(a||!this.u.ja||this.u.wc)){for(a=0;a<this.g.length;a++)Tc(this,"R"+a,this.g[a]);a=Yb(this);Tc(this,"PS",a);Tc(this,"NF",a&8?1:0,1);Tc(this,"ZF",a&4?1:0,1);Tc(this,"VF",a&2?1:0,1);Tc(this,"CF",a&1?1:0,1)}if(a=this.I.speed)a.textContent=this.u.ja&&this.O?this.O.toFixed(2)+"Mhz":"Stopped"};function M(a){return a.S&65536?1:0}function ad(a){return a.T&32768?2:0}function bd(a){return a.X&65535?0:4}l.La=function(){return this.V&32768?8:0};
function H(a,b,c,d,f){for(var e=a.w.length;0<e--;)if(a.w[e].kd===d){0<e&&(a.w[e-1].Ta+=a.w[e].Ta);a.w.splice(e,1);break}if(0<=b){2===a.Wb&&(b=0,a.Wb=0,setTimeout(a.Hb,0));for(e=a.w.length;0<e--;){if(a.w[e].Ta>b){a.w[e].Ta-=b;break}b-=a.w[e].Ta}a.w.splice(e+1,0,{delay:b,priority:c<<5&224,vector:d,callback:f})}a.Na=2}function Wb(a){return a.fa=a.fa&63728|ad(a)|$c(a)|Zc(a)|(a.ga&65536?1:0)} function H(a,b,c,d,f){for(var e=a.j.length;0<e--;)if(a.j[e].ld===d){0<e&&(a.j[e-1].Va+=a.j[e].Va);a.j.splice(e,1);break}if(0<=b){2===a.Ia&&(b=0,a.Ia=0,setTimeout(a.Kb,0));for(e=a.j.length;0<e--;){if(a.j[e].Va>b){a.j[e].Va-=b;break}b-=a.j[e].Va}a.j.splice(e+1,0,{delay:b,priority:c<<5&224,vector:d,callback:f})}a.Oa=2}function Yb(a){return a.aa=a.aa&63728|a.La()|bd(a)|ad(a)|M(a)}
function Xb(a,b){a.pa=b<<12;a.ra=~b&4;a.qa=b<<14;a.ga=b<<16;if((b^a.fa)&2048)for(var c=a.$a.length;0<=--c;){var d=a.i[c];a.i[c]=a.$a[c];a.$a[c]=d}a.D=b>>14&3;c=a.fa>>14&3;a.D!=c&&(a.Oa[c]=a.i[6],a.i[6]=a.Oa[a.D]);a.Na=2;a.fa=b}function bd(a,b){a.R&128||(a.pa=a.ra=a.ga=b,a.qa=0)}function cd(a,b){a.R&128||(a.pa=a.ra=b,a.qa=0)}function dd(a,b,c,d){a.R&128||(a.pa=a.ra=a.ga=b,a.qa=(c^d)&(d^b))} function Zb(a,b){a.V=b<<12;a.X=~b&4;a.T=b<<14;a.S=b<<16;if((b^a.aa)&2048)for(var c=a.bb.length;0<=--c;){var d=a.g[c];a.g[c]=a.bb[c];a.bb[c]=d}a.B=b>>14&3;c=a.aa>>14&3;a.B!=c&&(a.Pa[c]=a.g[6],a.g[6]=a.Pa[a.B]);a.Oa=2;a.aa=b}function cd(a,b,c){a.M&128||(a.V=a.X=a.S=b,a.T=c||0)}function N(a,b){a.M&128||(a.V=a.X=b,a.T=0)}function dd(a,b,c,d){a.M&128||(a.V=a.X=a.S=b,a.T=(c^b)&(d^b))}function ed(a,b){a.M&128||(a.V=a.X=a.S=b,a.T=a.V^a.S>>1)}function fd(a,b,c,d){a.M&128||(a.V=a.X=a.S=b,a.T=(c^d)&(d^b))}
function J(a,b){var c=!1;0>a.aa?a.aa=Wb(a):a.D||(b=4,c=!0);a.B&57344||(a.cb=63222,a.Vb=b);a.D=0;var d=a.Ha(b|65536),f=a.Ha(b+2&65535|65536);Xb(a,f&53247|a.aa>>2&12288);c&&(a.H|=4,a.i[6]=4);ed(a,a.aa);ed(a,a.i[7]);a.i[7]=d;a.R&=-113;a.aa=-1;throw b;}function ec(a,b){var c=b>>13&31;31>c?a.eb&32&&(b=a.Sb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} function J(a,b){var c=!1;0>a.da?a.da=Yb(a):a.B||(b=4,c=!0);a.A&57344||(a.fb=63222,a.Yb=b);a.B=0;var d=a.Ha(b|65536),f=a.Ha(b+2&65535|65536);Zb(a,f&53247|a.da>>2&12288);c&&(a.H|=4,a.g[6]=4);gd(a,a.da);gd(a,a.g[7]);a.g[7]=d;a.M&=-113;a.da=-1;throw b;}function hd(a){var b=id(a),c=id(a)&-1793;a.aa&49152&&(c=c&-225|a.aa&63712);a.g[7]=b&65535;Zb(a,c);a.M&=-17}function fc(a,b){var c=b>>13&31;31>c?a.gb&32&&(b=a.Vb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b}
function fd(a,b,c){var d,f,e,g=0;if(c&a.Yb){d=b>>13&a.Zb[a.D];f=a.ha[a.D][d];e=(a.ha[a.D][d+16]<<6)+(b&8191)&4194303;a.eb&16?3932160<=e&&4186112>e&&(e=ec(a,e&262143)):(e&=262143,253952<=e&&(e|=4186112));3932160>e&&(3915776<=e&&(a.H|=32,J(a,4)),e&1&&!(c&1)&&(a.H|=64,J(a,4)));switch(f&7){case 1:g=4096;case 2:f|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:f|=c&4?192:128;break;default:g=32768}32512!==(f&32520)&&(f&8?f&32512&&(b&8128)<(f>>2&8128)&&(g|=16384):(b&8128)>(f>>2&8128)&& function jd(a,b,c){var d,f,e,g=0;if(c&a.$b){d=b>>13&a.ac[a.B];f=a.ka[a.B][d];e=(a.ka[a.B][d+16]<<6)+(b&8191)&4194303;a.gb&16?3932160<=e&&4186112>e&&(e=fc(a,e&262143)):(e&=262143,253952<=e&&(e|=4186112));3932160>e&&(3915776<=e&&(a.H|=32,J(a,4)),e&1&&!(c&1)&&(a.H|=64,J(a,4)));switch(f&7){case 1:g=4096;case 2:f|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:f|=c&4?192:128;break;default:g=32768}32512!==(f&32520)&&(f&8?f&32512&&(b&8128)<(f>>2&8128)&&(g|=16384):(b&8128)>(f>>2&8128)&&
(g|=16384));a.ha[a.D][d]=f;if(4194170!==e||a.D)a.oa=a.D,a.va=d;g&&(g&57344&&(0<=a.aa&&(g|=128),a.B&57344||(a.B=a.B|g|a.oa<<5|a.va<<1),J(a,168)),a.B&61440||!(4191360>e||4194239<e)||(a.B|=4096,a.B&512&&(a.R|=32)))}else e=b&65535,57344<=e?e|=4186112:e&1&&!(c&1)&&(a.H|=64,J(a,4));return e}l.bc=function(a){return 4194304<=a?this.i[a-4194304]:0<=a?this.C.Fa(a):a};l.Ha=function(a){return this.bc(fd(this,a,2))};function dc(a,b,c){c&=65535;return 4194304<=b?a.i[b-4194304]=c:0<=b?(a.C.nc(b,c),c):b} (g|=16384));a.ka[a.B][d]=f;if(4194170!==e||a.B)a.qa=a.B,a.ra=d;g&&(g&57344&&(0<=a.da&&(g|=128),a.A&57344||(a.A=a.A|g|a.qa<<5|a.ra<<1),J(a,168)),a.A&61440||!(4191360>e||4194239<e)||(a.A|=4096,a.A&512&&(a.M|=32)))}else e=b&65535,57344<=e?e|=4186112:e&1&&!(c&1)&&(a.H|=64,J(a,4));return e}l.cc=function(a){return 4194304<=a?this.g[a-4194304]:0<=a?this.F.Fa(a):a};l.Ha=function(a){return this.cc(jd(this,a,2))};function id(a){var b=a.Ha(a.g[6]|65536);a.g[6]=a.g[6]+2&65535;return b}
function gd(a,b){return 4194304<=b?a.i[b-4194304]&255:0<=b?a.C.Jb(b):b}function hd(a,b,c){c&=255;4194304<=b?a.i[b-4194304]=a.i[b-4194304]&65280|c:0<=b&&a.C.dc(b,c)}function ed(a,b){var c=a.i[6]-2&65535;a.i[6]=c;a.B&57344||(a.cb=a.cb<<8|246);!a.D&&c<=a.Za&&4<c&&(c<=a.Za-32?(a.H|=4,a.i[6]=4,J(a,4)):(a.H|=8,a.R|=4));c=fd(a,c|65536,4);dc(a,c,b)} function gd(a,b){var c=a.g[6]-2&65535;a.g[6]=c;a.A&57344||(a.fb=a.fb<<8|246);!a.B&&c<=a.ab&&4<c&&(c<=a.ab-32?(a.H|=4,a.g[6]=4,J(a,4)):(a.H|=8,a.M|=4));c=jd(a,c|65536,4);a.F.zb(c,b&65535)}
function id(a,b,c){var d,f,e=b&7,g=c&8?0:a.nb;switch(b>>3&7){case 0:J(a,4);break;case 1:return 6===e&&!a.D&&c&4&&(a.i[6]<=a.Za||65534<=a.i[6])&&(a.i[6]<=a.Za-32||65534<=a.i[6]?(a.H|=4,a.i[6]=4,J(a,4)):(a.H|=8,a.R|=64)),7===e?a.i[e]:a.i[e]|g;case 2:f=2;d=a.i[e];7!==e&&(d|=g,6>e&&c&1&&(f=1));break;case 3:f=2;d=a.i[e];7!==e&&(d|=g);if(0>(d=a.Ha(d)))return d;d|=g;break;case 4:f=-2;6>e&&c&1&&(f=-1);d=a.i[e]+f&65535;7!==e&&(d|=g);break;case 5:f=-2;d=a.i[e]-2&65535;7!==e&&(d|=g);if(0>(d=a.Ha(d)))return d; function kd(a,b,c){var d,f,e=b&7,g=c&8?0:a.Ra;switch(b>>3&7){case 0:J(a,4);break;case 1:return 6===e&&!a.B&&c&4&&(a.g[6]<=a.ab||65534<=a.g[6])&&(a.g[6]<=a.ab-32||65534<=a.g[6]?(a.H|=4,a.g[6]=4,J(a,4)):(a.H|=8,a.M|=64)),7===e?a.g[e]:a.g[e]|g;case 2:f=2;d=a.g[e];7!==e&&(d|=g,6>e&&c&1&&(f=1));break;case 3:f=2;d=a.g[e];7!==e&&(d|=g);if(0>(d=a.Ha(d)))return d;d|=g;break;case 4:f=-2;6>e&&c&1&&(f=-1);d=a.g[e]+f&65535;7!==e&&(d|=g);break;case 5:f=-2;d=a.g[e]-2&65535;7!==e&&(d|=g);if(0>(d=a.Ha(d)))return d;
d|=g;break;case 6:if(0>(d=a.Ha(a.i[7])))return d;a.i[7]=a.i[7]+2&65535;d=d+a.i[e]&65535;return d|g;case 7:if(0>(d=a.Ha(a.i[7])))return d;a.i[7]=a.i[7]+2&65535;d=d+a.i[e]&65535;return 0>(d=a.Ha(d|65536))?d:d|g}a.i[e]=a.i[e]+f&65535;!g||a.B&57344||(a.cb=a.cb<<8|f<<3&248|e);6===e&&!a.D&&c&4&&0>=f&&(a.i[6]<=a.Za||65534<=a.i[6])&&(a.i[6]<=a.Za-32?(a.H|=4,a.i[6]=4,J(a,4)):(a.H|=8,a.R|=64));return d}l.Oc=function(a,b){return id(this,a,b)};l.Pc=function(a,b){return fd(this,id(this,a,b),b)}; d|=g;break;case 6:if(0>(d=a.Ha(a.g[7])))return d;a.g[7]=a.g[7]+2&65535;d=d+a.g[e]&65535;return d|g;case 7:if(0>(d=a.Ha(a.g[7])))return d;a.g[7]=a.g[7]+2&65535;d=d+a.g[e]&65535;return 0>(d=a.Ha(d|65536))?d:d|g}a.g[e]=a.g[e]+f&65535;!g||a.A&57344||(a.fb=a.fb<<8|f<<3&248|e);6===e&&!a.B&&c&4&&0>=f&&(a.g[6]<=a.ab||65534<=a.g[6])&&(a.g[6]<=a.ab-32?(a.H|=4,a.g[6]=4,J(a,4)):(a.H|=8,a.M|=64));return d}l.Qc=function(a,b){return kd(this,a,b)};l.Rc=function(a,b){return jd(this,kd(this,a,b),b)};
function N(a,b){return b&56?a.Ob(id(a,b,2)):a.i[b&7]}function jd(a,b){return b&56?gd(a,a.X(b,3)):a.i[b&7]&255}function kd(a,b,c,d){b&56?(b=a.X(b,6),dc(a,b,d.call(a,c,a.bc(b)))):(b&=7,a.i[b]=d.call(a,c,a.i[b])&65535)}function ld(a,b,c,d){b&56?(b=a.X(b,7),hd(a,b,d.call(a,c,gd(a,b)))):(b&=7,a.i[b]=a.i[b]&65280|d.call(a,c,a.i[b])&255)}function md(a,b,c){b&56?dc(a,a.X(b,4),c):a.i[b&7]=c&65535;return c} function O(a,b){return b&56?a.Qb(kd(a,b,2)):a.g[b&7]}function ld(a,b){b&56?(b=a.$(b,3),a=a.F.rb(b)):a=a.g[b&7]&255;return a}function Q(a,b,c,d){b&56?(b=a.$(b,6),c=d.call(a,c,a.cc(b)),a.F.zb(b,c&65535)):(b&=7,a.g[b]=d.call(a,c,a.g[b]))}function R(a,b,c,d){b&56?(b=a.$(b,7),c=d.call(a,c,a.F.rb(b)),a.F.Ub(b,c&255)):(b&=7,a.g[b]=a.g[b]&65280|d.call(a,c,a.g[b]))}function md(a,b,c){b&56?(b=a.$(b,4),a.F.zb(b,c&65535)):a.g[b&7]=c&65535;return c}
function nd(a,b,c,d){b&56?hd(a,a.X(b,5),c):(b&=7,a.i[b]=c?d&1?c<<24>>24&65535:a.i[b]&-256|c&255:a.i[b]&-256);return c}function O(a,b){return a.i[7]+(b<<24>>23)&65535} function nd(a,b,c,d){b&56?(d=a.$(b,5),a.F.Ub(d,c&255)):(b&=7,a.g[b]=c?d&1?c<<24>>24&65535:a.g[b]&-256|c&255:a.g[b]&-256);return c}function S(a,b){return a.g[7]+(b<<24>>23)&65535}
l.xb=function(a){this.j.complete=!0;var b=this.j.Kc=this.F&&od(this.F),c=a?this.j.oc?0:1:-1;this.j.oc=!1;this.J=this.b=a;do{if(b){if(pd(this.F,this.i[7],c)){this.ja();break}c=1}this.R&112&&(this.R&32?J(this,168):this.R&64?J(this,4):this.R&16&&J(this,12),this.R&=-113);if(this.Na)if(1==this.Na)this.Na=2;else{this.Na=0;a=null;for(var d=this.lc&224,f=this.w.length;0<=--f;){if(0<this.w[f].Ta){this.w[f].Ta--;this.Na=2;break}if(this.w[f].uc){if(!this.w[f].uc()){this.w.splice(f,1);continue}this.w[f].uc=null}this.w[f].Vc> l.Ab=function(a){this.u.complete=!0;var b=this.u.Kc=this.C&&od(this.C),c=a?this.u.oc?0:1:-1;this.u.oc=!1;this.U=this.b=a;do{if(b){if(pd(this.C,this.g[7],c)){this.ma();break}c=1}this.M&112&&(this.M&32?J(this,168):this.M&64?J(this,4):this.M&16&&J(this,12),this.M&=-113);if(this.Oa)if(1==this.Oa)this.Oa=2;else{this.Oa=0;a=null;for(var d=this.mc&224,f=this.j.length;0<=--f;){if(0<this.j[f].Va){this.j[f].Va--;this.Oa=2;break}if(this.j[f].uc){if(!this.j[f].uc()){this.j.splice(f,1);continue}this.j[f].uc=null}this.j[f].Wc>
d&&(d=this.w[f].Vc,a=this.w[f],this.w.splice(f,1))}d>(this.fa&224)&&(a?J(this,a.kd):J(this,160))}this.B&57344||(this.cb=0,this.Vb=this.i[7]);this.R=this.fa&16;a=this.f=this.Ha(this.i[7]);0<=a&&(this.i[7]=this.i[7]+2&65535);this.decode(a);if(0>this.f){this.i[7]=this.i[7]-2&65535;this.g("unimplemented");break}}while(0<this.b);return this.j.complete?this.J-this.b:void 0===this.j.complete?0:-1};Ma(function(){for(var a=C(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Wc(d);$a(d,c)}}); d&&(d=this.j[f].Wc,a=this.j[f],this.j.splice(f,1))}d>(this.aa&224)&&(a?J(this,a.ld):J(this,160))}this.A&57344||(this.fb=0,this.Yb=this.g[7]);this.M=this.aa&16;a=this.Ha(this.g[7]);0<=a&&(this.g[7]=this.g[7]+2&65535);this.decode(a)}while(0<this.b);return this.u.complete?this.U-this.b:void 0===this.u.complete?0:-1};Oa(function(){for(var a=C(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Yc(d);bb(d,c)}});function qd(a,b){var c=b+a;dd(this,c,a,b);return c&65535}
function qd(a,b){var c=b+a;this.R&128||(this.pa=this.ra=this.ga=c,this.qa=(a^c)&(b^c));return c&65535}function rd(a,b){a=b&~a;cd(this,a);return a}function sd(a,b){a=b&~a;cd(this,a<<8);return a}function td(a,b){a|=b;cd(this,a);return a}function ud(a,b){a|=b;cd(this,a<<8);return a}function vd(a,b){a=b-a;this.R&128||(this.pa=this.ra=a,this.qa=b&(b^a));return a&65535}function wd(a,b){a=b+a;this.R&128||(this.pa=this.ra=a,this.qa=a&(b^a));return a&65535} function rd(a,b){var c=b+a;dd(this,c<<8,a<<8,b<<8);return c&255}function sd(a,b){a=b<<1;ed(this,a);return a&65535}function td(a,b){a=b<<1;ed(this,a<<8);return a&255}function ud(a,b){a=b&32768|b>>1|b<<16;ed(this,a);return a&65535}function vd(a,b){a=b&2048|b>>1|b<<8;ed(this,a<<8);return a&255}function wd(a,b){a=b&~a;N(this,a);return a}function xd(a,b){a=b&~a;N(this,a<<8);return a}function yd(a,b){a|=b;N(this,a);return a}function zd(a,b){a|=b;N(this,a<<8);return a}
function xd(a,b){var c=b-a;dd(this,c,a,b);return c&65535}function yd(){this.f=-1;--this.b}function zd(){this.f=-1;--this.b}function P(a){a&1&&(this.ga=0);a&2&&(this.qa=0);a&4&&(this.ra=1);a&8&&(this.pa=0);--this.b}function Ad(){this.f=-1;--this.b}function Bd(a){var b=id(this,a,8);a=a>>6&7;ed(this,this.i[a]);this.i[a]=this.i[7];this.i[7]=b;--this.b}function Cd(){this.f=-1;--this.b}function Dd(){--this.b} function Ad(a,b){a=~b|65536;cd(this,a);return a&65535}function Bd(a,b){a=~b|256;cd(this,a<<8);return a&255}function Cd(a,b){a=b-a;this.M&128||(this.V=this.X=a,this.T=b&(b^a));return a&65535}function Dd(a,b){a=b-a;var c=a<<8;b<<=8;this.M&128||(this.V=this.X=c,this.T=b&(b^c));return a&255}function Ed(a,b){a=b+a;this.M&128||(this.V=this.X=a,this.T=a&(b^a));return a&65535}function Fd(a,b){a=b+a;var c=a<<8;this.M&128||(this.V=this.X=c,this.T=c&(b<<8^c));return a&255}
function R(a){a&1&&(this.ga=65536);a&2&&(this.qa=32768);a&4&&(this.ra=0);a&8&&(this.pa=32768);--this.b}function Ed(){this.f=-1;--this.b}function Fd(){this.f=-1;--this.b}function S(){J(this,8)}function Xc(a){Gd[a>>12].call(this,a)} function Gd(a,b){a=-b;cd(this,a,a&b&32768);return a&65535}function Hd(a,b){a=-b;cd(this,a<<8,(a&b&128)<<8);return a&255}function Id(a,b){a=b<<1|this.S>>16&1;ed(this,a);return a&65535}function Jd(a,b){a=b<<1|this.S>>16&1;ed(this,a<<8);return a&255}function Kd(a,b){a=(this.S&65536|b)>>1|b<<16;ed(this,a);return a&65535}function Ld(a,b){a=((this.S&65536)>>8|b)>>1|b<<8;ed(this,a<<8);return a&255}function Md(a,b){var c=b-a;fd(this,c,a,b);return c&65535}
var Gd=[function(a){Hd[a>>8&15].call(this,a)},function(a){cd(this,md(this,a,N(this,a>>6)));--this.b},function(a){var b=N(this,a>>6);a=N(this,a);dd(this,b-a,a,b);--this.b},function(a){cd(this,N(this,a>>6)&N(this,a));--this.b},function(a){kd(this,a,N(this,a>>6),rd);--this.b},function(a){kd(this,a,N(this,a>>6),td);--this.b},function(a){kd(this,a,N(this,a>>6),qd);--this.b},function(a){Id[a>>8&15].call(this,a)},function(a){Jd[a>>8&15].call(this,a)},function(a){var b=jd(this,a>>6);cd(this,nd(this,a,b,1)<< function Nd(a,b){var c=b-a;fd(this,c<<8,a<<8,b<<8);return c&255}function Od(a,b){a^=b;N(this,a);return a&65535}function Pd(a){var b=O(this,a);a=a>>6&7;var c=this.g[a];c&32768&&(c|=4294901760);this.S=this.T=0;b&=63;b&32?(b=64-b,16<b&&(b=16),this.S=c<<17-b,c>>=b):b&&(16<b?(this.T=c,c=0):(this.S=c<<=b,(b=c>>15&65535)&&65535!==b&&(this.T=32768)));this.g[a]=c&65535;this.V=this.X=c;--this.b}
8);--this.b},function(a){var b=jd(this,a>>6)<<8;a=jd(this,a)<<8;dd(this,b-a,a,b);--this.b},function(a){cd(this,(jd(this,a>>6)&jd(this,a))<<8);--this.b},function(a){ld(this,a,jd(this,a>>6),sd);--this.b},function(a){ld(this,a,jd(this,a>>6),ud);--this.b},function(a){kd(this,a,N(this,a>>6),xd);--this.b},S],Hd=[function(a){Kd[a>>4&15].call(this,a)},function(a){this.i[7]=O(this,a);--this.b},function(a){$c(this)||(this.i[7]=O(this,a));--this.b},function(a){$c(this)&&(this.i[7]=O(this,a));--this.b},function(a){!ad(this)== function Qd(a){var b=O(this,a);a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.S=this.T=0;b&=63;if(b&32){b=64-b;32<b&&(b=32);var d=c>>b-1;this.S=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<<b-1,this.S=d>>15,d<<=1,32<b&&(b=32),(c>>=32-b)&&4294967295!==(c|4294967295<<b&4294967295)&&(this.T=32768)):d=c;this.g[a]=d>>16&65535;this.g[a|1]=d&65535;this.V=d>>16;this.X=d>>16|d;--this.b}function U(a){a&1&&(this.S=0);a&2&&(this.T=0);a&4&&(this.X=1);a&8&&(this.V=0);--this.b}
!Zc(this)&&(this.i[7]=O(this,a));--this.b},function(a){!ad(this)!=!Zc(this)&&(this.i[7]=O(this,a));--this.b},function(a){$c(this)||!ad(this)!=!Zc(this)||(this.i[7]=O(this,a));--this.b},function(a){if($c(this)||!ad(this)!=!Zc(this))this.i[7]=O(this,a);--this.b},Bd,Bd,function(a){Ld[a>>6&3].call(this,a)},function(a){Md[a>>6&3].call(this,a)},function(a){Nd[a>>6&3].call(this,a)},function(a){Od[a>>6&3].call(this,a)},S,S],Kd=[function(a){Pd[a&15].call(this,a)},S,S,S,S,S,S,S,function(a){var b=this.Ha(this.i[6]| function Rd(a){var b=O(this,a);if(b){a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.S=this.T=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.g[a]=d&65535,this.g[a|1]=c-d*b&65535,this.X=d>>16|d,this.V=d>>16):(this.T=32768,this.X=d>>15|d,this.V=c>>16,-1===b&&65534===this.g[a]&&(this.g[a]=this.g[a|1]=1))}else this.X=this.V=0,this.T=32768,this.S=65536;--this.b}function Sd(a){var b=kd(this,a,8);a=a>>6&7;gd(this,this.g[a]);this.g[a]=this.g[7];this.g[7]=b;--this.b}
65536);0<=b&&(this.i[6]=this.i[6]+2&65535);a&=7;this.i[7]=this.i[a];this.i[a]=b;--this.b},function(a){this.fa&49152||(this.fa=this.fa&-2017|(a&7)<<5,this.Na=1);--this.b},function(a){Qd[a&15].call(this,a)},function(a){pe[a&15].call(this,a)},S,S,S,S],Qd=[Dd,function(){this.ga=0;--this.b},function(){this.qa=0;--this.b},P,function(){this.ra=1;--this.b},P,P,P,function(){this.pa=0;--this.b},P,P,P,P,P,P,P],pe=[Dd,function(){this.ga=65536;--this.b},function(){this.qa=32768;--this.b},R,function(){this.ra= function Td(a){var b=O(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.g[a];c&32768&&(c|=-65536);b=~~(b*c);this.g[a]=b>>16&65535;this.g[a|1]=b&65535;this.V=b>>16;this.X=this.V|b;this.T=0;this.S=-32768>b||32767<b?65536:0;--this.b}function Ud(){--this.b}function V(a){a&1&&(this.S=65536);a&2&&(this.T=32768);a&4&&(this.X=0);a&8&&(this.V=32768);--this.b}function te(){--this.b}function ue(a){Q(this,a,O(this,(a&448)>>6),Od);--this.b}function W(){J(this,8)}function Zc(a){ve[a>>12].call(this,a)}
0;--this.b},R,R,R,function(){this.pa=32768;--this.b},R,R,R,R,R,R,R],Pd=[function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.fa&49152||(Yc(this),this.C.reset());--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},S,S,S,S,S,S,S,S],Id=[Cd,Cd,Ad,Ad,yd,yd,zd,zd,Fd,Fd,S,S,S,S,Ed,Ed],Jd=[function(a){ad(this)||(this.i[7]=O(this,a));--this.b},function(a){ad(this)&&(this.i[7]= var ve=[function(a){we[a>>8&15].call(this,a)},function(a){N(this,md(this,a,O(this,a>>6)));--this.b},function(a){var b=O(this,a>>6);a=O(this,a);fd(this,b-a,a,b);--this.b},function(a){N(this,O(this,a>>6)&O(this,a));--this.b},function(a){Q(this,a,O(this,a>>6),wd);--this.b},function(a){Q(this,a,O(this,a>>6),yd);--this.b},function(a){Q(this,a,O(this,a>>6),qd);--this.b},function(a){xe[a>>8&15].call(this,a)},function(a){ye[a>>8&15].call(this,a)},function(a){var b=ld(this,a>>6);N(this,nd(this,a,b,1)<<8);
O(this,a));--this.b},function(a){this.ga&65536||$c(this)||(this.i[7]=O(this,a));--this.b},function(a){if(this.ga&65536||$c(this))this.i[7]=O(this,a);--this.b},function(a){Zc(this)||(this.i[7]=O(this,a));--this.b},function(a){Zc(this)&&(this.i[7]=O(this,a));--this.b},function(a){this.ga&65536||(this.i[7]=O(this,a));--this.b},function(a){this.ga&65536&&(this.i[7]=O(this,a));--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(a){qe[a>>6&3].call(this,a)},function(a){re[a>> --this.b},function(a){var b=ld(this,a>>6)<<8;a=ld(this,a)<<8;fd(this,b-a,a,b);--this.b},function(a){N(this,(ld(this,a>>6)&ld(this,a))<<8);--this.b},function(a){R(this,a,ld(this,a>>6),xd);--this.b},function(a){R(this,a,ld(this,a>>6),zd);--this.b},function(a){Q(this,a,O(this,a>>6),Md);--this.b},W],we=[function(a){ze[a>>4&15].call(this,a)},function(a){this.g[7]=S(this,a);--this.b},function(a){bd(this)||(this.g[7]=S(this,a));--this.b},function(a){bd(this)&&(this.g[7]=S(this,a));--this.b},function(a){!this.La()==
6&3].call(this,a)},function(a){se[a>>6&3].call(this,a)},function(a){te[a>>6&3].call(this,a)},S,S],Ld=[function(a){bd(this,md(this,a,0));--this.b},function(){this.f=-1;--this.b},function(a){kd(this,a,1,wd);--this.b},function(a){kd(this,a,1,vd);--this.b}],Md=[function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b}],Nd=[function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1; !ad(this)&&(this.g[7]=S(this,a));--this.b},function(a){!this.La()!=!ad(this)&&(this.g[7]=S(this,a));--this.b},function(a){bd(this)||!this.La()!=!ad(this)||(this.g[7]=S(this,a));--this.b},function(a){if(bd(this)||!this.La()!=!ad(this))this.g[7]=S(this,a);--this.b},Sd,Sd,function(a){Ae[a>>6&3].call(this,a)},function(a){Be[a>>6&3].call(this,a)},function(a){Ce[a>>6&3].call(this,a)},function(a){De[a>>6&3].call(this,a)},W,W],ze=[function(a){Ee[a&15].call(this,a)},W,W,W,W,W,W,W,function(a){var b=id(this);
--this.b}],Od=[function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b}],qe=[function(a){bd(this,nd(this,a,0));--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b}],re=[function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b}],se=[function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b}, a&=7;this.g[7]=this.g[a];this.g[a]=b;--this.b},function(a){this.aa&49152||(this.aa=this.aa&-2017|(a&7)<<5,this.Oa=1);--this.b},function(a){Fe[a&15].call(this,a)},function(a){Ge[a&15].call(this,a)},W,W,W,W],Fe=[Ud,function(){this.S=0;--this.b},function(){this.T=0;--this.b},U,function(){this.X=1;--this.b},U,U,U,function(){this.V=0;--this.b},U,U,U,U,U,U,U],Ge=[Ud,function(){this.S=65536;--this.b},function(){this.T=32768;--this.b},V,function(){this.X=0;--this.b},V,V,V,function(){this.V=32768;--this.b},
function(){this.f=-1;--this.b}],te=[function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b},function(){this.f=-1;--this.b}];function ue(a){u.call(this,"ROM",a,ue);this.f=null;this.D=a.addr;this.u=a.size;this.G=a.writable;this.w=a.alias;this.B=a.file;this.J=ea(this.B);if(this.B){a=this.B;var b=fa(this.J);"json"!=b&&"hex"!=b&&(a=ha()+"/api/v1/dump?file="+this.B+"&format=bytes&decimal=true");var c=this;ta(a,null,!0,function(a,b,e){ve(c,a,b,e)})}}w(ue); V,V,V,V,V,V,V],Ee=[function(){this.aa&49152?(this.H|=128,J(this,4)):(this.Ia=3,Xc(this));--this.b},function(){--this.b},function(){hd(this);this.M|=this.aa&16;--this.b},function(){--this.b},function(){--this.b},function(){this.aa&49152||($c(this),this.F.reset());--this.b},function(){hd(this);--this.b},function(){--this.b},W,W,W,W,W,W,W,W],xe=[Td,Td,Rd,Rd,Pd,Pd,Qd,Qd,ue,ue,W,W,W,W,te,te],ye=[function(a){this.La()||(this.g[7]=S(this,a));--this.b},function(a){this.La()&&(this.g[7]=S(this,a));--this.b},
ue.prototype.Va=function(a,b,c,d){this.C=b;this.b=c;this.F=d;we(this)};ue.prototype.Ma=function(){if(this.Ja){if(this.F){var a=this.F,b=this.id,c=this.D,d=this.u,f=this.Ja,e=[],g;for(g in f){var h=f[g];"number"==typeof h&&(f[g]=h={o:h});var k=h.o,m=h.a;if(void 0!==k){var n=e,k=[k>>>0,g],p=na(n,k,a.vc);0>p&&n.splice(-(p+1),0,k)}m&&(h.a=m.replace(/''/g,'"'))}a.G.push({qd:b,A:c,Rc:d,Ja:f,sc:e})}delete this.Ja}return!0};ue.prototype.La=function(){return!0}; function(a){M(this)||bd(this)||(this.g[7]=S(this,a));--this.b},function(a){if(M(this)||bd(this))this.g[7]=S(this,a);--this.b},function(a){ad(this)||(this.g[7]=S(this,a));--this.b},function(a){ad(this)&&(this.g[7]=S(this,a));--this.b},function(a){M(this)||(this.g[7]=S(this,a));--this.b},function(a){M(this)&&(this.g[7]=S(this,a));--this.b},function(){J(this,24);--this.b},function(){J(this,28);--this.b},function(a){He[a>>6&3].call(this,a)},function(a){Ie[a>>6&3].call(this,a)},function(a){Je[a>>6&3].call(this,
function ve(a,b,c,d){if(d)a.ma("Unable to load system ROM (error "+d+": "+b+")");else{Xa(a.tc,b,c);var f;if("["==c.charAt(0)||"{"==c.charAt(0))try{var e,g,h=eval("("+c+")");if(e=h.bytes)a.f=e;else if(e=h.words)for(a.f=Array(2*e.length),g=f=0;f<e.length;f++)a.f[g++]=e[f]&255,a.f[g++]=e[f]>>8&255;else if(e=h.data)for(a.f=Array(4*e.length),g=f=0;f<e.length;f++)a.f[g++]=e[f]&255,a.f[g++]=e[f]>>8&255,a.f[g++]=e[f]>>16&255,a.f[g++]=e[f]>>24&255;else a.f=h;a.Ja=h.symbols;if(!a.f.length){t("Empty ROM: "+ a)},function(a){Ke[a>>6&3].call(this,a)},W,W],Ae=[function(a){cd(this,md(this,a,0));--this.b},function(a){Q(this,a,0,Ad);--this.b},function(a){Q(this,a,1,Ed);--this.b},function(a){Q(this,a,1,Cd);--this.b}],Be=[function(a){Q(this,a,0,Gd);--this.b},function(a){Q(this,a,M(this)?1:0,qd);--this.b},function(a){Q(this,a,M(this)?1:0,Md);--this.b},function(a){a=O(this,a);cd(this,a);--this.b}],Ce=[function(a){Q(this,a,0,Kd);--this.b},function(a){Q(this,a,0,Id);--this.b},function(a){Q(this,a,0,ud);--this.b},
b);return}if(1==a.f.length){t(a.f[0]);return}}catch(k){a.ma("ROM data error: "+k.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.f=Array(b.length),f=0;f<b.length;f++)a.f[f]=ca(b[f],16);we(a)}} function(a){Q(this,a,0,sd);--this.b}],De=[function(){--this.b},function(){--this.b},function(){--this.b},function(a){N(this,md(this,a,this.La?65535:0));--this.b}],He=[function(a){cd(this,nd(this,a,0));--this.b},function(a){R(this,a,0,Bd);--this.b},function(a){R(this,a,1,Fd);--this.b},function(a){R(this,a,1,Dd);--this.b}],Ie=[function(a){R(this,a,0,Hd);--this.b},function(a){R(this,a,M(this)?1:0,rd);--this.b},function(a){R(this,a,M(this)?1:0,Nd);--this.b},function(a){a=ld(this,a);cd(this,a<<8);--this.b}],
function we(a){if(!pb(a))if(!a.B)D(a);else if(a.f&&a.C){a.u||(a.u=a.f.length);if(a.f.length!=a.u)qb(a,"ROM size ("+r(a.f.length,8,!0)+") does not match specified size ("+r(a.u,8,!0)+")");else{var b;b=a.D;if(Ab(a.C,b,a.u,a.G?1:lc)){var c;for(c=0;c<a.f.length;c++){var d=a.C,f=b+c;d.L[(f&d.C)>>>d.T].zb(f&d.f,a.f[c]&255,f)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.w?b.push(a.w):null!=a.w&&a.w.length&&(b=a.w);for(c=0;c<b.length;c++){for(var e=a,d=b[c],f=e.C,g=e.u,h=[],k=e.D>>>f.T;0<g&&k<f.L.length;)h.push(f.L[k++]), Je=[function(a){R(this,a,0,Ld);--this.b},function(a){R(this,a,0,Jd);--this.b},function(a){R(this,a,0,vd);--this.b},function(a){R(this,a,0,td);--this.b}],Ke=[function(){--this.b},function(){--this.b},function(){--this.b},function(){--this.b}];
g-=f.Aa;f=e.C;e=e.u;g=0;for(d>>>=f.T;0<e&&d<f.L.length;){k=h[g++];if(!k)break;f.L[d++]=k;e-=f.Aa}}delete a.f}}D(a)}}Ma(function(){for(var a=C(document,"pdp11","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new ue(d);$a(d,c)}});function xe(a){u.call(this,"RAM",a,xe);this.w=a.addr;this.u=a.size;this.f=!1}w(xe);l=xe.prototype;l.Va=function(a,b,c,d){this.C=b;this.b=c;this.F=d;D(this)};l.Ma=function(a,b){b||this.reset();return!0};l.La=function(a){return a?this.save():!0}; function Le(a){u.call(this,"ROM",a,Le);this.i=null;this.D=a.addr;this.j=a.size;this.G=a.writable;this.A=a.alias;this.B=a.file;this.J=ga(this.B);if(this.B){a=this.B;var b=ha(this.J);"json"!=b&&"hex"!=b&&(a=ja()+"/api/v1/dump?file="+this.B+"&format=bytes&decimal=true");var c=this;sa(a,null,!0,function(a,b,e){Me(c,a,b,e)})}}w(Le);Le.prototype.Xa=function(a,b,c,d){this.F=b;this.b=c;this.C=d;Ne(this)};
l.reset=function(){!this.f&&this.u&&Ab(this.C,this.w,this.u,1)&&(this.f=!0);this.f||t("No RAM allocated")};l.save=function(){return null};l.restore=function(){return!0};Ma(function(){for(var a=C(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new xe(d);$a(d,c)}});function ye(a){u.call(this,"Keyboard",a,ye,65536);D(this)}w(ye);ye.prototype.ta=function(){return!1};ye.prototype.Va=function(a,b,c,d){this.u=a;this.b=c;this.F=d;this.ca=null}; Le.prototype.Na=function(){if(this.Ja){if(this.C){var a=this.C,b=this.id,c=this.D,d=this.j,f=this.Ja,e=[],g;for(g in f){var h=f[g];"number"==typeof h&&(f[g]=h={o:h});var k=h.o,m=h.a;if(void 0!==k){var n=e,k=[k>>>0,g],p=oa(n,k,a.vc);0>p&&n.splice(-(p+1),0,k)}m&&(h.a=m.replace(/''/g,'"'))}a.G.push({rd:b,w:c,Sc:d,Ja:f,tc:e})}delete this.Ja}return!0};Le.prototype.Ma=function(){return!0};
Ma(function(){for(var a=C(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new ye(d);$a(d,c)}});function ze(a){u.call(this,"Debugger",a,ze);this.Z=a.base||16;this.U=this.Da=this.J=0;this.Y=!1;this.B=-1;this.w=[];this.ca={}}w(ze);var Ae={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9}; function Me(a,b,c,d){if(d)a.oa("Unable to load system ROM (error "+d+": "+b+")");else{Za(a.rc,b,c);var f;if("["==c.charAt(0)||"{"==c.charAt(0))try{var e,g,h=eval("("+c+")");if(e=h.bytes)a.i=e;else if(e=h.words)for(a.i=Array(2*e.length),g=f=0;f<e.length;f++)a.i[g++]=e[f]&255,a.i[g++]=e[f]>>8&255;else if(e=h.data)for(a.i=Array(4*e.length),g=f=0;f<e.length;f++)a.i[g++]=e[f]&255,a.i[g++]=e[f]>>8&255,a.i[g++]=e[f]>>16&255,a.i[g++]=e[f]>>24&255;else a.i=h;a.Ja=h.symbols;if(!a.i.length){t("Empty ROM: "+
function Be(a,b,c,d){if(c)if(b){0>a.B&&a.w.length&&(a.B=0);if(0>a.B||b!=a.w[a.B])a.w.splice(0,0,b),a.B=0;a.B--}else a.Y?b="end":b=a.w[a.B+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");c=0;var f=null;d=d||";";for(var e=0;e<=b.length;e++){var g=b.charAt(e);if('"'==g||"'"==g)f?g==f&&(f=null):f=g;else if(g==d&&!f||!g)a.push(ma(b.substring(c,e))),c=e+1}}return a} b);return}if(1==a.i.length){t(a.i[0]);return}}catch(k){a.oa("ROM data error: "+k.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.i=Array(b.length),f=0;f<b.length;f++)a.i[f]=aa(b[f],16);Ne(a)}}
function Ce(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var f=a.pop(),e=a.pop();switch(d){case "*":d=e*f;break;case "/":if(!f)return!1;d=e/f;break;case "%":if(!f)return!1;d=e%f;break;case "+":d=e+f;break;case "-":d=e-f;break;case "<<":d=e<<f;break;case ">>":d=e>>f;break;case ">>>":d=e>>>f;break;case "<":d=e<f?1:0;break;case "<=":d=e<=f?1:0;break;case ">":d=e>f?1:0;break;case ">=":d=e>=f?1:0;break;case "==":d=e==f?1:0;break;case "!=":d=e!=f?1:0;break;case "&":d=e&f;break; function Ne(a){if(!rb(a))if(!a.B)D(a);else if(a.i&&a.F){a.j||(a.j=a.i.length);if(a.i.length!=a.j)sb(a,"ROM size ("+r(a.i.length,8,!0)+") does not match specified size ("+r(a.j,8,!0)+")");else{var b;b=a.D;if(Cb(a.F,b,a.j,a.G?1:mc)){var c;for(c=0;c<a.i.length;c++){var d=a.F,f=b+c;d.L[(f&d.j)>>>d.W].Cb(f&d.i,a.i[c]&255,f)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.A?b.push(a.A):null!=a.A&&a.A.length&&(b=a.A);for(c=0;c<b.length;c++){for(var e=a,d=b[c],f=e.F,g=e.j,h=[],k=e.D>>>f.W;0<g&&k<f.L.length;)h.push(f.L[k++]),
g-=f.za;f=e.F;e=e.j;g=0;for(d>>>=f.W;0<e&&d<f.L.length;){k=h[g++];if(!k)break;f.L[d++]=k;e-=f.za}}delete a.i}}D(a)}}Oa(function(){for(var a=C(document,"pdp11","rom"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Le(d);bb(d,c)}});function Oe(a){u.call(this,"RAM",a,Oe);this.A=a.addr;this.j=a.size;this.i=!1}w(Oe);l=Oe.prototype;l.Xa=function(a,b,c,d){this.F=b;this.b=c;this.C=d;D(this)};l.Na=function(a,b){b||this.reset();return!0};l.Ma=function(a){return a?this.save():!0};
l.reset=function(){!this.i&&this.j&&Cb(this.F,this.A,this.j,1)&&(this.i=!0);this.i||t("No RAM allocated")};l.save=function(){return null};l.restore=function(){return!0};Oa(function(){for(var a=C(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Oe(d);bb(d,c)}});function Pe(a){u.call(this,"Keyboard",a,Pe,65536);D(this)}w(Pe);Pe.prototype.ta=function(){return!1};Pe.prototype.Xa=function(a,b,c,d){this.i=a;this.b=c;this.C=d;this.fa=null};
Oa(function(){for(var a=C(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Pe(d);bb(d,c)}});function Qe(a){u.call(this,"Debugger",a,Qe);this.da=a.base||16;this.Y=this.Da=this.J=0;this.ca=!1;this.B=-1;this.A=[];this.ha={}}w(Qe);var Re={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};
function Se(a,b,c,d){if(c)if(b){0>a.B&&a.A.length&&(a.B=0);if(0>a.B||b!=a.A[a.B])a.A.splice(0,0,b),a.B=0;a.B--}else a.ca?b="end":b=a.A[a.B+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");c=0;var f=null;d=d||";";for(var e=0;e<=b.length;e++){var g=b.charAt(e);if('"'==g||"'"==g)f?g==f&&(f=null):f=g;else if(g==d&&!f||!g)a.push(na(b.substring(c,e))),c=e+1}}return a}
function Te(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var f=a.pop(),e=a.pop();switch(d){case "*":d=e*f;break;case "/":if(!f)return!1;d=e/f;break;case "%":if(!f)return!1;d=e%f;break;case "+":d=e+f;break;case "-":d=e-f;break;case "<<":d=e<<f;break;case ">>":d=e>>f;break;case ">>>":d=e>>>f;break;case "<":d=e<f?1:0;break;case "<=":d=e<=f?1:0;break;case ">":d=e>f?1:0;break;case ">=":d=e>=f?1:0;break;case "==":d=e==f?1:0;break;case "!=":d=e!=f?1:0;break;case "&":d=e&f;break;
case "^":d=e^f;break;case "|":d=e|f;break;case "&&":d=e&&f?1:0;break;case "||":d=e||f?1:0;break;default:return!1}a.push(d|0)}return!0} case "^":d=e^f;break;case "|":d=e|f;break;case "&&":d=e&&f?1:0;break;case "||":d=e||f?1:0;break;default:return!1}a.push(d|0)}return!0}
function De(a,b,c){var d;if(b){b=Ee(a,b);for(var f=0,e=!1,g=b,h=[],k=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);f<m.length;){var n=m[f++],p=n.length,n=ma(n);if(!n){e=!0;break}n=Fe(a,n,null,!1===c);if(void 0===n){e=!0;c=!1;break}h.push(n);if(f==m.length)break;var n=m[f++],q=n.length;k.length&&Ae[n]<Ae[k[k.length-1]]&&Ce(h,k,1);k.push(n);b=b.substr(p+q)}Ce(h,k)&&1==h.length||(e=!0);e?c&&a.g("error parsing '"+g+"' at character "+(g.length-b.length)):(d=h.pop(),c&&Ge(a,null, function Ue(a,b,c){var d;if(b){b=Ve(a,b);for(var f=0,e=!1,g=b,h=[],k=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);f<m.length;){var n=m[f++],p=n.length,n=na(n);if(!n){e=!0;break}n=We(a,n,null,!1===c);if(void 0===n){e=!0;c=!1;break}h.push(n);if(f==m.length)break;var n=m[f++],q=n.length;k.length&&Re[n]<Re[k[k.length-1]]&&Te(h,k,1);k.push(n);b=b.substr(p+q)}Te(h,k)&&1==h.length||(e=!0);e?c&&a.f("error parsing '"+g+"' at character "+(g.length-b.length)):(d=h.pop(),c&&Xe(a,null,
d))}return d}function Ee(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].indexOf("{"));){var d=De(a,c[1]);b=b.replace("{"+c[1]+"}",null!=d?r(d):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)b=b.replace("["+c[1]+"]","unimplemented");for(;c=b.match(/\$([a-z]+)/i);){d=null;switch(c[1].toLowerCase()){case "ops":d=a.U-a.Da}if(null==d)break;b=b.replace(c[0],d.toString())}return b} d))}return d}function Ve(a,b){for(var c;(c=b.match(/\{(.*?)}/))&&!(0<=c[1].indexOf("{"));){var d=Ue(a,c[1]);b=b.replace("{"+c[1]+"}",null!=d?r(d):"undefined")}for(;(c=b.match(/\[(.*?)]/))&&!(0<=c[1].indexOf("["));)b=b.replace("["+c[1]+"]","unimplemented");for(;c=b.match(/\$([a-z]+)/i);){d=null;switch(c[1].toLowerCase()){case "ops":d=a.Y-a.Da}if(null==d)break;b=b.replace(c[0],d.toString())}return b}
function Fe(a,b,c,d){var f;null!=b?(f=a.ca[b],null==f&&(f=ca(b,a.Z)),null!=f||d||a.g("invalid "+(c?c:"value")+": "+b)):d||a.g("missing "+(c||"value"));return f}function Ge(a,b,c){var d,f=!1;if(void 0!==c){f=!0;d=c;var e=0,g="";if(!e||4<e)e=4;for(var h=0;h<e;h++){g&&(g=","+g);var k=d&255,m=8,n="";m?32<m&&(m=32):m=32;if(null==k||isNaN(k))for(;0<m--;)n="?"+n;else for(;0<m--;)n=(k&1?"1":"0")+n,k>>=1;g=n+g;d>>=8}d=r(c,0,!0)+" "+c+". "+da(c,0,!0)+" "+("0b"+g)}a.g((null!=b?b+": ":"")+d);return f} function We(a,b,c,d){var f;null!=b?(f=a.ha[b],null==f&&(f=aa(b,a.da)),null!=f||d||a.f("invalid "+(c?c:"value")+": "+b)):d||a.f("missing "+(c||"value"));return f}function Xe(a,b,c){var d,f=!1;if(void 0!==c){f=!0;d=c;var e=0,g="";if(!e||4<e)e=4;for(var h=0;h<e;h++){g&&(g=","+g);var k=d&255,m=8,n="";m?32<m&&(m=32):m=32;if(null==k||isNaN(k))for(;0<m--;)n="?"+n;else for(;0<m--;)n=(k&1?"1":"0")+n,k>>=1;g=n+g;d>>=8}d=r(c,0,!0)+" "+c+". "+ba(c,0,!0)+" "+("0b"+g)}a.f((null!=b?b+": ":"")+d);return f}
function He(a,b){if(b)return Ge(a,b,a.ca[b]);var c=0;for(b in a.ca)Ge(a,b,a.ca[b]),c++;return 0<c}function T(a,b,c){switch(a.Z){case 8:return da(b,3*c);case 10:return b.toString();default:return r(b,2*c)}} function Ye(a,b){if(b)return Xe(a,b,a.ha[b]);var c=0;for(b in a.ha)Xe(a,b,a.ha[b]),c++;return 0<c}function X(a,b,c,d){switch(a.da){case 8:a=ba(b,3*c);break;case 10:a=b.toString();break;default:a=r(b,2*c)}d&&"0"==a.charAt(0)&&(a=a.replace(/^0+([0-9A-F]+)$/i,"$1"));return a}
function Ie(a){ze.call(this,a);this.P=V();this.Bb=V();this.W=V();this.G=[];this.f=this.S=this.D=[];Je(this);this.wa=0;Ke(this);this.Ia={};Le(this,a.messages);this.nb=a.commands;var b=this;window?void 0===window.pdp11&&(window.pdp11=function(a){return Pc(b,a)}):void 0===global.pdp11&&(global.pdp11=function(a){return Pc(b,a)})}w(Ie,ze); function Ze(a){Qe.call(this,a);this.R=Y();this.Eb=Y();this.ba=Y();this.G=[];this.j=this.U=this.D=[];$e(this);this.wa=0;af(this);this.Ia={};bf(this,a.messages);this.Ra=a.commands;var b=this;window?void 0===window.pdp11&&(window.pdp11=function(a){return Qc(b,a)}):void 0===global.pdp11&&(global.pdp11=function(a){return Qc(b,a)})}w(Ze,Qe);
var Me={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble",v:"print version","var":"assign variable"},Ne="NONE ADC ADCB ADD ASL ASLB ASR ASRB BCC BCS BEQ BGE BGT BHI BIC BICB BIS BISB BIT BITB BLE BLOS BLT BMI BNE BPL BPT BR BVC BVS CCC CLC CLCN CLCV CLCVN CLCVZ CLCZ CLCZN CLN CLR CLRB CLV CLVN CLVZ CLVZN CLZ CLZN CMP CMPB COM COMB DEC DECB INC INCB HALT JMP JSR MARK MFPD MFPI MFPS MOV MOVB MTPD MTPI MTPS NEG NEGB NOP RESET ROL ROLB ROR RORB RTI RTS SBC SBCB SCC SEC SECN SECV SECVN SECVZ SECZ SECZN SEN SEV SEVN SEVZ SEVZN SEZ SEZN SUB SWAB SXT TST TSTB WAIT MUL DIV ASH ASHC XOR SOB EMT TRAP SPL IOT RTT MFPT".split(" "), var cf={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble",v:"print version","var":"assign variable"},df="NONE ADC ADCB ADD ASL ASLB ASR ASRB BCC BCS BEQ BGE BGT BHI BIC BICB BIS BISB BIT BITB BLE BLOS BLT BMI BNE BPL BPT BR BVC BVS CCC CLC CLCN CLCV CLCVN CLCVZ CLCZ CLCZN CLN CLR CLRB CLV CLVN CLVZ CLVZN CLZ CLZN CMP CMPB COM COMB DEC DECB INC INCB HALT JMP JSR MARK MFPD MFPI MFPS MOV MOVB MTPD MTPI MTPS NEG NEGB NOP RESET ROL ROLB ROR RORB RTI RTS SBC SBCB SCC SEC SECN SECV SECVN SECVZ SECZ SECZN SEN SEV SEVN SEVZ SEVZN SEZ SEZN SUB SWAB SXT TST TSTB WAIT MUL DIV ASH ASHC XOR SOB EMT TRAP SPL IOT RTT MFPT".split(" "),
Oe={61440:{4096:[62,4032,63],8192:[47,4032,63],12288:[18,4032,63],16384:[14,4032,63],20480:[16,4032,63],24576:[3,4032,63],36864:[63,4032,63],40960:[48,4032,63],45056:[19,4032,63],49152:[15,4032,63],53248:[17,4032,63],57344:[94,4032,63]},65024:{2048:[57,448,63],28672:[100,63,448],29184:[101,63,448],29696:[102,63,448],30208:[103,63,448],30720:[104,448,63],32256:[105,448,8192]},65280:{256:[27,4096],512:[24,4096],768:[10,4096],1024:[11,4096],1280:[22,4096],1536:[12,4096],1792:[20,4096],32768:[25,4096], ef={61440:{4096:[62,4032,63],8192:[47,4032,63],12288:[18,4032,63],16384:[14,4032,63],20480:[16,4032,63],24576:[3,4032,63],36864:[63,4032,63],40960:[48,4032,63],45056:[19,4032,63],49152:[15,4032,63],53248:[17,4032,63],57344:[94,4032,63]},65024:{2048:[57,448,63],28672:[100,63,448],29184:[101,63,448],29696:[102,63,448],30208:[103,63,448],30720:[104,448,63],32256:[105,448,8192]},65280:{256:[27,4096],512:[24,4096],768:[10,4096],1024:[11,4096],1280:[22,4096],1536:[12,4096],1792:[20,4096],32768:[25,4096],
33024:[23,4096],33280:[13,4096],33536:[21,4096],33792:[28,4096],34048:[29,4096],34304:[8,4096],34560:[9,4096],34816:[106],35072:[107]},65472:{64:[56,63],192:[95,63],2560:[39,63],2624:[49,63],2688:[53,63],2752:[51,63],2816:[67,63],2880:[1,63],2944:[77,63],3008:[97,63],3072:[73,63],3136:[71,63],3200:[6,63],3264:[4,63],3328:[58,24576],3392:[60,63],3456:[65,63],3520:[96,63],35328:[40,63],35392:[50,63],35456:[54,63],35520:[52,63],35584:[68,63],35648:[2,63],35712:[78,63],35776:[98,63],35840:[74,63],35904:[72, 33024:[23,4096],33280:[13,4096],33536:[21,4096],33792:[28,4096],34048:[29,4096],34304:[8,4096],34560:[9,4096],34816:[106],35072:[107]},65472:{64:[56,63],192:[95,63],2560:[39,63],2624:[49,63],2688:[53,63],2752:[51,63],2816:[67,63],2880:[1,63],2944:[77,63],3008:[97,63],3072:[73,63],3136:[71,63],3200:[6,63],3264:[4,63],3328:[58,24576],3392:[60,63],3456:[65,63],3520:[96,63],35328:[40,63],35392:[50,63],35456:[54,63],35520:[52,63],35584:[68,63],35648:[2,63],35712:[78,63],35776:[98,63],35840:[74,63],35904:[72,
63],35968:[7,63],36032:[5,63],36096:[66,63],36160:[59,63],36224:[64,63],36288:[61,63]},65528:{128:[76,7],152:[108,12288]},65535:{0:[55],1:[99],2:[75],3:[26],4:[109],5:[70],6:[110],7:[111],160:[69],161:[31],162:[41],163:[33],164:[45],165:[36],166:[43],167:[35],168:[38],169:[32],170:[42],171:[34],172:[46],173:[37],174:[44],175:[30],176:[69],177:[80],178:[88],179:[82],180:[92],181:[85],182:[90],183:[84],184:[87],185:[81],186:[89],187:[83],188:[93],189:[86],190:[91],191:[79]}};l=Ie.prototype; 63],35968:[7,63],36032:[5,63],36096:[66,63],36160:[59,63],36224:[64,63],36288:[61,63]},65528:{128:[76,7],152:[108,12288]},65535:{0:[55],1:[99],2:[75],3:[26],4:[109],5:[70],6:[110],7:[111],160:[69],161:[31],162:[41],163:[33],164:[45],165:[36],166:[43],167:[35],168:[38],169:[32],170:[42],171:[34],172:[46],173:[37],174:[44],175:[30],176:[69],177:[80],178:[88],179:[82],180:[92],181:[85],182:[90],183:[84],184:[87],185:[81],186:[89],187:[83],188:[93],189:[86],190:[91],191:[79]}};l=Ze.prototype;
l.Va=function(a,b,c,d){this.C=b;this.b=c;this.u=a;(a=Mc(a,"messages"))&&Le(this,a);this.Hb=Oe;Pe(this,function(a){a:{var b=d.C.L,c=a[0],f=a=0,k=b.length;if(c){a=d.X(W(d,c));if(-1===a){d.g("invalid address: "+c);break a}f=a>>>d.C.T;k=1}d.g("blockid physical blockaddr used size type");d.g("-------- --------- ---------- ------ ------ ----");for(var c=-1,m=0;k--;){var n=b[f];n.type==c?m++||d.g("..."):(c=n.type,m=Db[c],n&&d.g(r(n.id,8)+" %"+r(f<<d.C.T,8)+" %%"+r(n.A,8)+" "+r(n.Ub,4, l.Xa=function(a,b,c,d){this.F=b;this.b=c;this.i=a;(a=zc(a,"messages"))&&bf(this,a);this.Kb=ef;ff(this,function(a){a:{var b=d.F.L,c=a[0],f=a=0,k=b.length;if(c){a=d.$(gf(d,c));if(-1===a){d.f("invalid address: "+c);break a}f=a>>>d.F.W;k=1}d.f("blockid physical blockaddr used size type");d.f("-------- --------- ---------- ------ ------ ----");for(var c=-1,m=0;k--;){var n=b[f];n.type==c?m++||d.f("..."):(c=n.type,m=Fb[c],n&&d.f(r(n.id,8)+" %"+r(f<<d.F.W,8)+" %%"+r(n.w,8)+" "+r(n.Xb,
!0)+" "+r(n.size,4,!0)+" "+m),c!=kc&&(c=-1),m=0);a+=d.C.Aa;f++}}});D(this)}; 4,!0)+" "+r(n.size,4,!0)+" "+m),c!=lc&&(c=-1),m=0);a+=d.F.za;f++}}});D(this)};
l.ta=function(a,b,c){var d=this;switch(b){case "debugInput":return this.va=this.I[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Pc(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.B<d.w.length-1&&(b=d.w[++d.B])):40==a.keyCode&&(0<d.B?b=d.w[--d.B]:(b="",d.B=-1)),null!=b){var f=b.length;c.value=b;c.setSelectionRange(f,f)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.I[b]=c,Ga(c,function(){if(d.va){var a=d.va.value; l.ta=function(a,b,c){var d=this;switch(b){case "debugInput":return this.va=this.I[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",Qc(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.B<d.A.length-1&&(b=d.A[++d.B])):40==a.keyCode&&(0<d.B?b=d.A[--d.B]:(b="",d.B=-1)),null!=b){var f=b.length;c.value=b;c.setSelectionRange(f,f)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.I[b]=c,Da(c,function(){if(d.va){var a=d.va.value;
d.va.value="";Pc(d,a,!0);return!0}return!1}),!0;case "step":return this.I[b]=c,Ga(c,function(a){var b=!1;ob(d,!0)||(nb(d,!0),b=d.xb(a?1:0),nb(d,!1));return b}),!0}return!1};l.Tb=function(){this.va&&this.va.focus()};l.X=function(a){a=a&&a.A;null==a&&(a=-1);return a};l.Jb=function(a,b){var c=255,d=this.X(a,!1,1);-1!==d&&(c=this.C,c=c.L[(d&c.C)>>>c.T].Nb(d&c.f,d),b&&Qe(a,b));return c};l.Fa=function(a,b){var c=65535,d=this.X(a,!1,2);-1!==d&&(c=Eb(this.C,d),b&&Qe(a,b));return c}; d.va.value="";Qc(d,a,!0);return!0}return!1}),!0;case "step":return this.I[b]=c,Da(c,function(a){var b=!1;qb(d,!0)||(pb(d,!0),b=d.Ab(a?1:0),pb(d,!1));return b}),!0}return!1};l.Wb=function(){this.va&&this.va.focus()};l.$=function(a){a=a&&a.w;null==a&&(a=-1);return a};l.rb=function(a,b){var c=255,d=this.$(a,!1,1);-1!==d&&(c=this.F,c=c.L[(d&c.j)>>>c.W].Pb(d&c.i,d),b&&hf(a,b));return c};l.Fa=function(a,b){var c=65535,d=this.$(a,!1,2);-1!==d&&(c=Gb(this.F,d),b&&hf(a,b));return c};
l.dc=function(a,b,c){var d=this.X(a,!0,1);if(-1!==d){var f=this.C;f.L[(d&f.C)>>>f.T].zb(d&f.f,b&255,d);c&&Qe(a,c);K(this.b,!0)}};l.nc=function(a,b,c){var d=this.X(a,!0,2);if(-1!==d){var f=this.C,e=d&f.f,g=(d&f.C)>>>f.T;e!=f.f?f.L[g].qc(e,b&65535,d):(f.L[g++].zb(e,b&255,d),f.L[g&f.u].zb(0,b>>8&255,d+1));c&&Qe(a,c);K(this.b,!0)}};function V(a){return{A:a,Ea:!1}}function Re(a){return[a.A,a.Ea]}function Se(a){return{A:a[0],Ea:a[1]}} l.Ub=function(a,b,c){var d=this.$(a,!0,1);if(-1!==d){var f=this.F;f.L[(d&f.j)>>>f.W].Cb(d&f.i,b&255,d);c&&hf(a,c);K(this.b,!0)}};l.zb=function(a,b,c){var d=this.$(a,!0,2);if(-1!==d){var f=this.F,e=d&f.i,g=(d&f.j)>>>f.W;e!=f.i?f.L[g].qc(e,b&65535,d):(f.L[g++].Cb(e,b&255,d),f.L[g&f.A].Cb(0,b>>8&255,d+1));c&&hf(a,c);K(this.b,!0)}};function Y(a){return{w:a,Ea:!1}}function jf(a){return[a.w,a.Ea]}function kf(a){return{w:a[0],Ea:a[1]}}
function W(a,b,c){var d;c=(c?a.P:a.Bb).A;if(void 0!==b){d=b=Ee(a,b);var f;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),c=0;c<a.G.length;c++){var e=a.G[c].Ja[d];if(void 0!==e){d=e.o;void 0!==d&&(f=V(d));break}}if(d=f)return d;c=De(a,b,void 0)}null!=c&&(d=V(c));return d}function Te(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.Ic=Be(a,b.Dc=c[2]))}function Qe(a,b){null!=a.A&&(a.A+=b||1)} function gf(a,b,c){var d;c=(c?a.R:a.Eb).w;if(void 0!==b){d=b=Ve(a,b);var f;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),c=0;c<a.G.length;c++){var e=a.G[c].Ja[d];if(void 0!==e){d=e.o;void 0!==d&&(f=Y(d));break}}if(d=f)return d;c=Ue(a,b,void 0)}null!=c&&(d=Y(c));return d}function lf(a,b,c){c&&(c=c.match(/(['"])(.*?)\1/))&&(b.Ic=Se(a,b.Dc=c[2]))}function hf(a,b){null!=a.w&&(a.w+=b||1)}
function Le(a,b){a.F=a;a.da=a.Jc=536870912;a.xa=null;a.za=[];b=Be(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in E){var d;a:if(d=void 0,Array.prototype.indexOf)d=b.indexOf(c,d);else{d=d||0;0>d&&(d+=b.length);0>d&&(d=0);for(var f=b.length;d<f;d++)if(d in b&&b[d]===c)break a;d=-1}0<=d&&(a.da|=E[c],a.g(c+" messages enabled"))}}function Pe(a,b){for(var c in E)if(64==E[c]){a.Ia[c]=b;break}} function bf(a,b){a.C=a;a.ia=a.Jc=536870912;a.xa=null;a.Ca=[];b=Se(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var c in E){var d;a:if(d=void 0,Array.prototype.indexOf)d=b.indexOf(c,d);else{d=d||0;0>d&&(d+=b.length);0>d&&(d=0);for(var f=b.length;d<f;d++)if(d in b&&b[d]===c)break a;d=-1}0<=d&&(a.ia|=E[c],a.f(c+" messages enabled"))}}function ff(a,b){for(var c in E)if(64==E[c]){a.Ia[c]=b;break}}
l.message=function(a,b){b&&(a+=" at "+T(this,V(this.b.i[7]).A));this.da&1073741824?this.za.push(a):this.xa&&a==this.xa||(this.xa=a,this.da&-2147483648&&(this.ja(),a+=" (cpu halted)"),this.g(a),this.b&&(a=this.b,a.J-=a.b,a.b=0,a.Z=0,K(a)))}; l.message=function(a,b){b&&(a+=" at "+X(this,Y(this.b.g[7]).w));this.ia&1073741824?this.Ca.push(a):this.xa&&a==this.xa||(this.xa=a,this.ia&-2147483648&&(this.ma(),a+=" (cpu halted)"),this.f(a),this.b&&(a=this.b,Xc(a),a.ca=0,K(a)))};
function Ke(a){var b;if(od(a)){if(!a.O||!a.O.length){a.O=Array(1E3);for(b=0;b<a.O.length;b++)a.O[b]=V();a.oa=0;a.g("instruction history buffer allocated")}if(!a.ka||!a.ka.length)for(a.ka=Array(256),b=0;b<a.ka.length;b++)a.ka[b]=[b,0]}else a.O&&a.O.length&&a.g("instruction history buffer freed"),a.oa=0,a.O=[],a.ka=[]}l.mb=function(a){if(!Ue(this))return!1;this.b.mb(a);return!0}; function af(a){var b;if(od(a)){if(!a.O||!a.O.length){a.O=Array(1E3);for(b=0;b<a.O.length;b++)a.O[b]=Y();a.ra=0;a.f("instruction history buffer allocated")}if(!a.qa||!a.qa.length)for(a.qa=Array(256),b=0;b<a.qa.length;b++)a.qa[b]=[b,0]}else a.O&&a.O.length&&a.f("instruction history buffer freed"),a.ra=0,a.O=[],a.qa=[]}l.ob=function(a){if(!mf(this))return!1;this.b.ob(a);return!0};
l.xb=function(a,b,c){if(!Ue(this))return!1;this.J=0;a||od(this)&&pd(this,this.b.i[7],0);try{var d=this.b.xb(a);0<d&&(this.J+=d,Uc(this.b,d,!0),Qc(this.b,d),this.U++)}catch(f){"number"!=typeof f&&(this.J=0,qb(this.b,f.stack||f.message))}!1!==c&&K(this.b);this.ya(b||!1);return 0<this.J};l.ja=function(a){this.b&&this.b.ja(a)};l.ya=function(a){void 0===a&&(a=!0);this.P=V(this.b.i[7]);a&&1!=this.aa?Ve(this):We(this)}; l.Ab=function(a,b,c){if(!mf(this))return!1;this.J=0;a||od(this)&&pd(this,this.b.g[7],0);try{var d=this.b.Ab(a);0<d&&(this.J+=d,Vc(this.b,d,!0),Rc(this.b,d),this.Y++)}catch(f){"number"!=typeof f&&(this.J=0,sb(this.b,f.stack||f.message))}!1!==c&&K(this.b);this.ya(b||!1);return 0<this.J};l.ma=function(a){this.b&&this.b.ma(a)};l.ya=function(a){void 0===a&&(a=!0);this.R=Y(this.b.g[7]);a&&1!=this.fa?nf(this):of(this)};
function Ue(a){var b;if(b=a.b&&pb(a.b))b=a.b,b.j.ba?b=!0:(b.g(b.toString()+" not powered"),b=!1);b&&!ob(a.b)?(a=a.b,a.j.error?(a.g(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.Ma=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.La=function(a,b){b&&this.g(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){Ke(this);this.U=this.Da=0;this.xa=null;this.J=0;this.P=V(this.b.i[7]);this.j.ea=!1;Xe(this);a||this.ya()}; function mf(a){var b;if(b=a.b&&rb(a.b))b=a.b,b.u.ga?b=!0:(b.f(b.toString()+" not powered"),b=!1);b&&!qb(a.b)?(a=a.b,a.u.error?(a.f(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.Na=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.Ma=function(a,b){b&&this.f(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){af(this);this.Y=this.Da=0;this.xa=null;this.J=0;this.R=Y(this.b.g[7]);this.u.ja=!1;pf(this);a||this.ya()};
l.save=function(){var a=new L(this);a.set(0,Re(this.P));a.set(1,Re(this.W));a.set(2,[this.w,this.Y,this.da]);a.set(3,this.G);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.P=Se(a[b++]),this.W=Se(a[b++]),this.w=a[b][0],"string"==typeof this.w&&(this.w=[this.w]),this.Y=a[b][1],this.da|=a[b][2]);a[3]&&(this.G=a[3]);return!0};l.start=function(a,b){this.aa||this.g("running");this.j.ea=!0;this.Wb=a;this.ic=b}; l.save=function(){var a=new L(this);a.set(0,jf(this.R));a.set(1,jf(this.ba));a.set(2,[this.A,this.ca,this.ia]);a.set(3,this.G);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.R=kf(a[b++]),this.ba=kf(a[b++]),this.A=a[b][0],"string"==typeof this.A&&(this.A=[this.A]),this.ca=a[b][1],this.ia|=a[b][2]);a[3]&&(this.G=a[3]);return!0};l.start=function(a,b){this.fa||this.f("running");this.u.ja=!0;this.ic=a;this.Mc=b};
l.stop=function(a,b){if(this.j.ea){this.j.ea=!1;this.J=b-this.ic;if(!this.aa){b="stopped";if(this.J){a-=this.Wb;var c=0<a?Math.round(1E3*this.J/a):0;b+=" (";od(this)&&(b+=this.U+" opcodes, ",this.Da-=this.U,this.U=0);b+=this.J+" cycles, "+a+" ms, "+c+" hz)"}else mb(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.g(b)}this.ya(!0);this.Tb();Xe(this,this.b.i[7])}};function od(a){return 1<a.f.length||!!a.wa} l.stop=function(a,b){if(this.u.ja){this.u.ja=!1;this.J=b-this.Mc;if(!this.fa){b="stopped";if(this.J){a-=this.ic;var c=0<a?Math.round(1E3*this.J/a):0;b+=" (";od(this)&&(b+=this.Y+" opcodes, ",this.Da-=this.Y,this.Y=0);b+=this.J+" cycles, "+a+" ms, "+c+" hz)"}else cb(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.f(b)}this.ya(!0);this.Wb();pf(this,this.b.g[7])}};function od(a){return 1<a.j.length||!!a.wa}
function pd(a,b,c){var d=a.b;if(0<c&&(a.wa&&!--a.wa||tc(a,b,1,a.f)))return!0;0<=c&&a.ka.length&&(a.U++,null!=Eb(a.C,b)&&(b=a.O[a.oa],b.A=d.i[7],b.Ea=!1,++a.oa==a.O.length&&(a.oa=0)));return!1}function Je(a){var b,c;a.f=["bp"];if(a.S)for(b=1;b<a.S.length;b++){c=a.S[b];var d=a.C;c=a.X(c);uc(d.L[c>>>d.T],!1)}a.S=["br"];if(a.D)for(b=1;b<a.D.length;b++)c=a.D[b],d=a.C,c=a.X(c),uc(d.L[c>>>d.T],!0);a.D=["bw"];a.Eb=0} function pd(a,b,c){var d=a.b;if(0<c&&(a.wa&&!--a.wa||uc(a,b,1,a.j)))return!0;0<=c&&a.qa.length&&(a.Y++,null!=Gb(a.F,b)&&(b=a.O[a.ra],b.w=d.g[7],b.Ea=!1,++a.ra==a.O.length&&(a.ra=0)));return!1}function $e(a){var b,c;a.j=["bp"];if(a.U)for(b=1;b<a.U.length;b++){c=a.U[b];var d=a.F;c=a.$(c);vc(d.L[c>>>d.W],!1)}a.U=["br"];if(a.D)for(b=1;b<a.D.length;b++)c=a.D[b],d=a.F,c=a.$(c),vc(d.L[c>>>d.W],!0);a.D=["bw"];a.Fb=0}
l.hb=function(a,b,c){var d=!0;c||Ye(this,a,b,!1,!0);if(a!=this.f){var f=this.X(b);if(-1===f)this.g("invalid address: "+T(this,b.A)),d=!1;else{var e=this.C;e.L[f>>>e.T].hb(f&e.f,a==this.D)}}d&&(a.push(b),c?b.Ea=!0:(Ze(this,a,a.length-1,"set"),Ke(this)));return d};function Ye(a,b,c,d,f){var e=!1;c=a.X(c);for(var g=1;g<b.length;g++){var h=b[g];if(c==a.X(h)&&(!d||h.Ea)){e=!0;h.Ea||f||Ze(a,b,g,"cleared");b.splice(g,1);b!=a.f&&(d=a.C,uc(d.L[c>>>d.T],b==a.D));h.Ea||Ke(a);break}}return e} l.jb=function(a,b,c){var d=!0;c||qf(this,a,b,!1,!0);if(a!=this.j){var f=this.$(b);if(-1===f)this.f("invalid address: "+X(this,b.w)),d=!1;else{var e=this.F;e.L[f>>>e.W].jb(f&e.i,a==this.D)}}d&&(a.push(b),c?b.Ea=!0:(rf(this,a,a.length-1,"set"),af(this)));return d};function qf(a,b,c,d,f){var e=!1;c=a.$(c);for(var g=1;g<b.length;g++){var h=b[g];if(c==a.$(h)&&(!d||h.Ea)){e=!0;h.Ea||f||rf(a,b,g,"cleared");b.splice(g,1);b!=a.j&&(d=a.F,vc(d.L[c>>>d.W],b==a.D));h.Ea||af(a);break}}return e}
function $e(a,b){for(var c=1;c<b.length;c++)Ze(a,b,c);return b.length-1}function Ze(a,b,c,d){c=b[c];a.g(b[0]+" "+T(a,c.A)+(d?" "+d:c.Dc?' "'+c.Dc+'"':""))}function Xe(a,b){if(void 0!==b)tc(a,b,1,a.f,!0),a.aa=0;else for(b=1;b<a.f.length;b++){var c=a.f[b];if(c.Ea){if(!Ye(a,a.f,c,!0))break;b=0}}} function sf(a,b){for(var c=1;c<b.length;c++)rf(a,b,c);return b.length-1}function rf(a,b,c,d){c=b[c];a.f(b[0]+" "+X(a,c.w)+(d?" "+d:c.Dc?' "'+c.Dc+'"':""))}function pf(a,b){if(void 0!==b)uc(a,b,1,a.j,!0),a.fa=0;else for(b=1;b<a.j.length;b++){var c=a.j[b];if(c.Ea){if(!qf(a,a.j,c,!0))break;b=0}}}
function tc(a,b,c,d,f){var e=!1;if(!a.Eb++)for(var g=1;!e&&g<d.length;g++){var h=d[g];if(!f||h.Ea)for(var k=a.X(h),m=0;m<c;m++)if(b+m==k){var n,e=!0;h.Ea&&(Ye(a,d,h,!0),f=!0);if(n=h.Ic){for(var e=!1,p=0;p<n.length;p++)if(!af(a,n[p],!0)){if(n[p].indexOf("if")){e=!0;break}for(var q=p+1;q<n.length&&n[q].indexOf("else");q++)p++;if(q==n.length){e=!0;break}}a.b.j.ea||(e=!0)}if(e){f||Ze(a,d,g,"hit");break}}}a.Eb--;return e} function uc(a,b,c,d,f){var e=!1;if(!a.Fb++)for(var g=1;!e&&g<d.length;g++){var h=d[g];if(!f||h.Ea)for(var k=a.$(h),m=0;m<c;m++)if(b+m==k){var n,e=!0;h.Ea&&(qf(a,d,h,!0),f=!0);if(n=h.Ic){for(var e=!1,p=0;p<n.length;p++)if(!tf(a,n[p],!0)){if(n[p].indexOf("if")){e=!0;break}for(var q=p+1;q<n.length&&n[q].indexOf("else");q++)p++;if(q==n.length){e=!0;break}}a.b.u.ja||(e=!0)}if(e){f||rf(a,d,g,"hit");break}}}a.Fb--;return e}
function bf(a,b,c,d){var f=V(b.A),e=a.Fa(b,2),g,h;for(h in a.Hb)if(g=a.Hb[h][e&h])break;g||(g=[0]);h="";for(var k=Ne[g[0]],m=g.length-1,n=1;n<=m;n++){var p=g[n];if(void 0!==p){var q;q=a;var z=p,p=b,x="",A=z&61440;if(4096==A)p=p.A+((e&255)<<24>>23)&65535,x=T(q,p);else if(8192==A)p=p.A-((e&63)<<1)&65535,x=T(q,p);else if(12288==A)x=T(q,e&7,1);else if(24576==A)x=T(q,e&63,1);else if(A=e&z,z&4032&&(A>>=6,z>>=6),z&63)switch(z=A&7,A&56){case 0:x=X(z);break;case 8:x="@"+X(z);break;case 16:7>z?x="("+X(z)+")+": function uf(a,b,c,d){var f=Y(b.w),e=a.Fa(b,2),g,h;for(h in a.Kb)if(g=a.Kb[h][e&h])break;g||(g=[0]);h="";for(var k=df[g[0]],m=g.length-1,n=1;n<=m;n++){var p=g[n];if(void 0!==p){var q;q=a;var z=p,p=b,x="",A=z&61440;if(4096==A)p=p.w+((e&255)<<24>>23)&65535,x=X(q,p);else if(8192==A)p=p.w-((e&63)<<1)&65535,x=X(q,p);else if(12288==A)x=X(q,e&7,1);else if(24576==A)x=X(q,e&63,1);else if(A=e&z,z&4032&&(A>>=6,z>>=6),z&63)switch(z=A&7,A&56){case 0:x=vf(z);break;case 8:x="@"+vf(z);break;case 16:7>z?x="("+vf(z)+
(A=q.Fa(p,2),x="#"+T(q,A));break;case 24:7>z?x="@("+X(z)+")+":(A=q.Fa(p,2),x="@#"+T(q,A));break;case 32:x="-("+X(z)+")";break;case 40:x="@-("+X(z)+")";break;case 48:A=q.Fa(p,2);x=T(q,A)+"("+X(z)+")";7==z&&(x=[x,T(q,A+p.A&65535)]);break;case 56:A=q.Fa(p,2),x="@"+T(q,A)+"("+X(z)+")",7==z&&(x=[x,T(q,A+p.A&65535)])}q=x;if(!q||!q.length){h="INVALID";break}"string"!=typeof q&&(c=q[1],d=null,q=q[0]);0<h.length&&(h+=",");h+=q||"???"}}e="";g=T(a,f.A)+":";if(-1!==f.A&&-1!==b.A){do if(e+=" "+T(a,a.Fa(f,2)), ")+":(A=q.Fa(p,2),x="#"+X(q,A,0,!0));break;case 24:7>z?x="@("+vf(z)+")+":(A=q.Fa(p,2),x="@#"+X(q,A,0,!0));break;case 32:x="-("+vf(z)+")";break;case 40:x="@-("+vf(z)+")";break;case 48:A=q.Fa(p,2);x=X(q,A,0,!0)+"("+vf(z)+")";7==z&&(x=[x,X(q,A+p.w&65535)]);break;case 56:A=q.Fa(p,2),x="@"+X(q,A)+"("+vf(z)+")",7==z&&(x=[x,X(q,A+p.w&65535)])}q=x;if(!q||!q.length){h="INVALID";break}"string"!=typeof q&&(c=q[1],d=null,q=q[0]);0<h.length&&(h+=",");h+=q||"???"}}e="";g=X(a,f.w)+":";if(-1!==f.w&&-1!==b.w){do if(e+=
null==f.A)break;while(f.A!=b.A)}g+=ka(e,24);g+=ka(k,5);h&&(g+=" "+h);c&&(g=ka(g,60)+";"+c,g=a.b.j.pb?g+("cycles="+Rc(a.b).toString()+" cs="+r(a.b.Kb)):g+(null!=d?"="+d.toString():""));return g}function cf(a,b){switch(b){case "N":a=ad(a.b);break;case "Z":a=$c(a.b);break;case "V":a=Zc(a.b);break;case "C":a=a.b.ga&65536?1:0;break;default:a=0}return b.charAt(0)+(a?"1":"0")+" "}function X(a){return 6>a?"R"+a:6==a?"SP":"PC"} " "+X(a,a.Fa(f,2)),null==f.w)break;while(f.w!=b.w)}g+=ma(e,24);g+=ma(k,5);h&&(g+=" "+h);c&&(g=ma(g,60)+";"+c,g=a.b.u.qb?g+("cycles="+Sc(a.b).toString()+" cs="+r(a.b.Mb)):g+(null!=d?"="+d.toString():""));return g}function wf(a,b){switch(b){case "N":a=a.b.La();break;case "Z":a=bd(a.b);break;case "V":a=ad(a.b);break;case "C":a=M(a.b);break;default:a=0}return b.charAt(0)+(a?"1":"0")+" "}function vf(a){return 6>a?"R"+a:6==a?"SP":"PC"}
function df(a,b){var c="",d=a.b;8>b?(c=X(b),c+="="+T(a,d.i[b])):13>b?c="A"+(b-8)+"="+T(a,d.$a[b-8]):16<=b&&20>b?c="S"+(b-16)+"="+T(a,d.Oa[b-16]):20==b&&(c="PS="+T(a,Wb(d)));c&&(c+=" ");return c}function ef(a){var b,c="";for(b=0;6>b;b++)c+=df(a,b);c=c+"\n"+(df(a,6)+df(a,7)+df(a,20));return c+=cf(a,"T")+cf(a,"N")+cf(a,"Z")+cf(a,"V")+cf(a,"C")}l.vc=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}; function xf(a,b){var c="",d=a.b;8>b?(c=vf(b),c+="="+X(a,d.g[b])):13>b?c="A"+(b-8)+"="+X(a,d.bb[b-8]):16<=b&&20>b?c="S"+(b-16)+"="+X(a,d.Pa[b-16]):20==b&&(c="PS="+X(a,Yb(d)));c&&(c+=" ");return c}function yf(a){var b,c="";for(b=0;6>b;b++)c+=xf(a,b);c=c+"\n"+(xf(a,6)+xf(a,7)+xf(a,20));return c+=wf(a,"T")+wf(a,"N")+wf(a,"Z")+wf(a,"V")+wf(a,"C")}l.vc=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function ff(a,b,c){var d=[],f=a.X(b)>>>0;for(b=0;b<a.G.length;b++){var e=a.G[b],g=e.A>>>0,h=e.Rc;if(f>=g&&f<g+h){f=na(e.sc,[f-g],a.vc);0<=f?gf(a,b,f,d):c&&(f=~f,gf(a,b,f-1,d),gf(a,b,f,d));break}}return d}function gf(a,b,c,d){var f={},e=a.G[b].sc,g=0,h=null;0<=c&&c<e.length&&(g=e[c][0],h=e[c][1]);h&&(f=a.G[b].Ja[h],h="."==h.charAt(0)?null:f.l||h);d.push(h);d.push(g);d.push(f.a);d.push(f.c)} function zf(a,b,c){var d=[],f=a.$(b)>>>0;for(b=0;b<a.G.length;b++){var e=a.G[b],g=e.w>>>0,h=e.Sc;if(f>=g&&f<g+h){f=oa(e.tc,[f-g],a.vc);0<=f?Af(a,b,f,d):c&&(f=~f,Af(a,b,f-1,d),Af(a,b,f,d));break}}return d}function Af(a,b,c,d){var f={},e=a.G[b].tc,g=0,h=null;0<=c&&c<e.length&&(g=e[c][0],h=e[c][1]);h&&(f=a.G[b].Ja[h],h="."==h.charAt(0)?null:f.l||h);d.push(h);d.push(g);d.push(f.a);d.push(f.c)}
function hf(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return He(a)||a.g("no variables"),!0;if(!c[2])return He(a,c[1]);if(!c[3])return delete a.ca[c[1]],!0;b=De(a,c[3]);return void 0!==b?(a.ca[c[1]]=b,!0):!1}a.g("invalid assignment:"+b);return!1} function Bf(a,b){var c=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(c){if(!c[1])return Ye(a)||a.f("no variables"),!0;if(!c[2])return Ye(a,c[1]);if(!c[3])return delete a.ha[c[1]],!0;b=Ue(a,c[3]);return void 0!==b?(a.ha[c[1]]=b,!0):!1}a.f("invalid assignment:"+b);return!1}
function jf(a,b,c){var d=null;if(b=W(a,b,!0)){a.X(b);var f=ff(a,b,!0);if(f.length){var e,g;f[0]&&(g="",(e=b.A-f[1])&&(g=" + "+r(e,4,!0)),e=f[0]+" ("+T(a,f[1])+")"+g,c&&a.g(e),d=e);4<f.length&&f[4]&&(g="",(e=f[5]-b.A)&&(g=" - "+r(e,4,!0)),e=f[4]+" ("+T(a,f[5])+")"+g,c&&a.g(e),d||(d=e))}else c&&a.g("no symbols")}return d} function Cf(a,b,c){var d=null;if(b=gf(a,b,!0)){a.$(b);var f=zf(a,b,!0);if(f.length){var e,g;f[0]&&(g="",(e=b.w-f[1])&&(g=" + "+r(e,4,!0)),e=f[0]+" ("+X(a,f[1])+")"+g,c&&a.f(e),d=e);4<f.length&&f[4]&&(g="",(e=f[5]-b.w)&&(g=" - "+r(e,4,!0)),e=f[4]+" ("+X(a,f[5])+")"+g,c&&a.f(e),d||(d=e))}else c&&a.f("no symbols")}return d}
function Ve(a,b){var c;if(b&&"?"==b[1])a.g("register commands:"),a.g("\tr\tdump registers"),a.g("\trx [#]\tset flag or register x to [#]");else{var d=a.b;null==c&&(c=!0);if(b&&1<b.length){var f=b[1],e=f.indexOf("=");if(0<e)b=f.substr(e+1),f=f.substr(0,e);else if(2<b.length)b=b[2];else{a.g("missing value for "+b[1]);return}e=De(a,b);if(void 0===e)return;b=f.toUpperCase();switch(b){case "SP":case "R6":d.i[6]=e&65535;break;case "PC":case "R7":d.i[7]=e&65535;a.P=V(d.i[7]);break;case "N":d.pa=e?32768: function nf(a,b){var c;if(b&&"?"==b[1])a.f("register commands:"),a.f("\tr\tdump registers"),a.f("\trx [#]\tset flag or register x to [#]");else{var d=a.b;null==c&&(c=!0);if(b&&1<b.length){var f=b[1],e=f.indexOf("=");if(0<e)b=f.substr(e+1),f=f.substr(0,e);else if(2<b.length)b=b[2];else{a.f("missing value for "+b[1]);return}e=Ue(a,b);if(void 0===e)return;b=f.toUpperCase();switch(b){case "SP":case "R6":d.g[6]=e&65535;break;case "PC":case "R7":d.g[7]=e&65535;a.R=Y(d.g[7]);break;case "N":d.V=e?32768:0;
0;break;case "Z":d.ra=e?0:1;break;case "V":d.qa=e?32768:0;break;case "C":d.ga=e?65536:0;break;default:if("R"==b.charAt(0)&&(b=+b.charAt(1),0<=b&&6>b)){d.i[b]=e&65535;break}a.g("unknown register: "+f);return}K(d);a.g("updated registers:")}a.g(ef(a));c&&(a.P=V(d.i[7]),We(a,T(a,a.P.A)))}}function kf(a,b){b=ma(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.g(c[2]):De(a,b,!0)} break;case "Z":d.X=e?0:1;break;case "V":d.T=e?32768:0;break;case "C":d.S=e?65536:0;break;default:if("R"==b.charAt(0)&&(b=+b.charAt(1),0<=b&&6>b)){d.g[b]=e&65535;break}a.f("unknown register: "+f);return}K(d);a.f("updated registers:")}a.f(yf(a));c&&(a.R=Y(d.g[7]),of(a,X(a,a.R.w)))}}function Df(a,b){b=na(b);var c=b.match(/^(['"])(.*?)\1$/);c?a.f(c[2]):Ue(a,b,!0)}
function lf(a,b,c){var d="t"!=b;c=Fe(a,c,null,!0)||1;var f=1==c?0:1;"tc"==b&&(f=c,c=1);Aa(c,function(){return nb(a,!0)&&a.xb(f,d,!1)},function(){K(a.b);nb(a,!1)})} function Ef(a,b,c){var d="t"!=b;c=We(a,c,null,!0)||1;var f=1==c?0:1;"tc"==b&&(f=c,c=1);Ca(c,function(){return pb(a,!0)&&a.Ab(f,d,!1)},function(){K(a.b);pb(a,!1)})}
function We(a,b,c,d){if(b=W(a,b,!0)){void 0===d&&(d=1);var f=256;if(void 0!==c){d=W(a,c,!0);if(!d||d.A<b.A)return;f=d.A-b.A;if(256<f){a.g("range too large");return}d=-1}c=0;for(var e;0<f&&d--;){e=ob(a,!1)||a.aa?a.J:null;var g=null!=e?"cycles":null,h=ff(a,b),k=b.A;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.g(m)}h[3]&&(g=h[3],e=null);e=bf(a,b,g,e);a.g(e);a.P=b;f-=b.A-k;c++}}} function of(a,b,c,d){if(b=gf(a,b,!0)){void 0===d&&(d=1);var f=256;if(void 0!==c){d=gf(a,c,!0);if(!d||d.w<b.w)return;f=d.w-b.w;if(256<f){a.f("range too large");return}d=-1}c=0;for(var e;0<f&&d--;){e=qb(a,!1)||a.fa?a.J:null;var g=null!=e?"cycles":null,h=zf(a,b),k=b.w;if(h[0]&&d&&(!c&&d||0>h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.f(m)}h[3]&&(g=h[3],e=null);e=uf(a,b,g,e);a.f(e);a.R=b;f-=b.w-k;c++}}}
function af(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.g(">> "+b):(a.Y&&(a.g("ended assemble at "+T(a,a.W.A)),a.P=a.W,a.Y=!1),b="");var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.xa=null;if(pb(a)&&0<b.length){a.Y&&(b="a "+T(a,a.W.A)+" "+b);var e=b.replace(/ +/g," ").split(" ");if(e&&e.length)for(var g=e[0],h=g.charAt(0),k=1;k<g.length;k++){var m=g.charAt(k);if("?"==h||"r"==h||"a">m||"z"<m){e[0]=g.substr(k);e.unshift(g.substr(0,k));break}}switch(e[0].charAt(0)){case "a":var n=W(a,e[1],!0);if(n)if(a.W= function tf(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.f(">> "+b):(a.ca&&(a.f("ended assemble at "+X(a,a.ba.w)),a.R=a.ba,a.ca=!1),b="");var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.xa=null;if(rb(a)&&0<b.length){a.ca&&(b="a "+X(a,a.ba.w)+" "+b);var e=b.replace(/ +/g," ").split(" ");if(e&&e.length)for(var g=e[0],h=g.charAt(0),k=1;k<g.length;k++){var m=g.charAt(k);if("?"==h||"r"==h||"a">m||"z"<m){e[0]=g.substr(k);e.unshift(g.substr(0,k));break}}switch(e[0].charAt(0)){case "a":var n=gf(a,e[1],!0);
n,void 0===e[2])a.g("begin assemble at "+T(a,n.A)),a.Y=!0,K(a.b);else{var p;a.g("not supported yet");p=[];if(p.length){for(var q=0;q<p.length;q++)a.dc(n,p[q],1);a.g(bf(a,a.W))}}break;case "b":a:{var z=e[0],x=e[1],A=b;if("?"==x)a.g("breakpoint commands:"),a.g("\tbp [a]\tset exec breakpoint at addr [a]"),a.g("\tbr [a]\tset read breakpoint at addr [a]"),a.g("\tbw [a]\tset write breakpoint at addr [a]"),a.g("\tbc [a]\tclear breakpoint at addr [a]"),a.g("\tbl\tlist all breakpoints"),a.g("\tbn [n]\tbreak after [n] instruction(s)"); if(n)if(a.ba=n,void 0===e[2])a.f("begin assemble at "+X(a,n.w)),a.ca=!0,K(a.b);else{var p;a.f("not supported yet");p=[];if(p.length){for(var q=0;q<p.length;q++)a.Ub(n,p[q],1);a.f(uf(a,a.ba))}}break;case "b":a:{var z=e[0],x=e[1],A=b;if("?"==x)a.f("breakpoint commands:"),a.f("\tbp [a]\tset exec breakpoint at addr [a]"),a.f("\tbr [a]\tset read breakpoint at addr [a]"),a.f("\tbw [a]\tset write breakpoint at addr [a]"),a.f("\tbc [a]\tclear breakpoint at addr [a]"),a.f("\tbl\tlist all breakpoints"),a.f("\tbn [n]\tbreak after [n] instruction(s)");
else{var pa=z.charAt(1);if("l"==pa){var vc;vc=0+$e(a,a.f);vc+=$e(a,a.S);(vc+=$e(a,a.D))||a.g("no breakpoints")}else if("n"==pa)a.wa=Fe(a,x),a.g("break after "+a.wa+" instruction(s)");else if(void 0===x)a.g("missing breakpoint address");else{var M=V();if("*"!=x&&(M=W(a,x,!0),!M))break a;"c"==pa?null==M.A?(Je(a),a.g("all breakpoints cleared")):Ye(a,a.f,M)||Ye(a,a.S,M)||Ye(a,a.D,M)||a.g("breakpoint missing: "+T(a,M.A)):null!=M.A&&(Te(a,M,A),"p"==pa?a.hb(a.f,M):"r"==pa?a.hb(a.S,M):"w"==pa?a.hb(a.D,M): else{var ta=z.charAt(1);if("l"==ta){var Bc;Bc=0+sf(a,a.j);Bc+=sf(a,a.U);(Bc+=sf(a,a.D))||a.f("no breakpoints")}else if("n"==ta)a.wa=We(a,x),a.f("break after "+a.wa+" instruction(s)");else if(void 0===x)a.f("missing breakpoint address");else{var P=Y();if("*"!=x&&(P=gf(a,x,!0),!P))break a;"c"==ta?null==P.w?($e(a),a.f("all breakpoints cleared")):qf(a,a.j,P)||qf(a,a.U,P)||qf(a,a.D,P)||a.f("breakpoint missing: "+X(a,P.w)):null!=P.w&&(lf(a,P,A),"p"==ta?a.jb(a.j,P):"r"==ta?a.jb(a.U,P):"w"==ta?a.jb(a.D,P):
a.g("unknown breakpoint command: "+pa))}}}break;case "c":a.ib&&(a.ib.value="");break;case "d":a:{var Ba,Ca=e[0],Y=e[1],qa=e[2],Ef=e[3];if("?"==Y){var Da="";for(Ba in E)a.Ia[Ba]&&(Da&&(Da+=","),Da+=Ba);Da+=",state,symbols";a.g("dump memory commands:");a.g("\tdb [a] [#] dump # bytes at address a");a.g("\tdw [a] [#] dump # words at address a");a.g("\tdd [a] [#] dump # dwords at address a");a.g("\tdh [#] [#] dump # instructions from history");Da.length&&a.g("dump extension commands:\n\t"+ a.f("unknown breakpoint command: "+ta))}}}break;case "c":a.kb&&(a.kb.value="");break;case "d":a:{var Ea,Fa=e[0],ca=e[1],ua=e[2],Xf=e[3];if("?"==ca){var Ga="";for(Ea in E)a.Ia[Ea]&&(Ga&&(Ga+=","),Ga+=Ea);Ga+=",state,symbols";a.f("dump memory commands:");a.f("\tdb [a] [#] dump # bytes at address a");a.f("\tdw [a] [#] dump # words at address a");a.f("\tdd [a] [#] dump # dwords at address a");a.f("\tdh [#] [#] dump # instructions from history");Ga.length&&a.f("dump extension commands:\n\t"+
Da)}else if("state"==Y){var Rd=mf(a.u,!0);"console"==qa?console.log(Rd):(a.ib&&(a.ib.value=""),a.g(Rd))}else if("symbols"==Y)for(var wc=0;wc<a.G.length;wc++){var xc=a.G[wc],Ea;for(Ea in xc.Ja)if("."!=Ea.charAt(0)){var Sd=xc.Ja[Ea].o;if(void 0!==Sd){var Td=xc.Ja[Ea].l;Td&&(Ea=Td);a.g(T(a,Sd)+" "+Ea)}}}else{if("d"==Ca){for(Ba in E)if(e[1]==Ba){var Ud=a.Ia[Ba];Ud?(e.shift(),e.shift(),Ud(e)):a.g("no dump registered for "+Y);break a}Y||(Ca=a.Qc||"db")}else a.Qc=Ca;if("dh"==Ca){var Vd=Y,Wd=qa,Xd="",Yd= Ga)}else if("state"==ca){var Vd=Ff(a.i,!0);"console"==ua?console.log(Vd):(a.kb&&(a.kb.value=""),a.f(Vd))}else if("symbols"==ca)for(var Cc=0;Cc<a.G.length;Cc++){var Dc=a.G[Cc],Ha;for(Ha in Dc.Ja)if("."!=Ha.charAt(0)){var Wd=Dc.Ja[Ha].o;if(void 0!==Wd){var Xd=Dc.Ja[Ha].l;Xd&&(Ha=Xd);a.f(X(a,Wd)+" "+Ha)}}}else{if("d"==Fa){for(Ea in E)if(e[1]==Ea){var Yd=a.Ia[Ea];Yd?(e.shift(),e.shift(),Yd(e)):a.f("no dump registered for "+ca);break a}ca||(Fa=a.Pc||"db")}else a.Pc=Fa;if("dh"==Fa){var Zd=ca,$d=ua,ae="",
0,U=a.oa,Z=a.O;if(Z.length){var Q=+Vd||a.Gb,ab=+Wd||10;isNaN(Q)?Q=ab:Xd="more ";Q>Z.length&&(a.g("note: only "+Z.length+" available"),Q=Z.length);U-=Q;0>U&&(null==Z[Z.length-1].A?(Q=U+Q,U=0):U+=Z.length);var yc=[];"call"==Wd&&(ab=1E5,yc=["CALL"]);for(void 0!==Vd&&a.g(Q+" instructions earlier:");0<ab&&U!=a.oa;){var Zd=Z[U++];if(null==Zd.A)break;var bb=V(Zd.A),Ff=Q--,$d=bf(a,bb,"history",Ff);(!yc.length||0<=$d.indexOf(yc[0]))&&a.g($d);bb.gc&&(U+=bb.gc,ab-=bb.gc,Q-=bb.gc);U>=Z.length&&(U=0);a.Gb=Q;Yd++; be=0,Z=a.ra,da=a.O;if(da.length){var T=+Zd||a.Ib,db=+$d||10;isNaN(T)?T=db:ae="more ";T>da.length&&(a.f("note: only "+da.length+" available"),T=da.length);Z-=T;0>Z&&(null==da[da.length-1].w?(T=Z+T,Z=0):Z+=da.length);var Ec=[];"call"==$d&&(db=1E5,Ec=["CALL"]);for(void 0!==Zd&&a.f(T+" instructions earlier:");0<db&&Z!=a.ra;){var ce=da[Z++];if(null==ce.w)break;var eb=Y(ce.w),Yf=T--,de=uf(a,eb,"history",Yf);(!Ec.length||0<=de.indexOf(Ec[0]))&&a.f(de);eb.gc&&(Z+=eb.gc,db-=eb.gc,T-=eb.gc);Z>=da.length&&(Z=
ab--}}Yd||(a.g("no "+Xd+"history available"),a.Gb=void 0)}else{var Ib=W(a,Y);if(Ib){var Jb=0;qa&&("l"==qa.charAt(0)&&(qa=qa.substr(1)||Ef),Jb=Fe(a,qa)>>>0,65536<Jb&&(Jb=65536));for(var cb="",Fa="dd"==Ca?4:"dw"==Ca?2:1,Kb=Fa*Jb||128,Gf=Kb+15>>4||1;Gf--&&0<Kb;){var db=0,zc=0,eb,Ac="",ae="",Y=T(a,Ib.A);for(eb=4==Fa?16:a.Z;0<eb&&0<Kb;eb--){var Lb=a.Jb(Ib,1),db=db|Lb<<(zc++<<3);zc==Fa&&(Ac+=8==a.Z?da(db,3*Fa):r(db,2*Fa),Ac+=1==Fa?9==eb?"-":" ":" ",db=zc=0);ae+=32<=Lb&&128>Lb?String.fromCharCode(Lb):"."; 0);a.Ib=T;be++;db--}}be||(a.f("no "+ae+"history available"),a.Ib=void 0)}else{var Lb=gf(a,ca);if(Lb){var Mb=0;ua&&("l"==ua.charAt(0)&&(ua=ua.substr(1)||Xf),Mb=We(a,ua)>>>0,65536<Mb&&(Mb=65536));for(var fb="",Ia="dd"==Fa?4:"dw"==Fa?2:1,Nb=Ia*Mb||128,Zf=Nb+15>>4||1;Zf--&&0<Nb;){var gb=0,Fc=0,hb,Gc="",ee="",ca=X(a,Lb.w);for(hb=4==Ia?16:a.da;0<hb&&0<Nb;hb--){var Ob=a.rb(Lb,1),gb=gb|Ob<<(Fc++<<3);Fc==Ia&&(Gc+=8==a.da?ba(gb,3*Ia):r(gb,2*Ia),Gc+=1==Ia?9==hb?"-":" ":" ",gb=Fc=0);ee+=32<=Ob&&128>Ob?String.fromCharCode(Ob):
Kb--}cb&&(cb+="\n");cb+=Y+" "+Ac+(0==eb?" "+ae:"")}cb&&a.g(cb);a.Bb=Ib}}}}break;case "e":if("else"==e[0])break;var Mb=1,be=255,ce=a.Jb,de=a.dc;"ew"==e[0]&&(Mb=2,be=65535,ce=a.Fa,de=a.nc);var ee=Mb<<1,fe=e[1];if(null==fe)a.g("edit memory commands:"),a.g("\teb [a] [...] edit bytes at address a"),a.g("\tew [a] [...] edit words at address a");else{var Nb=W(a,fe);if(Nb)for(var Ob=2;Ob<e.length;Ob++){var fb=De(a,e[Ob]);if(void 0===fb){a.g("unrecognized value: "+e[Ob]);break}fb&~be&&a.g("warning: "+r(fb)+ ".";Nb--}fb&&(fb+="\n");fb+=ca+" "+Gc+(0==hb?" "+ee:"")}fb&&a.f(fb);a.Eb=Lb}}}}break;case "e":if("else"==e[0])break;var Pb=1,fe=255,ge=a.rb,he=a.Ub;"ew"==e[0]&&(Pb=2,fe=65535,ge=a.Fa,he=a.zb);var ie=Pb<<1,je=e[1];if(null==je)a.f("edit memory commands:"),a.f("\teb [a] [...] edit bytes at address a"),a.f("\tew [a] [...] edit words at address a");else{var Qb=gf(a,je);if(Qb)for(var Rb=2;Rb<e.length;Rb++){var ib=Ue(a,e[Rb]);if(void 0===ib){a.f("unrecognized value: "+e[Rb]);break}ib&~fe&&a.f("warning: "+
" exceeds "+Mb+"-byte value");var Hf=ce.call(a,Nb);a.g("changing "+T(a,Nb.A)+" from "+r(Hf,ee,!0)+" to "+r(fb,ee,!0));de.call(a,Nb,fb,Mb)}}break;case "g":a:{var ge=e[1],If=b;if(void 0!==ge){var Bc=W(a,ge,!0);if(!Bc)break a;Te(a,Bc,If);a.hb(a.f,Bc,!0)}a.mb(!0)||c||a.g("cpu busy or unavailable, run command ignored")}break;case "h":a:{var Cc;if(a.j.ea)Cc="halting",a.ja();else{if(ob(a,!0))break a;Cc="already halted"}c||a.g(Cc)}break;case "i":if("if"==e[0]){var Dc;var gb=b.substr(2),gb=ma(gb);De(a,gb)? r(ib)+" exceeds "+Pb+"-byte value");var $f=ge.call(a,Qb);a.f("changing "+X(a,Qb.w)+" from "+r($f,ie,!0)+" to "+r(ib,ie,!0));he.call(a,Qb,ib,Pb)}}break;case "g":a:{var ke=e[1],ag=b;if(void 0!==ke){var Hc=gf(a,ke,!0);if(!Hc)break a;lf(a,Hc,ag);a.jb(a.j,Hc,!0)}a.ob(!0)||c||a.f("cpu busy or unavailable, run command ignored")}break;case "h":a:{var Ic;if(a.u.ja)Ic="halting",a.ma();else{if(qb(a,!0))break a;Ic="already halted"}c||a.f(Ic)}break;case "i":if("if"==e[0]){var Jc;var jb=b.substr(2),jb=na(jb);Ue(a,
(c||a.g("true: "+gb),Dc=!0):(c||a.g("false: "+gb),Dc=!1);Dc||(d=!1)}break;case "k":var Jf=e[0];if("?"==e[1])a.g("stack trace commands:"),a.g("\tk\tshow frame addresses"),a.g("\tks\tshow symbol information");else{var Ec=0,he=V(),hb=V(a.b.i[6]);for(a.g("stack trace for "+T(a,hb.A));10>Ec;){for(var ra=null,Kf=256;65536>hb.A>>>0;){he.A=a.Fa(hb,2);if(null==hb.A||!Kf--)break;for(var Lf=a,Pb=he,ie=null,ib=Pb.A,je=ib,Fc=1;6>=Fc&&ib;Fc++){if(2<Fc){Pb.A=ib;var Qb=bf(Lf,Pb);if(0<=Qb.indexOf("JSR")){var ke=Qb.indexOf(" "); jb)?(c||a.f("true: "+jb),Jc=!0):(c||a.f("false: "+jb),Jc=!1);Jc||(d=!1)}break;case "k":var bg=e[0];if("?"==e[1])a.f("stack trace commands:"),a.f("\tk\tshow frame addresses"),a.f("\tks\tshow symbol information");else{var Kc=0,le=Y(),kb=Y(a.b.g[6]);for(a.f("stack trace for "+X(a,kb.w));10>Kc;){for(var va=null,cg=256;65536>kb.w>>>0;){le.w=a.Fa(kb,2);if(null==kb.w||!cg--)break;for(var dg=a,Sb=le,me=null,lb=Sb.w,ne=lb,Lc=1;6>=Lc&&lb;Lc++){if(2<Lc){Sb.w=lb;var Tb=uf(dg,Sb);if(0<=Tb.indexOf("JSR")){var oe=
if(ib+(Qb.indexOf(" ",ke+1)-ke-1)/2==je){ie=Qb;break}}}ib--}Pb.A=je;if(ra=ie)break}if(!ra||null==ra)break;var le=null;if("ks"==Jf){var me=ra.match(/[0-9A-F]+$/);me&&(le=jf(a,me[0]))}ra=ka(ra,50)+" ;"+(le||"stack="+T(a,hb.A));a.g(ra);Ec++}Ec||a.g("no return addresses found")}break;case "l":"ln"==e[0]&&jf(a,e[1],!0);break;case "m":a:{var aa,ba=null,B=e[1];"?"==B&&(B=void 0);if(void 0!==B){var la=0;if("all"==B)la=1878917119,B=null;else if("on"==B)ba=!0,B=null;else if("off"==B)ba=!1,B=null;else{"keys"== Tb.indexOf(" ");if(lb+(Tb.indexOf(" ",oe+1)-oe-1)/2==ne){me=Tb;break}}}lb--}Sb.w=ne;if(va=me)break}if(!va||null==va)break;var pe=null;if("ks"==bg){var qe=va.match(/[0-9A-F]+$/);qe&&(pe=Cf(a,qe[0]))}va=ma(va,50)+" ;"+(pe||"stack="+X(a,kb.w));a.f(va);Kc++}Kc||a.f("no return addresses found")}break;case "l":"ln"==e[0]&&Cf(a,e[1],!0);break;case "m":a:{var ea,fa=null,B=e[1];"?"==B&&(B=void 0);if(void 0!==B){var qa=0;if("all"==B)qa=1878917119,B=null;else if("on"==B)fa=!0,B=null;else if("off"==B)fa=!1,
B&&(B="key");"kbd"==B&&(B="keyboard");for(aa in E)if(B==aa){la=E[aa];ba=!!(a.da&la);break}if(!la){a.g("unknown message category: "+B);break a}}if(la)if("on"==e[2])a.da|=la,ba=!0;else if("off"==e[2]&&(a.da&=~la,ba=!1,1073741824==la)){for(var Gc=0;Gc<a.za.length;Gc++)a.g(a.za[Gc]);a.za=[]}}var Mf=0,jb="";for(aa in E)if(!B||B==aa){var Nf=!!(a.da&E[aa]);if(null===ba||ba==Nf)jb&&(jb+=","),++Mf%10||(jb+="\n\t"),"key"==aa&&(aa="keys"),jb+=aa}void 0===B&&a.g("message commands:\n\tm [category] [on|off]\tturn categories on/off"); B=null;else{"keys"==B&&(B="key");"kbd"==B&&(B="keyboard");for(ea in E)if(B==ea){qa=E[ea];fa=!!(a.ia&qa);break}if(!qa){a.f("unknown message category: "+B);break a}}if(qa)if("on"==e[2])a.ia|=qa,fa=!0;else if("off"==e[2]&&(a.ia&=~qa,fa=!1,1073741824==qa)){for(var Mc=0;Mc<a.Ca.length;Mc++)a.f(a.Ca[Mc]);a.Ca=[]}}var eg=0,mb="";for(ea in E)if(!B||B==ea){var fg=!!(a.ia&E[ea]);if(null===fa||fa==fg)mb&&(mb+=","),++eg%10||(mb+="\n\t"),"key"==ea&&(ea="keys"),mb+=ea}void 0===B&&a.f("message commands:\n\tm [category] [on|off]\tturn categories on/off");
a.g((null!==ba?ba?"messages on: ":"messages off: ":"message categories:\n\t")+(jb||"none"));Ke(a)}break;case "p":if("print"==e[0]){kf(a,b.substr(5));break}var Of="pr"==e[0]?1:0;if(a.aa)a.g("step in progress");else{var ne=V(a.b.i[7]);a.Jb(ne);a.aa?(a.hb(a.f,ne,!0),a.mb()||(a.u&&a.u.Tb(),a.aa=0)):lf(a,Of?"tr":"t")}break;case "r":if("reset"==b){a.u&&a.u.reset();break}Ve(a,e);break;case "s":a:switch(e[1]){case "base":if(e[2]){var kb=+e[2];if(8==kb||10==kb||16==kb)a.Z=kb;else{a.g("invalid base: "+kb); a.f((null!==fa?fa?"messages on: ":"messages off: ":"message categories:\n\t")+(mb||"none"));af(a)}break;case "p":if("print"==e[0]){Df(a,b.substr(5));break}var gg="pr"==e[0]?1:0;if(a.fa)a.f("step in progress");else{var re=Y(a.b.g[7]);a.rb(re);a.fa?(a.jb(a.j,re,!0),a.ob()||(a.i&&a.i.Wb(),a.fa=0)):Ef(a,gg?"tr":"t")}break;case "r":if("reset"==b){a.i&&a.i.reset();break}nf(a,e);break;case "s":a:switch(e[1]){case "base":if(e[2]){var nb=+e[2];if(8==nb||10==nb||16==nb)a.da=nb;else{a.f("invalid base: "+nb);
break}}a.g("default base: "+a.Z);break;case "cs":var lb;void 0!==e[3]&&(lb=+e[3]);switch(e[2]){case "int":a.b.rb=lb;break;case "start":a.b.Lb=lb;break;case "stop":a.b.sb=lb;break;default:a.g("unknown cs option");break a}void 0!==lb&&Oc(a.b);a.g("checksums "+(a.b.j.pb?"enabled":"disabled"));break;case "sp":void 0!==e[2]&&(Tc(a.b,+e[2])||a.g("warning: using 1x multiplier, previous target not reached"));a.g("target speed: "+(a.b.kb.toFixed(2)+"Mhz")+" ("+a.b.Ya+"x)");break;case "?":a.g("debugger options:"); break}}a.f("default base: "+a.da);break;case "cs":var ob;void 0!==e[3]&&(ob=+e[3]);switch(e[2]){case "int":a.b.tb=ob;break;case "start":a.b.Nb=ob;break;case "stop":a.b.ub=ob;break;default:a.f("unknown cs option");break a}void 0!==ob&&Pc(a.b);a.f("checksums "+(a.b.u.qb?"enabled":"disabled"));break;case "sp":void 0!==e[2]&&(Uc(a.b,+e[2])||a.f("warning: using 1x multiplier, previous target not reached"));a.f("target speed: "+(a.b.mb.toFixed(2)+"Mhz")+" ("+a.b.$a+"x)");break;case "?":a.f("debugger options:");
a.g("\tbase #\t\tset default base to #");a.g("\tcs int #\tset checksum cycle interval to #");a.g("\tcs start #\tset checksum cycle start count to #");a.g("\tcs stop #\tset checksum cycle stop count to #");a.g("\tsp #\t\tset speed multiplier to #");break;default:e[1]&&a.g("unknown option: "+e[1])}break;case "t":lf(a,e[0],e[1]);break;case "u":We(a,e[1],e[2],8);break;case "v":if("var"==e[0]){hf(a,b.substr(3))||(d=!1);break}a.g("PDP11js version 1.30.0 ("+a.b.Uc+",RELEASE"+(rb?",TYPEDARRAYS":",LONGARRAYS")+ a.f("\tbase #\t\tset default base to #");a.f("\tcs int #\tset checksum cycle interval to #");a.f("\tcs start #\tset checksum cycle start count to #");a.f("\tcs stop #\tset checksum cycle stop count to #");a.f("\tsp #\t\tset speed multiplier to #");break;default:e[1]&&a.f("unknown option: "+e[1])}break;case "t":Ef(a,e[0],e[1]);break;case "u":of(a,e[1],e[2],8);break;case "v":if("var"==e[0]){Bf(a,b.substr(3))||(d=!1);break}a.f("PDP11js version 1.30.0 ("+a.b.Vc+",RELEASE"+(tb?",TYPEDARRAYS":",LONGARRAYS")+
")");a.g(window?window.navigator.userAgent:"");break;case "?":if(e[1]){kf(a,b.substr(1));break}var Hc="commands:",Ic;for(Ic in Me)Hc+="\n"+ka(Ic,9)+Me[Ic];od(a)||(Hc+="\nnote: history disabled if no exec breakpoints");a.g(Hc);break;default:a.g("unknown command: "+b),d=!1}}}catch(oe){a.g("debugger error: "+(oe.stack||oe.message)),d=!1}return d}function Pc(a,b,c){b=Be(a,b,c);for(var d in b)if(!af(a,b[+d]))return!1;return!0} ")");a.f(window?window.navigator.userAgent:"");break;case "?":if(e[1]){Df(a,b.substr(1));break}var Nc="commands:",Oc;for(Oc in cf)Nc+="\n"+ma(Oc,9)+cf[Oc];od(a)||(Nc+="\nnote: history disabled if no exec breakpoints");a.f(Nc);break;default:a.f("unknown command: "+b),d=!1}}}catch(se){a.f("debugger error: "+(se.stack||se.message)),d=!1}return d}function Qc(a,b,c){b=Se(a,b,c);for(var d in b)if(!tf(a,b[+d]))return!1;return!0}
Ma(function(){for(var a=C(document,"pdp11","debugger"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ie(d);$a(d,c)}}); Oa(function(){for(var a=C(document,"pdp11","debugger"),b=0;b<a.length;b++){var c=a[b],d=y(c),d=new Ze(d);bb(d,c)}});
function nf(a,b,c){u.call(this,"Computer",a,nf,67108864);this.j.ba=!1;of(this,b);this.S=Mc(this,"autoPower",a);this.w=0;this.aa=a.busWidth||a.buswidth;this.f=pf;this.O=null;this.G=this.Y=!1;this.url=Mc(this,"url")||"";(Math.random()+.1).toString(36);this.u=qf(this);if(this.b=Za("CPU",this.id)){this.F=Za("Debugger",this.id);this.C=new ub({id:this.tc+".bus",busWidth:this.aa},this.b,this.F);var d,f=Ya(this.id);if((this.B=Za("Panel",this.id))&&this.B.ib)for(b=0;b<f.length;b++)d=f[b],d.ma=this.B.ma,d.g= function Gf(a,b,c){u.call(this,"Computer",a,Gf,67108864);this.u.ga=!1;Hf(this,b);this.U=zc(this,"autoPower",a);this.A=0;this.fa=a.busWidth||a.buswidth;this.i=If;this.O=null;this.G=this.ca=!1;this.url=zc(this,"url")||"";(Math.random()+.1).toString(36);this.j=Jf(this);if(this.b=ab("CPU",this.id)){this.C=ab("Debugger",this.id);this.F=new wb({id:this.rc+".bus",busWidth:this.fa},this.b,this.C);var d,f=$a(this.id);if((this.B=ab("Panel",this.id))&&this.B.kb)for(b=0;b<f.length;b++)d=f[b],d.oa=this.B.oa,d.f=
this.B.g,d.ib=this.B.ib;this.g("PDP11js v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.g("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<f.length;b++)d=f[b],d.Va&&d.Va(this,this.C,this.b,this.F);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.J=d:this.f=parseInt(d,10));var e;if(a=Mc(this,"state")||(e=!0,a.state))b=this.U=a,e||(this.G=!0,this.f=pf),this.f&& this.B.f,d.kb=this.B.kb;this.f("PDP11js v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.f("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<f.length;b++)d=f[b],d.Xa&&d.Xa(this,this.F,this.b,this.C);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.J=d:this.i=parseInt(d,10));var e;if(a=zc(this,"state")||(e=!0,a.state))b=this.Y=a,e||(this.G=!0,this.i=If),this.i&&
(this.P=new L(this,"1.30.0"),rf(this.P)?b=null:delete this.P);!b&&this.f&&(b=sf(this))&&(this.G=!0);if(b){var g=this;ta(b,null,!0,function(a,b,c){c?(g.J=null,g.G=!1,g.ma("Unable to load machine state from server (error "+c+(b?": "+ma(b):"")+")")):(g.O=b,g.Y=!0);D(g)})}else D(this);this.I.power||(this.S=!0);!c&&this.S&&tf(this,this.Mb)}else t("Unable to find CPU component")}w(nf);var pf=0; (this.R=new L(this,"1.30.0"),Kf(this.R)?b=null:delete this.R);!b&&this.i&&(b=Lf(this))&&(this.G=!0);if(b){var g=this;sa(b,null,!0,function(a,b,c){c?(g.J=null,g.G=!1,g.oa("Unable to load machine state from server (error "+c+(b?": "+na(b):"")+")")):(g.O=b,g.ca=!0);D(g)})}else D(this);this.I.power||(this.U=!0);!c&&this.U&&Mf(this,this.Ob)}else t("Unable to find CPU component")}w(Gf);var If=0;
function of(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){t(d.message+" ("+c+")")}}a.Z=b}function Mc(a,b,c){var d=b.toLowerCase(),d=Ra[b]||Ra[d];void 0===d&&a.Z&&(d=a.Z[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function tf(a,b,c){for(var d=Ya(a.id),f=0;f<=d.length;f++){var e=f<d.length?d[f]:a;if(!pb(e)){pb(e,function(){tf(a,b,c)});return}}b.call(a,c)} function Hf(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){t(d.message+" ("+c+")")}}a.da=b}function zc(a,b,c){var d=b.toLowerCase(),d=Ta[b]||Ta[d];void 0===d&&a.da&&(d=a.da[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function Mf(a,b,c){for(var d=$a(a.id),f=0;f<=d.length;f++){var e=f<d.length?d[f]:a;if(!rb(e)){rb(e,function(){Mf(a,b,c)});return}}b.call(a,c)}
function uf(a,b){var c=new L(a,"1.30.0","validate");if(rf(c)&&vf(c)){var d=c.get("timestamp"),f=b?b.get("timestamp"):"unknown";d!=f&&(a.ma("Machine state may be out-of-date\n("+d+" vs. "+f+")\nCheck your browser's local storage limits"),b||c.clear())}}l=nf.prototype; function Nf(a,b){var c=new L(a,"1.30.0","validate");if(Kf(c)&&Of(c)){var d=c.get("timestamp"),f=b?b.get("timestamp"):"unknown";d!=f&&(a.oa("Machine state may be out-of-date\n("+d+" vs. "+f+")\nCheck your browser's local storage limits"),b||c.clear())}}l=Gf.prototype;
l.Mb=function(a){void 0===a&&(a=this.f||(this.O?1:pf));if(!this.w){this.w++;var b=!1,c=!1;this.W=!1;var d=this.P||new L(this,"1.30.0");if(-1==a)b=!0;else if(a>pf){if(rf(d,this.O)){this.D=new L(this,"1.30.0","failsafe");rf(this.D)&&(wf(this,d),a=2,xf(this.D));this.D.set("timestamp",sa());yf(this.D);var f=this.f&&!this.G;if(1==a||ua("Click OK to restore the previous PDP11js machine state, or CANCEL to reset the machine.")){if(c=vf(d)){var e=d.get("code"),g=d.get("data");e&&("ok"==e?rf(d,g):("error"== l.Ob=function(a){void 0===a&&(a=this.i||(this.O?1:If));if(!this.A){this.A++;var b=!1,c=!1;this.ba=!1;var d=this.R||new L(this,"1.30.0");if(-1==a)b=!0;else if(a>If){if(Kf(d,this.O)){this.D=new L(this,"1.30.0","failsafe");Kf(this.D)&&(Pf(this,d),a=2,Qf(this.D));this.D.set("timestamp",ra());Rf(this.D);var f=this.i&&!this.G;if(1==a||wa("Click OK to restore the previous PDP11js machine state, or CANCEL to reset the machine.")){if(c=Of(d)){var e=d.get("code"),g=d.get("data");e&&("ok"==e?Kf(d,g):("error"==
e&&"no machine state"!=g?(this.ma("Error: "+g),"unable to verify user"==g&&(ya("user",""),this.u=null)):this.g(e+": "+g),xf(d),rf(d)?(c=vf(d),f=!0):c=!1))}f&&uf(this,c?d:null)}else 2==a&&d.clear()}else uf(this);delete this.O;delete this.P}f=Ya(this.id);for(e=0;e<f.length;e++)g=f[e],g!==this&&g!=this.b&&(c=zf(this,g,d,b,c));b=[d,a,c];-1!=a?tf(this,this.xc,b):this.xc(b)}}; e&&"no machine state"!=g?(this.oa("Error: "+g),"unable to verify user"==g&&(Aa("user",""),this.j=null)):this.f(e+": "+g),Qf(d),Kf(d)?(c=Of(d),f=!0):c=!1))}f&&Nf(this,c?d:null)}else 2==a&&d.clear()}else Nf(this);delete this.O;delete this.R}f=$a(this.id);for(e=0;e<f.length;e++)g=f[e],g!==this&&g!=this.b&&(c=Sf(this,g,d,b,c));b=[d,a,c];-1!=a?Mf(this,this.xc,b):this.xc(b)}};
function zf(a,b,c,d,f){if(!b.j.ba){b.j.ba=!0;if(b.Ma){var e=null;f&&((e=c.get(b.id))||(e=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof e&&(e=null);!b.Ma(e,d)&&e&&(t("Unable to restore state for "+b.type),a.U&&!a.Y?(c.clear(),a.f=pf,window&&window.location.reload()):a.W=!0,b.Ma(null),f=!1)}if(!d&&b.rc)for(a=b.rc.split("|"),c=0;c<a.length;c++)b.status(a[c])}return f} function Sf(a,b,c,d,f){if(!b.u.ga){b.u.ga=!0;if(b.Na){var e=null;f&&((e=c.get(b.id))||(e=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof e&&(e=null);!b.Na(e,d)&&e&&(t("Unable to restore state for "+b.type),a.Y&&!a.ca?(c.clear(),a.i=If,window&&window.location.reload()):a.ba=!0,b.Na(null),f=!1)}if(!d&&b.sc)for(a=b.sc.split("|"),c=0;c<a.length;c++)b.status(a[c])}return f}
l.xc=function(a){var b=a[0],c=0>a[1];a=a[2];this.ca=!0;this.j.ba=!0;var d=this.I.power;d&&(d.textContent="Shutdown");this.b&&(zf(this,this.b,b,c,a),this.b.Db());this.W&&(wf(this,b),b.clear());!c&&this.D&&(this.D.clear(),delete this.D);this.w=0}; l.xc=function(a){var b=a[0],c=0>a[1];a=a[2];this.ha=!0;this.u.ga=!0;var d=this.I.power;d&&(d.textContent="Shutdown");this.b&&(Sf(this,this.b,b,c,a),this.b.Hb());this.ba&&(Pf(this,b),b.clear());!c&&this.D&&(this.D.clear(),delete this.D);this.A=0};
function wf(a,b){if(ua("There may be a problem with your PDP11js machine.\n\nTo help us diagnose it, click OK to send this PDP11js machine state to http://www.pcjs.org.")){var c=a.u||"";b=b.toString();var d={app:"PDP11js",ver:"1.30.0"};d.url=a.url;d.user=c;d.type="bug";d.data=b;ta("http://www.pcjs.org/api/v1/report",d,!0)}} function Pf(a,b){if(wa("There may be a problem with your PDP11js machine.\n\nTo help us diagnose it, click OK to send this PDP11js machine state to http://www.pcjs.org.")){var c=a.j||"";b=b.toString();var d={app:"PDP11js",ver:"1.30.0"};d.url=a.url;d.user=c;d.type="bug";d.data=b;sa("http://www.pcjs.org/api/v1/report",d,!0)}}
function mf(a,b,c){var d,f="none";if(a.w)return null;a.w--;var e=new L(a,"1.30.0"),g=new L(a,"1.30.0","validate"),h=sa();g.set("timestamp",h);e.set("timestamp",h);e.set("version","1.30.0");e.set("url",window?window.location.href:null);e.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.La&&(c&&a.b.ja(),d=a.b.La(b,c),"object"===typeof d&&e.set(a.b.id,d),c&&(a.b.j.ba=!1,!1===d&&(f=null)));for(var h=Ya(a.id),k=0;k<h.length;k++){var m=h[k];m.j.ba&&(m.La&&(d=m.La(b,c),"object"===typeof d&&e.set(m.id, function Ff(a,b,c){var d,f="none";if(a.A)return null;a.A--;var e=new L(a,"1.30.0"),g=new L(a,"1.30.0","validate"),h=ra();g.set("timestamp",h);e.set("timestamp",h);e.set("version","1.30.0");e.set("url",window?window.location.href:null);e.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.Ma&&(c&&a.b.ma(),d=a.b.Ma(b,c),"object"===typeof d&&e.set(a.b.id,d),c&&(a.b.u.ga=!1,!1===d&&(f=null)));for(var h=$a(a.id),k=0;k<h.length;k++){var m=h[k];m.u.ga&&(m.Ma&&(d=m.Ma(b,c),"object"===typeof d&&e.set(m.id,
d)),c&&(m.j.ba=!1,!1===d&&(f=null)))}f&&(c?(h=d=!1,b?(a.u&&Af(a,a.u,e.toString()),yf(g)&&yf(e)||(f=null,d=h=!0)):a.f&&(d=!0,h=3==a.f),d&&e.clear(h)):f=e.toString());c&&(a.j.ba=!1,b=a.I.power)&&(b.textContent="Power");a.w=0;return f} d)),c&&(m.u.ga=!1,!1===d&&(f=null)))}f&&(c?(h=d=!1,b?(a.j&&Tf(a,a.j,e.toString()),Rf(g)&&Rf(e)||(f=null,d=h=!0)):a.i&&(d=!0,h=3==a.i),d&&e.clear(h)):f=e.toString());c&&(a.u.ga=!1,b=a.I.power)&&(b.textContent="Power");a.A=0;return f}
l.reset=function(){this.C&&this.C.reset&&(this.F&&mb(this,0)&&this.F.message("Resetting "+this.C.type,void 0),this.C.reset());for(var a=Ya(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.C&&c.reset&&(this.F&&mb(this,0)&&this.F.message("Resetting "+c.type,void 0),c.reset())}};l.start=function(a,b){for(var c=Ya(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.start&&f.start(a,b)}}; l.reset=function(){this.F&&this.F.reset&&(this.C&&cb(this,0)&&this.C.message("Resetting "+this.F.type,void 0),this.F.reset());for(var a=$a(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.F&&c.reset&&(this.C&&cb(this,0)&&this.C.message("Resetting "+c.type,void 0),c.reset())}};l.start=function(a,b){for(var c=$a(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.start&&f.start(a,b)}};
l.stop=function(a,b){for(var c=Ya(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.stop&&f.stop(a,b)}}; l.stop=function(a,b){for(var c=$a(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.stop&&f.stop(a,b)}};
l.ta=function(a,b,c){var d=this;switch(b){case "power":return this.I[b]=c,c.onclick=function(){d.w||(d.j.ba?mf(d,!1,!0):tf(d,d.Mb))},!0;case "reset":return this.I[b]=c,c.onclick=function(){if(d.j.ba&&!d.w)if(d.f&&!d.J){var a=ua("Click OK to save changes to this PDP11js machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");mf(d,a,!0);!a&&d.U?window&&window.location.reload():d.Mb(pf)}else d.reset(),d.b&&d.b.Db()},!0;case "save":if(ga())c.parentNode.removeChild(c);else return this.I[b]= l.ta=function(a,b,c){var d=this;switch(b){case "power":return this.I[b]=c,c.onclick=function(){d.A||(d.u.ga?Ff(d,!1,!0):Mf(d,d.Ob))},!0;case "reset":return this.I[b]=c,c.onclick=function(){if(d.u.ga&&!d.A)if(d.i&&!d.J){var a=wa("Click OK to save changes to this PDP11js machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Ff(d,a,!0);!a&&d.Y?window&&window.location.reload():d.Ob(If)}else d.reset(),d.b&&d.b.Hb()},!0;case "save":if(ia())c.parentNode.removeChild(c);else return this.I[b]=
c,c.onclick=function(){var a=qf(d,!0);if(a){var b=!!(d.f&&!d.J||d.U),c=mf(d,b);b?Af(d,a,c):d.ma("Resume disabled, machine state not saved")}},!0}return!1}; c,c.onclick=function(){var a=Jf(d,!0);if(a){var b=!!(d.i&&!d.J||d.Y),c=Ff(d,b);b?Tf(d,a,c):d.oa("Resume disabled, machine state not saved")}},!0}return!1};
function qf(a,b){var c=a.u;c||((c=xa("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Bf(a,c))||a.ma("The user ID is invalid.")):b&&a.ma("Browser local storage is not available"));return c} function Jf(a,b){var c=a.j;c||((c=za("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Uf(a,c))||a.oa("The user ID is invalid.")):b&&a.oa("Browser local storage is not available"));return c}
function Bf(a,b){a.u=null;b=ta(ha()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(ya("user",b.data),a.u=b.data)}catch(d){t(d.message+" ("+c+")")}return a.u}function sf(a){var b=null;a.u&&(b=ha()+"/api/v1/user?req=load&user="+a.u+"&state="+Cf(a,"1.30.0"));return b} function Uf(a,b){a.j=null;b=sa(ja()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Aa("user",b.data),a.j=b.data)}catch(d){t(d.message+" ("+c+")")}return a.j}function Lf(a){var b=null;a.j&&(b=ja()+"/api/v1/user?req=load&user="+a.j+"&state="+Vf(a,"1.30.0"));return b}
function Af(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Cf(a,"1.30.0");d.data=c;b=ta(ha()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var f=d.indexOf("\n");0<f&&(d=d.substr(0,f));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.ma("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.ma(c),ya("user",""),a.u=null)}}l.Tb=function(){}; function Tf(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Vf(a,"1.30.0");d.data=c;b=sa(ja()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var f=d.indexOf("\n");0<f&&(d=d.substr(0,f));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.oa("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.oa(c),Aa("user",""),a.j=null)}}l.Wb=function(){};
l.ya=function(a){this.b&&this.b.ya(a);this.B&&this.B.ya(a)};Ma(function(){for(var a=C(document,"pdp11-machine"),b=0;b<a.length;b++)for(var c=a[b],d=y(c),c=C(c,"pdp11","computer"),f=0;f<c.length;f++){var e=c[f],g=y(e),g=new nf(g,d,!0);$a(g,e);g.S&&tf(g,g.Mb)}});Ha.show.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=Za("Computer",c.id))&&c.ca&&!c.j.ba&&c.Mb(-1)}}); l.ya=function(a){this.b&&this.b.ya(a);this.B&&this.B.ya(a)};Oa(function(){for(var a=C(document,"pdp11-machine"),b=0;b<a.length;b++)for(var c=a[b],d=y(c),c=C(c,"pdp11","computer"),f=0;f<c.length;f++){var e=c[f],g=y(e),g=new Gf(g,d,!0);bb(g,e);g.U&&Mf(g,g.Ob)}});Ja.show.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=ab("Computer",c.id))&&c.ha&&!c.u.ga&&c.Ob(-1)}});
Ha.exit.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=Za("Computer",c.id))&&c.j.ba&&mf(c,!(!c.f||c.J),!0)}});function L(a,b,c){this.id=a.id;this.key=Cf(a,b,c);this.F=a.F;xf(this,a.Nc)}function Cf(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a} Ja.exit.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=y(a[b]);(c=ab("Computer",c.id))&&c.u.ga&&Ff(c,!(!c.i||c.J),!0)}});function L(a,b,c){this.id=a.id;this.key=Vf(a,b,c);this.C=a.C;Qf(this,a.Oc)}function Vf(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
L.prototype={constructor:L,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){xf(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(f){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c, L.prototype={constructor:L,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){Qf(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(f){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,
1);c=0}}};function xf(a,b){a[a.id]={};b&&a.set("parms",b);a.b=!1}function yf(a){var b=!0;if(wa()){var c=JSON.stringify(a[a.id]);ya(a.key,c)||(t("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function vf(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){t(c.message||c),b=!1}return b}function rf(a,b){return b?(a[a.id]=b,a.b=!0):a.b?!0:wa()&&(b=xa(a.key))?(a[a.id]=b,a.b=!0):!1}var Df=0; 1);c=0}}};function Qf(a,b){a[a.id]={};b&&a.set("parms",b);a.b=!1}function Rf(a){var b=!0;if(ya()){var c=JSON.stringify(a[a.id]);Aa(a.key,c)||(t("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function Of(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){t(c.message||c),b=!1}return b}function Kf(a,b){return b?(a[a.id]=b,a.b=!0):a.b?!0:ya()&&(b=za(a.key))?(a[a.id]=b,a.b=!0):!1}var Wf=0;
function Pf(a,b,c,d,f,e){f("Loading "+a+"...");ta(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),e(h,null)):Qf(h,a,b,c,d,f,e)})} function hg(a,b,c,d,f,e){f("Loading "+a+"...");sa(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),e(h,null)):ig(h,a,b,c,d,f,e)})}
function Qf(a,b,c,d,f,e,g){function h(a,e){if(e)g(e,null);else{c&&(Xa(c,b,a),(e=b)&&0>e.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(e=window.location.pathname+e),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+e+'"}',"object"==typeof resources&&(e=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(e?' url="'+e+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDP11js$2"), function ig(a,b,c,d,f,e,g){function h(a,e){if(e)g(e,null);else{c&&(Za(c,b,a),(e=b)&&0>e.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(e=window.location.pathname+e),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+e+'"}',"object"==typeof resources&&(e=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(e?' url="'+e+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDP11js$2"),
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pdp11$2"));e=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(e=new window.ActiveXObject("Microsoft.XMLDOM"),e.async=!1,e.loadXML(a)):e=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){e=null,a=n.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,e)}}a?f?Rf(a,e,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)} a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pdp11$2"));e=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(e=new window.ActiveXObject("Microsoft.XMLDOM"),e.async=!1,e.loadXML(a)):e=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){e=null,a=n.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,e)}}a?f?jg(a,e,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
function Rf(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var f=d[2];b("Loading "+f+"...");ta(f,null,!0,function(e,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(e=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(e);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+f);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, function jg(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var f=d[2];b("Loading "+f+"...");sa(f,null,!0,function(e,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(e=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(e);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+f);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(d[0],g);Rf(a,b,c)}})}else c(a,null)} "");a=a.replace(d[0],g);jg(a,b,c)}})}else c(a,null)}
function Sf(a,b,c,d){function f(a){if(void 0===h){var b=g&&C(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ja(a))}function e(a){f("Error: "+a);k&&(--Df||Oa(!0));k=!1}var g,h,k=!0;Df++;Wa[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],p=document.createElement("style");p.type="text/css";p.styleSheet?p.styleSheet.cssText=m:p.appendChild(document.createTextNode(m));n.appendChild(p)}c|| function kg(a,b,c,d){function f(a){if(void 0===h){var b=g&&C(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=la(a))}function e(a){f("Error: "+a);k&&(--Wf||Qa(!0));k=!1}var g,h,k=!0;Wf++;Ya[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],p=document.createElement("style");p.type="text/css";p.styleSheet?p.styleSheet.cssText=m:p.appendChild(document.createTextNode(m));n.appendChild(p)}c||
(c="/versions/pdp11/1.30.0/components.xsl");m=function(d,h){h?Pf(c,null,null,!1,f,function(d,k){k?(Xa(a,c,d),f("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--Df||Oa(!0)):e("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--Df||Oa(!0)):e("invalid machine element: "+ (c="/versions/pdp11/1.30.0/components.xsl");m=function(d,h){h?hg(c,null,null,!1,f,function(d,k){k?(Za(a,c,d),f("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--Wf||Qa(!0)):e("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--Wf||Qa(!0)):e("invalid machine element: "+
a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser")):e(d)}):e(d)};"<"!=b.charAt(0)?Pf(b,a,d,!0,f,m):Qf(b,null,a,d,!1,f,m)}else e("missing machine element: "+a)}catch(q){e(q.message)}return k}window.embedPDP11=function(a,b,c,d){Oa(!1);return Sf(a,b,c,d)};window.enableEvents=Oa;window.sendEvent=Pa;})(); a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser")):e(d)}):e(d)};"<"!=b.charAt(0)?hg(b,a,d,!0,f,m):ig(b,null,a,d,!1,f,m)}else e("missing machine element: "+a)}catch(q){e(q.message)}return k}window.embedPDP11=function(a,b,c,d){Qa(!1);return kg(a,b,c,d)};window.enableEvents=Qa;window.sendEvent=Ra;})();

View file

@ -1,142 +1,145 @@
(function(){var l; (function(){var l;
function aa(a){var b=16,c;if(a){b||(b=10);var d=a.charAt(0),f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d&&(d=a.charAt(1),"b"==d&&f&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));var e,d=a;((f=b)&&10!=f?16==f?d.match(/^[0-9a-f]+$/i):8==f?d.match(/^[0-7]+$/):2== function aa(a){var b=16,c;if(a){b||(b=10);var d=a.charAt(0),f=0<a.indexOf(",");f&&(a=a.replace(/,/g,""));"#"==d?(b=8,d=null):"$"==d&&(b=16,d=null);null==d?a=a.substr(1):("0"==d&&(d=a.charAt(1),"b"==d&&f&&(b=2,d=null),"o"==d?(b=8,d=null):"x"==d&&(b=16,d=null)),null==d?a=a.substr(2):(d=a.charAt(a.length-1).toLowerCase(),"y"==d?(b=2,d=null):"."==d?(b=10,d=null):"h"==d&&(b=16,d=null),null==d&&(a=a.substr(0,a.length-1))));var e,d=a;((f=b)&&10!=f?16==f?d.match(/^[0-9a-f]+$/i):8==f?d.match(/^[0-7]+$/):2==
f&&d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(e=parseInt(a,b))&&(c=e|0)}return c}function n(a,b){var c="";b?11<b&&(b=11):b=a&-65536?11:6;if(null==a||isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;)c=String.fromCharCode((a&7)+48)+c,a>>=3;return""+c}function q(a,b,c){var d="";b?8<b&&(b=8):b=a&-65536?8:4;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;){var f=a&15,f=f+(0<=f&&9>=f?48:55),d=String.fromCharCode(f)+d;a>>=4}return(c?"0x":"")+d} f&&d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(e=parseInt(a,b))&&(c=e|0)}return c}function ba(a,b){var c="";b?11<b&&(b=11):b=a&-65536?11:6;if(null==a||isNaN(a))for(;0<b--;)c="?"+c;else for(;0<b--;)c=String.fromCharCode((a&7)+48)+c,a>>=3;return""+c}function n(a,b,c){var d="";b?8<b&&(b=8):b=a&-65536?8:4;if(null==a||isNaN(a))for(;0<b--;)d="?"+d;else for(;0<b--;){var f=a&15,f=f+(0<=f&&9>=f?48:55),d=String.fromCharCode(f)+d;a>>=4}return(c?"0x":"")+d}
function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0<c&&(b=b.substr(0,c));return b}function ca(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function da(){var a=ea();return-1!==a.indexOf("pcjs.org",a.length-8)}var fa={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}var ha=Date.now||function(){return+new Date}; function ca(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0<c&&(b=b.substr(0,c));return b}function da(a){var b="",c=a.lastIndexOf(".");0<=c&&(b=a.substr(c+1).toLowerCase());return b}function ea(){var a=fa();return-1!==a.indexOf("pcjs.org",a.length-8)}var ga={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#039;"};function ha(a){return a.replace(/[&<>"']/g,function(a){return ga[a]})}var ia=Date.now||function(){return+new Date};
function ia(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} function ja(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
function r(a,b,c,d){var f=0,e=null,g=null;if("object"==typeof resources&&(e=resources[a]))return d&&d(a,e,f),[e,f];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(e=h.responseText,200==h.status||!h.status&&e.length&&"file:"==(window?window.location.protocol:"file:")||(f=h.status||-1),d&&d(a,e,f))});if(b&&"object"== function q(a,b,c,d){var f=0,e=null,g=null;if("object"==typeof resources&&(e=resources[a]))return d&&d(a,e,f),[e,f];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(e=h.responseText,200==h.status||!h.status&&e.length&&"file:"==(window?window.location.protocol:"file:")||(f=h.status||-1),d&&d(a,e,f))});if(b&&"object"==
typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(e=h.responseText,200!=h.status&&(f=h.status||-1),d&&d(a,e,f),g=[e,f]);return g}function ea(){return"http://"+(window?window.location.host:"www.pcjs.org")} typeof b){var k="",m;for(m in b)b.hasOwnProperty(m)&&(k&&(k+="&"),k+=m+"="+encodeURIComponent(b[m]));k=k.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(k)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(e=h.responseText,200!=h.status&&(f=h.status||-1),d&&d(a,e,f),g=[e,f]);return g}function fa(){return"http://"+(window?window.location.host:"www.pcjs.org")}
function t(a){window&&window.alert(a)}function ja(a){var b=!1;window&&(b=window.confirm(a));return b}var ka=null;function la(){if(null==ka){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ka=a}return ka}function ma(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b} function r(a){window&&window.alert(a)}function ka(a){var b=!1;window&&(b=window.confirm(a));return b}var la=null;function ma(){if(null==la){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}la=a}return la}function na(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b}
function na(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function oa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var u={init:[],show:[],exit:[]},pa=!1,qa=!1,ra=!0;function sa(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function v(a){u.init.push(a)} function oa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function pa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var t={init:[],show:[],exit:[]},qa=!1,ra=!1,sa=!0;function ta(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){t.init.push(a)}
function ta(a){if(ra)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){t(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function ua(a){!ra&&a?(ra=!0,pa&&va("init"),qa&&va("show")):ra=a}function va(a){u[a]&&ta(u[a])}sa("onload",function(){pa=!0;ta(u.init)});sa("onpageshow",function(){qa=!0;ta(u.show)});sa(oa("Opera")||oa("iOS")?"onunload":"onbeforeunload",function(){ta(u.exit)}); function ua(a){if(sa)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){r(""+("An unexpected exception occurred:\n\n"+c.message+"\n\nPlease send this information to support@pcjs.org. Thanks."))}}function va(a){!sa&&a?(sa=!0,qa&&wa("init"),ra&&wa("show")):sa=a}function wa(a){t[a]&&ua(t[a])}ta("onload",function(){qa=!0;ua(t.init)});ta("onpageshow",function(){ra=!0;ua(t.show)});ta(pa("Opera")||pa("iOS")?"onunload":"onbeforeunload",function(){ua(t.exit)});
function x(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Lb=b.comment;this.ic=b;b=this.id.indexOf(".");0>b?this.zb=this.id:(this.Nb=this.id.substr(0,b),this.zb=this.id.substr(b+1));this[a]=c;this.g={ready:!1,Ya:!1,Bb:!1,L:!1,error:!1};this.ob=null;this.g.error=!1;this.u={};this.H=null;y.push(this)}var wa=void 0,xa={}; function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Mb=b.comment;this.gc=b;b=this.id.indexOf(".");0>b?this.xb=this.id:(this.Nb=this.id.substr(0,b),this.xb=this.id.substr(b+1));this[a]=c;this.g={ready:!1,ab:!1,Bb:!1,M:!1,error:!1};this.ob=null;this.g.error=!1;this.u={};this.I=null;w.push(this)}var xa=void 0,ya={};
if(window){wa||(wa=window.location.search.substr(1));for(var ya,za=/\+/g,Aa=/([^&=]+)=?([^&]*)/g;ya=Aa.exec(wa);)xa[decodeURIComponent(ya[1].replace(za," "))]=decodeURIComponent(ya[2].replace(za," "))}function Ba(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b} if(window){xa||(xa=window.location.search.substr(1));for(var za,Aa=/\+/g,Ba=/([^&=]+)=?([^&]*)/g;za=Ba.exec(xa);)ya[decodeURIComponent(za[1].replace(Aa," "))]=decodeURIComponent(za[2].replace(Aa," "))}function Ca(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
function z(a,b){b||(b=x);a.prototype=Ba(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Ca=window.PCjs.Machines||(window.PCjs.Machines={}),y=window.PCjs.Components||(window.PCjs.Components=[])}else Ca={},y=[];function Da(a,b,c){Ca[a]&&b&&(Ca[a][b]=c)}function A(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<y.length;b++){var d=y[b];a&&d.id.indexOf(a)||c.push(d)}return c} function x(a,b){b||(b=v);a.prototype=Ca(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Da=window.PCjs.Machines||(window.PCjs.Machines={}),w=window.PCjs.Components||(window.PCjs.Components=[])}else Da={},w=[];function Ea(a,b,c){Da[a]&&b&&(Da[a][b]=c)}function z(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b<w.length;b++){var d=w[b];a&&d.id.indexOf(a)||c.push(d)}return c}
function Ea(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<y.length;d++)if(c)c==y[d]&&(c=null);else if(!(a!=y[d].type||b&&y[d].id.indexOf(b)))return y[d]}return null}function B(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){t(c.message+" ("+a+")")}return b} function Fa(a,b){var c;if(void 0!==a){var d;b&&(b=0<(d=b.indexOf("."))?b.substr(0,d+1):"");for(d=0;d<w.length;d++)if(c)c==w[d]&&(c=null);else if(!(a!=w[d].type||b&&w[d].id.indexOf(b)))return w[d]}return null}function A(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){r(c.message+" ("+a+")")}return b}
function C(a,b){b=D(b.parentNode,"pdp11-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,f=0;f<d.length;f++){var e=d[f];if(1===e.nodeType){var g=e.getAttribute("class");if(g)for(var h=g.split(" "),k=0;k<h.length;k++)switch(g=h[k],g){case "pdp11-binding":(g=B(e))&&g.binding&&a.ba(g.type,g.binding,e,g.value),k=h.length}}}} function B(a,b){b=C(b.parentNode,"pdp11-control");for(var c=0;c<b.length;c++)for(var d=b[c].childNodes,f=0;f<d.length;f++){var e=d[f];if(1===e.nodeType){var g=e.getAttribute("class");if(g)for(var h=g.split(" "),k=0;k<h.length;k++)switch(g=h[k],g){case "pdp11-binding":(g=A(e))&&g.binding&&a.ba(g.type,g.binding,e,g.value),k=h.length}}}}
function D(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var f=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)f.test(a[b].className)&&c.push(a[b]);return c} function C(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var f=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)f.test(a[b].className)&&c.push(a[b]);return c}
x.prototype={constructor:x,parent:null,toString:function(){return this.name?this.name:this.id||this.type},ba:function(a,b,c){switch(b){case "clear":return this.u[b]||(this.u[b]=c,c.onclick=function(a){return function(){a.u.print&&(a.u.print.value="")}}(this)),!0;case "print":return this.u[b]||(this.Cb=this.u[b]=c,c.value="",this.J=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c), v.prototype={constructor:v,parent:null,toString:function(){return this.name?this.name:this.id||this.type},ba:function(a,b,c){switch(b){case "clear":return this.u[b]||(this.u[b]=c,c.onclick=function(a){return function(){a.u.print&&(a.u.print.value="")}}(this)),!0;case "print":return this.u[b]||(this.Cb=this.u[b]=c,c.value="",this.N=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),
this.K=function(a){this.J(a,this.zb)}),!0;default:return!1}},log:function(){},J:function(){},status:function(a){this.J(this.zb+": "+a)},K:function(a,b,c){c=c||this.type;b||t((c?c+": ":"")+a)},va:function(){return this.g.L=!0},ua:function(a,b){b&&(this.g.L=!1);return!0}};function Fa(a,b){if(a.g.Bb)return a.g.Ya&&(a.g.Ya=!1),a.g.Bb=!1;if(a.g.error)return a.J(a.toString()+" error"),!1;a.g.Ya=b;return a.g.Ya}function E(a){if(!a.g.error&&(a.g.ready=!0,a.g.ready)){var b=a.ob;a.ob=null;b&&b()}} this.L=function(a){this.N(a,this.xb)}),!0;default:return!1}},log:function(){},N:function(){},status:function(a){this.N(this.xb+": "+a)},L:function(a,b,c){c=c||this.type;b||r((c?c+": ":"")+a)},va:function(){return this.g.M=!0},ua:function(a,b){b&&(this.g.M=!1);return!0}};function Ga(a,b){if(a.g.Bb)return a.g.ab&&(a.g.ab=!1),a.g.Bb=!1;if(a.g.error)return a.N(a.toString()+" error"),!1;a.g.ab=b;return a.g.ab}function D(a){if(!a.g.error&&(a.g.ready=!0,a.g.ready)){var b=a.ob;a.ob=null;b&&b()}}
function Ga(a,b){b&&(a.g.ready?b():a.ob=b);return a.g.ready}var Ha="undefined"!==typeof ArrayBuffer;function Ia(a){x.call(this,"Panel",a,Ia)}z(Ia);l=Ia.prototype;l.ba=function(a,b,c,d){return this.h&&this.h.ba(a,b,c,d)||this.a&&this.a.ba(a,b,c,d)?!0:this.parent.ba.call(this,a,b,c,d)};l.Ka=function(a,b,c,d){this.h=a;this.l=b;this.a=c;this.H=d};l.va=function(a,b){b||Ja();return!0};l.ua=function(){return!0};l.Na=function(){}; function Ha(a,b){b&&(a.g.ready?b():a.ob=b);return a.g.ready}var Ia="undefined"!==typeof ArrayBuffer;function Ja(a){v.call(this,"Panel",a,Ja)}x(Ja);l=Ja.prototype;l.ba=function(a,b,c,d){return this.l&&this.l.ba(a,b,c,d)||this.a&&this.a.ba(a,b,c,d)?!0:this.parent.ba.call(this,a,b,c,d)};l.Ka=function(a,b,c,d){this.l=a;this.w=b;this.a=c;this.I=d};l.va=function(a,b){b||Ka();return!0};l.ua=function(){return!0};l.Na=function(){};
function Ja(){for(var a=!1,b=D(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],f=B(d),e;a:{e=f.id;if(void 0!==e){var g;for(g=0;g<y.length;g++)if(y[g].id===e){e=y[g];break a}}e=null}e||(a=!0,e=new Ia(f));C(e,d);a&&E(e)}}v(Ja); function Ka(){for(var a=!1,b=C(document,"pdp11","panel"),c=0;c<b.length;c++){var d=b[c],f=A(d),e;a:{e=f.id;if(void 0!==e){var g;for(g=0;g<w.length;g++)if(w[g].id===e){e=w[g];break a}}e=null}e||(a=!0,e=new Ja(f));B(e,d);a&&D(e)}}u(Ka);
function F(a,b,c){x.call(this,"Bus",a,F);this.a=b;this.H=c;this.B=a.busWidth||16;this.m=Math.pow(2,this.B);this.i=this.m-1|0;this.l=(this.B>>1)+2;10>this.l&&(this.l=10);15<this.l&&(this.l=15);this.f=1<<this.l;this.D=this.f>>2;this.h=this.f-1;this.j=this.m/this.f|0;this.I=this.j-1;this.na=[];this.w=null;this.Za=this.M;a=new G;Ka(a,this.H);this.b=Array(this.j);for(b=0;b<this.j;b++)this.b[b]=a;this.Va=Array(4);this.Va[0]=La;this.Va[1]=Ma;this.Va[2]=Na;this.Va[3]=Oa;Pa(this,this.m-8192,8192,Qa,this); function E(a,b,c){v.call(this,"Bus",a,E);this.a=b;this.I=c;this.G=a.busWidth||16;this.A=Math.pow(2,this.G);this.j=this.A-1|0;this.f=(this.G>>1)+2;10>this.f&&(this.f=10);15<this.f&&(this.f=15);this.h=1<<this.f;this.J=this.h>>2;this.i=this.h-1;this.l=this.A/this.h|0;this.K=this.l-1;this.ma=[];this.B=null;this.bb=this.R;a=new F;La(a,this.I);this.b=Array(this.l);for(b=0;b<this.l;b++)this.b[b]=a;this.Ya=Array(4);this.Ya[0]=Ma;this.Ya[1]=Na;this.Ya[2]=Oa;this.Ya[3]=Pa;Qa(this,this.A-8192,8192,Ra,this);
Pa(this,57344,8192,Qa,this);E(this)}z(F);function La(a,b){var c=this.controller,d=c.na[a];if(d){if(d[0])return d[0](b);if(d[2])return b&1?d[2](b&-2)>>8:d[2](b)&255}else if(b&1&&(d=c.na[a&-2],d[2]))return d[2](b&-2)>>8;c.J("warning: unconverted read access to byte @"+n(b));return c.Za(b,-1,1)} Qa(this,57344,8192,Ra,this);D(this)}x(E);function Ma(a,b){var c=this.controller,d=c.ma[a];if(d){if(d[0])return d[0](b);if(d[2])return b&1?d[2](b&-2)>>8:d[2](b)&255}else if(b&1&&(d=c.ma[a&-2],d[2]))return d[2](b&-2)>>8;c.N("warning: unconverted read access to byte @"+ba(b));return c.bb(b,-1,1)}
function Ma(a,b,c){var d=this.controller,f=d.na[a];if(f){if(f[1]){f[1](b,c);return}if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);return}}else if(c&1&&(f=d.na[a&-2],f[3])){c&=-2;a=f[2]?f[2](c):0;f[3](a&255|b<<8,c);return}d.J("warning: unconverted write access to byte @"+n(c));d.Za(c,b,1)} function Na(a,b,c){var d=this.controller,f=d.ma[a];if(f){if(f[1]){f[1](b,c);return}if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);return}}else if(c&1&&(f=d.ma[a&-2],f[3])){c&=-2;a=f[2]?f[2](c):0;f[3](a&255|b<<8,c);return}d.N("warning: unconverted write access to byte @"+ba(c));d.bb(c,b,1)}
function Na(a,b){var c=this.controller;if(a=c.na[a]){if(a[2])return a[2](b);if(a[0])return a[0](b)|a[0](b+1)<<8}c.J("warning: unconverted read access to word @"+n(b));return c.Za(b,-1,0)}function Oa(a,b,c){var d=this.controller;if(a=d.na[a]){if(a[3]){a[3](b,c);return}if(a[1]){a[1](b&255,c);a[1](b>>8,c+1);return}}d.J("warning: unconverted write access to word @"+n(c));d.Za(c,b,0)}F.prototype.reset=function(){this.w&&this.w()};F.prototype.M=function(){return 0}; function Oa(a,b){var c=this.controller;if(a=c.ma[a]){if(a[2])return a[2](b);if(a[0])return a[0](b)|a[0](b+1)<<8}c.N("warning: unconverted read access to word @"+ba(b));return c.bb(b,-1,0)}function Pa(a,b,c){var d=this.controller;if(a=d.ma[a]){if(a[3]){a[3](b,c);return}if(a[1]){a[1](b&255,c);a[1](b>>8,c+1);return}}d.N("warning: unconverted write access to word @"+ba(c));d.bb(c,b,0)}E.prototype.reset=function(){this.B&&this.B()};E.prototype.R=function(){return 0};
F.prototype.va=function(a,b){b||this.reset();return!0};function Pa(a,b,c,d,f){for(var e=b,g=c,h=e>>>a.l;0<g&&h<a.b.length;){var k=a.b[h],m=h*a.f,p=a.f-(e-m);p>g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==f){if(e+g<=k.Ua)return k.wb+=k.Ua-e,k.Ua=e,!0;if(e>=k.Ua+k.wb){p=k.size-(e-m);p>g&&(p=g);k.wb=e-k.Ua+p;e=m+a.f;g-=p;h++;continue}}return Ra(1,e,g)}e=new G(e,p,a.f,d,f);Ka(e,a.H,k);a.b[h++]=e;e=m+a.f;g-=p}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Sa[d]+" at "+q(b,8,!0)),!0):Ra(2,b,c)} E.prototype.va=function(a,b){b||this.reset();return!0};function Qa(a,b,c,d,f){for(var e=b,g=c,h=e>>>a.f;0<g&&h<a.b.length;){var k=a.b[h],m=h*a.h,p=a.h-(e-m);p>g&&(p=g);if(k&&k.size){if(k.type==d&&k.controller==f){if(e+g<=k.Xa)return k.vb+=k.Xa-e,k.Xa=e,!0;if(e>=k.Xa+k.vb){p=k.size-(e-m);p>g&&(p=g);k.vb=e-k.Xa+p;e=m+a.h;g-=p;h++;continue}}return Sa(1,e,g)}e=new F(e,p,a.h,d,f);La(e,a.I,k);a.b[h++]=e;e=m+a.h;g-=p}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Ta[d]+" at "+n(b,8,!0)),!0):Sa(2,b,c)}
function Ta(a){for(var b=0,c=[],d=0;d<a.j;d++){var f=a.b[d];if(f.ra||f.fc){c[b++]=d;var e=b++;if(f=f.save()){for(var g=0,h=0,k=[];g<f.length;){for(var m=f[g],p=g+1;p<f.length&&f[p]===m;)p++;k[h++]=p-g;k[h++]=m;g=p}k.length<f.length&&(f=k)}c[e]=f}}return c} function Ua(a,b){return a.b[(b&a.j)>>>a.f].eb(b&a.i,b)}function Va(a,b,c){var d=b&a.i,f=(b&a.j)>>>a.f;d!=a.i?a.b[f].Fc(d,c&65535,b):(a.b[f++].Wa(d,c&255,b),a.b[f&a.K].Wa(0,c>>8&255,b+1))}function Wa(a){for(var b=0,c=[],d=0;d<a.l;d++){var f=a.b[d];if(f.qa||f.fc){c[b++]=d;var e=b++;if(f=f.save()){for(var g=0,h=0,k=[];g<f.length;){for(var m=f[g],p=g+1;p<f.length&&f[p]===m;)p++;k[h++]=p-g;k[h++]=m;g=p}k.length<f.length&&(f=k)}c[e]=f}}return c}
function Ua(a,b){var c=Va,d;for(d in c)for(var f=c[d],e=a,g=+d,h=f[0]?f[0].bind(b):null,k=f[1]?f[1].bind(b):null,m=f[2]?f[2].bind(b):null,f=f[3]?f[3].bind(b):null,p=+d;p<=g;p+=2){var w=p&8191;void 0!==e.na[w]?t("I/O address already registered: "+q(p,8,!0)):e.na[w]=[h,k,m,f,!1]}}function Wa(a,b,c){a.w=b;a.Za=c}function Ra(a,b,c){t("Memory block error ("+a+": "+q(b)+","+q(c)+")");return!1} function Xa(a,b){var c=Ya,d;for(d in c)for(var f=c[d],e=a,g=+d,h=f[0]?f[0].bind(b):null,k=f[1]?f[1].bind(b):null,m=f[2]?f[2].bind(b):null,f=f[3]?f[3].bind(b):null,p=+d;p<=g;p+=2){var y=p&8191;void 0!==e.ma[y]?r("I/O address already registered: "+n(p,8,!0)):e.ma[y]=[h,k,m,f,!1]}}function Za(a,b,c){a.B=b;a.bb=c}function Sa(a,b,c){r("Memory block error ("+a+": "+n(b)+","+n(c)+")");return!1}
function I(a){x.call(this,"Device",a,I);this.f={Eb:[],ca:0,V:128,b:127,ec:0};this.h={data:0,Hc:0,Qa:20,Ac:0};this.b={s:0,Ib:-1};this.i={cb:2496,P:0,v:128,eb:0,bb:0,U:0,Vb:0,R:[],Ia:[406,406,406,406],F:[12,12,12,12]};this.j={s:129,Xa:0,G:0,ta:0,oa:0,za:0,R:[],F:[40,40,40,40],Ia:[1024,1024,512,512],cc:[157,157,29,29]};this.m={a:[8210,8208,8210,8226],F:[22,22,22,50],Ha:[19,19,19,32],yb:[815,411,815,630],R:[],A:2176,Ta:0,Ra:0,aa:[0,0,0,0,0,0,0,0],$:0,S:[4544,4544,4544,4544,4544,4544,4544,4544],Sa:[0, function G(a){v.call(this,"Device",a,G);this.f={Fb:[],ca:0,V:128,b:127,ec:0};this.h={data:0,Hc:0,Sa:20,Ac:0};this.b={o:0,Jb:-1};this.i={gb:2496,P:0,v:128,hb:0,fb:0,U:0,Vb:0,S:[],Ia:[406,406,406,406],D:[12,12,12,12]};this.j={o:129,$a:0,H:0,ta:0,na:0,za:0,S:[],D:[40,40,40,40],Ia:[1024,1024,512,512],cc:[157,157,29,29]};this.l={a:[8210,8208,8210,8226],D:[22,22,22,50],Ha:[19,19,19,32],wb:[815,411,815,630],S:[],C:2176,Va:0,Ta:0,aa:[0,0,0,0,0,0,0,0],$:0,T:[4544,4544,4544,4544,4544,4544,4544,4544],Ua:[0,
0,0,0,0,0,0,0],Ma:0,yc:[0,0,0,0,0,0,0,0],Wb:0,Xb:[0,0,0,0,0,0,0,0],u:[0,0,0,0,0,0,0,0],zc:[1,2,3,4,5,6,7,8],Yb:[0,0,0,0,0,0,0,0],ia:[0,0,0,0,0,0,0,0],vb:[0,0,0,0,0,0,0,0],wc:[0,0,0,0,0,0,0,0],xc:[0,0,0,0,0,0,0,0],uc:[0,0,0,0,0,0,0,0],vc:[0,0,0,0,0,0,0,0],ya:0,Gb:0}}z(I); 0,0,0,0,0,0,0],Ma:0,yc:[0,0,0,0,0,0,0,0],Wb:0,Xb:[0,0,0,0,0,0,0,0],f:[0,0,0,0,0,0,0,0],zc:[1,2,3,4,5,6,7,8],Yb:[0,0,0,0,0,0,0,0],ha:[0,0,0,0,0,0,0,0],ub:[0,0,0,0,0,0,0,0],wc:[0,0,0,0,0,0,0,0],xc:[0,0,0,0,0,0,0,0],uc:[0,0,0,0,0,0,0,0],vc:[0,0,0,0,0,0,0,0],ya:0,Hb:0}}x(G);
var Xa=[4127,448,4191,450,4383,452,2591,454,21983,32768,65534,13791,16384,65534,770,2719,454,2591,65534,257,0,2566,33028,34051,33282,1281,33537,0,2758,32771,770,1025,1793,0,3078,33794,34305,513,0,5574,43690,4480,4097,4162,4227,4292,4357,57665,1281,769,0,3138,34305,1281,0,24707,2691,2627,24769,34561,1793,0,3076,20739,24899,2691,34562,2753,1281,0,2624,33537,0,16385,24641,1537,1793,0,193,8279,21589,516,12549,1538,2629,513,0,38336,65281,32769,0,32258,2561,2689,32258,3008,514,3009,769,0,5574,510,2551, var $a=[4127,448,4191,450,4383,452,2591,454,21983,32768,65534,13791,16384,65534,770,2719,454,2591,65534,257,0,2566,33028,34051,33282,1281,33537,0,2758,32771,770,1025,1793,0,3078,33794,34305,513,0,5574,43690,4480,4097,4162,4227,4292,4357,57665,1281,769,0,3138,34305,1281,0,24707,2691,2627,24769,34561,1793,0,3076,20739,24899,2691,34562,2753,1281,0,2624,33537,0,16385,24641,1537,1793,0,193,8279,21589,516,12549,1538,2629,513,0,38336,65281,32769,0,32258,2561,2689,32258,3008,514,3009,769,0,5574,510,2551,
2,0,9678,208,769,0,5582,226,135,0,2598,5606,236,2,0,95,242,128,5573,57344,2591,6,5599,256,4,5574,510,3045,5599,460,76,2591,78,5571,65510,5579,12,5570,512,4224,4104,3024,8197,33788,4224,4609,8193,769,0,2640,8197,33785,6145,2625,8193,769,0,8194,761,2574,5572,43690,5579,24,5568,2048,5570,512,2628,4360,2632,2632,8708,769,0,3103,65514,34562,0,305,35406,754,258,119,65160,3024,32403,5579,36,5568,3072,35446,1,740,5570,512,4224,4104,3024,8197,33788,5569,3,2574,3039,454,528,5582,24,4224,2632,2632,8200,769, 2,0,9678,208,769,0,5582,226,135,0,2598,5606,236,2,0,95,242,128,5573,57344,2591,6,5599,256,4,5574,510,3045,5599,460,76,2591,78,5571,65510,5579,12,5570,512,4224,4104,3024,8197,33788,4224,4609,8193,769,0,2640,8197,33785,6145,2625,8193,769,0,8194,761,2574,5572,43690,5579,24,5568,2048,5570,512,2628,4360,2632,2632,8708,769,0,3103,65514,34562,0,305,35406,754,258,119,65160,3024,32403,5579,36,5568,3072,35446,1,740,5570,512,4224,4104,3024,8197,33788,5569,3,2574,3039,454,528,5582,24,4224,2632,2632,8200,769,
0,3024,3103,65514,34562,0,264,8197,33779,5003,2574,32337,260,0,258,5579,12,6080,448,6081,450,6084,452,116,2,6084,65400,17860,65024,21956,62976,38848,65401,3200,161,76,0,16944,10797];l=I.prototype;l.Ka=function(a,b,c,d){this.l=b;this.a=c;this.H=d;var f=this;this.b.Ib=Ya(this.a,function(){f.b.sa|=128;f.b.sa&64&&(J(f.a,0,6,64),Za(f.a,f.b.Ib))});Ua(b,this);Wa(b,this.reset.bind(this),this.bc.bind(this));E(this)};l.nc=function(){var a=this.b.sa;this.b.sa&=-129;return a}; 0,3024,3103,65514,34562,0,264,8197,33779,5003,2574,32337,260,0,258,5579,12,6080,448,6081,450,6084,452,116,2,6084,65400,17860,65024,21956,62976,38848,65401,3200,161,76,0,16944,10797];l=G.prototype;l.Ka=function(a,b,c,d){this.w=b;this.a=c;this.I=d;var f=this;this.b.Jb=ab(this.a,function(){f.b.sa|=128;f.b.sa&64&&(H(f.a,0,6,64),bb(f.a,f.b.Jb))});Xa(b,this);Za(b,this.reset.bind(this),this.bc.bind(this));D(this)};l.nc=function(){var a=this.b.sa;this.b.sa&=-129;return a};
l.Cc=function(a){this.b.sa=a;a&64&&Za(this.a,this.b.Ib);this.b.sa=a&-129};l.oc=function(){var a=this.a;return a.w&62337|a.Oa<<5|a.Pa<<1};l.Dc=function(a){var b=4,c=this.a;c.w=a&=62337;c.Oa=a>>5&3;c.Pa=a>>1&15;c.pb=a&257?a&1?6:4:0;$a(c);a=c.w;a&1|256&&(b=this.a.Da&16?1:2);this.h.Qa=this.h.Qa&-8|b};l.qc=function(){return this.f.V};l.Gc=function(a){if(128==(this.f.V&192)&&a&64){var b=this;J(this.a,8,4,52,function(){b.f.V|=128;return!!(b.f.V&64)})}this.f.V=this.f.V&128|a&-129};l.pc=function(){return ab(this.a)}; l.Cc=function(a){this.b.sa=a;a&64&&bb(this.a,this.b.Jb);this.b.sa=a&-129};l.oc=function(){var a=this.a;return a.A&62337|a.Oa<<5|a.Pa<<1};l.Dc=function(a){var b=4,c=this.a;c.A=a&=62337;c.Oa=a>>5&3;c.Pa=a>>1&15;c.pb=a&257?a&1?6:4:0;cb(c);a=c.A;a&1|256&&(b=this.a.Fa&16?1:2);this.h.Sa=this.h.Sa&-8|b};l.qc=function(){return this.f.V};l.Gc=function(a){if(128==(this.f.V&192)&&a&64){var b=this;H(this.a,8,4,52,function(){b.f.V|=128;return!!(b.f.V&64)})}this.f.V=this.f.V&128|a&-129};l.pc=function(){return db(this.a)};
l.Ec=function(a){bb(this.a,a&-1809|ab(this.a)&1808);this.a.C|=128}; l.Ec=function(a){eb(this.a,a&-1809|db(this.a)&1808);this.a.s|=128};
function cb(a){var b=a.i,c,d,f,e=b.U>>13&7;"undefined"===typeof b.R[e]&&(b.R[e]={cache:[],postProcess:a.rc,drive:e,blocksize:256,mapped:0,maxblock:b.Ia[e]*b.F[e],url:"rk"+e+".dsk"});b.v&=-129;switch(b.v>>1&7){case 0:b.cb=2496;b.P=0;b.v=128;b.U=0;break;case 1:if((b.U>>4&511)>=b.Ia[e]){b.P|=32832;b.v|=49152;break}if((b.U&15)>=b.F[e]){b.P|=32800;b.v|=49152;break}c=(b.U>>4&511)*b.F[e]+(b.U&15);d=(b.v&48)<<12|b.bb;f=65536-b.eb&65535;db(a,b.R[e],c,d,f);return;case 2:if((b.U>>4&511)>=b.Ia[e])b.P|=32832, function fb(a){var b=a.i,c,d,f,e=b.U>>13&7;"undefined"===typeof b.S[e]&&(b.S[e]={cache:[],postProcess:a.rc,drive:e,blocksize:256,mapped:0,maxblock:b.Ia[e]*b.D[e],url:"rk"+e+".dsk"});b.v&=-129;switch(b.v>>1&7){case 0:b.gb=2496;b.P=0;b.v=128;b.U=0;break;case 1:if((b.U>>4&511)>=b.Ia[e]){b.P|=32832;b.v|=49152;break}if((b.U&15)>=b.D[e]){b.P|=32800;b.v|=49152;break}c=(b.U>>4&511)*b.D[e]+(b.U&15);d=(b.v&48)<<12|b.fb;f=65536-b.hb&65535;gb(a,b.S[e],c,d,f);return;case 2:if((b.U>>4&511)>=b.Ia[e])b.P|=32832,
b.v|=49152;else if((b.U&15)>=b.F[e])b.P|=32800,b.v|=49152;else{c=(b.U>>4&511)*b.F[e]+(b.U&15);d=(b.v&48)<<12|b.bb;f=65536-b.eb&65535;a.sb(b.R[e],c,d,f);return}}b.cb=e<<13|b.cb&8176|b.U%9&15;J(a.a,20,5,144,function(){b.v=b.v&65534|128;return!!(b.v&64)})}l.rc=function(a,b,c,d,f){var e=this.i;e.bb=d&65535;e.v=e.v&-49|d>>12&48;e.eb=65536-f&65535;switch(a){case 1:e.P|=33024;e.v|=49152;break;case 2:e.P|=33792,e.v|=49152}J(this.a,20,5,144,function(){e.v=e.v&65534|128;return!!(e.v&64)})}; b.v|=49152;else if((b.U&15)>=b.D[e])b.P|=32800,b.v|=49152;else{c=(b.U>>4&511)*b.D[e]+(b.U&15);d=(b.v&48)<<12|b.fb;f=65536-b.hb&65535;a.rb(b.S[e],c,d,f);return}}b.gb=e<<13|b.gb&8176|b.U%9&15;H(a.a,20,5,144,function(){b.v=b.v&65534|128;return!!(b.v&64)})}l.rc=function(a,b,c,d,f){var e=this.i;e.fb=d&65535;e.v=e.v&-49|d>>12&48;e.hb=65536-f&65535;switch(a){case 1:e.P|=33024;e.v|=49152;break;case 2:e.P|=33792,e.v|=49152}H(this.a,20,5,144,function(){e.v=e.v&65534|128;return!!(e.v&64)})};
function eb(a){var b=a.j,c,d,f,e=b.s>>8&3;b.s&=-2;"undefined"===typeof b.R[e]&&(b.R[e]={cache:[],postProcess:a.sc,drive:e,blocksize:128,mapped:1,maxblock:b.Ia[e]*b.F[e],url:"rl"+e+".dsk"});switch(b.s>>1&7){case 2:b.ta&8&&(b.s&=63);b.ta=b.cc[e]|b.za&64;break;case 3:1==(b.G&3)&&(b.za=b.G&4?b.za+(b.G&65408)&65408|b.G<<2&64:b.za-(b.G&65408)&65408|b.G<<2&64,b.G=b.za);break;case 4:b.ta=b.za;break;case 5:if(b.G>>6>=b.Ia[e]){b.s|=37888;break}if((b.G&63)>=b.F[e]){b.s|=37888;break}c=(b.G>>6)*b.F[e]+(b.G&63); function hb(a){var b=a.j,c,d,f,e=b.o>>8&3;b.o&=-2;"undefined"===typeof b.S[e]&&(b.S[e]={cache:[],postProcess:a.sc,drive:e,blocksize:128,mapped:1,maxblock:b.Ia[e]*b.D[e],url:"rl"+e+".dsk"});switch(b.o>>1&7){case 2:b.ta&8&&(b.o&=63);b.ta=b.cc[e]|b.za&64;break;case 3:1==(b.H&3)&&(b.za=b.H&4?b.za+(b.H&65408)&65408|b.H<<2&64:b.za-(b.H&65408)&65408|b.H<<2&64,b.H=b.za);break;case 4:b.ta=b.za;break;case 5:if(b.H>>6>=b.Ia[e]){b.o|=37888;break}if((b.H&63)>=b.D[e]){b.o|=37888;break}c=(b.H>>6)*b.D[e]+(b.H&63);
d=(b.oa&63)<<16|b.Xa;f=65536-b.ta&65535;db(a,b.R[e],c,d,f);return;case 6:if(b.G>>6>=b.Ia[e])b.s|=37888;else if((b.G&63)>=b.F[e])b.s|=37888;else{c=(b.G>>6)*b.F[e]+(b.G&63);d=(b.oa&63)<<16|b.Xa;f=65536-b.ta&65535;a.sb(b.R[e],c,d,f);return}}J(a.a,20,5,112,function(){b.s|=129;return!!(b.s&64)})} d=(b.na&63)<<16|b.$a;f=65536-b.ta&65535;gb(a,b.S[e],c,d,f);return;case 6:if(b.H>>6>=b.Ia[e])b.o|=37888;else if((b.H&63)>=b.D[e])b.o|=37888;else{c=(b.H>>6)*b.D[e]+(b.H&63);d=(b.na&63)<<16|b.$a;f=65536-b.ta&65535;a.rb(b.S[e],c,d,f);return}}H(a.a,20,5,112,function(){b.o|=129;return!!(b.o&64)})}
l.sc=function(a,b,c,d,f){var e=this.j;e.Xa=d&65535;e.s=e.s&-49|d>>12&48;e.oa=d>>16&63;e.G=~~(c/e.F[b.ga])<<6|c%e.F[b.ga];e.za=e.G;e.ta=65536-f&65535;switch(a){case 1:e.s|=33792;break;case 2:e.s|=40960}J(this.a,20,5,112,function(){e.s|=129;return!!(e.s&64)})};function fb(a){a=a.m;a.A=2176;a.$=0;a.S=[4544,4544,4544,4544,4544,4544,4544,4544];a.Sa=[0,0,0,0,0,0,0,0];a.Ma=a.Ta=a.Ra=a.ya=a.Gb=0} l.sc=function(a,b,c,d,f){var e=this.j;e.$a=d&65535;e.o=e.o&-49|d>>12&48;e.na=d>>16&63;e.H=~~(c/e.D[b.fa])<<6|c%e.D[b.fa];e.za=e.H;e.ta=65536-f&65535;switch(a){case 1:e.o|=33792;break;case 2:e.o|=40960}H(this.a,20,5,112,function(){e.o|=129;return!!(e.o&64)})};function ib(a){a=a.l;a.C=2176;a.$=0;a.T=[4544,4544,4544,4544,4544,4544,4544,4544];a.Ua=[0,0,0,0,0,0,0,0];a.Ma=a.Va=a.Ta=a.ya=a.Hb=0}
function gb(a,b){var c=a.m,d,f,e;c.A&=-16513;c.$&=-2049;c.S[b]&=-1153;J(a.a,-1,0,172);"undefined"===typeof c.R[b]&&(c.R[b]={cache:[],postProcess:a.tc,drive:b,blocksize:256,mapped:0,maxblock:c.yb[0]*c.Ha[0]*c.F[0],url:"rp"+b+".dsk"});switch(c.A&63){case 5:c.vb[b]=c.ia[b];c.A|=32896;c.S[b]|=32896;c.Ma|=1<<b;break;case 9:fb(a);break;case 19:c.S[b]|=64;break;case 49:if(c.ia[b]>=c.yb[0]||c.aa[b]>>8>=c.Ha[0]||(c.aa[b]&255)>=c.F[0]){c.Sa[b]|=1024;c.A|=49152;break}d=(c.ia[b]*c.Ha[0]+(c.aa[b]>>8))*c.F[0]+ function jb(a,b){var c=a.l,d,f,e;c.C&=-16513;c.$&=-2049;c.T[b]&=-1153;H(a.a,-1,0,172);"undefined"===typeof c.S[b]&&(c.S[b]={cache:[],postProcess:a.tc,drive:b,blocksize:256,mapped:0,maxblock:c.wb[0]*c.Ha[0]*c.D[0],url:"rp"+b+".dsk"});switch(c.C&63){case 5:c.ub[b]=c.ha[b];c.C|=32896;c.T[b]|=32896;c.Ma|=1<<b;break;case 9:ib(a);break;case 19:c.T[b]|=64;break;case 49:if(c.ha[b]>=c.wb[0]||c.aa[b]>>8>=c.Ha[0]||(c.aa[b]&255)>=c.D[0]){c.Ua[b]|=1024;c.C|=49152;break}d=(c.ha[b]*c.Ha[0]+(c.aa[b]>>8))*c.D[0]+
(c.aa[b]&255);f=(c.ya&63)<<16|c.Ra;e=65536-c.Ta&65535;db(a,c.R[b],d,f,e);return;case 57:if(c.ia[b]>=c.yb[0]||c.aa[b]>>8>=c.Ha[0]||(c.aa[b]&255)>=c.F[0])c.Sa[b]|=1024,c.A|=49152;else{d=(c.ia[b]*c.Ha[0]+(c.aa[b]>>8))*c.F[0]+(c.aa[b]&255);f=(c.ya&63)<<16|c.Ra;e=65536-c.Ta&65535;a.sb(c.R[b],d,f,e);return}}J(a.a,3,5,172,function(){c.A=c.A&65534|128;c.S[b]|=128;return!!(c.A&64)})} (c.aa[b]&255);f=(c.ya&63)<<16|c.Ta;e=65536-c.Va&65535;gb(a,c.S[b],d,f,e);return;case 57:if(c.ha[b]>=c.wb[0]||c.aa[b]>>8>=c.Ha[0]||(c.aa[b]&255)>=c.D[0])c.Ua[b]|=1024,c.C|=49152;else{d=(c.ha[b]*c.Ha[0]+(c.aa[b]>>8))*c.D[0]+(c.aa[b]&255);f=(c.ya&63)<<16|c.Ta;e=65536-c.Va&65535;a.rb(c.S[b],d,f,e);return}}H(a.a,3,5,172,function(){c.C=c.C&65534|128;c.T[b]|=128;return!!(c.C&64)})}
l.tc=function(a,b,c,d,f){var e=this.m;e.Ta=65536-f&65535;e.Ra=d&65535;e.A=e.A&-769|d>>8&768;e.ya=d>>16&63;f=~~(c/e.F[0]);d=~~(f/e.Ha[0]);e.aa[b.ga]=f%e.Ha[0]<<8|c%e.F[0];e.vb[b.ga]=e.ia[b.ga]=d;e.Ma|=1<<b.ga;c>=b.lc-1&&(e.S[b.ga]|=1024);switch(a){case 1:e.$|=512;e.A|=49152;break;case 2:e.$|=2048,e.A|=49152}J(this.a,20,5,172,function(){e.S[b.ga]|=128;e.A=e.A&65534|128;return!!(e.A&64)})}; l.tc=function(a,b,c,d,f){var e=this.l;e.Va=65536-f&65535;e.Ta=d&65535;e.C=e.C&-769|d>>8&768;e.ya=d>>16&63;f=~~(c/e.D[0]);d=~~(f/e.Ha[0]);e.aa[b.fa]=f%e.Ha[0]<<8|c%e.D[0];e.ub[b.fa]=e.ha[b.fa]=d;e.Ma|=1<<b.fa;c>=b.lc-1&&(e.T[b.fa]|=1024);switch(a){case 1:e.$|=512;e.C|=49152;break;case 2:e.$|=2048,e.C|=49152}H(this.a,20,5,172,function(){e.T[b.fa]|=128;e.C=e.C&65534|128;return!!(e.C&64)})};
function hb(a,b,c,d,f,e){var g=~~((e+c.pa-1)/c.pa),h=new XMLHttpRequest;2048>g&&d+2048<c.lc&&(g=2048);h.open("GET",c.url,!0);h.setRequestHeader("Range","bytes="+(d*c.pa<<1)+"-"+(((d+g)*c.pa<<1)-1));h.responseType="arraybuffer";h.onreadystatechange=function(){if(4==h.readyState){var g=b.bind(a),m,p,w,H;m=h.response;if(h.status&&206!=h.status||!m)c.rb(1,c,d,f,e);else{m=new Uint8Array(m);p=d;for(H=0;H<m.length;){if("undefined"===typeof c.cache[p])for(c.cache[p]=[],w=0;w<c.pa;w++)c.cache[p][w]=H<m.length? function kb(a,b,c,d,f,e){var g=~~((e+c.oa-1)/c.oa),h=new XMLHttpRequest;2048>g&&d+2048<c.lc&&(g=2048);h.open("GET",c.url,!0);h.setRequestHeader("Range","bytes="+(d*c.oa<<1)+"-"+(((d+g)*c.oa<<1)-1));h.responseType="arraybuffer";h.onreadystatechange=function(){if(4==h.readyState){var g=b.bind(a),m,p,y,L;m=h.response;if(h.status&&206!=h.status||!m)c.Eb(1,c,d,f,e);else{m=new Uint8Array(m);p=d;for(L=0;L<m.length;){if("undefined"===typeof c.cache[p])for(c.cache[p]=[],y=0;y<c.oa;y++)c.cache[p][y]=L<m.length?
m[H]&255|m[H+1]<<8&65280:0,H+=2;else H+=c.pa<<1;p++}g(c,d,f,e)}}};h.send(null)}function K(a,b,c,d,f){c&1?f?d=0<=d?d<<8&65280|b&255:b:L(a.a,4):0<=d?f&&(d=b&65280|d&255):d=b;return d}l.sb=function(a,b,c,d){for(var f;0<d;){if("undefined"===typeof a.cache[b]){hb(this,this.sb,a,b,c,d);return}for(f=0;f<a.pa&&0<d;f++){if(0>ib(this.a,a.kc?jb(this.a,c):c,a.cache[b][f])){a.rb(2,a,b,c,d);return}c+=2;--d}b++}a.rb(0,a,b,c,d)}; m[L]&255|m[L+1]<<8&65280:0,L+=2;else L+=c.oa<<1;p++}g(c,d,f,e)}}};h.send(null)}function I(a,b,c,d,f){c&1?f?d=0<=d?d<<8&65280|b&255:b:J(a.a,4):0<=d?f&&(d=b&65280|d&255):d=b;return d}l.rb=function(a,b,c,d){for(var f;0<d;){if("undefined"===typeof a.cache[b]){kb(this,this.rb,a,b,c,d);return}for(f=0;f<a.oa&&0<d;f++){var e=a.kc?lb(this.a,c):c;Va(this.a.w,e,a.cache[b][f]&65535);c+=2;--d}b++}a.Eb(0,a,b,c,d)};
function db(a,b,c,d,f){for(var e,g;0<f;){if("undefined"===typeof b.cache[c])for(b.cache[c]=[],e=0;e<b.pa;e++)b.cache[c][e]=0;for(e=0;e<b.pa&&0<f;e++){g=a.a.ub(b.kc?jb(a.a,d):d);if(0>g){b.rb(2,b,c,d,f);return}b.cache[c][e]=g;d+=2;--f}c++}b.rb(0,b,c,d,f)}l.reset=function(){this.h.Qa=this.h.Qa&-120|20;this.f.ca=0;this.f.V=128;this.b.sa=0;this.i.v=128;this.j.s=128;fb(this)}; function gb(a,b,c,d,f){for(var e,g;0<f;){if("undefined"===typeof b.cache[c])for(b.cache[c]=[],e=0;e<b.oa;e++)b.cache[c][e]=0;for(e=0;e<b.oa&&0<f;e++){g=a.a.tb(b.kc?lb(a.a,d):d);if(0>g){b.Eb(2,b,c,d,f);return}b.cache[c][e]=g;d+=2;--f}c++}b.Eb(0,b,c,d,f)}l.reset=function(){this.h.Sa=this.h.Sa&-120|20;this.f.ca=0;this.f.V=128;this.b.sa=0;this.i.v=128;this.j.o=128;ib(this)};
l.bc=function(a,b,c){var d,f,e=this.a;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=e.wa&65280:(a&1&&(b<<=8),e.wa=b|255,d=0);break;case 4194298:if(0>b)d=e.Fb;else{a&1&&(b<<=8);if(d=b&65024){f=d>>9;do d+=34;while(f>>=1)}e.Fb=d;e.ha=2}break;case 4194294:if(70!==e.Ja)return L(e,4);0>b?d=e.o:d=e.o=0;break;case 4194292:if(70!==e.Ja)return L(e,4);d=1;break;case 4194290:if(70!==e.Ja)return L(e,4);d=0;break;case 4194288:if(70!==e.Ja)return L(e,4);d=61183;break;case 4194296:0<=b&&!(a&1)&&(b&= l.bc=function(a,b,c){var d,f,e=this.a;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=e.wa&65280:(a&1&&(b<<=8),e.wa=b|255,d=0);break;case 4194298:if(0>b)d=e.Gb;else{a&1&&(b<<=8);if(d=b&65024){f=d>>9;do d+=34;while(f>>=1)}e.Gb=d;e.ga=2}break;case 4194294:if(70!==e.Ja)return J(e,4);0>b?d=e.m:d=e.m=0;break;case 4194292:if(70!==e.Ja)return J(e,4);d=1;break;case 4194290:if(70!==e.Ja)return J(e,4);d=0;break;case 4194288:if(70!==e.Ja)return J(e,4);d=61183;break;case 4194296:0<=b&&!(a&1)&&(b&=
255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==e.Ja)return L(e,4);f=a-4194272>>1;0>b?d=e.Db[f]:(d=K(this,e.Db[f],a,b,c),0<=d&&(e.Db[f]=d));break;case 4194254:return a&1?e.N>>14&1?(0<=b&&(e.c[6]=b),d=e.c[6]):(0<=b&&(e.xa[3]=b),d=e.xa[3]):e.N>>14&0?(0<=b&&(e.c[6]=b),d=e.c[6]):(0<=b&&(e.xa[1]=b),d=e.xa[1]),d;case 4194252:case 4194250:case 4194248:return f=a&7,e.N&2048?(0<=b&&(e.c[f]=b),d=e.c[f]):(0<=b&&(e.La[f]=b),d=e.La[f]),d;case 4194246:return a& 255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==e.Ja)return J(e,4);f=a-4194272>>1;0>b?d=e.Db[f]:(d=I(this,e.Db[f],a,b,c),0<=d&&(e.Db[f]=d));break;case 4194254:return a&1?e.F>>14&1?(0<=b&&(e.c[6]=b),d=e.c[6]):(0<=b&&(e.xa[3]=b),d=e.xa[3]):e.F>>14&0?(0<=b&&(e.c[6]=b),d=e.c[6]):(0<=b&&(e.xa[1]=b),d=e.xa[1]),d;case 4194252:case 4194250:case 4194248:return f=a&7,e.F&2048?(0<=b&&(e.c[f]=b),d=e.c[f]):(0<=b&&(e.La[f]=b),d=e.La[f]),d;case 4194246:return a&
1?(0<=b&&(e.c[7]=b),d=e.c[7]):e.N>>14&0?(0<=b&&(e.c[6]=b),d=e.c[6]):(0<=b&&(e.xa[0]=b),d=e.xa[0]),d;case 4194244:case 4194242:case 4194240:return f=a&7,e.N&2048?(0<=b&&(e.La[f]=b),d=e.La[f]):(0<=b&&(e.c[f]=b),d=e.c[f]),d;default:return e.o|=16,L(e,4)}break;case 4194176:f=a>>1&31;d=K(this,e.O[3][f],a,b,c);0<=d&&(e.O[3][f]=d,e.O[3][f&15]&=65295);break;case 4194112:var g=this.f;switch(a&-2){case 4194174:d=K(this,e.hb,a,b,c);0<=d&&(e.hb=d);break;case 4194172:d=e.Ca;d&65280&&(d=(d<<8|d>>8)&65535);break; 1?(0<=b&&(e.c[7]=b),d=e.c[7]):e.F>>14&0?(0<=b&&(e.c[6]=b),d=e.c[6]):(0<=b&&(e.xa[0]=b),d=e.xa[0]),d;case 4194244:case 4194242:case 4194240:return f=a&7,e.F&2048?(0<=b&&(e.La[f]=b),d=e.La[f]):(0<=b&&(e.c[f]=b),d=e.c[f]),d;default:return e.m|=16,J(e,4)}break;case 4194176:f=a>>1&31;d=I(this,e.O[3][f],a,b,c);0<=d&&(e.O[3][f]=d,e.O[3][f&15]&=65295);break;case 4194112:var g=this.f;switch(a&-2){case 4194174:d=I(this,e.jb,a,b,c);0<=d&&(e.jb=d);break;case 4194172:d=e.Ea;d&65280&&(d=(d<<8|d>>8)&65535);break;
case 4194168:0>b?d=this.h.Ac&65535:(d=K(this,this.h.data,a,b,c),0<=d&&(this.h.data=d));break;case 4194166:0<=b&&(b&127&&(g.ec=0),g.V&=-129,J(e,100,4,52,function(){g.V|=128;return!!(g.V&64)}));d=0;break;case 4194162:d=0;0>b&&(g.ca&=-129,0<g.Eb.length&&(d=g.Eb.shift(),0<g.Eb.length&&setTimeout(function(){g.ca|=128;g.ca&64&&J(e,40,4,48)},50)));break;case 4194160:0>b?d=g.ca:(d=K(this,g.ca,a,b,c),0<=d&&(g.ca=g.ca&128|d&-129));break;default:return e.o|=16,L(e,4)}break;case 4194048:f=this.i;switch(a&-2){case 4194048:d= case 4194168:0>b?d=this.h.Ac&65535:(d=I(this,this.h.data,a,b,c),0<=d&&(this.h.data=d));break;case 4194166:0<=b&&(b&127&&(g.ec=0),g.V&=-129,H(e,100,4,52,function(){g.V|=128;return!!(g.V&64)}));d=0;break;case 4194162:d=0;0>b&&(g.ca&=-129,0<g.Fb.length&&(d=g.Fb.shift(),0<g.Fb.length&&setTimeout(function(){g.ca|=128;g.ca&64&&H(e,40,4,48)},50)));break;case 4194160:0>b?d=g.ca:(d=I(this,g.ca,a,b,c),0<=d&&(g.ca=g.ca&128|d&-129));break;default:return e.m|=16,J(e,4)}break;case 4194048:f=this.i;switch(a&-2){case 4194048:d=
K(this,f.cb,a,b,c);0<=d&&(f.cb=d);break;case 4194050:d=K(this,f.P,a,b,c);0<=d&&(f.P=d);break;case 4194052:d=K(this,f.v,a,b,c);0<=b&&0<=d&&(f.v=d&-36993|f.v&36992,f.v&1&&cb(this));break;case 4194054:d=K(this,f.eb,a,b,c);0<=d&&(f.eb=d);break;case 4194056:d=K(this,f.bb,a,b,c);0<=d&&(f.bb=d);break;case 4194058:d=K(this,f.U,a,b,c);0<=d&&(f.U=d);break;case 4194060:break;case 4194062:d=K(this,f.Vb,a,b,c);0<=d&&(f.Vb=d);break;default:return e.o|=16,L(e,4)}break;case 4193728:var h=this.m;f=h.$&7;switch(a& I(this,f.gb,a,b,c);0<=d&&(f.gb=d);break;case 4194050:d=I(this,f.P,a,b,c);0<=d&&(f.P=d);break;case 4194052:d=I(this,f.v,a,b,c);0<=b&&0<=d&&(f.v=d&-36993|f.v&36992,f.v&1&&fb(this));break;case 4194054:d=I(this,f.hb,a,b,c);0<=d&&(f.hb=d);break;case 4194056:d=I(this,f.fb,a,b,c);0<=d&&(f.fb=d);break;case 4194058:d=I(this,f.U,a,b,c);0<=d&&(f.U=d);break;case 4194060:break;case 4194062:d=I(this,f.Vb,a,b,c);0<=d&&(f.Vb=d);break;default:return e.m|=16,J(e,4)}break;case 4193728:var h=this.l;f=h.$&7;switch(a&
-2){case 4193728:d=K(this,h.A,a,b,c);0<=b&&0<=d&&(h.ya=h.ya&60|d>>8&3,h.A=d&17279|h.A&34944|2048,d&1&&h.A&128?gb(this,f):192==(d&192)&&J(e,0,5,172));break;case 4193730:d=K(this,h.Ta,a,b,c);0<=d&&(h.Ta=d);break;case 4193732:d=K(this,h.Ra,a,b,c);0<=d&&(h.Ra=d&65534);break;case 4193734:d=K(this,h.aa[f],a,b,c);0<=d&&(h.aa[f]=d&7967);break;case 4193736:d=K(this,h.$,a,b,c);0<=d&&(h.$=d&63|h.$&65472,d&128&&fb(this));break;case 4193738:d=h.S[f];break;case 4193740:d=h.Sa[f];break;case 4193742:d=K(this,h.Ma, -2){case 4193728:d=I(this,h.C,a,b,c);0<=b&&0<=d&&(h.ya=h.ya&60|d>>8&3,h.C=d&17279|h.C&34944|2048,d&1&&h.C&128?jb(this,f):192==(d&192)&&H(e,0,5,172));break;case 4193730:d=I(this,h.Va,a,b,c);0<=d&&(h.Va=d);break;case 4193732:d=I(this,h.Ta,a,b,c);0<=d&&(h.Ta=d&65534);break;case 4193734:d=I(this,h.aa[f],a,b,c);0<=d&&(h.aa[f]=d&7967);break;case 4193736:d=I(this,h.$,a,b,c);0<=d&&(h.$=d&63|h.$&65472,d&128&&ib(this));break;case 4193738:d=h.T[f];break;case 4193740:d=h.Ua[f];break;case 4193742:d=I(this,h.Ma,
a,b,c);0<=d&&(h.Ma=d&255);break;case 4193744:d=h.yc[f];break;case 4193746:d=K(this,h.Wb,a,b,c);0<=d&&(h.Wb=d);break;case 4193748:d=K(this,h.Xb[f],a,b,c);0<=d&&(h.Xb[f]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=h.zc[f];break;case 4193754:d=K(this,h.Yb[f],a,b,c);0<=d&&(h.Yb[f]=d);break;case 4193756:d=K(this,h.ia[f],a,b,c);0<=d&&(h.ia[f]=d&511);break;case 4193758:h.vb[f]=h.ia[f];d=h.vb[f];break;case 4193760:d=h.wc[f];break;case 4193762:d=h.xc[f];break;case 4193764:d=h.uc[f];break;case 4193766:d= a,b,c);0<=d&&(h.Ma=d&255);break;case 4193744:d=h.yc[f];break;case 4193746:d=I(this,h.Wb,a,b,c);0<=d&&(h.Wb=d);break;case 4193748:d=I(this,h.Xb[f],a,b,c);0<=d&&(h.Xb[f]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=h.zc[f];break;case 4193754:d=I(this,h.Yb[f],a,b,c);0<=d&&(h.Yb[f]=d);break;case 4193756:d=I(this,h.ha[f],a,b,c);0<=d&&(h.ha[f]=d&511);break;case 4193758:h.ub[f]=h.ha[f];d=h.ub[f];break;case 4193760:d=h.wc[f];break;case 4193762:d=h.xc[f];break;case 4193764:d=h.uc[f];break;case 4193766:d=
h.vc[f];break;case 4193768:d=K(this,h.ya,a,b,c);0<=d&&(h.ya=d&63,h.A=h.A&-769|(d&3)<<8);break;case 4193770:d=K(this,h.Gb,a,b,c);0<=d&&(h.Gb=d);break;default:return e.o|=16,L(e,4)}break;case 4192512:f=this.j;switch(a&-2){case 4192512:d=K(this,f.s,a,b,c);0<=b&&0<=d&&(f.oa=f.oa&60|d>>4&3,f.s=f.s&-1023|d&1022,f.s&128||eb(this));break;case 4192514:d=K(this,f.Xa,a,b,c);0<=d&&(f.Xa=d&65534);break;case 4192516:d=K(this,f.G,a,b,c);0<=d&&(f.G=d);break;case 4192518:d=K(this,f.ta,a,b,c);0<=d&&(f.ta=d);break; h.vc[f];break;case 4193768:d=I(this,h.ya,a,b,c);0<=d&&(h.ya=d&63,h.C=h.C&-769|(d&3)<<8);break;case 4193770:d=I(this,h.Hb,a,b,c);0<=d&&(h.Hb=d);break;default:return e.m|=16,J(e,4)}break;case 4192512:f=this.j;switch(a&-2){case 4192512:d=I(this,f.o,a,b,c);0<=b&&0<=d&&(f.na=f.na&60|d>>4&3,f.o=f.o&-1023|d&1022,f.o&128||hb(this));break;case 4192514:d=I(this,f.$a,a,b,c);0<=d&&(f.$a=d&65534);break;case 4192516:d=I(this,f.H,a,b,c);0<=d&&(f.H=d);break;case 4192518:d=I(this,f.ta,a,b,c);0<=d&&(f.ta=d);break;
case 4192520:d=K(this,f.oa,a,b,c);0<=d&&(f.oa=d&63,f.s=f.s&-49|(f.oa&3)<<4);break;default:return e.o|=16,L(e,4)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=e.Da:(d=K(this,e.Da,a,b,c),0<=d&&(70!==e.Ja&&(d&=-49),e.Da=d,e.qb[0]=d&4?15:7,e.qb[1]=d&2?15:7,e.qb[3]=d&1?15:7,e.pb&&(f=2,e.Da&16&&(f=1),this.h.Qa=this.h.Qa&-8|f)));break;default:return e.o|=16,L(e,4)}break;case 4191424:f=a>>1&31;d=K(this,e.O[0][f],a,b,c);0<=d&&(e.O[0][f]=d,e.O[0][f&15]&=65295);break;case 4191360:f=a>>1&31;d=K(this,e.O[1][f], case 4192520:d=I(this,f.na,a,b,c);0<=d&&(f.na=d&63,f.o=f.o&-49|(f.na&3)<<4);break;default:return e.m|=16,J(e,4)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=e.Fa:(d=I(this,e.Fa,a,b,c),0<=d&&(70!==e.Ja&&(d&=-49),e.Fa=d,e.qb[0]=d&4?15:7,e.qb[1]=d&2?15:7,e.qb[3]=d&1?15:7,e.pb&&(f=2,e.Fa&16&&(f=1),this.h.Sa=this.h.Sa&-8|f)));break;default:return e.m|=16,J(e,4)}break;case 4191424:f=a>>1&31;d=I(this,e.O[0][f],a,b,c);0<=d&&(e.O[0][f]=d,e.O[0][f&15]&=65295);break;case 4191360:f=a>>1&31;d=I(this,e.O[1][f],
a,b,c);0<=d&&(e.O[1][f]=d,e.O[1][f&15]&=65295);break;case 4190400:case 4190336:if(70!==e.Ja)return L(e,4);f=a>>2&31;d=e.fb[f];a&2&&(d>>=16);d&=65535;0<=b&&(d=K(this,d,a,b,c),0<=d&&(e.fb[f]=a&2?d<<16|e.fb[f]&65535:e.fb[f]&4294901760|d&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)d=Xa[a>>1&255];else return e.o|=16,L(e,4);break;default:return e.o|=16,L(e,4)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===typeof d&&console.log("panic(76)"); a,b,c);0<=d&&(e.O[1][f]=d,e.O[1][f&15]&=65295);break;case 4190400:case 4190336:if(70!==e.Ja)return J(e,4);f=a>>2&31;d=e.ib[f];a&2&&(d>>=16);d&=65535;0<=b&&(d=I(this,d,a,b,c),0<=d&&(e.ib[f]=a&2?d<<16|e.ib[f]&65535:e.ib[f]&4294901760|d&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)d=$a[a>>1&255];else return e.m|=16,J(e,4);break;default:return e.m|=16,J(e,4)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===typeof d&&console.log("panic(76)");
return d};var kb={},Va=(kb[65382]=[null,null,I.prototype.nc,I.prototype.Cc],kb[65402]=[null,null,I.prototype.oc,I.prototype.Dc],kb[65396]=[null,null,I.prototype.qc,I.prototype.Gc],kb[65534]=[null,null,I.prototype.pc,I.prototype.Ec],kb);v(function(){for(var a=D(document,"pdp11","device"),b=0;b<a.length;b++){var c=a[b],d=B(c),d=new I(d);C(d,c)}});var lb;if(Ha){var mb=new ArrayBuffer(2);(new DataView(mb)).setUint16(0,256,!0);lb=256===(new Uint16Array(mb))[0]}else lb=!1;var nb=lb; return d};var mb={},Ya=(mb[65382]=[null,null,G.prototype.nc,G.prototype.Cc],mb[65402]=[null,null,G.prototype.oc,G.prototype.Dc],mb[65396]=[null,null,G.prototype.qc,G.prototype.Gc],mb[65534]=[null,null,G.prototype.pc,G.prototype.Ec],mb);u(function(){for(var a=C(document,"pdp11","device"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new G(d);B(d,c)}});var nb;if(Ia){var ob=new ArrayBuffer(2);(new DataView(ob)).setUint16(0,256,!0);nb=256===(new Uint16Array(ob))[0]}else nb=!1;var pb=nb;
function G(a,b,c,d,f){this.id=ob+=2;this.a=null;this.Ua=a;this.wb=b;this.size=c||0;this.type=d||pb;this.f=d==qb;this.controller=null;Ka(this);this.ra=this.fc=!1;if(c)if(f)this.controller=f,this.a=null,rb(this,f.Va);else if(Ha)this.u=new ArrayBuffer(c),this.l=new DataView(this.u,0,c),this.b=new Uint8Array(this.u,0,c),this.j=new Uint16Array(this.u,0,c>>1),this.a=new Int32Array(this.u,0,c>>2),rb(this,nb?sb:tb);else{this.a=Array(c>>2);for(a=0;a<this.a.length;a++)this.a[a]=0;rb(this,ub)}else rb(this)} function F(a,b,c,d,f){this.id=qb+=2;this.a=null;this.Xa=a;this.vb=b;this.size=c||0;this.type=d||rb;this.h=d==sb;this.controller=null;La(this);this.qa=this.fc=!1;if(c)if(f)this.controller=f,this.a=null,tb(this,f.Ya);else if(Ia)this.f=new ArrayBuffer(c),this.u=new DataView(this.f,0,c),this.b=new Uint8Array(this.f,0,c),this.l=new Uint16Array(this.f,0,c>>1),this.a=new Int32Array(this.f,0,c>>2),tb(this,pb?ub:vb);else{this.a=Array(c>>2);for(a=0;a<this.a.length;a++)this.a[a]=0;tb(this,wb)}else tb(this)}
var pb=0,qb=2,Qa=4,Sa=["NONE","RAM","ROM","VID","H/W"],ob=0; var rb=0,sb=2,Ra=4,Ta=["NONE","RAM","ROM","VID","H/W"],qb=0;
G.prototype={constructor:G,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(Ha)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.l.getInt32(b<<2,!0);else a=this.a;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ha)for(b=0;b<a.length;b++)this.l.setInt32(b<<2,a[b],!0);else this.a=a;return this.ra=!0}return!1},m:function(){return 255},B:function(){},w:function(a,b){return this.ab(a++,b++)|this.ab(a,b)<<8},D:function(a,b,c){this.gb(a++, F.prototype={constructor:F,parent:null,save:function(){var a,b;if(this.controller)a=null;else if(Ia)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.u.getInt32(b<<2,!0);else a=this.a;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(Ia)for(b=0;b<a.length;b++)this.u.setInt32(b<<2,a[b],!0);else this.a=a;return this.qa=!0}return!1},A:function(){return 255},G:function(){},B:function(a,b){return this.eb(a++,b++)|this.eb(a,b)<<8},J:function(a,b,c){this.Wa(a++,
b&255,c++);this.gb(a,b>>8,c)},X:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},ka:function(a){var b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},Ba:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<<a)|b<<a;this.ra=!0},Pa:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<<a)|b<<a:(this.a[c]=this.a[c]&16777215|b<<24,c++,this.a[c]=this.a[c]&-256|b>>8);this.ra=!0},M:function(a,b){return this.T(a,b)},Z:function(a,b){return this.fa(a, b&255,c++);this.Wa(a,b>>8,c)},Y:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},la:function(a){var b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},Da:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<<a)|b<<a;this.qa=!0},Ra:function(a,b){var c=a>>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<<a)|b<<a:(this.a[c]=this.a[c]&16777215|b<<24,c++,this.a[c]=this.a[c]&-256|b>>8);this.qa=!0},R:function(a,b){return this.W(a,b)},ia:function(a,b){return this.ja(a,
b)},ma:function(a,b,c){this.f||this.ac(a,b,c)},Fa:function(a,b,c){this.f||this.Ga(a,b,c)},I:function(a){return this.b[a]},W:function(a){return this.b[a]},Y:function(a){return this.l.getUint16(a,!0)},ja:function(a){return a&1?this.b[a]|this.b[a+1]<<8:this.j[a>>1]},la:function(a,b){this.b[a]=b;this.ra=!0},Aa:function(a,b){this.b[a]=b;this.ra=!0},Ea:function(a,b){this.l.setUint16(a,b,!0);this.ra=!0},Oa:function(a,b){a&1?(this.b[a]=b,this.b[a+1]=b>>8):this.j[a>>1]=b;this.ra=!0}}; b)},Ba:function(a,b,c){this.h||this.ac(a,b,c)},Oa:function(a,b,c){this.h||this.Pa(a,b,c)},K:function(a){return this.b[a]},X:function(a){return this.b[a]},Z:function(a){return this.u.getUint16(a,!0)},ka:function(a){return a&1?this.b[a]|this.b[a+1]<<8:this.l[a>>1]},Aa:function(a,b){this.b[a]=b;this.qa=!0},Ca:function(a,b){this.b[a]=b;this.qa=!0},Ga:function(a,b){this.u.setUint16(a,b,!0);this.qa=!0},Qa:function(a,b){a&1?(this.b[a]=b,this.b[a+1]=b>>8):this.l[a>>1]=b;this.qa=!0}};
function Ka(a,b,c){a.H=b;a.h=a.i=0;c&&((a.h=c.h)&&vb(a,wb,!1),(a.i=c.i)&&xb(a,wb,!1))}function xb(a,b,c){c&&a.i||(a.gb=!a.f&&b[1]||a.B,a.Fc=!a.f&&b[3]||a.D);if(c||void 0===c)a.ac=b[1]||a.B,a.Ga=b[3]||a.D}function vb(a,b,c){c&&a.h||(a.ab=b[0]||a.m,a.tb=b[2]||a.w);if(c||void 0===c)a.T=b[0]||a.m,a.fa=b[2]||a.w}function rb(a,b){b||(b=yb);vb(a,b,void 0);xb(a,b,void 0)}var yb=[],ub=[G.prototype.X,G.prototype.Ba,G.prototype.ka,G.prototype.Pa],wb=[G.prototype.M,G.prototype.ma,G.prototype.Z,G.prototype.Fa]; function La(a,b,c){a.I=b;a.i=a.j=0;c&&((a.i=c.i)&&xb(a,yb,!1),(a.j=c.j)&&zb(a,yb,!1))}function zb(a,b,c){c&&a.j||(a.Wa=!a.h&&b[1]||a.G,a.Fc=!a.h&&b[3]||a.J);if(c||void 0===c)a.ac=b[1]||a.G,a.Pa=b[3]||a.J}function xb(a,b,c){c&&a.i||(a.eb=b[0]||a.A,a.sb=b[2]||a.B);if(c||void 0===c)a.W=b[0]||a.A,a.ja=b[2]||a.B}function tb(a,b){b||(b=Ab);xb(a,b,void 0);zb(a,b,void 0)}var Ab=[],wb=[F.prototype.Y,F.prototype.Da,F.prototype.la,F.prototype.Ra],yb=[F.prototype.R,F.prototype.Ba,F.prototype.ia,F.prototype.Oa];
if(Ha)var tb=[G.prototype.I,G.prototype.la,G.prototype.Y,G.prototype.Ea],sb=[G.prototype.W,G.prototype.Aa,G.prototype.ja,G.prototype.Oa];function zb(a,b){x.call(this,"CPU",a,zb);var c=a.multiplier||1;this.lb=a.cycles||b;this.Z=c;this.Ab=Math.round(this.lb/1E4)/100;this.ka=this.Ab*this.Z;this.g.ea=!1;this.g.Zb=!1;this.g.Wa=a.autoStart;this.g.Ob=!1;this.g.nb=!1;this.jb=this.la=0;this.kb=a.csStart;this.Ba=a.csInterval;this.Ea=a.csStop;this.I=[];this.Sb=this.Hb.bind(this);E(this)}z(zb); if(Ia)var vb=[F.prototype.K,F.prototype.Aa,F.prototype.Z,F.prototype.Ga],ub=[F.prototype.X,F.prototype.Ca,F.prototype.ka,F.prototype.Qa];function Bb(a,b){v.call(this,"CPU",a,Bb);var c=a.multiplier||1;this.lb=a.cycles||b;this.Y=c;this.yb=Math.round(this.lb/1E4)/100;this.ja=this.yb*this.Y;this.g.ea=!1;this.g.Zb=!1;this.g.Za=a.autoStart;this.g.Qb=!1;this.g.nb=!1;this.Ra=this.ka=0;this.kb=a.csStart;this.Ba=a.csInterval;this.Ca=a.csStop;this.G=[];this.Tb=this.Ib.bind(this);D(this)}x(Bb);
var Ab=["power","reset"];l=zb.prototype;l.Ka=function(a,b,c,d){this.h=a;this.l=b;this.H=d;for(b=0;b<Ab.length;b++)(c=this.u[Ab[b]])&&this.h.ba(null,Ab[b],c);this.Aa=null;a=Bb(a,"autoStart");null!=a&&(this.g.Wa="true"==a?!0:"false"==a?!1:!!a);E(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};l.va=function(a,b){if(!b){if(a&&this.restore){Cb(this);if(!this.restore(a))return!1;Db(this)}else this.reset();this.J("No debugger detected")}Eb(this);return!0}; var Cb=["power","reset"];l=Bb.prototype;l.Ka=function(a,b,c,d){this.l=a;this.w=b;this.I=d;for(b=0;b<Cb.length;b++)(c=this.u[Cb[b]])&&this.l.ba(null,Cb[b],c);this.Aa=null;a=Db(a,"autoStart");null!=a&&(this.g.Za="true"==a?!0:"false"==a?!1:!!a);D(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};l.va=function(a,b){if(!b){if(a&&this.restore){Eb(this);if(!this.restore(a))return!1;Fb(this)}else this.reset();this.N("No debugger detected")}Gb(this);return!0};
l.ua=function(a){return a?this.save():!0};l.Wa=function(){return this.g.Wa||void 0===this.u.run?(this.Hb(),!0):!1};l.Tb=function(){return 0};function Db(a){void 0===a.kb&&(a.kb=0);void 0===a.Ba&&(a.Ba=-1);void 0===a.Ea&&(a.Ea=-1);a.g.nb=0<=a.kb&&0<a.Ba;a.g.nb&&(a.jb=0,a.la=a.kb-a.fa)} l.ua=function(a){return a?this.save():!0};l.Za=function(){return this.g.Za||void 0===this.u.run?(this.Ib(),!0):!1};l.Ub=function(){return 0};function Fb(a){void 0===a.kb&&(a.kb=0);void 0===a.Ba&&(a.Ba=-1);void 0===a.Ca&&(a.Ca=-1);a.g.nb=0<=a.kb&&0<a.Ba;a.g.nb&&(a.Ra=0,a.ka=a.kb-a.Z)}
function M(a,b,c,d){if(a.u[b]){void 0===c&&(a.g.error=!0,a.K("Value for "+b+" is invalid"),N(a));var f=a.H&&a.H.b||8;c=!a.g.ea||a.g.Ob?8==f?n(c,d):q(c,d):"--------".substr(0,d||4);a.u[b].textContent!=c&&(a.u[b].textContent=c)}} function K(a,b,c,d){if(a.u[b]){void 0===c&&(a.g.error=!0,a.L("Value for "+b+" is invalid"),M(a));var f=a.I&&a.I.b||8;c=!a.g.ea||a.g.Qb?8==f?ba(c,d):n(c,d):"--------".substr(0,d||4);a.u[b].textContent!=c&&(a.u[b].textContent=c)}}
l.ba=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.u[b]=c;a=!0;break;case "run":this.u[b]=c;c.onclick=function(){var a;if(a=d.h)if(a=d.h,a.g.L)a=!0;else{var b=null,c,h=A(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.g.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.g.L);c++);c==h.length&&(b=a);t("The "+b.type+" component ("+b.id+") is not "+(b.g.ready?"powered yet":"ready yet"+(b.ob?" (waiting for notification)":""))+".");a=!1}a&&(d.g.ea?N(d):d.Hb())};a=!0; l.ba=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.u[b]=c;a=!0;break;case "run":this.u[b]=c;c.onclick=function(){var a;if(a=d.l)if(a=d.l,a.g.M)a=!0;else{var b=null,c,h=z(a.id);for(c=0;c<h.length&&(b=h[c],b===a||b.g.ready);c++);if(c==h.length)for(c=0;c<h.length&&(b=h[c],b===a||b.g.M);c++);c==h.length&&(b=a);r("The "+b.type+" component ("+b.id+") is not "+(b.g.ready?"powered yet":"ready yet"+(b.ob?" (waiting for notification)":""))+".");a=!1}a&&(d.g.ea?M(d):d.Ib())};a=!0;
break;case "speed":this.u[b]=c;a=!0;break;case "setSpeed":this.u[b]=c,c.onclick=function(){Fb(d,d.Z<<1)},c.textContent=this.ka.toFixed(2)+"Mhz",a=!0}return a};function Gb(a,b,c){a.fa+=b;c&&(a.Y=a.a=0)}function Hb(a,b){var c=1;b&&1<a.Z&&a.W&&(c=a.W/a.Ab);a.Qb=Math.round(1E3/30);a.mb=Math.floor(a.lb/30*c);b||(a.Fa=a.mb);a.xb=0}function Ib(a){return a.fa+a.T+a.Y-a.a}function Cb(a){a.W=0;a.Rb=0;a.fa=a.T=a.Y=a.a=0;Db(a);Fb(a,1)} break;case "speed":this.u[b]=c;a=!0;break;case "setSpeed":this.u[b]=c,c.onclick=function(){Hb(d,d.Y<<1)},c.textContent=this.ja.toFixed(2)+"Mhz",a=!0}return a};function Ib(a,b,c){a.Z+=b;c&&(a.J=a.a=0)}function Jb(a,b){var c=1;b&&1<a.Y&&a.W&&(c=a.W/a.yb);a.Pb=Math.round(1E3/30);a.mb=Math.floor(a.lb/30*c);b||(a.Da=a.mb);a.zb=0}function Kb(a){return a.Z+a.R+a.J-a.a}function Eb(a){a.W=0;a.Sb=0;a.Z=a.R=a.J=a.a=0;Fb(a);Hb(a,1)}
function Fb(a,b){if(void 0!==b&&(.8>a.W/a.ka&&(b=1),a.Z=b,b=a.Ab*a.Z,a.ka!=b)){a.ka=b;b=a.ka.toFixed(2)+"Mhz";var c=a.u.setSpeed;c&&(c.textContent=b);a.J("target speed: "+b)}Gb(a,a.T);a.T=0;a.M=ha();a.X=0;Hb(a)}function Ya(a,b){var c=a.I.length;a.I.push([-1,b]);return c}function Za(a,b){var c;0<=b&&b<a.I.length&&0>a.I[b][0]&&(c=a.lb*a.Z/1E3*(1E3/60),a.I[b][0]=c)} function Hb(a,b){if(void 0!==b&&(.8>a.W/a.ja&&(b=1),a.Y=b,b=a.yb*a.Y,a.ja!=b)){a.ja=b;b=a.ja.toFixed(2)+"Mhz";var c=a.u.setSpeed;c&&(c.textContent=b);a.N("target speed: "+b)}Ib(a,a.R);a.R=0;a.K=ia();a.X=0;Jb(a)}function ab(a,b){var c=a.G.length;a.G.push([-1,b]);return c}function bb(a,b){var c;0<=b&&b<a.G.length&&0>a.G[b][0]&&(c=a.lb*a.Y/1E3*(1E3/60),a.G[b][0]=c)}
l.Hb=function(){if(Fa(this,!0)){if(!this.g.ea){Fb(this);this.h&&this.h.start(this.M,Ib(this));this.g.ea=!0;this.g.Zb=!0;this.Aa&&this.Aa.start();var a=this.u.run;a&&(a.textContent="Halt");this.h&&this.h.Na(!0)}this.xb>=this.lb&&Hb(this,!0);this.Ga=0;this.ib=ha();this.X&&(a=this.ib-this.X,a>this.Qb&&(this.M+=a,this.M>this.ib&&(this.M=this.ib)));try{do{for(var b,c=this.g.nb?1:this.mb,d=this.I.length-1;0<=d;d--){var f=this.I[d];0>f[0]||c>f[0]&&(c=f[0])}b=c;try{this.$b(b)}catch(m){if("number"!=typeof m)throw m; l.Ib=function(){if(Ga(this,!0)){if(!this.g.ea){Hb(this);this.l&&this.l.start(this.K,Kb(this));this.g.ea=!0;this.g.Zb=!0;this.Aa&&this.Aa.start();var a=this.u.run;a&&(a.textContent="Halt");this.l&&this.l.Na(!0)}this.zb>=this.lb&&Jb(this,!0);this.Ga=0;this.Qa=ia();this.X&&(a=this.Qa-this.X,a>this.Pb&&(this.K+=a,this.K>this.Qa&&(this.K=this.Qa)));try{do{for(var b,c=this.g.nb?1:this.mb,d=this.G.length-1;0<=d;d--){var f=this.G[d];0>f[0]||c>f[0]&&(c=f[0])}b=c;try{this.$b(b)}catch(m){if("number"!=typeof m)throw m;
}for(var e=this.Y-this.a,a=e,g=this.I.length-1;0<=g;g--){var h=this.I[g];0>h[0]||(h[0]-=a,0>=h[0]&&(h[0]=-1,h[1]()))}this.Ga+=e;this.T+=e;Gb(this,0,!0);a=e;if(this.g.nb){var k=!1;this.jb=this.jb+this.Tb()|0;this.la-=a;0>=this.la&&(this.la+=this.Ba,k=!0);0<=this.Ea&&this.Ea<=Ib(this)&&(this.Ba=this.Ea=-1,Db(this),N(this),k=!0);k&&this.J(Ib(this)+" cycles: checksum="+q(this.jb))}this.Fa-=e;if(0>=this.Fa){this.Fa+=this.mb;15<=++this.Rb&&(this.h&&this.h.Na(),this.Rb=0);break}}while(this.g.ea)}catch(m){N(this); }for(var e=this.J-this.a,a=e,g=this.G.length-1;0<=g;g--){var h=this.G[g];0>h[0]||(h[0]-=a,0>=h[0]&&(h[0]=-1,h[1]()))}this.Ga+=e;this.R+=e;Ib(this,0,!0);a=e;if(this.g.nb){var k=!1;this.Ra=this.Ra+this.Ub()|0;this.ka-=a;0>=this.ka&&(this.ka+=this.Ba,k=!0);0<=this.Ca&&this.Ca<=Kb(this)&&(this.Ba=this.Ca=-1,Fb(this),M(this),k=!0);k&&this.N(Kb(this)+" cycles: checksum="+n(this.Ra))}this.Da-=e;if(0>=this.Da){this.Da+=this.mb;15<=++this.Sb&&(this.l&&this.l.Na(),this.Sb=0);break}}while(this.g.ea)}catch(m){M(this);
Eb(this);this.h&&this.h.stop(ha(),Ib(this));Fa(this,!1);b=m.stack||m.message;this.g.error=!0;this.K(b);return}b=setTimeout;c=this.Sb;this.X=ha();d=this.Qb;this.Ga&&(d=Math.round(d*this.Ga/this.mb));d-=this.X-this.ib;if(f=this.X-this.M)this.W=Math.round(this.T/(10*f))/100,864E5<=f&&(this.fa=0,Fb(this));if(0>d||this.W<this.ka)-1E3>d&&(this.M-=d),d=0;this.xb+=this.Ga;this.X+=d;b(c,d)}else Eb(this),this.h&&this.h.stop(ha(),Ib(this))};l.$b=function(){return 0}; Gb(this);this.l&&this.l.stop(ia(),Kb(this));Ga(this,!1);b=m.stack||m.message;this.g.error=!0;this.L(b);return}b=setTimeout;c=this.Tb;this.X=ia();d=this.Pb;this.Ga&&(d=Math.round(d*this.Ga/this.mb));d-=this.X-this.Qa;if(f=this.X-this.K)this.W=Math.round(this.R/(10*f))/100,864E5<=f&&(this.Z=0,Hb(this));if(0>d||this.W<this.ja)-1E3>d&&(this.K-=d),d=0;this.zb+=this.Ga;this.X+=d;b(c,d)}else Gb(this),this.l&&this.l.stop(ia(),Kb(this))};l.$b=function(){return 0};
function N(a){a.g.Ya&&(a.g.Bb=!0);a.Y-=a.a;a.a=0;Gb(a,a.T);a.T=0;if(a.g.ea){a.g.ea=!1;a.Aa&&a.Aa.stop();var b=a.u.run;b&&(b.textContent="Run")}a.g.complete=void 0}function Eb(a){a.h&&a.h.Na(void 0)} function M(a){a.g.ab&&(a.g.Bb=!0);a.J-=a.a;a.a=0;Ib(a,a.R);a.R=0;if(a.g.ea){a.g.ea=!1;a.Aa&&a.Aa.stop();var b=a.u.run;b&&(b.textContent="Run")}a.g.complete=void 0}function Gb(a){a.l&&a.l.Na(void 0)}
function Jb(a){this.jc=a.resetAddr||0;zb.call(this,a,1E6);this.Kb=0;this.decode=Kb.bind(this);this.D=65536;this.j=32768;this.m=65535;this.i=32768;this.c=[0,0,0,0,0,0,0,this.jc];this.La=[0,0,0,0,0,0];this.xa=[0,0,0,0];this.Pa=this.B=0;this.O=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0, function Lb(a){this.jc=a.resetAddr||0;Bb.call(this,a,1E6);this.Lb=0;this.decode=Mb.bind(this);this.h=65536;this.b=32768;this.f=65535;this.i=32768;this.F=15;this.c=[0,0,0,0,0,0,0,this.jc];this.La=[0,0,0,0,0,0];this.xa=[0,0,0,0];this.Pa=this.B=0;this.O=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.fb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.Db=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.b=-1;this.C=0;this.Ja=70;this.ma=-1;this.Ub=0;Lb(this);this.g.complete=this.g.dc=!1}z(Jb,zb);l=Jb.prototype;l.reset=function(){this.g.ea&&N(this);Lb(this);Cb(this);this.g.error=!1;this.parent.reset.call(this)}; 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.ib=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.Db=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.s=0;this.Ja=70;this.la=-1;this.Ab=0;Nb(this);this.g.complete=this.g.dc=!1}x(Lb,Bb);l=Lb.prototype;l.reset=function(){this.g.ea&&M(this);Nb(this);Eb(this);this.g.error=!1;this.parent.reset.call(this)};
function Lb(a){a.wa=255;a.o=0;a.Fb=0;a.w=0;a.Ca=0;a.hb=0;a.Da=0;a.pb=0;a.Oa=0;a.qb=[7,7,7,7];a.f=[];a.ha=2;$a(a)}function $a(a){a.pb?(a.Jb=65536,a.ja=a.hc,a.tb=a.da):(a.Jb=0,a.ja=a.gc,a.tb=a.ub)}l.Tb=function(){return 0};l.save=function(){var a=new O(this);a.set(0,[]);a.set(1,[this.fa,this.Z]);a.set(2,Ta(this.l));return a.data()}; function Nb(a){a.wa=255;a.m=0;a.Gb=0;a.A=0;a.Ea=0;a.jb=0;a.Fa=0;a.pb=0;a.Oa=0;a.qb=[7,7,7,7];a.j=[];a.ga=2;cb(a)}function cb(a){a.pb?(a.Kb=65536,a.ia=a.ic,a.sb=a.da):(a.Kb=0,a.ia=a.hc,a.sb=a.tb)}l.Ub=function(){return 0};l.save=function(){var a=new N(this);a.set(0,[]);a.set(1,[this.Z,this.Y]);a.set(2,Wa(this.w));return a.data()};
l.restore=function(a){var b=a[1];this.fa=b[1];Fb(this,b[3]);a:{b=this.l;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],f=a[c+1];if(f&&f.length<b.D){for(var e=0,g=Array(b.D),h=0;h<f.length-1;)for(var k=f[h++],m=f[h++];k--;)g[e++]=m;f=g}e=b.b[d];if(!e||!e.restore(f)){t("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b}; l.restore=function(a){var b=a[1];this.Z=b[1];Hb(this,b[3]);a:{b=this.w;a=a[2];var c;for(c=0;c<a.length-1;c+=2){var d=a[c],f=a[c+1];if(f&&f.length<b.J){for(var e=0,g=Array(b.J),h=0;h<f.length-1;)for(var k=f[h++],m=f[h++];k--;)g[e++]=m;f=g}e=b.b[d];if(!e||!e.restore(f)){r("Unable to restore memory block "+d);b=!1;break a}}b=!0}return b};
l.ba=function(a,b,c){switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":this.u[b]=c;this.Kb++;a=!0;break;default:a=this.parent.ba.call(this,a,b,c)}return a}; l.ba=function(a,b,c){switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":this.u[b]=c;this.Lb++;a=!0;break;default:a=this.parent.ba.call(this,a,b,c)}return a};
l.Na=function(a){if(this.Kb&&(a||!this.g.ea||this.g.Ob)){for(a=0;a<this.c.length;a++)M(this,"R"+a,this.c[a]);a=ab(this);M(this,"PS",a);M(this,"NF",a&8?1:0,1);M(this,"ZF",a&4?1:0,1);M(this,"VF",a&2?1:0,1);M(this,"CF",a&1?1:0,1)}if(a=this.u.speed)a.textContent=this.g.ea&&this.W?this.W.toFixed(2)+"Mhz":"Stopped"}; l.Na=function(a){if(this.Lb&&(a||!this.g.ea||this.g.Qb)){for(a=0;a<this.c.length;a++)K(this,"R"+a,this.c[a]);a=db(this);K(this,"PS",a);K(this,"NF",a&8?1:0,1);K(this,"ZF",a&4?1:0,1);K(this,"VF",a&2?1:0,1);K(this,"CF",a&1?1:0,1)}if(a=this.u.speed)a.textContent=this.g.ea&&this.W?this.W.toFixed(2)+"Mhz":"Stopped"};function O(a){return a.h&65536?1:0}l.ra=function(){return this.i&32768?8:0};
function J(a,b,c,d,f){for(var e=a.f.length;0<e--;)if(a.f[e].Bc===d){0<e&&(a.f[e-1].qa+=a.f[e].qa);a.f.splice(e,1);break}if(0<=b){2===a.Ub&&(b=0,a.Ub=0,setTimeout(a.Sb,0));for(e=a.f.length;0<e--;){if(a.f[e].qa>b){a.f[e].qa-=b;break}b-=a.f[e].qa}a.f.splice(e+1,0,{delay:b,priority:c<<5&224,vector:d,callback:f})}a.ha=2}function ab(a){return a.N=a.N&63728|(a.i&32768?8:0)|(a.m&65535?0:4)|(a.j&32768?2:0)|(a.D&65536?1:0)} function H(a,b,c,d,f){for(var e=a.j.length;0<e--;)if(a.j[e].Bc===d){0<e&&(a.j[e-1].pa+=a.j[e].pa);a.j.splice(e,1);break}if(0<=b){2===a.Ab&&(b=0,a.Ab=0,setTimeout(a.Tb,0));for(e=a.j.length;0<e--;){if(a.j[e].pa>b){a.j[e].pa-=b;break}b-=a.j[e].pa}a.j.splice(e+1,0,{delay:b,priority:c<<5&224,vector:d,callback:f})}a.ga=2}function db(a){return a.F=a.F&63728|a.ra()|(a.f&65535?0:4)|(a.b&32768?2:0)|O(a)}
function bb(a,b){a.i=b<<12;a.m=~b&4;a.j=b<<14;a.D=b<<16;if((b^a.N)&2048)for(var c=a.La.length;0<=--c;){var d=a.c[c];a.c[c]=a.La[c];a.La[c]=d}a.B=b>>14&3;c=a.N>>14&3;a.B!=c&&(a.xa[c]=a.c[6],a.c[6]=a.xa[a.B]);a.ha=2;a.N=b}function Mb(a,b){a.C&128||(a.i=a.m=a.D=b,a.j=0)}function P(a,b){a.C&128||(a.i=a.m=b,a.j=0)}function Nb(a,b,c,d){a.C&128||(a.i=a.m=a.D=b,a.j=(c^d)&(d^b))} function eb(a,b){a.i=b<<12;a.f=~b&4;a.b=b<<14;a.h=b<<16;if((b^a.F)&2048)for(var c=a.La.length;0<=--c;){var d=a.c[c];a.c[c]=a.La[c];a.La[c]=d}a.B=b>>14&3;c=a.F>>14&3;a.B!=c&&(a.xa[c]=a.c[6],a.c[6]=a.xa[a.B]);a.ga=2;a.F=b}function P(a,b,c){a.s&128||(a.i=a.f=a.h=b,a.b=c||0)}function Q(a,b){a.s&128||(a.i=a.f=b,a.b=0)}function Ob(a,b,c,d){a.s&128||(a.i=a.f=a.h=b,a.b=(c^b)&(d^b))}function R(a,b){a.s&128||(a.i=a.f=a.h=b,a.b=a.i^a.h>>1)}function Pb(a,b,c,d){a.s&128||(a.i=a.f=a.h=b,a.b=(c^d)&(d^b))}
function L(a,b){var c=!1;0>a.ma?a.ma=ab(a):a.B||(b=4,c=!0);a.w&57344||(a.Ca=63222,a.hb=b);a.B=0;var d=a.da(b|65536),f=a.da(b+2&65535|65536);bb(a,f&53247|a.ma>>2&12288);c&&(a.o|=4,a.c[6]=4);Ob(a,a.ma);Ob(a,a.c[7]);a.c[7]=d;a.C&=-113;a.ma=-1;throw b;}function jb(a,b){var c=b>>13&31;31>c?a.Da&32&&(b=a.fb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} function J(a,b){var c=!1;0>a.la?a.la=db(a):a.B||(b=4,c=!0);a.A&57344||(a.Ea=63222,a.jb=b);a.B=0;var d=a.da(b|65536),f=a.da(b+2&65535|65536);eb(a,f&53247|a.la>>2&12288);c&&(a.m|=4,a.c[6]=4);Qb(a,a.la);Qb(a,a.c[7]);a.c[7]=d;a.s&=-113;a.la=-1;throw b;}function Rb(a){var b=Sb(a),c=Sb(a)&-1793;a.F&49152&&(c=c&-225|a.F&63712);a.c[7]=b&65535;eb(a,c);a.s&=-17}function lb(a,b){var c=b>>13&31;31>c?a.Fa&32&&(b=a.ib[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b}
function Pb(a,b,c){var d,f,e,g=0;if(c&a.pb){d=b>>13&a.qb[a.B];f=a.O[a.B][d];e=(a.O[a.B][d+16]<<6)+(b&8191)&4194303;a.Da&16?3932160<=e&&4186112>e&&(e=jb(a,e&262143)):(e&=262143,253952<=e&&(e|=4186112));3932160>e&&(3915776<=e&&(a.o|=32,L(a,4)),e&1&&!(c&1)&&(a.o|=64,L(a,4)));switch(f&7){case 1:g=4096;case 2:f|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:f|=c&4?192:128;break;default:g=32768}32512!==(f&32520)&&(f&8?f&32512&&(b&8128)<(f>>2&8128)&&(g|=16384):(b&8128)>(f>>2&8128)&&(g|= function Tb(a,b,c){var d,f,e,g=0;if(c&a.pb){d=b>>13&a.qb[a.B];f=a.O[a.B][d];e=(a.O[a.B][d+16]<<6)+(b&8191)&4194303;a.Fa&16?3932160<=e&&4186112>e&&(e=lb(a,e&262143)):(e&=262143,253952<=e&&(e|=4186112));3932160>e&&(3915776<=e&&(a.m|=32,J(a,4)),e&1&&!(c&1)&&(a.m|=64,J(a,4)));switch(f&7){case 1:g=4096;case 2:f|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:f|=c&4?192:128;break;default:g=32768}32512!==(f&32520)&&(f&8?f&32512&&(b&8128)<(f>>2&8128)&&(g|=16384):(b&8128)>(f>>2&8128)&&(g|=
16384));a.O[a.B][d]=f;if(4194170!==e||a.B)a.Oa=a.B,a.Pa=d;g&&(g&57344&&(0<=a.ma&&(g|=128),a.w&57344||(a.w=a.w|g|a.Oa<<5|a.Pa<<1),L(a,168)),a.w&61440||!(4191360>e||4194239<e)||(a.w|=4096,a.w&512&&(a.C|=32)))}else e=b&65535,57344<=e?e|=4186112:e&1&&!(c&1)&&(a.o|=64,L(a,4));return e}l.ub=function(a){if(4194304<=a)a=this.c[a-4194304];else if(0<=a){var b=this.l,c=a&b.h,d=(a&b.i)>>>b.l;a=c!=b.h?b.b[d].tb(c,a):b.b[d++].ab(c,a)|b.b[d&b.I].ab(0,a+1)<<8}return a};l.da=function(a){return this.ub(Pb(this,a,2))}; 16384));a.O[a.B][d]=f;if(4194170!==e||a.B)a.Oa=a.B,a.Pa=d;g&&(g&57344&&(0<=a.la&&(g|=128),a.A&57344||(a.A=a.A|g|a.Oa<<5|a.Pa<<1),J(a,168)),a.A&61440||!(4191360>e||4194239<e)||(a.A|=4096,a.A&512&&(a.s|=32)))}else e=b&65535,57344<=e?e|=4186112:e&1&&!(c&1)&&(a.m|=64,J(a,4));return e}l.tb=function(a){if(4194304<=a)a=this.c[a-4194304];else if(0<=a){var b=this.w,c=a&b.i,d=(a&b.j)>>>b.f;a=c!=b.i?b.b[d].sb(c,a):b.b[d++].eb(c,a)|b.b[d&b.K].eb(0,a+1)<<8}return a};l.da=function(a){return this.tb(Tb(this,a,2))};
function ib(a,b,c){c&=65535;if(4194304<=b)return a.c[b-4194304]=c;if(0<=b){a=a.l;var d=c,f=b&a.h,e=(b&a.i)>>>a.l;f!=a.h?a.b[e].Fc(f,d&65535,b):(a.b[e++].gb(f,d&255,b),a.b[e&a.I].gb(0,d>>8&255,b+1));return c}return b}function Qb(a,b){4194304<=b?b=a.c[b-4194304]&255:0<=b&&(a=a.l,b=a.b[(b&a.i)>>>a.l].ab(b&a.h,b));return b}function Rb(a,b,c){c&=255;4194304<=b?a.c[b-4194304]=a.c[b-4194304]&65280|c:0<=b&&(a=a.l,a.b[(b&a.i)>>>a.l].gb(b&a.h,c&255,b))} function Sb(a){var b=a.da(a.c[6]|65536);a.c[6]=a.c[6]+2&65535;return b}function Qb(a,b){var c=a.c[6]-2&65535;a.c[6]=c;a.A&57344||(a.Ea=a.Ea<<8|246);!a.B&&c<=a.wa&&4<c&&(c<=a.wa-32?(a.m|=4,a.c[6]=4,J(a,4)):(a.m|=8,a.s|=4));c=Tb(a,c|65536,4);Va(a.w,c,b&65535)}
function Ob(a,b){var c=a.c[6]-2&65535;a.c[6]=c;a.w&57344||(a.Ca=a.Ca<<8|246);!a.B&&c<=a.wa&&4<c&&(c<=a.wa-32?(a.o|=4,a.c[6]=4,L(a,4)):(a.o|=8,a.C|=4));c=Pb(a,c|65536,4);ib(a,c,b)} function Ub(a,b,c){var d,f,e=b&7,g=c&8?0:a.Kb;switch(b>>3&7){case 0:J(a,4);break;case 1:return 6===e&&!a.B&&c&4&&(a.c[6]<=a.wa||65534<=a.c[6])&&(a.c[6]<=a.wa-32||65534<=a.c[6]?(a.m|=4,a.c[6]=4,J(a,4)):(a.m|=8,a.s|=64)),7===e?a.c[e]:a.c[e]|g;case 2:f=2;d=a.c[e];7!==e&&(d|=g,6>e&&c&1&&(f=1));break;case 3:f=2;d=a.c[e];7!==e&&(d|=g);if(0>(d=a.da(d)))return d;d|=g;break;case 4:f=-2;6>e&&c&1&&(f=-1);d=a.c[e]+f&65535;7!==e&&(d|=g);break;case 5:f=-2;d=a.c[e]-2&65535;7!==e&&(d|=g);if(0>(d=a.da(d)))return d;
function Sb(a,b,c){var d,f,e=b&7,g=c&8?0:a.Jb;switch(b>>3&7){case 0:L(a,4);break;case 1:return 6===e&&!a.B&&c&4&&(a.c[6]<=a.wa||65534<=a.c[6])&&(a.c[6]<=a.wa-32||65534<=a.c[6]?(a.o|=4,a.c[6]=4,L(a,4)):(a.o|=8,a.C|=64)),7===e?a.c[e]:a.c[e]|g;case 2:f=2;d=a.c[e];7!==e&&(d|=g,6>e&&c&1&&(f=1));break;case 3:f=2;d=a.c[e];7!==e&&(d|=g);if(0>(d=a.da(d)))return d;d|=g;break;case 4:f=-2;6>e&&c&1&&(f=-1);d=a.c[e]+f&65535;7!==e&&(d|=g);break;case 5:f=-2;d=a.c[e]-2&65535;7!==e&&(d|=g);if(0>(d=a.da(d)))return d; d|=g;break;case 6:if(0>(d=a.da(a.c[7])))return d;a.c[7]=a.c[7]+2&65535;d=d+a.c[e]&65535;return d|g;case 7:if(0>(d=a.da(a.c[7])))return d;a.c[7]=a.c[7]+2&65535;d=d+a.c[e]&65535;return 0>(d=a.da(d|65536))?d:d|g}a.c[e]=a.c[e]+f&65535;!g||a.A&57344||(a.Ea=a.Ea<<8|f<<3&248|e);6===e&&!a.B&&c&4&&0>=f&&(a.c[6]<=a.wa||65534<=a.c[6])&&(a.c[6]<=a.wa-32?(a.m|=4,a.c[6]=4,J(a,4)):(a.m|=8,a.s|=64));return d}l.hc=function(a,b){return Ub(this,a,b)};l.ic=function(a,b){return Tb(this,Ub(this,a,b),b)};
d|=g;break;case 6:if(0>(d=a.da(a.c[7])))return d;a.c[7]=a.c[7]+2&65535;d=d+a.c[e]&65535;return d|g;case 7:if(0>(d=a.da(a.c[7])))return d;a.c[7]=a.c[7]+2&65535;d=d+a.c[e]&65535;return 0>(d=a.da(d|65536))?d:d|g}a.c[e]=a.c[e]+f&65535;!g||a.w&57344||(a.Ca=a.Ca<<8|f<<3&248|e);6===e&&!a.B&&c&4&&0>=f&&(a.c[6]<=a.wa||65534<=a.c[6])&&(a.c[6]<=a.wa-32?(a.o|=4,a.c[6]=4,L(a,4)):(a.o|=8,a.C|=64));return d}l.gc=function(a,b){return Sb(this,a,b)};l.hc=function(a,b){return Pb(this,Sb(this,a,b),b)}; function S(a,b){return b&56?a.sb(Ub(a,b,2)):a.c[b&7]}function T(a,b){b&56?(b=a.ia(b,3),a=Ua(a.w,b)):a=a.c[b&7]&255;return a}function U(a,b,c,d){b&56?(b=a.ia(b,6),c=d.call(a,c,a.tb(b)),Va(a.w,b,c&65535)):(b&=7,a.c[b]=d.call(a,c,a.c[b]))}function V(a,b,c,d){b&56?(b=a.ia(b,7),c=d.call(a,c,Ua(a.w,b)),a=a.w,a.b[(b&a.j)>>>a.f].Wa(b&a.i,c&255,b)):(b&=7,a.c[b]=a.c[b]&65280|d.call(a,c,a.c[b]))}function Vb(a,b,c){b&56?(b=a.ia(b,4),Va(a.w,b,c&65535)):a.c[b&7]=c&65535;return c}
function Q(a,b){return b&56?a.tb(Sb(a,b,2)):a.c[b&7]}function R(a,b){return b&56?Qb(a,a.ja(b,3)):a.c[b&7]&255}function S(a,b,c,d){b&56?(b=a.ja(b,6),ib(a,b,d.call(a,c,a.ub(b)))):(b&=7,a.c[b]=d.call(a,c,a.c[b])&65535)}function Tb(a,b,c,d){b&56?(b=a.ja(b,7),Rb(a,b,d.call(a,c,Qb(a,b)))):(b&=7,a.c[b]=a.c[b]&65280|d.call(a,c,a.c[b])&255)}function Ub(a,b,c){b&56?ib(a,a.ja(b,4),c):a.c[b&7]=c&65535;return c} function Wb(a,b,c,d){b&56?(d=a.ia(b,5),a=a.w,a.b[(d&a.j)>>>a.f].Wa(d&a.i,c&255,d)):(b&=7,a.c[b]=c?d&1?c<<24>>24&65535:a.c[b]&-256|c&255:a.c[b]&-256);return c}function W(a,b){return a.c[7]+(b<<24>>23)&65535}
function Vb(a,b,c,d){b&56?Rb(a,a.ja(b,5),c):(b&=7,a.c[b]=c?d&1?c<<24>>24&65535:a.c[b]&-256|c&255:a.c[b]&-256);return c}function T(a,b){return a.c[7]+(b<<24>>23)&65535} l.$b=function(a){this.g.complete=!0;this.g.dc=!1;this.g.Zb=!1;this.J=this.a=a;do{this.s&112&&(this.s&32?J(this,168):this.s&64?J(this,4):this.s&16&&J(this,12),this.s&=-113);if(this.ga)if(1==this.ga)this.ga=2;else{this.ga=0;a=null;for(var b=this.Gb&224,c=this.j.length;0<=--c;){if(0<this.j[c].pa){this.j[c].pa--;this.ga=2;break}if(this.j[c].Ob){if(!this.j[c].Ob()){this.j.splice(c,1);continue}this.j[c].Ob=null}this.j[c].mc>b&&(b=this.j[c].mc,a=this.j[c],this.j.splice(c,1))}b>(this.F&224)&&(a?J(this,a.Bc):
l.$b=function(a){this.g.complete=!0;this.g.dc=!1;this.g.Zb=!1;this.Y=this.a=a;do{this.C&112&&(this.C&32?L(this,168):this.C&64?L(this,4):this.C&16&&L(this,12),this.C&=-113);if(this.ha)if(1==this.ha)this.ha=2;else{this.ha=0;a=null;for(var b=this.Fb&224,c=this.f.length;0<=--c;){if(0<this.f[c].qa){this.f[c].qa--;this.ha=2;break}if(this.f[c].Mb){if(!this.f[c].Mb()){this.f.splice(c,1);continue}this.f[c].Mb=null}this.f[c].mc>b&&(b=this.f[c].mc,a=this.f[c],this.f.splice(c,1))}b>(this.N&224)&&(a?L(this,a.Bc): J(this,160))}this.A&57344||(this.Ea=0,this.jb=this.c[7]);this.s=this.F&16;a=this.da(this.c[7]);0<=a&&(this.c[7]=this.c[7]+2&65535);this.decode(a)}while(0<this.a);return this.g.complete?this.J-this.a:void 0===this.g.complete?0:-1};u(function(){for(var a=C(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Lb(d);B(d,c)}});function Xb(a,b){var c=b+a;Ob(this,c,a,b);return c&65535}function Yb(a,b){var c=b+a;Ob(this,c<<8,a<<8,b<<8);return c&255}
L(this,160))}this.w&57344||(this.Ca=0,this.hb=this.c[7]);this.C=this.N&16;a=this.b=this.da(this.c[7]);0<=a&&(this.c[7]=this.c[7]+2&65535);this.decode(a);if(0>this.b){this.c[7]=this.c[7]-2&65535;this.J("unimplemented");break}}while(0<this.a);return this.g.complete?this.Y-this.a:void 0===this.g.complete?0:-1};v(function(){for(var a=D(document,"pdp11","cpu"),b=0;b<a.length;b++){var c=a[b],d=B(c),d=new Jb(d);C(d,c)}}); function Zb(a,b){a=b<<1;R(this,a);return a&65535}function $b(a,b){a=b<<1;R(this,a<<8);return a&255}function ac(a,b){a=b&32768|b>>1|b<<16;R(this,a);return a&65535}function bc(a,b){a=b&2048|b>>1|b<<8;R(this,a<<8);return a&255}function cc(a,b){a=b&~a;Q(this,a);return a}function dc(a,b){a=b&~a;Q(this,a<<8);return a}function ec(a,b){a|=b;Q(this,a);return a}function fc(a,b){a|=b;Q(this,a<<8);return a}function gc(a,b){a=~b|65536;P(this,a);return a&65535}
function Wb(a,b){var c=b+a;this.C&128||(this.i=this.m=this.D=c,this.j=(a^c)&(b^c));return c&65535}function Xb(a,b){a=b&~a;P(this,a);return a}function Yb(a,b){a=b&~a;P(this,a<<8);return a}function Zb(a,b){a|=b;P(this,a);return a}function $b(a,b){a|=b;P(this,a<<8);return a}function ac(a,b){a=b-a;this.C&128||(this.i=this.m=a,this.j=b&(b^a));return a&65535}function bc(a,b){a=b+a;this.C&128||(this.i=this.m=a,this.j=a&(b^a));return a&65535}function cc(a,b){var c=b-a;Nb(this,c,a,b);return c&65535} function hc(a,b){a=~b|256;P(this,a<<8);return a&255}function ic(a,b){a=b-a;this.s&128||(this.i=this.f=a,this.b=b&(b^a));return a&65535}function jc(a,b){a=b-a;var c=a<<8;b<<=8;this.s&128||(this.i=this.f=c,this.b=b&(b^c));return a&255}function kc(a,b){a=b+a;this.s&128||(this.i=this.f=a,this.b=a&(b^a));return a&65535}function lc(a,b){a=b+a;var c=a<<8;this.s&128||(this.i=this.f=c,this.b=c&(b<<8^c));return a&255}function mc(a,b){a=-b;P(this,a,a&b&32768);return a&65535}
function dc(){this.b=-1;--this.a}function ec(){this.b=-1;--this.a}function U(a){a&1&&(this.D=0);a&2&&(this.j=0);a&4&&(this.m=1);a&8&&(this.i=0);--this.a}function fc(){this.b=-1;--this.a}function gc(a){var b=Sb(this,a,8);a=a>>6&7;Ob(this,this.c[a]);this.c[a]=this.c[7];this.c[7]=b;--this.a}function hc(){this.b=-1;--this.a}function ic(){--this.a}function V(a){a&1&&(this.D=65536);a&2&&(this.j=32768);a&4&&(this.m=0);a&8&&(this.i=32768);--this.a}function jc(){this.b=-1;--this.a} function nc(a,b){a=-b;P(this,a<<8,(a&b&128)<<8);return a&255}function oc(a,b){a=b<<1|this.h>>16&1;R(this,a);return a&65535}function pc(a,b){a=b<<1|this.h>>16&1;R(this,a<<8);return a&255}function qc(a,b){a=(this.h&65536|b)>>1|b<<16;R(this,a);return a&65535}function rc(a,b){a=((this.h&65536)>>8|b)>>1|b<<8;R(this,a<<8);return a&255}function sc(a,b){var c=b-a;Pb(this,c,a,b);return c&65535}function tc(a,b){var c=b-a;Pb(this,c<<8,a<<8,b<<8);return c&255}function uc(a,b){a^=b;Q(this,a);return a&65535}
function kc(){this.b=-1;--this.a}function W(){L(this,8)}function Kb(a){lc[a>>12].call(this,a)} function vc(a){var b=S(this,a);a=a>>6&7;var c=this.c[a];c&32768&&(c|=4294901760);this.h=this.b=0;b&=63;b&32?(b=64-b,16<b&&(b=16),this.h=c<<17-b,c>>=b):b&&(16<b?(this.b=c,c=0):(this.h=c<<=b,(b=c>>15&65535)&&65535!==b&&(this.b=32768)));this.c[a]=c&65535;this.i=this.f=c;--this.a}
var lc=[function(a){mc[a>>8&15].call(this,a)},function(a){P(this,Ub(this,a,Q(this,a>>6)));--this.a},function(a){var b=Q(this,a>>6);a=Q(this,a);Nb(this,b-a,a,b);--this.a},function(a){P(this,Q(this,a>>6)&Q(this,a));--this.a},function(a){S(this,a,Q(this,a>>6),Xb);--this.a},function(a){S(this,a,Q(this,a>>6),Zb);--this.a},function(a){S(this,a,Q(this,a>>6),Wb);--this.a},function(a){nc[a>>8&15].call(this,a)},function(a){oc[a>>8&15].call(this,a)},function(a){var b=R(this,a>>6);P(this,Vb(this,a,b,1)<<8);--this.a}, function wc(a){var b=S(this,a);a=a>>6&7;var c=this.c[a]<<16|this.c[a|1];this.h=this.b=0;b&=63;if(b&32){b=64-b;32<b&&(b=32);var d=c>>b-1;this.h=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<<b-1,this.h=d>>15,d<<=1,32<b&&(b=32),(c>>=32-b)&&4294967295!==(c|4294967295<<b&4294967295)&&(this.b=32768)):d=c;this.c[a]=d>>16&65535;this.c[a|1]=d&65535;this.i=d>>16;this.f=d>>16|d;--this.a}function X(a){a&1&&(this.h=0);a&2&&(this.b=0);a&4&&(this.f=1);a&8&&(this.i=0);--this.a}
function(a){var b=R(this,a>>6)<<8;a=R(this,a)<<8;Nb(this,b-a,a,b);--this.a},function(a){P(this,(R(this,a>>6)&R(this,a))<<8);--this.a},function(a){Tb(this,a,R(this,a>>6),Yb);--this.a},function(a){Tb(this,a,R(this,a>>6),$b);--this.a},function(a){S(this,a,Q(this,a>>6),cc);--this.a},W],mc=[function(a){pc[a>>4&15].call(this,a)},function(a){this.c[7]=T(this,a);--this.a},function(a){this.m&65535&&(this.c[7]=T(this,a));--this.a},function(a){this.m&65535||(this.c[7]=T(this,a));--this.a},function(a){!(this.i& function xc(a){var b=S(this,a);if(b){a=a>>6&7;var c=this.c[a]<<16|this.c[a|1];this.h=this.b=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.c[a]=d&65535,this.c[a|1]=c-d*b&65535,this.f=d>>16|d,this.i=d>>16):(this.b=32768,this.f=d>>15|d,this.i=c>>16,-1===b&&65534===this.c[a]&&(this.c[a]=this.c[a|1]=1))}else this.f=this.i=0,this.b=32768,this.h=65536;--this.a}function yc(a){var b=Ub(this,a,8);a=a>>6&7;Qb(this,this.c[a]);this.c[a]=this.c[7];this.c[7]=b;--this.a}
32768)==!(this.j&32768)&&(this.c[7]=T(this,a));--this.a},function(a){!(this.i&32768)!=!(this.j&32768)&&(this.c[7]=T(this,a));--this.a},function(a){this.m&65535&&!(this.i&32768)==!(this.j&32768)&&(this.c[7]=T(this,a));--this.a},function(a){this.m&65535&&!(this.i&32768)==!(this.j&32768)||(this.c[7]=T(this,a));--this.a},gc,gc,function(a){qc[a>>6&3].call(this,a)},function(a){rc[a>>6&3].call(this,a)},function(a){sc[a>>6&3].call(this,a)},function(a){tc[a>>6&3].call(this,a)},W,W],pc=[function(a){uc[a&15].call(this, function zc(a){var b=S(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.c[a];c&32768&&(c|=-65536);b=~~(b*c);this.c[a]=b>>16&65535;this.c[a|1]=b&65535;this.i=b>>16;this.f=this.i|b;this.b=0;this.h=-32768>b||32767<b?65536:0;--this.a}function Ac(){--this.a}function Y(a){a&1&&(this.h=65536);a&2&&(this.b=32768);a&4&&(this.f=0);a&8&&(this.i=32768);--this.a}function Bc(){--this.a}function Cc(a){U(this,a,S(this,(a&448)>>6),uc);--this.a}function Z(){J(this,8)}function Mb(a){Dc[a>>12].call(this,a)}
a)},W,W,W,W,W,W,W,function(a){var b=this.da(this.c[6]|65536);0<=b&&(this.c[6]=this.c[6]+2&65535);a&=7;this.c[7]=this.c[a];this.c[a]=b;--this.a},function(a){this.N&49152||(this.N=this.N&-2017|(a&7)<<5,this.ha=1);--this.a},function(a){vc[a&15].call(this,a)},function(a){wc[a&15].call(this,a)},W,W,W,W],vc=[ic,function(){this.D=0;--this.a},function(){this.j=0;--this.a},U,function(){this.m=1;--this.a},U,U,U,function(){this.i=0;--this.a},U,U,U,U,U,U,U],wc=[ic,function(){this.D=65536;--this.a},function(){this.j= var Dc=[function(a){Ec[a>>8&15].call(this,a)},function(a){Q(this,Vb(this,a,S(this,a>>6)));--this.a},function(a){var b=S(this,a>>6);a=S(this,a);Pb(this,b-a,a,b);--this.a},function(a){Q(this,S(this,a>>6)&S(this,a));--this.a},function(a){U(this,a,S(this,a>>6),cc);--this.a},function(a){U(this,a,S(this,a>>6),ec);--this.a},function(a){U(this,a,S(this,a>>6),Xb);--this.a},function(a){Fc[a>>8&15].call(this,a)},function(a){Gc[a>>8&15].call(this,a)},function(a){var b=T(this,a>>6);Q(this,Wb(this,a,b,1)<<8);--this.a},
32768;--this.a},V,function(){this.m=0;--this.a},V,V,V,function(){this.i=32768;--this.a},V,V,V,V,V,V,V],uc=[function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.N&49152||(Lb(this),this.l.reset());--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},W,W,W,W,W,W,W,W],nc=[hc,hc,fc,fc,dc,dc,ec,ec,kc,kc,W,W,W,W,jc,jc],oc=[function(a){this.i&32768||(this.c[7]=T(this,a)); function(a){var b=T(this,a>>6)<<8;a=T(this,a)<<8;Pb(this,b-a,a,b);--this.a},function(a){Q(this,(T(this,a>>6)&T(this,a))<<8);--this.a},function(a){V(this,a,T(this,a>>6),dc);--this.a},function(a){V(this,a,T(this,a>>6),fc);--this.a},function(a){U(this,a,S(this,a>>6),sc);--this.a},Z],Ec=[function(a){Hc[a>>4&15].call(this,a)},function(a){this.c[7]=W(this,a);--this.a},function(a){this.f&65535&&(this.c[7]=W(this,a));--this.a},function(a){this.f&65535||(this.c[7]=W(this,a));--this.a},function(a){!this.ra()==
--this.a},function(a){this.i&32768&&(this.c[7]=T(this,a));--this.a},function(a){this.D&65536||!(this.m&65535)||(this.c[7]=T(this,a));--this.a},function(a){if(this.D&65536||!(this.m&65535))this.c[7]=T(this,a);--this.a},function(a){this.j&32768||(this.c[7]=T(this,a));--this.a},function(a){this.j&32768&&(this.c[7]=T(this,a));--this.a},function(a){this.D&65536||(this.c[7]=T(this,a));--this.a},function(a){this.D&65536&&(this.c[7]=T(this,a));--this.a},function(){this.b=-1;--this.a},function(){this.b=-1; !(this.b&32768)&&(this.c[7]=W(this,a));--this.a},function(a){!this.ra()!=!(this.b&32768)&&(this.c[7]=W(this,a));--this.a},function(a){this.f&65535&&!this.ra()==!(this.b&32768)&&(this.c[7]=W(this,a));--this.a},function(a){this.f&65535&&!this.ra()==!(this.b&32768)||(this.c[7]=W(this,a));--this.a},yc,yc,function(a){Ic[a>>6&3].call(this,a)},function(a){Jc[a>>6&3].call(this,a)},function(a){Kc[a>>6&3].call(this,a)},function(a){Lc[a>>6&3].call(this,a)},Z,Z],Hc=[function(a){Mc[a&15].call(this,a)},Z,Z,Z,Z,
--this.a},function(a){xc[a>>6&3].call(this,a)},function(a){yc[a>>6&3].call(this,a)},function(a){zc[a>>6&3].call(this,a)},function(a){Ac[a>>6&3].call(this,a)},W,W],qc=[function(a){Mb(this,Ub(this,a,0));--this.a},function(){this.b=-1;--this.a},function(a){S(this,a,1,bc);--this.a},function(a){S(this,a,1,ac);--this.a}],rc=[function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a}],sc=[function(){this.b=-1;--this.a},function(){this.b=-1; Z,Z,Z,function(a){var b=Sb(this);a&=7;this.c[7]=this.c[a];this.c[a]=b;--this.a},function(a){this.F&49152||(this.F=this.F&-2017|(a&7)<<5,this.ga=1);--this.a},function(a){Nc[a&15].call(this,a)},function(a){Oc[a&15].call(this,a)},Z,Z,Z,Z],Nc=[Ac,function(){this.h=0;--this.a},function(){this.b=0;--this.a},X,function(){this.f=1;--this.a},X,X,X,function(){this.i=0;--this.a},X,X,X,X,X,X,X],Oc=[Ac,function(){this.h=65536;--this.a},function(){this.b=32768;--this.a},Y,function(){this.f=0;--this.a},Y,Y,Y,function(){this.i=
--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a}],tc=[function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a}],xc=[function(a){Mb(this,Vb(this,a,0));--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a}],yc=[function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a}],zc=[function(){this.b=-1;--this.a}, 32768;--this.a},Y,Y,Y,Y,Y,Y,Y],Mc=[function(){this.F&49152?(this.m|=128,J(this,4)):(this.Ab=3,this.J-=this.a,this.a=0);--this.a},function(){--this.a},function(){Rb(this);this.s|=this.F&16;--this.a},function(){--this.a},function(){--this.a},function(){this.F&49152||(Nb(this),this.w.reset());--this.a},function(){Rb(this);--this.a},function(){--this.a},Z,Z,Z,Z,Z,Z,Z,Z],Fc=[zc,zc,xc,xc,vc,vc,wc,wc,Cc,Cc,Z,Z,Z,Z,Bc,Bc],Gc=[function(a){this.ra()||(this.c[7]=W(this,a));--this.a},function(a){this.ra()&&(this.c[7]=
function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a}],Ac=[function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a},function(){this.b=-1;--this.a}]; W(this,a));--this.a},function(a){!O(this)&&this.f&65535&&(this.c[7]=W(this,a));--this.a},function(a){!O(this)&&this.f&65535||(this.c[7]=W(this,a));--this.a},function(a){this.b&32768||(this.c[7]=W(this,a));--this.a},function(a){this.b&32768&&(this.c[7]=W(this,a));--this.a},function(a){O(this)||(this.c[7]=W(this,a));--this.a},function(a){O(this)&&(this.c[7]=W(this,a));--this.a},function(){J(this,24);--this.a},function(){J(this,28);--this.a},function(a){Pc[a>>6&3].call(this,a)},function(a){Qc[a>>6&3].call(this,
function X(a){x.call(this,"ROM",a,X);this.b=null;this.m=a.addr;this.f=a.size;this.w=a.writable;this.h=a.alias;this.i=a.file;this.B=ba(this.i);if(this.i){a=this.i;var b=ca(this.B);"json"!=b&&"hex"!=b&&(a=ea()+"/api/v1/dump?file="+this.i+"&format=bytes&decimal=true");var c=this;r(a,null,!0,function(a,b,e){Bc(c,a,b,e)})}}z(X);X.prototype.Ka=function(a,b,c,d){this.l=b;this.a=c;this.H=d;Cc(this)};X.prototype.va=function(){this.j&&(this.H&&this.H.a(this.id,this.m,this.f,this.j),delete this.j);return!0}; a)},function(a){Rc[a>>6&3].call(this,a)},function(a){Sc[a>>6&3].call(this,a)},Z,Z],Ic=[function(a){P(this,Vb(this,a,0));--this.a},function(a){U(this,a,0,gc);--this.a},function(a){U(this,a,1,kc);--this.a},function(a){U(this,a,1,ic);--this.a}],Jc=[function(a){U(this,a,0,mc);--this.a},function(a){U(this,a,O(this)?1:0,Xb);--this.a},function(a){U(this,a,O(this)?1:0,sc);--this.a},function(a){a=S(this,a);P(this,a);--this.a}],Kc=[function(a){U(this,a,0,qc);--this.a},function(a){U(this,a,0,oc);--this.a},function(a){U(this,
X.prototype.ua=function(){return!0}; a,0,ac);--this.a},function(a){U(this,a,0,Zb);--this.a}],Lc=[function(){--this.a},function(){--this.a},function(){--this.a},function(a){Q(this,Vb(this,a,this.ra?65535:0));--this.a}],Pc=[function(a){P(this,Wb(this,a,0));--this.a},function(a){V(this,a,0,hc);--this.a},function(a){V(this,a,1,lc);--this.a},function(a){V(this,a,1,jc);--this.a}],Qc=[function(a){V(this,a,0,nc);--this.a},function(a){V(this,a,O(this)?1:0,Yb);--this.a},function(a){V(this,a,O(this)?1:0,tc);--this.a},function(a){a=T(this,a);P(this,
function Bc(a,b,c,d){if(d)a.K("Unable to load system ROM (error "+d+": "+b+")");else{Da(a.Nb,b,c);var f;if("["==c.charAt(0)||"{"==c.charAt(0))try{var e,g,h=eval("("+c+")");if(e=h.bytes)a.b=e;else if(e=h.words)for(a.b=Array(2*e.length),g=f=0;f<e.length;f++)a.b[g++]=e[f]&255,a.b[g++]=e[f]>>8&255;else if(e=h.data)for(a.b=Array(4*e.length),g=f=0;f<e.length;f++)a.b[g++]=e[f]&255,a.b[g++]=e[f]>>8&255,a.b[g++]=e[f]>>16&255,a.b[g++]=e[f]>>24&255;else a.b=h;a.j=h.symbols;if(!a.b.length){t("Empty ROM: "+b); a<<8);--this.a}],Rc=[function(a){V(this,a,0,rc);--this.a},function(a){V(this,a,0,pc);--this.a},function(a){V(this,a,0,bc);--this.a},function(a){V(this,a,0,$b);--this.a}],Sc=[function(){--this.a},function(){--this.a},function(){--this.a},function(){--this.a}];
return}if(1==a.b.length){t(a.b[0]);return}}catch(k){a.K("ROM data error: "+k.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.b=Array(b.length),f=0;f<b.length;f++)a.b[f]=aa(b[f]);Cc(a)}} function Tc(a){v.call(this,"ROM",a,Tc);this.b=null;this.l=a.addr;this.f=a.size;this.A=a.writable;this.h=a.alias;this.i=a.file;this.B=ca(this.i);if(this.i){a=this.i;var b=da(this.B);"json"!=b&&"hex"!=b&&(a=fa()+"/api/v1/dump?file="+this.i+"&format=bytes&decimal=true");var c=this;q(a,null,!0,function(a,b,e){Uc(c,a,b,e)})}}x(Tc);Tc.prototype.Ka=function(a,b,c,d){this.w=b;this.a=c;this.I=d;Vc(this)};Tc.prototype.va=function(){this.j&&(this.I&&this.I.a(this.id,this.l,this.f,this.j),delete this.j);return!0};
function Cc(a){if(!Ga(a))if(!a.i)E(a);else if(a.b&&a.l){a.f||(a.f=a.b.length);if(a.b.length!=a.f){var b="ROM size ("+q(a.b.length,8,!0)+") does not match specified size ("+q(a.f,8,!0)+")";a.g.error=!0;a.K(b)}else{b=a.m;if(Pa(a.l,b,a.f,a.w?1:qb)){var c;for(c=0;c<a.b.length;c++){var d=a.l,f=b+c;d.b[(f&d.i)>>>d.l].ac(f&d.h,a.b[c]&255,f)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.h?b.push(a.h):null!=a.h&&a.h.length&&(b=a.h);for(c=0;c<b.length;c++){for(var e=a,d=b[c],f=e.l,g=e.f,h=[],k=e.m>>>f.l;0<g&& Tc.prototype.ua=function(){return!0};
k<f.b.length;)h.push(f.b[k++]),g-=f.f;f=e.l;e=e.f;g=0;for(d>>>=f.l;0<e&&d<f.b.length;){k=h[g++];if(!k)break;f.b[d++]=k;e-=f.f}}delete a.b}}E(a)}}v(function(){for(var a=D(document,"pdp11","rom"),b=0;b<a.length;b++){var c=a[b],d=B(c),d=new X(d);C(d,c)}});function Dc(a){x.call(this,"RAM",a,Dc);this.h=a.addr;this.f=a.size;this.b=!1}z(Dc);l=Dc.prototype;l.Ka=function(a,b,c,d){this.l=b;this.a=c;this.H=d;E(this)};l.va=function(a,b){b||this.reset();return!0};l.ua=function(a){return a?this.save():!0}; function Uc(a,b,c,d){if(d)a.L("Unable to load system ROM (error "+d+": "+b+")");else{Ea(a.Nb,b,c);var f;if("["==c.charAt(0)||"{"==c.charAt(0))try{var e,g,h=eval("("+c+")");if(e=h.bytes)a.b=e;else if(e=h.words)for(a.b=Array(2*e.length),g=f=0;f<e.length;f++)a.b[g++]=e[f]&255,a.b[g++]=e[f]>>8&255;else if(e=h.data)for(a.b=Array(4*e.length),g=f=0;f<e.length;f++)a.b[g++]=e[f]&255,a.b[g++]=e[f]>>8&255,a.b[g++]=e[f]>>16&255,a.b[g++]=e[f]>>24&255;else a.b=h;a.j=h.symbols;if(!a.b.length){r("Empty ROM: "+b);
l.reset=function(){!this.b&&this.f&&Pa(this.l,this.h,this.f,1)&&(this.b=!0);this.b||t("No RAM allocated")};l.save=function(){return null};l.restore=function(){return!0};v(function(){for(var a=D(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=B(c),d=new Dc(d);C(d,c)}});function Ec(a){x.call(this,"Keyboard",a,Ec);E(this)}z(Ec);Ec.prototype.ba=function(){return!1};Ec.prototype.Ka=function(a,b,c,d){this.h=a;this.a=c;this.H=d;this.Aa=null}; return}if(1==a.b.length){r(a.b[0]);return}}catch(k){a.L("ROM data error: "+k.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.b=Array(b.length),f=0;f<b.length;f++)a.b[f]=aa(b[f]);Vc(a)}}
v(function(){for(var a=D(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=B(c),d=new Ec(d);C(d,c)}}); function Vc(a){if(!Ha(a))if(!a.i)D(a);else if(a.b&&a.w){a.f||(a.f=a.b.length);if(a.b.length!=a.f){var b="ROM size ("+n(a.b.length,8,!0)+") does not match specified size ("+n(a.f,8,!0)+")";a.g.error=!0;a.L(b)}else{b=a.l;if(Qa(a.w,b,a.f,a.A?1:sb)){var c;for(c=0;c<a.b.length;c++){var d=a.w,f=b+c;d.b[(f&d.j)>>>d.f].ac(f&d.i,a.b[c]&255,f)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.h?b.push(a.h):null!=a.h&&a.h.length&&(b=a.h);for(c=0;c<b.length;c++){for(var e=a,d=b[c],f=e.w,g=e.f,h=[],k=e.l>>>f.f;0<g&&
function Fc(a,b,c){x.call(this,"Computer",a,Fc);this.g.L=!1;Gc(this,b);this.I=Bb(this,"autoPower",a);this.h=0;this.Y=a.busWidth||a.buswidth;this.b=Y;this.B=null;this.m=this.W=!1;this.url=Bb(this,"url")||"";(Math.random()+.1).toString(36);this.f=Hc(this);if(this.a=Ea("CPU",this.id)){this.H=Ea("Debugger",this.id);this.l=new F({id:this.Nb+".bus",busWidth:this.Y},this.a,this.H);var d,f=A(this.id);if((this.i=Ea("Panel",this.id))&&this.i.Cb)for(b=0;b<f.length;b++)d=f[b],d.K=this.i.K,d.J=this.i.J,d.Cb=this.i.Cb; k<f.b.length;)h.push(f.b[k++]),g-=f.h;f=e.w;e=e.f;g=0;for(d>>>=f.f;0<e&&d<f.b.length;){k=h[g++];if(!k)break;f.b[d++]=k;e-=f.h}}delete a.b}}D(a)}}u(function(){for(var a=C(document,"pdp11","rom"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Tc(d);B(d,c)}});function Wc(a){v.call(this,"RAM",a,Wc);this.h=a.addr;this.f=a.size;this.b=!1}x(Wc);l=Wc.prototype;l.Ka=function(a,b,c,d){this.w=b;this.a=c;this.I=d;D(this)};l.va=function(a,b){b||this.reset();return!0};l.ua=function(a){return a?this.save():!0};
this.J("PDP11js v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.J("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<f.length;b++)d=f[b],d.Ka&&d.Ka(this,this.l,this.a,this.H);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.w=d:this.b=parseInt(d,10));var e;if(a=Bb(this,"state")||(e=!0,a.state))b=this.M=a,e||(this.m=!0,this.b=Y),this.b&&(this.D=new O(this, l.reset=function(){!this.b&&this.f&&Qa(this.w,this.h,this.f,1)&&(this.b=!0);this.b||r("No RAM allocated")};l.save=function(){return null};l.restore=function(){return!0};u(function(){for(var a=C(document,"pdp11","ram"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Wc(d);B(d,c)}});function Xc(a){v.call(this,"Keyboard",a,Xc);D(this)}x(Xc);Xc.prototype.ba=function(){return!1};Xc.prototype.Ka=function(a,b,c,d){this.l=a;this.a=c;this.I=d;this.Aa=null};
"1.30.0"),Z(this.D)?b=null:delete this.D);!b&&this.b&&(b=Ic(this))&&(this.m=!0);if(b){var g=this;r(b,null,!0,function(a,b,c){c?(g.w=null,g.m=!1,g.K("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):(g.B=b,g.W=!0);E(g)})}else E(this);this.u.power||(this.I=!0);!c&&this.I&&Jc(this,this.$a)}else t("Unable to find CPU component")}z(Fc);var Y=0; u(function(){for(var a=C(document,"pdp11","keyboard"),b=0;b<a.length;b++){var c=a[b],d=A(c),d=new Xc(d);B(d,c)}});
function Gc(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){t(d.message+" ("+c+")")}}a.X=b}function Bb(a,b,c){var d=b.toLowerCase(),d=xa[b]||xa[d];void 0===d&&a.X&&(d=a.X[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function Jc(a,b,c){for(var d=A(a.id),f=0;f<=d.length;f++){var e=f<d.length?d[f]:a;if(!Ga(e)){Ga(e,function(){Jc(a,b,c)});return}}b.call(a,c)} function Yc(a,b,c){v.call(this,"Computer",a,Yc);this.g.M=!1;Zc(this,b);this.J=Db(this,"autoPower",a);this.h=0;this.Y=a.busWidth||a.buswidth;this.b=$c;this.B=null;this.l=this.W=!1;this.url=Db(this,"url")||"";(Math.random()+.1).toString(36);this.f=ad(this);if(this.a=Fa("CPU",this.id)){this.I=Fa("Debugger",this.id);this.w=new E({id:this.Nb+".bus",busWidth:this.Y},this.a,this.I);var d,f=z(this.id);if((this.i=Fa("Panel",this.id))&&this.i.Cb)for(b=0;b<f.length;b++)d=f[b],d.L=this.i.L,d.N=this.i.N,d.Cb=
function Kc(a,b){var c=new O(a,"1.30.0","validate");if(Z(c)&&Lc(c)){var d=c.get("timestamp"),f=b?b.get("timestamp"):"unknown";d!=f&&(a.K("Machine state may be out-of-date\n("+d+" vs. "+f+")\nCheck your browser's local storage limits"),b||c.clear())}}l=Fc.prototype; this.i.Cb;this.N("PDP11js v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.N("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<f.length;b++)d=f[b],d.Ka&&d.Ka(this,this.w,this.a,this.I);b=null;d=a.resume;void 0!==d&&(1<d.length?b=this.A=d:this.b=parseInt(d,10));var e;if(a=Db(this,"state")||(e=!0,a.state))b=this.K=a,e||(this.l=!0,this.b=$c),this.b&&(this.G=
l.$a=function(a){void 0===a&&(a=this.b||(this.B?1:Y));if(!this.h){this.h++;var b=!1,c=!1;this.T=!1;var d=this.D||new O(this,"1.30.0");if(-1==a)b=!0;else if(a>Y){if(Z(d,this.B)){this.j=new O(this,"1.30.0","failsafe");Z(this.j)&&(Mc(this,d),a=2,Nc(this.j));this.j.set("timestamp",ia());Oc(this.j);var f=this.b&&!this.m;if(1==a||ja("Click OK to restore the previous PDP11js machine state, or CANCEL to reset the machine.")){if(c=Lc(d)){var e=d.get("code"),g=d.get("data");e&&("ok"==e?Z(d,g):("error"==e&& new N(this,"1.30.0"),bd(this.G)?b=null:delete this.G);!b&&this.b&&(b=cd(this))&&(this.l=!0);if(b){var g=this;q(b,null,!0,function(a,b,c){c?(g.A=null,g.l=!1,g.L("Unable to load machine state from server (error "+c+(b?": "+(String.prototype.trim?b.trim():b.replace(/^\s+|\s+$/g,"")):"")+")")):(g.B=b,g.W=!0);D(g)})}else D(this);this.u.power||(this.J=!0);!c&&this.J&&dd(this,this.cb)}else r("Unable to find CPU component")}x(Yc);var $c=0;
"no machine state"!=g?(this.K("Error: "+g),"unable to verify user"==g&&(na("user",""),this.f=null)):this.J(e+": "+g),Nc(d),Z(d)?(c=Lc(d),f=!0):c=!1))}f&&Kc(this,c?d:null)}else 2==a&&d.clear()}else Kc(this);delete this.B;delete this.D}f=A(this.id);for(e=0;e<f.length;e++)g=f[e],g!==this&&g!=this.a&&(c=Pc(this,g,d,b,c));b=[d,a,c];-1!=a?Jc(this,this.Pb,b):this.Pb(b)}}; function Zc(a,b){if(!b){var c;if("object"==typeof resources&&(c=resources.parms))try{b=eval("("+c+")")}catch(d){r(d.message+" ("+c+")")}}a.X=b}function Db(a,b,c){var d=b.toLowerCase(),d=ya[b]||ya[d];void 0===d&&a.X&&(d=a.X[b]);void 0===d&&c&&(d=c[b]);void 0===d&&"object"==typeof resources&&resources[b]&&(d=b);return d}function dd(a,b,c){for(var d=z(a.id),f=0;f<=d.length;f++){var e=f<d.length?d[f]:a;if(!Ha(e)){Ha(e,function(){dd(a,b,c)});return}}b.call(a,c)}
function Pc(a,b,c,d,f){if(!b.g.L){b.g.L=!0;if(b.va){var e=null;f&&((e=c.get(b.id))||(e=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof e&&(e=null);!b.va(e,d)&&e&&(t("Unable to restore state for "+b.type),a.M&&!a.W?(c.clear(),a.b=Y,window&&window.location.reload()):a.T=!0,b.va(null),f=!1)}if(!d&&b.Lb)for(a=b.Lb.split("|"),c=0;c<a.length;c++)b.status(a[c])}return f} function ed(a,b){var c=new N(a,"1.30.0","validate");if(bd(c)&&fd(c)){var d=c.get("timestamp"),f=b?b.get("timestamp"):"unknown";d!=f&&(a.L("Machine state may be out-of-date\n("+d+" vs. "+f+")\nCheck your browser's local storage limits"),b||c.clear())}}l=Yc.prototype;
l.Pb=function(a){var b=a[0],c=0>a[1];a=a[2];this.Z=!0;this.g.L=!0;var d=this.u.power;d&&(d.textContent="Shutdown");this.a&&(Pc(this,this.a,b,c,a),this.a.Wa());this.T&&(Mc(this,b),b.clear());!c&&this.j&&(this.j.clear(),delete this.j);this.h=0}; l.cb=function(a){void 0===a&&(a=this.b||(this.B?1:$c));if(!this.h){this.h++;var b=!1,c=!1;this.R=!1;var d=this.G||new N(this,"1.30.0");if(-1==a)b=!0;else if(a>$c){if(bd(d,this.B)){this.j=new N(this,"1.30.0","failsafe");bd(this.j)&&(gd(this,d),a=2,hd(this.j));this.j.set("timestamp",ja());id(this.j);var f=this.b&&!this.l;if(1==a||ka("Click OK to restore the previous PDP11js machine state, or CANCEL to reset the machine.")){if(c=fd(d)){var e=d.get("code"),g=d.get("data");e&&("ok"==e?bd(d,g):("error"==
function Mc(a,b){if(ja("There may be a problem with your PDP11js machine.\n\nTo help us diagnose it, click OK to send this PDP11js machine state to http://www.pcjs.org.")){var c=a.f||"";b=b.toString();var d={app:"PDP11js",ver:"1.30.0"};d.url=a.url;d.user=c;d.type="bug";d.data=b;r("http://www.pcjs.org/api/v1/report",d,!0)}} e&&"no machine state"!=g?(this.L("Error: "+g),"unable to verify user"==g&&(oa("user",""),this.f=null)):this.N(e+": "+g),hd(d),bd(d)?(c=fd(d),f=!0):c=!1))}f&&ed(this,c?d:null)}else 2==a&&d.clear()}else ed(this);delete this.B;delete this.G}f=z(this.id);for(e=0;e<f.length;e++)g=f[e],g!==this&&g!=this.a&&(c=jd(this,g,d,b,c));b=[d,a,c];-1!=a?dd(this,this.Rb,b):this.Rb(b)}};
function Qc(a,b,c){var d,f="none";if(a.h)return null;a.h--;var e=new O(a,"1.30.0"),g=new O(a,"1.30.0","validate"),h=ia();g.set("timestamp",h);e.set("timestamp",h);e.set("version","1.30.0");e.set("url",window?window.location.href:null);e.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.ua&&(c&&N(a.a),d=a.a.ua(b,c),"object"===typeof d&&e.set(a.a.id,d),c&&(a.a.g.L=!1,!1===d&&(f=null)));for(var h=A(a.id),k=0;k<h.length;k++){var m=h[k];m.g.L&&(m.ua&&(d=m.ua(b,c),"object"===typeof d&&e.set(m.id, function jd(a,b,c,d,f){if(!b.g.M){b.g.M=!0;if(b.va){var e=null;f&&((e=c.get(b.id))||(e=c.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof e&&(e=null);!b.va(e,d)&&e&&(r("Unable to restore state for "+b.type),a.K&&!a.W?(c.clear(),a.b=$c,window&&window.location.reload()):a.R=!0,b.va(null),f=!1)}if(!d&&b.Mb)for(a=b.Mb.split("|"),c=0;c<a.length;c++)b.status(a[c])}return f}
d)),c&&(m.g.L=!1,!1===d&&(f=null)))}f&&(c?(h=d=!1,b?(a.f&&Rc(a,a.f,e.toString()),Oc(g)&&Oc(e)||(f=null,d=h=!0)):a.b&&(d=!0,h=3==a.b),d&&e.clear(h)):f=e.toString());c&&(a.g.L=!1,b=a.u.power)&&(b.textContent="Power");a.h=0;return f}l.reset=function(){this.l&&this.l.reset&&this.l.reset();for(var a=A(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.l&&c.reset&&c.reset()}};l.start=function(a,b){for(var c=A(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.start&&f.start(a,b)}}; l.Rb=function(a){var b=a[0],c=0>a[1];a=a[2];this.Z=!0;this.g.M=!0;var d=this.u.power;d&&(d.textContent="Shutdown");this.a&&(jd(this,this.a,b,c,a),this.a.Za());this.R&&(gd(this,b),b.clear());!c&&this.j&&(this.j.clear(),delete this.j);this.h=0};
l.stop=function(a,b){for(var c=A(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.stop&&f.stop(a,b)}}; function gd(a,b){if(ka("There may be a problem with your PDP11js machine.\n\nTo help us diagnose it, click OK to send this PDP11js machine state to http://www.pcjs.org.")){var c=a.f||"";b=b.toString();var d={app:"PDP11js",ver:"1.30.0"};d.url=a.url;d.user=c;d.type="bug";d.data=b;q("http://www.pcjs.org/api/v1/report",d,!0)}}
l.ba=function(a,b,c){var d=this;switch(b){case "power":return this.u[b]=c,c.onclick=function(){d.h||(d.g.L?Qc(d,!1,!0):Jc(d,d.$a))},!0;case "reset":return this.u[b]=c,c.onclick=function(){if(d.g.L&&!d.h)if(d.b&&!d.w){var a=ja("Click OK to save changes to this PDP11js machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Qc(d,a,!0);!a&&d.M?window&&window.location.reload():d.$a(Y)}else d.reset(),d.a&&d.a.Wa()},!0;case "save":if(da())c.parentNode.removeChild(c);else return this.u[b]= function kd(a,b,c){var d,f="none";if(a.h)return null;a.h--;var e=new N(a,"1.30.0"),g=new N(a,"1.30.0","validate"),h=ja();g.set("timestamp",h);e.set("timestamp",h);e.set("version","1.30.0");e.set("url",window?window.location.href:null);e.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.ua&&(c&&M(a.a),d=a.a.ua(b,c),"object"===typeof d&&e.set(a.a.id,d),c&&(a.a.g.M=!1,!1===d&&(f=null)));for(var h=z(a.id),k=0;k<h.length;k++){var m=h[k];m.g.M&&(m.ua&&(d=m.ua(b,c),"object"===typeof d&&e.set(m.id,
c,c.onclick=function(){var a=Hc(d,!0);if(a){var b=!!(d.b&&!d.w||d.M),c=Qc(d,b);b?Rc(d,a,c):d.K("Resume disabled, machine state not saved")}},!0}return!1}; d)),c&&(m.g.M=!1,!1===d&&(f=null)))}f&&(c?(h=d=!1,b?(a.f&&ld(a,a.f,e.toString()),id(g)&&id(e)||(f=null,d=h=!0)):a.b&&(d=!0,h=3==a.b),d&&e.clear(h)):f=e.toString());c&&(a.g.M=!1,b=a.u.power)&&(b.textContent="Power");a.h=0;return f}l.reset=function(){this.w&&this.w.reset&&this.w.reset();for(var a=z(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.w&&c.reset&&c.reset()}};l.start=function(a,b){for(var c=z(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.start&&f.start(a,b)}};
function Hc(a,b){var c=a.f;c||((c=ma("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Sc(a,c))||a.K("The user ID is invalid.")):b&&a.K("Browser local storage is not available"));return c} l.stop=function(a,b){for(var c=z(this.id),d=0;d<c.length;d++){var f=c[d];"CPU"!=f.type&&f!==this&&f.stop&&f.stop(a,b)}};
function Sc(a,b){a.f=null;b=r(ea()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(na("user",b.data),a.f=b.data)}catch(d){t(d.message+" ("+c+")")}return a.f}function Ic(a){var b=null;a.f&&(b=ea()+"/api/v1/user?req=load&user="+a.f+"&state="+Tc(a,"1.30.0"));return b} l.ba=function(a,b,c){var d=this;switch(b){case "power":return this.u[b]=c,c.onclick=function(){d.h||(d.g.M?kd(d,!1,!0):dd(d,d.cb))},!0;case "reset":return this.u[b]=c,c.onclick=function(){if(d.g.M&&!d.h)if(d.b&&!d.A){var a=ka("Click OK to save changes to this PDP11js machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");kd(d,a,!0);!a&&d.K?window&&window.location.reload():d.cb($c)}else d.reset(),d.a&&d.a.Za()},!0;case "save":if(ea())c.parentNode.removeChild(c);else return this.u[b]=
function Rc(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Tc(a,"1.30.0");d.data=c;b=r(ea()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var f=d.indexOf("\n");0<f&&(d=d.substr(0,f));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.K("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.K(c),na("user",""),a.f=null)}} c,c.onclick=function(){var a=ad(d,!0);if(a){var b=!!(d.b&&!d.A||d.K),c=kd(d,b);b?ld(d,a,c):d.L("Resume disabled, machine state not saved")}},!0}return!1};
l.Na=function(a){this.a&&this.a.Na(a);this.i&&this.i.Na(a)};v(function(){for(var a=D(document,"pdp11-machine"),b=0;b<a.length;b++)for(var c=a[b],d=B(c),c=D(c,"pdp11","computer"),f=0;f<c.length;f++){var e=c[f],g=B(e),g=new Fc(g,d,!0);C(g,e);g.I&&Jc(g,g.$a)}});u.show.push(function(){for(var a=D(document,"pdp11","computer"),b=0;b<a.length;b++){var c=B(a[b]);(c=Ea("Computer",c.id))&&c.Z&&!c.g.L&&c.$a(-1)}}); function ad(a,b){var c=a.f;c||((c=na("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=md(a,c))||a.L("The user ID is invalid.")):b&&a.L("Browser local storage is not available"));return c}
u.exit.push(function(){for(var a=D(document,"pdp11","computer"),b=0;b<a.length;b++){var c=B(a[b]);(c=Ea("Computer",c.id))&&c.g.L&&Qc(c,!(!c.b||c.w),!0)}});function O(a,b,c){this.id=a.id;this.key=Tc(a,b,c);this.H=a.H;Nc(this,a.ic)}function Tc(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a} function md(a,b){a.f=null;b=q(fa()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(oa("user",b.data),a.f=b.data)}catch(d){r(d.message+" ("+c+")")}return a.f}function cd(a){var b=null;a.f&&(b=fa()+"/api/v1/user?req=load&user="+a.f+"&state="+nd(a,"1.30.0"));return b}
O.prototype={constructor:O,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){Nc(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(f){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c, function ld(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=nd(a,"1.30.0");d.data=c;b=q(fa()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var f=d.indexOf("\n");0<f&&(d=d.substr(0,f));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[1]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.L("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.L(c),oa("user",""),a.f=null)}}
1);c=0}}};function Nc(a,b){a[a.id]={};b&&a.set("parms",b);a.a=!1}function Oc(a){var b=!0;if(la()){var c=JSON.stringify(a[a.id]);na(a.key,c)||(t("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function Lc(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){t(c.message||c),b=!1}return b}function Z(a,b){return b?(a[a.id]=b,a.a=!0):a.a?!0:la()&&(b=ma(a.key))?(a[a.id]=b,a.a=!0):!1}var Uc=0; l.Na=function(a){this.a&&this.a.Na(a);this.i&&this.i.Na(a)};u(function(){for(var a=C(document,"pdp11-machine"),b=0;b<a.length;b++)for(var c=a[b],d=A(c),c=C(c,"pdp11","computer"),f=0;f<c.length;f++){var e=c[f],g=A(e),g=new Yc(g,d,!0);B(g,e);g.J&&dd(g,g.cb)}});t.show.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=A(a[b]);(c=Fa("Computer",c.id))&&c.Z&&!c.g.M&&c.cb(-1)}});
function Vc(a,b,c,d,f,e){f("Loading "+a+"...");r(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),e(h,null)):Wc(h,a,b,c,d,f,e)})} t.exit.push(function(){for(var a=C(document,"pdp11","computer"),b=0;b<a.length;b++){var c=A(a[b]);(c=Fa("Computer",c.id))&&c.g.M&&kd(c,!(!c.b||c.A),!0)}});function N(a,b,c){this.id=a.id;this.key=nd(a,b,c);this.I=a.I;hd(this,a.gc)}function nd(a,b,c){a=a.id;if(b){var d=b.indexOf(".");0<d&&(a+=".v"+b.substr(0,d))}c&&(a+="."+c);return a}
function Wc(a,b,c,d,f,e,g){function h(a,e){if(e)g(e,null);else{c&&(Da(c,b,a),(e=b)&&0>e.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(e=window.location.pathname+e),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+e+'"}',"object"==typeof resources&&(e=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(e?' url="'+e+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDP11js$2"), N.prototype={constructor:N,set:function(a,b){try{this[this.id][a]=b}catch(c){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){hd(this);var b=[];try{for(var c=0,d=window.localStorage.length;c<d;c++)b.push(window.localStorage.key(c))}catch(f){}for(c=0;c<b.length;c++)if((d=b[c])&&(a||d.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(d)}catch(f){}b.splice(c,
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pdp11$2"));e=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(e=new window.ActiveXObject("Microsoft.XMLDOM"),e.async=!1,e.loadXML(a)):e=(new window.DOMParser).parseFromString(a,"text/xml")}catch(p){e=null,a=p.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,e)}}a?f?Xc(a,e,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)} 1);c=0}}};function hd(a,b){a[a.id]={};b&&a.set("parms",b);a.a=!1}function id(a){var b=!0;if(ma()){var c=JSON.stringify(a[a.id]);oa(a.key,c)||(r("Unable to store "+c.length+" bytes in browser local storage"),b=!1)}return b}function fd(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(c){r(c.message||c),b=!1}return b}function bd(a,b){return b?(a[a.id]=b,a.a=!0):a.a?!0:ma()&&(b=na(a.key))?(a[a.id]=b,a.a=!0):!1}var od=0;
function Xc(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var f=d[2];b("Loading "+f+"...");r(f,null,!0,function(e,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(e=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/g;m=p.exec(e);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+f);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, function pd(a,b,c,d,f,e){f("Loading "+a+"...");q(a,null,!0,function(g,h,k){k?(h||(h="unable to load "+a+" ("+k+")"),e(h,null)):qd(h,a,b,c,d,f,e)})}
"");a=a.replace(d[0],g);Xc(a,b,c)}})}else c(a,null)} function qd(a,b,c,d,f,e,g){function h(a,e){if(e)g(e,null);else{c&&(Ea(c,b,a),(e=b)&&0>e.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(e=window.location.pathname+e),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1<d.length&&(d+=",")):d='{state:"'+d+'",':d="{",d+='url:"'+e+'"}',"object"==typeof resources&&(e=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(e?' url="'+e+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDP11js$2"),
function Yc(a,b,c,d){function f(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ga(a))}function e(a){f("Error: "+a);k&&(--Uc||ua(!0));k=!1}var g,h,k=!0;Uc++;Ca[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],w=document.createElement("style");w.type="text/css";w.styleSheet?w.styleSheet.cssText=m:w.appendChild(document.createTextNode(m));p.appendChild(w)}c|| a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pdp11$2"));e=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(e=new window.ActiveXObject("Microsoft.XMLDOM"),e.async=!1,e.loadXML(a)):e=(new window.DOMParser).parseFromString(a,"text/xml")}catch(p){e=null,a=p.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);g(a,e)}}a?f?rd(a,e,h):h(a,null):g("no data"+(b?" for file: "+b:""),null)}
(c="/versions/pdp11/1.30.0/components.xsl");m=function(d,h){h?Vc(c,null,null,!1,f,function(d,k){k?(Da(a,c,d),f("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--Uc||ua(!0)):e("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--Uc||ua(!0)):e("invalid machine element: "+ function rd(a,b,c){var d;if(d=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var f=d[2];b("Loading "+f+"...");q(f,null,!0,function(e,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(e=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,p=/( [a-z]+=)(['"])(.*?)\2/g;m=p.exec(e);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(g=g.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+f);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser")):e(d)}):e(d)};"<"!=b.charAt(0)?Vc(b,a,d,!0,f,m):Wc(b,null,a,d,!1,f,m)}else e("missing machine element: "+a)}catch(H){e(H.message)}return k}window.embedPDP11=function(a,b,c,d){ua(!1);return Yc(a,b,c,d)};window.enableEvents=ua;window.sendEvent=va;})(); "");a=a.replace(d[0],g);rd(a,b,c)}})}else c(a,null)}
function sd(a,b,c,d){function f(a){if(void 0===h){var b=g&&C(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ha(a))}function e(a){f("Error: "+a);k&&(--od||va(!0));k=!1}var g,h,k=!0;od++;Da[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var p=document.head||document.getElementsByTagName("head")[0],y=document.createElement("style");y.type="text/css";y.styleSheet?y.styleSheet.cssText=m:y.appendChild(document.createTextNode(m));p.appendChild(y)}c||
(c="/versions/pdp11/1.30.0/components.xsl");m=function(d,h){h?pd(c,null,null,!1,f,function(d,k){k?(Ea(a,c,d),f("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=h.transformNode(k))?(g.outerHTML=k,--od||va(!0)):e("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(k),(k=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(k,g),--od||va(!0)):e("invalid machine element: "+
a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser")):e(d)}):e(d)};"<"!=b.charAt(0)?pd(b,a,d,!0,f,m):qd(b,null,a,d,!1,f,m)}else e("missing machine element: "+a)}catch(L){e(L.message)}return k}window.embedPDP11=function(a,b,c,d){va(!1);return sd(a,b,c,d)};window.enableEvents=va;window.sendEvent=wa;})();