From 1ac769431fe1e3d8954ff0d48c439db181f15dfb Mon Sep 17 00:00:00 2001 From: Jeff Date: Sat, 4 Mar 2017 16:47:56 -0800 Subject: [PATCH] Added initial logic for decoding PDP-10 input-output instructions --- modules/pdp10/lib/cpuops.js | 97 +++++++--- modules/pdp10/lib/cpustate.js | 68 +++++-- modules/pdp10/lib/defines.js | 58 +++++- modules/pdp10/lib/memory.js | 5 +- modules/pdp11/lib/cpustate.js | 6 +- versions/pdpjs/1.34.2/pdp10-dbg.js | 288 +++++++++++++++-------------- versions/pdpjs/1.34.2/pdp10.js | 196 ++++++++++---------- 7 files changed, 431 insertions(+), 287 deletions(-) diff --git a/modules/pdp10/lib/cpuops.js b/modules/pdp10/lib/cpuops.js index 2dd2dd6fd..954f05124 100644 --- a/modules/pdp10/lib/cpuops.js +++ b/modules/pdp10/lib/cpuops.js @@ -47,7 +47,9 @@ if (NODE) { PDP10.opKA10 = function(op) { /* - * We shift op right 4 more bits, leaving only the 9 bits required for the table index. + * We shift op right 4 more bits, leaving only the 9 bits required for the table index. Those + * 4 bits are normally an accumulator index, which we also mask and pass along, since most instructions + * will use an accumulator, and those that don't simply ignore it. */ PDP10.aOpXXX_KA10[op >> 4].call(this, op, op & PDP10.OPCODE.A_MASK); }; @@ -1362,9 +1364,9 @@ PDP10.opDIVB = function(op, acc) * * Arithmetic Shifting * - * These two instructions produce an arithmetic shift right or left of the number in AC or the - * double length number in accumulators A and A+1. Shifting is the movement of the contents of - * a register bit-to-bit. The operation discussed here is similar to logical shifting [see §2.4 + * These two instructions [ASH, ASHC] produce an arithmetic shift right or left of the number in AC + * or the double length number in accumulators A and A+1. Shifting is the movement of the contents + * of a register bit-to-bit. The operation discussed here is similar to logical shifting [see §2.4 * and the illustration on page 2-24], but in an arithmetic shift only the magnitude part is * shifted - the sign is unaffected. In a double length number the 70-bit string made up of the * magnitude parts of the two words is shifted, but the sign of the low order word is made equal @@ -1560,7 +1562,7 @@ PDP10.opJFFO = function(op, acc) * * Concatenate the magnitude portions of accumulators A and A+1 with A on the left, and shift * the 70-bit combination in bits 1-35 and 37-71 the number of places specified by E. Do not shift - * AC bit 0, but make bit 0 of AC A +1 equal to it if at least one shift occurs (ie if E is nonzero). + * AC bit 0, but make bit 0 of AC A+1 equal to it if at least one shift occurs (ie if E is nonzero). * * If E is positive, shift left bringing 0s into bit 71 (bit 35 of AC A+1); bit 37 (bit 1 of AC A+1) * is shifted into bit 35; data shifted out of bit 1 is lost; set Overflow if any bit of significance @@ -1584,7 +1586,7 @@ PDP10.opASHC = function(op, acc) * * Concatenate accumulators A and A+1 with A on the left, and rotate the 72-bit combination the * number of places specified by E. If E is positive, rotate left; bit 0 is rotated into bit 71 - * (bit 35 of AC A +1) and bit 36 into bit 35. If E is negative, rotate right; bit 35 is rotated + * (bit 35 of AC A+1) and bit 36 into bit 35. If E is negative, rotate right; bit 35 is rotated * into bit 36 and bit 71 into bit 0. * * @this {CPUStatePDP10} @@ -4835,9 +4837,9 @@ PDP10.opTSON = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opBLKI = function(op, acc) +PDP10.opBLKI = function(op, dev) { this.opUndefined(op); }; @@ -4847,9 +4849,9 @@ PDP10.opBLKI = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opDATAI = function(op, acc) +PDP10.opDATAI = function(op, dev) { this.opUndefined(op); }; @@ -4859,9 +4861,9 @@ PDP10.opDATAI = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opBLKO = function(op, acc) +PDP10.opBLKO = function(op, dev) { this.opUndefined(op); }; @@ -4871,9 +4873,9 @@ PDP10.opBLKO = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opDATAO = function(op, acc) +PDP10.opDATAO = function(op, dev) { this.opUndefined(op); }; @@ -4883,11 +4885,18 @@ PDP10.opDATAO = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opCONO = function(op, acc) +PDP10.opCONO = function(op, dev) { - this.opUndefined(op); + switch(dev) { + case PDP10.DEVICES.APR: + this.writeFlags(this.readWord(this.regEA)); + break; + default: + this.opUndefined(op); + break; + } }; /** @@ -4895,11 +4904,18 @@ PDP10.opCONO = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opCONI = function(op, acc) +PDP10.opCONI = function(op, dev) { - this.opUndefined(op); + switch(dev) { + case PDP10.DEVICES.APR: + this.writeWord(this.regEA, this.readFlags()); + break; + default: + this.opUndefined(op); + break; + } }; /** @@ -4907,9 +4923,9 @@ PDP10.opCONI = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opCONSZ = function(op, acc) +PDP10.opCONSZ = function(op, dev) { this.opUndefined(op); }; @@ -4919,23 +4935,35 @@ PDP10.opCONSZ = function(op, acc) * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc + * @param {number} dev */ -PDP10.opCONSO = function(op, acc) +PDP10.opCONSO = function(op, dev) { this.opUndefined(op); }; /** - * opIO(op, acc) + * opIO(0o700xxx-0o777xxx): Input-Output Instructions + * + * From the DEC PDP-10 System Reference Manual (May 1968), p. 2-68: + * + * The input-output instructions govern all transfers of data to and from the peripheral equipment, and also + * perform many operations within the processor. An instruction in the in-out class is designated by 111 in + * bits 0-2, ie its left octal digit is 7. Bits 3-9 address the device that is to respond to the instruction. + * The format thus allows for 128 codes, two of which, 000 and 004 respectively, address the processor and + * priority interrupt, and are used for the console and time share hardware as well. A chart in Appendix A + * lists all devices for which codes have been assigned, and gives their mnemonics and DEC option numbers. + * + * Bits 13-35 are the same as in all other instructions: they are the I, X, and Y parts, which are used to + * calculate an effective address, set of conditions, or mask to be used in the execution of the instruction. + * The remaining bits, 10-12, select one of the following eight 10 instructions. * * @this {CPUStatePDP10} * @param {number} op - * @param {number} acc */ -PDP10.opIO = function(op, acc) +PDP10.opIO = function(op) { - this.opUndefined(op); + PDP10.aOpIO_KA10[op & 7].call(this, (op >> 3) & 0o177); }; /** @@ -5687,7 +5715,7 @@ PDP10.aOpXXX_KA10 = [ PDP10.opTSOA, // 0o675xxx PDP10.opTDON, // 0o676xxx PDP10.opTSON, // 0o677xxx - PDP10.opIO, // 0o700xx + PDP10.opIO, // 0o700xxx PDP10.opIO, // 0o701xxx PDP10.opIO, // 0o702xxx PDP10.opIO, // 0o703xxx @@ -5752,3 +5780,14 @@ PDP10.aOpXXX_KA10 = [ PDP10.opIO, // 0o776xxx PDP10.opIO // 0o777xxx ]; + +PDP10.aOpIO_KA10 = [ + PDP10.opBLKI, // 0o70000x + PDP10.opDATAI, // 0o70004x + PDP10.opBLKO, // 0o70010x + PDP10.opDATAO, // 0o70014x + PDP10.opCONO, // 0o70020x + PDP10.opCONI, // 0o70024x + PDP10.opCONSZ, // 0o70030x + PDP10.opCONSO // 0o70034x +]; diff --git a/modules/pdp10/lib/cpustate.js b/modules/pdp10/lib/cpustate.js index b35298c4d..01dd2f5d9 100644 --- a/modules/pdp10/lib/cpustate.js +++ b/modules/pdp10/lib/cpustate.js @@ -176,7 +176,6 @@ class CPUStatePDP10 extends CPUPDP10 { { this.regEA = this.regRA = this.regOP = 0; this.regPC = this.lastPC = this.addrReset; - this.fOverflow = this.fCarry0 = this.fCarry1 = this.fNoDivide = this.fPDOverflow = false; /* * This next internal reg is used only with byte instructions, to record an active byte @@ -184,6 +183,11 @@ class CPUStatePDP10 extends CPUPDP10 { */ this.regPS = -1; + /* + * Assorted processor flags + */ + this.fOverflow = this.fCarry0 = this.fCarry1 = this.fNoDivide = this.fPDOverflow = false; + /* * This is queried and displayed by the Panel when it's not displaying its own ADDRESS register * (which takes precedence when, for example, you've manually halted the CPU and are independently @@ -191,7 +195,7 @@ class CPUStatePDP10 extends CPUPDP10 { * * We initialize it to the current PC. */ - this.lastAddr = this.regPC; + this.addrLast = this.regPC; /* * opFlags contains various conditions that stepCPU() needs to be aware of. @@ -285,12 +289,18 @@ class CPUStatePDP10 extends CPUPDP10 { state.set(0, [ this.regEA, this.regRA, - this.regPS, this.regOP, this.regPC, + this.regPS, + this.opFlags, + this.fOverflow, + this.fCarry0, + this.fCarry1, + this.fNoDivide, + this.fPDOverflow, this.lastPC, - this.lastAddr, - this.opFlags + this.addrLast, + this.addrReset ]); state.set(1, []); state.set(2, [this.nTotalCycles, this.getSpeed(), this.flags.autoStart]); @@ -315,12 +325,18 @@ class CPUStatePDP10 extends CPUPDP10 { [ this.regEA, this.regRA, - this.regPS, this.regOP, this.regPC, + this.regPS, + this.opFlags, + this.fOverflow, + this.fCarry0, + this.fCarry1, + this.fNoDivide, + this.fPDOverflow, this.lastPC, - this.lastAddr, - this.opFlags + this.addrLast, + this.addrReset ] = data[0]; var a = data[2]; @@ -333,6 +349,36 @@ class CPUStatePDP10 extends CPUPDP10 { return true; } + /** + * readFlags() + * + * Used to implement the ""CONI APR," instruction; see opCONI(). + * + * @this {CPUStatePDP10} + * @return {number} + */ + readFlags() + { + var flags = 0; + if (this.fOverflow) flags |= PDP10.RFLAG.OVFL; + if (this.fPDOverflow) flags |= PDP10.RFLAG.PDOVFL; + return flags; + } + + /** + * writeFlags(w) + * + * Used to implement the ""CONO APR," instruction; see opCONO(). + * + * @this {CPUStatePDP10} + * @param {number} w + */ + writeFlags(w) + { + if (w & PDP10.WFLAG.OVFL_CL) this.fOverflow = false; + if (w & PDP10.WFLAG.PDOVFL_CL) this.fPDOverflow = false; + } + /** * getOpcode() * @@ -417,7 +463,7 @@ class CPUStatePDP10 extends CPUPDP10 { */ getLastAddr() { - return this.lastAddr; + return this.addrLast; } /** @@ -758,7 +804,7 @@ class CPUStatePDP10 extends CPUPDP10 { */ readWordFromPhysical(addr) { - return this.bus.getWord(this.lastAddr = addr); + return this.bus.getWord(this.addrLast = addr); } /** @@ -773,7 +819,7 @@ class CPUStatePDP10 extends CPUPDP10 { */ writeWordToPhysical(addr, data) { - this.bus.setWord(this.lastAddr = addr, data); + this.bus.setWord(this.addrLast = addr, data); return data; } diff --git a/modules/pdp10/lib/defines.js b/modules/pdp10/lib/defines.js index 9e48b3c28..794449a01 100644 --- a/modules/pdp10/lib/defines.js +++ b/modules/pdp10/lib/defines.js @@ -139,10 +139,10 @@ var PDP10 = { * * Mode Suffix Source Destination * ---- ------ ----- ----------- - * 0: BASIC None E AC - * 1: IMMEDIATE I 0,E AC - * 2: MEMORY M AC E - * 3: SELF S E E (and AC if A is non-zero) + * 0: Basic None E AC + * 1: Immediate I 0,E AC + * 2: Memory M AC E + * 3: Self/Both S or B E E (and AC if A is non-zero) * * Input-output instructions look like: * @@ -191,6 +191,56 @@ var PDP10 = { DEBUGGER: 0x0004, // set if the Debugger wants to perform checks WAIT: 0x0008, // WAIT operation in progress PRESERVE: 0x000F, // OPFLAG bits to preserve prior to the next instruction + }, + + /* + * Readable CPU (or APR for "Arithmetic Processor") flags provided by the "CONI APR," instruction; see opCONI(). + */ + RFLAG: { + PIA: 0o000007, // Priority Interrupt Assignment + OVFL: 0o000010, // Overflow + OVFL_IE: 0o000020, // Overflow Interrupt Enabled + TRAP_OFF: 0o000040, // Trap Offset + FPOVFL: 0o000100, // Floating-Point Overflow + FPOVFL_IE: 0o000200, // Floating-Point Overflow Interrupt Enabled + CLOCK: 0o001000, // Clock Flag + CLOCK_IE: 0o002000, // Clock Interrupt Enabled + NXM: 0o010000, // Non-Existent Memory + PRM: 0o020000, // Memory Protection + ADB: 0o040000, // Address Break + UIO: 0o100000, // User In-Out + PDOVFL: 0o200000 // Pushdown Overflow (TODO: Verify this is correct; the May 1968 doc may have a typo) + }, + + /* + * Writable CPU (or APR for "Arithmetic Processor") flags provided by the "CONO APR," instruction; see opCONO(). + * + * A set bit performs the function shown below, a clear bit does nothing. + */ + WFLAG: { + PIA: 0o000007, // Priority Interrupt Assignment + OVFL_CL: 0o000010, // Clear Overflow + OVFL_IE: 0o000020, // Enable Overflow Interrupt + OVFL_ID: 0o000040, // Disable Overflow Interrupt + FPOVFL_CL: 0o000100, // Clear Floating-Point Overflow + FPOVFL_IE: 0o000200, // Enable Floating-Point Overflow Interrupt + FPOVFL_ID: 0o000400, // Disable Floating-Point Overflow Interrupt + CLOCK_CL: 0o001000, // Clear Clock Flag + CLOCK_IE: 0o002000, // Enable Clock Interrupt + CLOCK_ID: 0o004000, // Disable Clock Interrupt + NXM_CL: 0o010000, // Clear Non-Existent Memory + PRM_CL: 0o020000, // Clear Memory Protection + ADB_CL: 0o040000, // Clear Address Break + UIO_CL: 0o200000, // Clear All In-Out Devices + PDOVFL_CL: 0o400000 // Clear Pushdown Overflow + }, + + /* + * 7-bit device codes used by Input-Output instructions; see opIO(). + */ + DEVICES: { + APR: 0o000, // Arithmetic Processor + PI: 0o001 // Priority Interrupt } }; diff --git a/modules/pdp10/lib/memory.js b/modules/pdp10/lib/memory.js index f8e779c47..1b274c2a9 100644 --- a/modules/pdp10/lib/memory.js +++ b/modules/pdp10/lib/memory.js @@ -424,7 +424,9 @@ class MemoryPDP10 { */ readWordMemory(off, addr) { - return this.aw[off]; + var w = this.aw[off]; + Component.assert(w >= 0 && w < PDP10.WORD_LIMIT); + return w; } /** @@ -437,6 +439,7 @@ class MemoryPDP10 { */ writeWordMemory(w, off, addr) { + Component.assert(w >= 0 && w < PDP10.WORD_LIMIT); if (this.aw[off] != w) { this.aw[off] = w; this.fDirty = true; diff --git a/modules/pdp11/lib/cpustate.js b/modules/pdp11/lib/cpustate.js index bed89badc..1017c7d25 100644 --- a/modules/pdp11/lib/cpustate.js +++ b/modules/pdp11/lib/cpustate.js @@ -690,7 +690,8 @@ class CPUStatePDP11 extends CPUPDP11 { this.opLast, this.pswTrap, this.trapReason, - this.trapVector + this.trapVector, + this.addrReset ]); state.set(1, [this.getPSW(),this.getMMR0(),this.getMMR1(),this.getMMR2(),this.getMMR3()]); state.set(2, [this.nTotalCycles, this.getSpeed(), this.flags.autoStart]); @@ -731,7 +732,8 @@ class CPUStatePDP11 extends CPUPDP11 { this.opLast, this.pswTrap, this.trapReason, - this.trapVector + this.trapVector, + this.addrReset ] = data[0]; var a = data[1]; diff --git a/versions/pdpjs/1.34.2/pdp10-dbg.js b/versions/pdpjs/1.34.2/pdp10-dbg.js index d97e64e46..6f27c504a 100644 --- a/versions/pdpjs/1.34.2/pdp10-dbg.js +++ b/versions/pdpjs/1.34.2/pdp10-dbg.js @@ -31,7 +31,7 @@ var l,ga="function"==typeof Object.defineProperties?Object.defineProperty:functi function la(){ia();var a=ha.Symbol.iterator;a||(a=ha.Symbol.iterator=ha.Symbol("iterator"));"function"!=typeof Array.prototype[a]&&ga(Array.prototype,a,{configurable:!0,writable:!0,value:function(){return ma(this)}});la=function(){}}function ma(a){var b=0;return na(function(){return ba?-b:b}});qa("Math.log2",function(a){return a?a:function(a){return Math.log(a)/Math.LN2}}); -var ra=Math.pow(2,36),sa=-Math.pow(2,35),q={cc:0,vb:1,ec:2,fc:3,gc:4,hc:5,ic:6,jc:7,cb:8,kc:9,wb:10,lc:11,mc:12,xb:13,nc:14,oc:15,pc:16,qc:17,rc:18,sc:19,tc:20,uc:21,vc:22,wc:23,xc:24,yc:25,zc:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,bb:65,bc:66,dc:67,Ac:68,E:69,Bc:70,Cc:71,Dc:72,Ec:73,Fc:74,Gc:75,Hc:76,Ic:77,Jc:78,Kc:79,Lc:80,Q:81, +var ra=Math.pow(2,36),sa=-Math.pow(2,35),q={cc:0,vb:1,ec:2,fc:3,gc:4,hc:5,ic:6,jc:7,hb:8,kc:9,wb:10,lc:11,mc:12,xb:13,nc:14,oc:15,pc:16,qc:17,rc:18,sc:19,tc:20,uc:21,vc:22,wc:23,xc:24,yc:25,zc:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,gb:65,bc:66,dc:67,Ac:68,E:69,Bc:70,Cc:71,Dc:72,Ec:73,Fc:74,Gc:75,Hc:76,Ic:77,Jc:78,Kc:79,Lc:80,Q:81, Mc:82,Nc:83,Oc:84,Pc:85,Qc:86,Rc:87,Sc:88,Tc:89,zb:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Uc:97,Vc:98,Wc:99,d:100,e:101,Xc:102,Yc:103,Zc:104,$c:105,ad:106,k:107,bd:108,cd:109,n:110,dd:111,p:112,q:113,r:114,ed:115,t:116,gd:117,hd:118,jd:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,yb:127}; function ta(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0a&&-1=g?48:55),e=String.fromCharCode(g)+e;a=Math.trunc(a/b)}return(void 0===d?"":d)+e}function va(a,b,c){b?12":">",'"':""","'":"'"};function Ja(a,b,c){var d=0,e=a.length,g=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[f]);0a?"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 La(a,b,c,d){c=void 0===c?!1:c;var e=0,g=null,f=null;if("object"==typeof resources&&(g=resources[a]))return d&&d(a,g,e),[g,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),f;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(g=h.responseText,200==h.status||!h.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a, g,e))});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||(g=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,g,e),f=[g,e]);return f} -function Ma(a,b){var c,d={Y:null,T:null,na:null,ma:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,g,f;if("<"==b.substr(0,1))throw Error(b);f=0>b.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.na=f.load;d.ma=f.exec;if(e=f.bytes)d.Y=e;else if(e=f.words)for(d.Y=Array(2*e.length),g=c=0;c>8&255;else if(e=f.longs)for(d.Y=Array(4*e.length),g=c=0;cb.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.pa=f.load;d.oa=f.exec;if(e=f.bytes)d.Y=e;else if(e=f.words)for(d.Y=Array(2*e.length),g=c=0;c>8&255;else if(e=f.longs)for(d.Y=Array(4*e.length),g=c=0;c>8&255,d.Y[g++]=e[c]>>16&255,d.Y[g++]=e[c]>>24&255;else(e=f.data)?d.Ca=e:d.Y=f;d.Y&&(d.Y.length?1==d.Y.length&&(u(d.Y[0]),d=null):(u("Empty resource: "+a),d=null));d.T=f.symbols}catch(h){u("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;ca?this.Ka=this.id:(this.La=this.id.substr(0,a),this.Ka=this.id.substr(a+1));this.v={ready:!1,Fa:!1,Xa:!1,U:!1,error:!1};this.Na=null;this.v.error=!1;this.X=c||0;this.C=this.u=this.G=this.F=this.oa=null;w.push(this)}function mb(a,b,c){ob[a]&&b&&(ob[a][b]=c)}function xb(){return Date.now()||+new Date} +function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.kb=b.comment;this.Bb=b;this.exports={};this.I=this.bindings={};a=this.id.indexOf(".");0>a?this.Ma=this.id:(this.Na=this.id.substr(0,a),this.Ma=this.id.substr(a+1));this.v={ready:!1,Fa:!1,$a:!1,U:!1,error:!1};this.Qa=null;this.v.error=!1;this.X=c||0;this.C=this.u=this.G=this.F=this.qa=null;w.push(this)}function mb(a,b,c){ob[a]&&b&&(ob[a][b]=c)}function xb(){return Date.now()||+new Date} function u(a){window&&window.alert(a)}function yb(a){var b=!1;window&&(b=window.confirm(a));return b}function zb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;ba;a++)this.b["S"+a]=[0,0,!1,!1,this.Mb,a];this.C=this.u=this.G=this.F=null;this.exports={hold:this.Eb,toggle:this.Xb,reset:this.Tb, set:this.Wb};B(this)}p(bc,v);l=bc.prototype;l.reset=function(a){this.stop();a&&dc(this,this.A=0)}; -l.ga=function(a,b,c,d){if(this.F&&this.F.ga(a,b,c,d)||this.u&&this.u.ga(a,b,c,d)||this.C&&this.C.ga(a,b,c,d))return!0;switch(b){case "PC":return this.I[b]=c,this.M++,!0;default:return"led"==a||"rled"==a?(this.I[b]=c,this.D[b]=d?1:0,this.M++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.I[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){ec(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){fc(a,b)}}(this,b),a.ontouchstart= -function(a,b){return function(c){ec(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){fc(a,b)}}(this,b),!0):v.prototype.ga.call(this,a,b,c,d)}};l.xa=function(a,b,c,d){this.F=a;this.G=b;this.u=c;this.C=d;gc(this);hc(this)};l.pa=function(a,b){if(!b)if(this.W&&ic(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};l.fa=function(a){return a?this.save():!0};l.save=function(){var a=new L(this);a.set(0,[this.f,this.A,this.w]);return a.data()}; +l.ia=function(a,b,c,d){if(this.F&&this.F.ia(a,b,c,d)||this.u&&this.u.ia(a,b,c,d)||this.C&&this.C.ia(a,b,c,d))return!0;switch(b){case "PC":return this.I[b]=c,this.M++,!0;default:return"led"==a||"rled"==a?(this.I[b]=c,this.D[b]=d?1:0,this.M++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.I[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){ec(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){fc(a,b)}}(this,b),a.ontouchstart= +function(a,b){return function(c){ec(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){fc(a,b)}}(this,b),!0):v.prototype.ia.call(this,a,b,c,d)}};l.za=function(a,b,c,d){this.F=a;this.G=b;this.u=c;this.C=d;gc(this);hc(this)};l.ra=function(a,b){if(!b)if(this.W&&ic(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};l.ha=function(a){return a?this.save():!0};l.save=function(){var a=new L(this);a.set(0,[this.f,this.A,this.w]);return a.data()}; l.restore=function(a){if(a=a[0])jc(this,this.f=a[0]),dc(this,this.A=a[1]),kc(this,a[2]);return!0};l.Tb=function(){for(var a in this.b){var b=this.b[a];b[1]=b[0]}hc(this);return!0};function lc(a,b,c){if(a=a.I[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function gc(a,b){for(var c in a.D)lc(a,c,null!=b?b:a.D[c])}function mc(a,b,c){if(a=a.I[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function hc(a){for(var b in a.b)mc(a,b,a.b[b][1])} l.Eb=function(a,b,c){if(ec(this,b)){if(c){var d=this;setTimeout(function(){fc(d,b);a&&a()},+c);return!1}fc(this,b)}return!0};l.Wb=function(a,b){if("SR"==a)return kc(this,ta(b,8));var c=this.b[a];return c?(c[1]=+b?1:0,mc(this,a,c[1]),!0):!1};l.Xb=function(a){return ec(this,a)?(fc(this,a),!0):!1};function ec(a,b){var c=a.b[b];return c?(mc(a,b,c[1]=1-c[1]),c[3]=!0,c[4]&&c[4].call(a,c[1],c[5]),b!=uc&&(a.P=b==vc,a.R=b==wc),!0):!1} function fc(a,b){var c=a.b[b];c&&(c[2]&&c[3]&&(mc(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5])),c[3]=!1)}l.Nb=function(a){a||this.u.v.K||(this.u.w=this.f%Qb,this.b[xc]&&this.b[xc][1]&&yc(this.u))};l.Ob=function(){};l.Ib=function(a){a||this.u.V()}; @@ -73,164 +73,166 @@ l.Gb=function(a){if(!a&&!this.u.v.K)if(this.b[xc]&&this.b[xc][1])yc(this.u);else l.Jb=function(a){if(!a&&!this.u.v.K){var b;this.R&&Dc(this);this.S==cc?b=Fc(this.G,this.f):b=this.u.g(this.f);dc(this,this.A=b)}};l.Lb=function(a){a||this.u.v.K||jc(this,this.w)};l.Kb=function(a){a?(this.H=!0,gc(this,!0)):(this.H=!1,gc(this),kc(this,0))};l.Mb=function(a,b){this.w=a?this.w|1<c;c++){var d=a,e="A"+c,g=b&1<c;c++){var d=a,e="D"+c,g=b&1<b;b++)a.b["S"+b][1]=a.w&1<d.length){for(var e=0,g=Array(4096),f=0;fd.length){for(var e=0,g=Array(4096),f=0;f>>a.f;0g&&(m=g);if(h&&h.size){if(h.type==d){if(e+g<=h.B)return h.Ha+=h.B-e,h.B=e,!0;if(e>=h.B+h.Ha){m=h.size-(e-k);m>g&&(m=g);h.Ha=e-h.B+m;e=k+16384;g-=m;f++;continue}}return Lc(Mc,e,g)}e=new Hc(a,e,m,16384,d);Ic(e,a.C,h);a.b[f++]=e;e=k+16384;g-=m}return 0>=g?(a.status("Added "+(c>>10)+"Kb "+Nc[d]+" at "+va(b)),!0):Lc(Oc,b,c)} -function Fc(a,b){var c=a.b[(b&a.w)>>>a.f];a.A++;b=c.G(b&16383,b);a.A--;return b}function Ec(a,b,c){var d=a.b[(b&a.w)>>>a.f];a.A++;d.F(c,b&16383,b);a.A--}function Jc(a){for(var b=0,c=[],d=0;d>>a.f];a.A++;b=c.G(b&16383,b);a.A--;return b}function Ec(a,b,c){var d=a.b[(b&a.w)>>>a.f];a.A++;d.F(c,b&16383,b);a.A--}function Jc(a){for(var b=0,c=[],d=0;d=a.ia&&(a.ia+=a.ha,c=!0);0<=a.ja&&a.ja<=id(a)&&(a.ha=a.ja=-1,ed(a),a.V(),c=!0);c&&a.i(id(a)+" cycles: checksum="+t(a.ua))}} -l.ga=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.I[b]=c,!0;case "run":return this.I[b]=c,c.onclick=function(){var a;if(a=d.F)if(a=d.F,a.v.U)a=!0;else{var b=null,c,h=zb(a.id);for(c=0;ca.S/a.W?b=1:d=!0;a.aa=b;b=a.Ta*a.aa;if(a.W!=b){a.W=b;b=a.W.toFixed(2)+"Mhz";var e=a.I.setSpeed;e&&(e.textContent=b);a.i("target speed: "+b)}c&&a.F&&md(a.F)}Bc(a,a.L);a.L=0;a.J=xb();a.N=0;kd(a);return d}function nd(a,b){for(var c=a.M.length-1;0<=c;c--){var d=a.M[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function od(a){for(var b=[],c=0;cd[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function Jd(a,b){var c=a.O-=a.P;a.P=0;b&&(a.O=0);return c} -l.Ub=function(){if(this.v.K){this.Ba>=this.Va&&kd(this,!0);this.ka=0;this.ta=xb();if(this.N){var a=this.ta-this.N;a>this.Ua&&(this.J+=a,this.J>this.ta&&(this.J=this.ta))}try{do{var b=nd(this,this.v.Ea?1:this.wa);try{this.Ja(b)}catch(e){if("number"!=typeof e)throw e;}b=Jd(this,!0);this.ka+=b;this.L+=b;Cc(this,b);Ac(this,b);this.ba-=b;if(0>=this.ba){this.ba+=this.wa;++this.Wa>=Kd&&(this.F&&M(this.F,void 0),this.Wa=0);break}}while(this.v.K)}catch(e){this.V();this.F&&this.F.stop(xb(),id(this));Ib(this, -e.stack||e.message);return}if(this.v.K){a=setTimeout;b=this.kb;this.N=xb();var c=this.Ua;this.ka&&(c=Math.round(c*this.ka/this.wa));var c=c-(this.N-this.ta),d=this.N-this.J;d&&(this.S=Math.round(this.L/(10*d))/100,864E5<=d&&(this.R=0,jd(this)));if(0>c||this.Sc&&(this.J-=c),c=0;this.Ba+=this.ka;this.N+=c;a(b,c)}}}; -function yc(a,b){if(!Jb(a))if(a.v.K)a.i(a.toString()+" busy");else{jd(a);a.v.K=!0;a.v.Qa=!0;var c=a.I.run;c&&(c.textContent="Halt");a.F&&(b&&md(a.F,!0),a.F.start(a.J,id(a)));a.C||a.status("Started");setTimeout(a.kb,0)}}l.Ja=function(){return 0};l.V=function(a){var b=!1;if(this.v.K){Jd(this);Bc(this,this.L);this.L=0;this.v.K=!1;if(b=this.I.run)b.textContent="Run";this.F&&this.F.stop(xb(),id(this));b=!0;this.C||this.status("Stopped")}this.v.complete=a;return b};var ld=30,Kd=15,bd=["power","reset"]; -function Ld(a){var b=+a.model||1001;ad.call(this,a,1E6);this.jb=b;this.gb=+a.addrReset||0;this.Ab=Md.bind(this);this.b=O.bind(this);this.qa=null;this.fb=[];this.v.complete=!1}p(Ld,ad);l=Ld.prototype;l.reset=function(){this.status("Model "+this.jb);this.v.K&&this.V();this.f=this.H=this.Ma=0;this.w=this.sa=this.gb;this.la=this.ib=this.Aa=this.ub=this.Sa=!1;this.D=-1;this.ra=this.w;this.A=0;this.g=this.Qb;this.j=this.ac;this.qa=null;dd(this);this.v.error=!1;ad.prototype.reset.call(this)};l.rb=function(){return 0}; -l.save=function(){var a=new L(this);a.set(0,[this.f,this.H,this.D,this.Ma,this.w,this.sa,this.ra,this.A]);a.set(1,[]);a.set(2,[this.R,this.aa,this.v.Z]);a.set(3,Nd(this));a.set(4,od(this));return a.data()}; -l.restore=function(a){var b;b=a[0];la();ia();la();var c=b[Symbol.iterator];b=c?c.call(b):ma(b);this.f=b.next().value;this.H=b.next().value;this.D=b.next().value;this.Ma=b.next().value;this.w=b.next().value;this.sa=b.next().value;this.ra=b.next().value;this.A=b.next().value;b=a[2];this.R=b[0];jd(this,b[1]);this.v.Z=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d=0;dVb&&(a!=Wb?a=Xb-a:this.la=this.Aa=!0);return a};function Pd(a,b){b?b==Wb?a.la=a.Aa=!0:b=Xb-b:a.ib=a.Aa=!0;return b}function Nd(a){var b=[];for(a=a.qa;a;)b.push(a.Yb),a=a.next;return b}l.Qb=function(a){var b=this.G;a=this.ra=a;return b.b[(a&b.w)>>>b.f].g(a&16383,a)};l.ac=function(a,b){var c=this.G;a=this.ra=a;c.b[(a&c.w)>>>c.f].j(b,a&16383,a);return b}; -l.Ja=function(a){this.v.complete=!0;var b=this.C?Qd(this.C)?1:this.v.Qa?-1:0:0,c=a?this.v.Qa?0:1:-1;this.v.Qa=!1;this.O=this.P=a;this.A=this.A&-5|(b?4:0);do{if(this.A){if(this.A&4){if(Rd(this.C,this.w,c)){this.V();break}++b||(this.A&=-5);c||c++}if(a=this.A&11)this.A&2?this.qa||(this.A&=-3):this.A&1&&this.A++,a=!1;if(a){if(this.A&4&&Rd(this.C,this.w,c)){this.V();break}if(0>c)break}}this.A&=15;this.H=this.H&4194304?this.g(this.f):this.Ma=this.g(this.sa=this.w);this.H&=8388607;this.f=this.H&262143;if(a= -this.H>>18&15)this.f=this.f+this.g(a)&Rb;this.H&4194304?a=-1:(this.w=(this.w+1)%Qb,a=this.Ma/$b|0);0<=a&&this.Ab(a)}while(0>4].call(this,a,a&15)}function Q(a){this.b(a)} +function ad(a,b){v.call(this,"CPU",a,1);b=+a.cycles||b;var c=+a.multiplier||1;this.Ua=0;this.Ya=b;this.ea=c;this.Wa=Math.round(this.Ya/1E4)/100;this.ba=this.Wa*this.ea;this.Xa=this.ya=this.fa=this.Oa=0;this.v.K=this.v.Ta=!1;this.v.Z=a.autoStart;"string"==typeof this.v.Z&&(this.v.Z="true"==this.v.Z);this.v.Ea=!1;this.wa=this.la=0;this.xa=+a.csStart;this.ka=+a.csInterval;this.ma=+a.csStop;this.N=[];this.fb=this.Ub.bind(this);this.S=this.M=this.P=this.R=this.L=this.va=this.O=this.na=this.Za=this.aa= +0;this.Ba=null;B(this)}p(ad,v);l=ad.prototype;l.za=function(a,b,c,d){this.F=a;this.G=b;this.C=d;this.Ba=a.w;for(a=0;a=a.la&&(a.la+=a.ka,c=!0);0<=a.ma&&a.ma<=id(a)&&(a.ka=a.ma=-1,ed(a),a.V(),c=!0);c&&a.i(id(a)+" cycles: checksum="+t(a.wa))}} +l.ia=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.I[b]=c,!0;case "run":return this.I[b]=c,c.onclick=function(){var a;if(a=d.F)if(a=d.F,a.v.U)a=!0;else{var b=null,c,h=zb(a.id);for(c=0;ca.aa/a.ba?b=1:d=!0;a.ea=b;b=a.Wa*a.ea;if(a.ba!=b){a.ba=b;b=a.ba.toFixed(2)+"Mhz";var e=a.I.setSpeed;e&&(e.textContent=b);a.i("target speed: "+b)}c&&a.F&&md(a.F)}Bc(a,a.M);a.M=0;a.L=xb();a.O=0;kd(a);return d}function nd(a,b){for(var c=a.N.length-1;0<=c;c--){var d=a.N[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function od(a){for(var b=[],c=0;cd[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function Jd(a,b){var c=a.P-=a.R;a.R=0;b&&(a.P=0);return c} +l.Ub=function(){if(this.v.K){this.Oa>=this.Ya&&kd(this,!0);this.na=0;this.va=xb();if(this.O){var a=this.va-this.O;a>this.Xa&&(this.L+=a,this.L>this.va&&(this.L=this.va))}try{do{var b=nd(this,this.v.Ea?1:this.ya);try{this.Ja(b)}catch(e){if("number"!=typeof e)throw e;}b=Jd(this,!0);this.na+=b;this.M+=b;Cc(this,b);Ac(this,b);this.fa-=b;if(0>=this.fa){this.fa+=this.ya;++this.Za>=Kd&&(this.F&&M(this.F,void 0),this.Za=0);break}}while(this.v.K)}catch(e){this.V();this.F&&this.F.stop(xb(),id(this));Ib(this, +e.stack||e.message);return}if(this.v.K){a=setTimeout;b=this.fb;this.O=xb();var c=this.Xa;this.na&&(c=Math.round(c*this.na/this.ya));var c=c-(this.O-this.va),d=this.O-this.L;d&&(this.aa=Math.round(this.M/(10*d))/100,864E5<=d&&(this.S=0,jd(this)));if(0>c||this.aac&&(this.L-=c),c=0;this.Oa+=this.na;this.O+=c;a(b,c)}}}; +function yc(a,b){if(!Jb(a))if(a.v.K)a.i(a.toString()+" busy");else{jd(a);a.v.K=!0;a.v.Ta=!0;var c=a.I.run;c&&(c.textContent="Halt");a.F&&(b&&md(a.F,!0),a.F.start(a.L,id(a)));a.C||a.status("Started");setTimeout(a.fb,0)}}l.Ja=function(){return 0};l.V=function(a){var b=!1;if(this.v.K){Jd(this);Bc(this,this.M);this.M=0;this.v.K=!1;if(b=this.I.run)b.textContent="Run";this.F&&this.F.stop(xb(),id(this));b=!0;this.C||this.status("Stopped")}this.v.complete=a;return b};var ld=30,Kd=15,bd=["power","reset"]; +function Ld(a){var b=+a.model||1001;ad.call(this,a,1E6);this.lb=b;this.Ka=+a.addrReset||0;this.Ab=Md.bind(this);this.b=O.bind(this);this.ta=null;this.jb=[];this.v.complete=!1}p(Ld,ad);l=Ld.prototype;l.reset=function(){this.status("Model "+this.lb);this.v.K&&this.V();this.f=this.H=this.Pa=0;this.w=this.ua=this.Ka;this.D=-1;this.J=this.La=this.ja=this.Va=this.W=!1;this.sa=this.w;this.A=0;this.g=this.Qb;this.j=this.ac;this.ta=null;dd(this);this.v.error=!1;ad.prototype.reset.call(this)};l.sb=function(){return 0}; +l.save=function(){var a=new L(this);a.set(0,[this.f,this.H,this.Pa,this.w,this.D,this.A,this.J,this.La,this.ja,this.Va,this.W,this.ua,this.sa,this.Ka]);a.set(1,[]);a.set(2,[this.S,this.ea,this.v.Z]);a.set(3,Nd(this));a.set(4,od(this));return a.data()}; +l.restore=function(a){var b;b=a[0];la();ia();la();var c=b[Symbol.iterator];b=c?c.call(b):ma(b);this.f=b.next().value;this.H=b.next().value;this.Pa=b.next().value;this.w=b.next().value;this.D=b.next().value;this.A=b.next().value;this.J=b.next().value;this.La=b.next().value;this.ja=b.next().value;this.Va=b.next().value;this.W=b.next().value;this.ua=b.next().value;this.sa=b.next().value;this.Ka=b.next().value;b=a[2];this.S=b[0];jd(this,b[1]);this.v.Z=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d= +0;dVb&&(a!=Wb?a=Xb-a:this.J=this.ja=!0);return a};function Pd(a,b){b?b==Wb?a.J=a.ja=!0:b=Xb-b:a.La=a.ja=!0;return b}function Nd(a){var b=[];for(a=a.ta;a;)b.push(a.Yb),a=a.next;return b} +l.Qb=function(a){var b=this.G;a=this.sa=a;return b.b[(a&b.w)>>>b.f].g(a&16383,a)};l.ac=function(a,b){var c=this.G;a=this.sa=a;c.b[(a&c.w)>>>c.f].j(b,a&16383,a);return b}; +l.Ja=function(a){this.v.complete=!0;var b=this.C?Qd(this.C)?1:this.v.Ta?-1:0:0,c=a?this.v.Ta?0:1:-1;this.v.Ta=!1;this.P=this.R=a;this.A=this.A&-5|(b?4:0);do{if(this.A){if(this.A&4){if(Rd(this.C,this.w,c)){this.V();break}++b||(this.A&=-5);c||c++}if(a=this.A&11)this.A&2?this.ta||(this.A&=-3):this.A&1&&this.A++,a=!1;if(a){if(this.A&4&&Rd(this.C,this.w,c)){this.V();break}if(0>c)break}}this.A&=15;this.H=this.H&4194304?this.g(this.f):this.Pa=this.g(this.ua=this.w);this.H&=8388607;this.f=this.H&262143;if(a= +this.H>>18&15)this.f=this.f+this.g(a)&Rb;this.H&4194304?a=-1:(this.w=(this.w+1)%Qb,a=this.Pa/$b|0);0<=a&&this.Ab(a)}while(0>4].call(this,a,a&15)}function Q(a){this.b(a)} function Td(){var a=0,b=this.g(this.f),c=b/ac&63,d=b>>24&63,c=c-d;0>c&&(a++,c=36-d,0>c&&(c=64-d));b=c*ac+(d<<24)+(b&16777215);a&&(b=(b+a)%E);this.j(this.f,b)}function Ud(a,b){a=this.g(this.f);if(0>this.D)this.D=a,this.H=this.f|4194304,Od(this,-1);else{var c=this.D/ac&63,d=this.D>>24&63;a=32>=c+d?(a>>c&(1<>>0:Math.trunc(a/Math.pow(2,c))%Math.pow(2,d);this.j(b,a);this.D=-1}} function Vd(a,b){a=this.g(this.f);if(0>this.D)this.D=a,this.H=this.f|4194304,Od(this,-1);else{var c=this.D/ac&63,d=this.D>>24&63;b=this.g(b)%Math.pow(2,d)*Math.pow(2,c)%E;a=a-a%Math.pow(2,c+d)+b+a%Math.pow(2,c);this.j(this.f,a);this.D=-1}}function Wd(a,b){this.j(b,this.g(this.f))}function Xd(a,b){this.j(b,this.f)}function Yd(a,b){this.j(this.f,this.g(b))}function Zd(a,b){this.j(b,0)}function $d(a,b){this.j(b,F-this.g(b))}function ae(a,b){this.j(b,F)} function be(a,b){var c=this.g(this.f),d=this.g(b);this.j(b,ce(a,d,c)+(c-(c&H)))}function de(a,b){var c=this.g(b);this.j(b,ce(a,c,0))}function ee(a,b){b=this.g(b);var c=this.g(this.f);this.j(this.f,ce(a,c,b)+(b-(b&H)))}function fe(a,b){var c=this.g(this.f),d=c;if(a&=384)switch(d-=d&H,a){case 256:d+=H;break;case 384:d+=c>Vb?H:0}c=d;this.j(this.f,c);b&&this.j(b,c)}function ge(a,b){var c=(this.g(this.f)&H)*G,d=this.g(b);this.j(b,ce(a,d,c)+c)} function he(a,b){var c=this.f*G,d=this.g(b);this.j(b,ce(a,d,c)+c)}function ie(a,b){b=(this.g(b)&H)*G;var c=this.g(this.f);this.j(this.f,ce(a,c,b)+b)}function je(a,b){var c=this.g(this.f),d=(c&H)*G,c=ce(a,c,d)+d;this.j(this.f,c);b&&this.j(b,c)}function ke(a,b){var c=this.g(this.f)&H,d=this.g(b);this.j(b,le(a,d,c)+c)}function me(a,b){var c=this.g(b);this.j(b,le(a,c,this.f)+this.f)}function ne(a,b){b=this.g(b)&H;var c=this.g(this.f);this.j(this.f,le(a,c,b)+b)} -function oe(a,b){var c=this.g(this.f),d=c;if(a&=384)switch(d&=H,a){case 256:d+=H*G;break;case 384:d+=c>Ub?H*G:0}c=d;this.j(this.f,c);b&&this.j(b,c)}function pe(a,b){var c=this.g(this.f)/G|0,d=this.g(b);this.j(b,le(a,d,c)+c)}function qe(a,b){var c=this.g(b);this.j(b,le(a,c,0))}function re(a,b){b=this.g(b)/G|0;var c=this.g(this.f);this.j(this.f,le(a,c,b)+b)}function se(a,b){var c=this.g(this.f),d=c/G|0,c=le(a,c,d)+d;this.j(this.f,c);b&&this.j(b,c)}function R(a){this.b(a)}function te(){} -function O(a){this.i("undefined opcode: "+va(a));Od(this,-1);this.V()}function le(a,b,c){switch(a&384){case 0:b-=b&H;break;case 128:b=0;break;case 256:b=H*G;break;case 384:b=c>Ub?H*G:0}return b}function ce(a,b,c){switch(a&384){case 0:b&=H;break;case 128:b=0;break;case 256:b=H;break;case 384:b=c>Vb?H:0}return b}function S(a,b){return((a/I|0)&(b/I|0))*I+((a&b)>>>0)}function ue(a,b){return((a/I|0)^(b/I|0))*I+((a^b)>>>0)}function ve(a,b){return(~((a/I|0)^(b/I|0))&15)*I+(~(a^b)>>>0)} +function oe(a,b){var c=this.g(this.f),d=c;if(a&=384)switch(d&=H,a){case 256:d+=H*G;break;case 384:d+=c>Ub?H*G:0}c=d;this.j(this.f,c);b&&this.j(b,c)}function pe(a,b){var c=this.g(this.f)/G|0,d=this.g(b);this.j(b,le(a,d,c)+c)}function qe(a,b){var c=this.g(b);this.j(b,le(a,c,0))}function re(a,b){b=this.g(b)/G|0;var c=this.g(this.f);this.j(this.f,le(a,c,b)+b)}function se(a,b){var c=this.g(this.f),d=c/G|0,c=le(a,c,d)+d;this.j(this.f,c);b&&this.j(b,c)}function R(a){te[a&7].call(this,a>>3&127)} +function ue(){}function O(a){this.i("undefined opcode: "+va(a));Od(this,-1);this.V()}function le(a,b,c){switch(a&384){case 0:b-=b&H;break;case 128:b=0;break;case 256:b=H*G;break;case 384:b=c>Ub?H*G:0}return b}function ce(a,b,c){switch(a&384){case 0:b&=H;break;case 128:b=0;break;case 256:b=H;break;case 384:b=c>Vb?H:0}return b}function S(a,b){return((a/I|0)&(b/I|0))*I+((a&b)>>>0)}function ve(a,b){return((a/I|0)^(b/I|0))*I+((a^b)>>>0)}function we(a,b){return(~((a/I|0)^(b/I|0))&15)*I+(~(a^b)>>>0)} function U(a,b){return(a/I|0|b/I|0)*I+((a|b)>>>0)} var Sd=[Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,Q,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},Td,function(a,b){0>this.D&&Td.call(this);Ud.call(this,0,b)},Ud,function(a,b){0>this.D&&Td.call(this);Vd.call(this,0,b)},Vd,function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},Wd,Xd,Yd,function(a,b){b&&this.j(b,this.g(this.f))},function(a,b){a=this.g(this.f);a=(a/G|0)+a%G*G;this.j(b,a)},function(a,b){this.j(b,this.f*G)},function(a,b){a=this.g(b);a=(a/G|0)+a%G*G;this.j(this.f,a)},function(a,b){a=this.g(this.f);a=(a/G|0)+a%G*G;this.j(this.f,a);b&&this.j(b,a)},function(a,b){this.j(b,Pd(this,this.g(this.f)))},function(a,b){this.j(b,this.f?Xb-this.f:0)},function(a,b){this.j(this.f,Pd(this, this.g(b)))},function(a,b){a=Pd(this,this.g(this.f));this.j(this.f,a);b&&this.j(b,a)},function(a,b){this.j(b,this.abs(this.g(this.f)))},function(a,b){this.j(b,this.f)},function(a,b){this.j(this.f,this.abs(this.g(b)))},function(a,b){a=this.abs(this.g(this.f));this.j(this.f,a);b&&this.j(b,a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, -function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a,b){var c=this.f<<14>>24;if(c){a=this.g(b);var d=a>Vb?-(E-a):a;0d?Sb:0,c=Tb):(d=d*Math.pow(2,c)%Sb,c=Sb-Math.pow(2,35-c)),a<=Vb?a+c>Vb&&(this.la=!0):a-c<=Vb&&(this.la=!0)):d=-35>=c?0>d?-1:0:Math.trunc(d/Math.pow(2,-c));a=0>d?d+E:d;this.j(b,a)}},function(a,b){if(a=(this.f<<14>>24)%36){var c=this.g(b);0>a&&(a=36+a);c=c*Math.pow(2,a)%E+Math.trunc(c/ +function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a,b){var c=this.f<<14>>24;if(c){a=this.g(b);var d=a>Vb?-(E-a):a;0d?Sb:0,c=Tb):(d=d*Math.pow(2,c)%Sb,c=Sb-Math.pow(2,35-c)),a<=Vb?a+c>Vb&&(this.J=!0):a-c<=Vb&&(this.J=!0)):d=-35>=c?0>d?-1:0:Math.trunc(d/Math.pow(2,-c));a=0>d?d+E:d;this.j(b,a)}},function(a,b){if(a=(this.f<<14>>24)%36){var c=this.g(b);0>a&&(a=36+a);c=c*Math.pow(2,a)%E+Math.trunc(c/ Math.pow(2,36-a));this.j(b,c)}},function(a,b){if(a=this.f<<14>>24){var c=this.g(b),c=0=a?0:Math.trunc(c/Math.pow(2,-a));this.j(b,c)}},function(a){this.b(a)},function(a){this.b(a)},function(a,b){if(a=(this.f<<14>>24)%72){var c=this.g(b),d=this.g(b+1&15),e=c;0>a&&(a=72+a);36>a?(c=c*Math.pow(2,a)%E+Math.trunc(d/Math.pow(2,36-a)),d=d*Math.pow(2,a)%E+Math.trunc(e/Math.pow(2,36-a))):(c=d*Math.pow(2,a-36)%E+Math.trunc(c/Math.pow(2,72-a)),d=e*Math.pow(2,a-36)%E+Math.trunc(d/ Math.pow(2,72-a)));this.j(b,c);this.j(b+1&15,d)}},function(a,b){if(a=this.f<<14>>24){var c=this.g(b),d=this.g(b+1&15);0=a?(c=0,d=-72>=a?0:Math.trunc(c/Math.pow(2,-a-36))):(d=Math.trunc(d/Math.pow(2,-a))+c*Math.pow(2,36+a)%E,c=Math.trunc(c/Math.pow(2,-a)));this.j(b,c);this.j(b+1&15,d)}},O,function(a,b){a=this.g(b);this.j(b,this.g(this.f));this.j(this.f,a)},function(a,b){a=!1;for(var c= -this.g(b),d=c/G|0,c=c&H;!a;)this.j(c,this.g(d)),c==this.f&&(a=!0),d=d+1&H,c=c+1&H,this.v.K||(this.j(b,d*G+c),a||Od(this,-1),a=!0)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},O,function(a){this.b(a)},function(a,b){a=this.g(b);a+=262145;this.j(a&H,this.g(this.f));a>=E&&(a-=E);a/G|0||(this.Sa=!0);this.j(b,a)},function(a,b){a=this.g(b);var c=this.g(a&H);this.j(this.f,c);this.f==b&&(a=c);a-=262145;0>a&&(a+=E);(a/G|0)==H&&(this.Sa= -!0);this.j(b,a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, +this.g(b),d=c/G|0,c=c&H;!a;)this.j(c,this.g(d)),c==this.f&&(a=!0),d=d+1&H,c=c+1&H,this.v.K||(this.j(b,d*G+c),a||Od(this,-1),a=!0)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},O,function(a){this.b(a)},function(a,b){a=this.g(b);a+=262145;this.j(a&H,this.g(this.f));a>=E&&(a-=E);a/G|0||(this.W=!0);this.j(b,a)},function(a,b){a=this.g(b);var c=this.g(a&H);this.j(this.f,c);this.f==b&&(a=c);a-=262145;0>a&&(a+=E);(a/G|0)==H&&(this.W=!0); +this.j(b,a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},Zd,Zd,function(){this.j(this.f,0)},function(a,b){this.j(this.f,this.j(b,0))},function(a,b){this.j(b,S(this.g(b),this.g(this.f)))},function(a,b){this.j(b,S(this.g(b),this.f))},function(a,b){this.j(this.f,S(this.g(b),this.g(this.f)))},function(a,b){this.j(this.f, -this.j(b,S(this.g(b),this.g(this.f))))},function(a,b){this.j(b,S(F-this.g(b),this.g(this.f)))},function(a,b){this.j(b,S(F-this.g(b),this.f))},function(a,b){this.j(this.f,S(F-this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,S(F-this.g(b),this.g(this.f))))},Wd,Xd,te,Wd,function(a,b){this.j(b,S(this.g(b),F-this.g(this.f)))},function(a,b){this.j(b,S(this.g(b),F-this.f))},function(a,b){this.j(this.f,S(this.g(b),F-this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,S(this.g(b),F-this.g(this.f))))}, -te,te,Yd,Yd,function(a,b){this.j(b,ue(this.g(b),this.g(this.f)))},function(a,b){this.j(b,ue(this.g(b),this.f))},function(a,b){this.j(this.f,ue(this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,ue(this.g(b),this.g(this.f))))},function(a,b){this.j(b,U(this.g(b),this.g(this.f)))},function(a,b){this.j(b,U(this.g(b),this.f))},function(a,b){this.j(this.f,U(this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,U(this.g(b),this.g(this.f))))},function(a,b){this.j(b,S(F-this.g(b), -F-this.g(this.f)))},function(a,b){this.j(b,S(F-this.g(b),F-this.f))},function(a,b){this.j(this.f,S(F-this.g(b),F-this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,S(F-this.g(b),F-this.g(this.f))))},function(a,b){this.j(b,ve(this.g(b),this.g(this.f)))},function(a,b){this.j(b,ve(this.g(b),this.f))},function(a,b){this.j(this.f,ve(this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,ve(this.g(b),this.g(this.f))))},$d,$d,function(a,b){this.j(this.f,F-this.g(b))},function(a,b){this.j(this.f, +this.j(b,S(this.g(b),this.g(this.f))))},function(a,b){this.j(b,S(F-this.g(b),this.g(this.f)))},function(a,b){this.j(b,S(F-this.g(b),this.f))},function(a,b){this.j(this.f,S(F-this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,S(F-this.g(b),this.g(this.f))))},Wd,Xd,ue,Wd,function(a,b){this.j(b,S(this.g(b),F-this.g(this.f)))},function(a,b){this.j(b,S(this.g(b),F-this.f))},function(a,b){this.j(this.f,S(this.g(b),F-this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,S(this.g(b),F-this.g(this.f))))}, +ue,ue,Yd,Yd,function(a,b){this.j(b,ve(this.g(b),this.g(this.f)))},function(a,b){this.j(b,ve(this.g(b),this.f))},function(a,b){this.j(this.f,ve(this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,ve(this.g(b),this.g(this.f))))},function(a,b){this.j(b,U(this.g(b),this.g(this.f)))},function(a,b){this.j(b,U(this.g(b),this.f))},function(a,b){this.j(this.f,U(this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,U(this.g(b),this.g(this.f))))},function(a,b){this.j(b,S(F-this.g(b), +F-this.g(this.f)))},function(a,b){this.j(b,S(F-this.g(b),F-this.f))},function(a,b){this.j(this.f,S(F-this.g(b),F-this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,S(F-this.g(b),F-this.g(this.f))))},function(a,b){this.j(b,we(this.g(b),this.g(this.f)))},function(a,b){this.j(b,we(this.g(b),this.f))},function(a,b){this.j(this.f,we(this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,we(this.g(b),this.g(this.f))))},$d,$d,function(a,b){this.j(this.f,F-this.g(b))},function(a,b){this.j(this.f, this.j(b,F-this.g(b)))},function(a,b){this.j(b,U(F-this.g(b),this.g(this.f)))},function(a,b){this.j(b,U(F-this.g(b),this.f))},function(a,b){this.j(this.f,U(F-this.g(b),this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,U(F-this.g(b),this.g(this.f))))},function(a,b){this.j(b,F-this.g(this.f))},function(a,b){this.j(b,F-this.f)},function(){this.j(this.f,F-this.g(this.f))},function(a,b){this.j(this.f,this.j(b,F-this.g(this.f)))},function(a,b){this.j(b,U(this.g(b),F-this.g(this.f)))},function(a,b){this.j(b, U(this.g(b),F-this.f))},function(a,b){this.j(this.f,U(this.g(b),F-this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,U(this.g(b),F-this.g(this.f))))},function(a,b){this.j(b,U(F-this.g(b),F-this.g(this.f)))},function(a,b){this.j(b,U(F-this.g(b),F-this.f))},function(a,b){this.j(this.f,U(F-this.g(b),F-this.g(this.f)))},function(a,b){this.j(this.f,this.j(b,U(F-this.g(b),F-this.g(this.f))))},ae,ae,function(){this.j(this.f,F)},function(a,b){this.j(this.f,this.j(b,F))},be,de,ee,fe,ge,he,ie,je,be,de, ee,fe,ge,he,ie,je,be,de,ee,fe,ge,he,ie,je,be,de,ee,fe,ge,he,ie,je,ke,me,ne,oe,pe,qe,re,se,ke,me,ne,oe,pe,qe,re,se,ke,me,ne,oe,pe,qe,re,se,ke,me,ne,oe,pe,qe,re,se,function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)}, -function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R]; -function we(a){v.call(this,"ROM",a,128);this.T=this.b=null;this.D=+a.addr;this.w=+a.size;this.f=a.alias;"string"==typeof this.f&&(this.f=eval(this.f));this.A=a.file;this.H=wa(this.A);if(this.A){a=this.A;var b=xa(this.H);"json"!=b&&"hex"!=b&&(a=Ea()+"/api/v1/dump?file="+this.A+"&format=bytes&decimal=true");var c=this;La(a,null,!0,function(a,b,g){g?(c.da("Unable to load ROM resource (error "+g+": "+a+")"),c.A=null):(mb(c.La,a,b),(a=Ma(a,b))?(c.b=a.Y,c.T=a.T):c.A=null);xe(c)})}}p(we,v); -we.prototype.xa=function(a,b,c,d){this.G=b;this.u=c;this.C=d;xe(this)};we.prototype.pa=function(){this.T&&(this.C&&ye(this.C,this.id,this.D,this.w,this.T),delete this.T);return!0};we.prototype.fa=function(){return!0}; -function xe(a){if(!Kb(a)){if(a.A){if(!a.b||!a.G)return;a.w||(a.w=a.b.length);if(a.b.length!=a.w)Ib(a,"ROM size ("+t(a.b.length,8,!0)+") does not match specified size ("+t(a.w,8,!0)+")");else{var b;b=a.D;if(Kc(a.G,b,a.w,Sc)){var c;for(c=0;c>>g.f;0>>= -g.f;0>>a.f;0f&&f>=sa&&(f+=ra);f=Math.trunc(Math.abs(f))%ra;void 0===g&&(g=e.size);for(h=d;g--&&h=q.bb&&c<=q.zb&&(b=c-(q.bb-q.vb));b&&(a.preventDefault&&a.preventDefault(),d.Oa(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==q.xb&&(b=q.wb);d.Oa(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation(); -a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.Oa(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};l.xa=function(a,b,c,d){this.F=a;this.G=b;this.u=c;this.C=d;B(this)}; -l.tb=function(a){if(!this.b){var b=cd(this.F,"connection");if(b){var c=b.split("->");if(2==c.length){var d=Ia(c[0]);if(d!=this.Ka)return;c=Ia(c[1]);if(this.b=Ab(c)){var e=this.b.exports;if(e){var g=e.connect;g&&g.call(this.b,this.w);if(this.D=e.receiveData){this.w=a;this.status("Connected "+this.La+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};l.pa=function(a,b){if(!b)if(this.tb(this.w),!a)this.reset();else if(!this.restore(a))return!1;return!0}; -l.fa=function(a){return a?this.save():!0};l.reset=function(){};l.save=function(){var a=new L(this);a.set(0,[]);return a.data()};l.restore=function(){return!0};l.Oa=function(a){if("number"==typeof a)this.f.push(a);else if("string"==typeof a)for(var b=0,c,d=0;da.A&&a.w.length&&(a.A=0);if(0>a.A||b!=a.w[a.A])a.w.splice(0,0,b),a.A=0;a.A--}else a.P?b="end":b=a.w[a.A+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var g=0;g<=b.length;g++){var f=b.charAt(g);if('"'==f||"'"==f)e?f==e&&(e=null):e=f;else if(f==d&&!e||!f)a.push(Ia(b.substring(c,g))),c=g+1}}return a} -function Ge(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),g=a.pop();switch(d){case "*":d=g*e;break;case "/":if(!e)return!1;d=g/e;break;case "%":if(!e)return!1;d=g%e;break;case "+":d=g+e;break;case "-":d=g-e;break;case "<<":d=g<>":d=g>>e;break;case ">>>":d=g>>>e;break;case "<":d=g":d=g>e?1:0;break;case ">=":d=g>=e?1:0;break;case "==":d=g==e?1:0;break;case "!=":d=g!=e?1:0;break;case "&":d=g&e;break; +function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R],te=[function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a){this.b(a)},function(a,b){switch(b){case 0:a=this.g(this.f);a&8&&(this.J=!1);a&131072&&(this.W=!1);break;default:this.b(a)}},function(a,b){switch(b){case 0:a=0;this.J&&(a|=8); +this.W&&(a|=65536);this.j(this.f,a);break;default:this.b(a)}},function(a){this.b(a)},function(a){this.b(a)}]; +function xe(a){v.call(this,"ROM",a,128);this.T=this.b=null;this.D=+a.addr;this.w=+a.size;this.f=a.alias;"string"==typeof this.f&&(this.f=eval(this.f));this.A=a.file;this.H=wa(this.A);if(this.A){a=this.A;var b=xa(this.H);"json"!=b&&"hex"!=b&&(a=Ea()+"/api/v1/dump?file="+this.A+"&format=bytes&decimal=true");var c=this;La(a,null,!0,function(a,b,g){g?(c.da("Unable to load ROM resource (error "+g+": "+a+")"),c.A=null):(mb(c.Na,a,b),(a=Ma(a,b))?(c.b=a.Y,c.T=a.T):c.A=null);ye(c)})}}p(xe,v); +xe.prototype.za=function(a,b,c,d){this.G=b;this.u=c;this.C=d;ye(this)};xe.prototype.ra=function(){this.T&&(this.C&&ze(this.C,this.id,this.D,this.w,this.T),delete this.T);return!0};xe.prototype.ha=function(){return!0}; +function ye(a){if(!Kb(a)){if(a.A){if(!a.b||!a.G)return;a.w||(a.w=a.b.length);if(a.b.length!=a.w)Ib(a,"ROM size ("+t(a.b.length,8,!0)+") does not match specified size ("+t(a.w,8,!0)+")");else{var b;b=a.D;if(Kc(a.G,b,a.w,Sc)){var c;for(c=0;c>>g.f;0>>= +g.f;0>>a.f;0f&&f>=sa&&(f+=ra);f=Math.trunc(Math.abs(f))%ra;void 0===g&&(g=e.size);for(h=d;g--&&h=q.gb&&c<=q.zb&&(b=c-(q.gb-q.vb));b&&(a.preventDefault&&a.preventDefault(),d.Ra(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==q.xb&&(b=q.wb);d.Ra(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation(); +a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.Ra(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};l.za=function(a,b,c,d){this.F=a;this.G=b;this.u=c;this.C=d;B(this)}; +l.ub=function(a){if(!this.b){var b=cd(this.F,"connection");if(b){var c=b.split("->");if(2==c.length){var d=Ia(c[0]);if(d!=this.Ma)return;c=Ia(c[1]);if(this.b=Ab(c)){var e=this.b.exports;if(e){var g=e.connect;g&&g.call(this.b,this.w);if(this.D=e.receiveData){this.w=a;this.status("Connected "+this.Na+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};l.ra=function(a,b){if(!b)if(this.ub(this.w),!a)this.reset();else if(!this.restore(a))return!1;return!0}; +l.ha=function(a){return a?this.save():!0};l.reset=function(){};l.save=function(){var a=new L(this);a.set(0,[]);return a.data()};l.restore=function(){return!0};l.Ra=function(a){if("number"==typeof a)this.f.push(a);else if("string"==typeof a)for(var b=0,c,d=0;da.A&&a.w.length&&(a.A=0);if(0>a.A||b!=a.w[a.A])a.w.splice(0,0,b),a.A=0;a.A--}else a.P?b="end":b=a.w[a.A+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var g=0;g<=b.length;g++){var f=b.charAt(g);if('"'==f||"'"==f)e?f==e&&(e=null):e=f;else if(f==d&&!e||!f)a.push(Ia(b.substring(c,g))),c=g+1}}return a} +function He(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),g=a.pop();switch(d){case "*":d=g*e;break;case "/":if(!e)return!1;d=g/e;break;case "%":if(!e)return!1;d=g%e;break;case "+":d=g+e;break;case "-":d=g-e;break;case "<<":d=g<>":d=g>>e;break;case ">>>":d=g>>>e;break;case "<":d=g":d=g>e?1:0;break;case ">=":d=g>=e?1:0;break;case "==":d=g==e?1:0;break;case "!=":d=g!=e?1:0;break;case "&":d=g&e;break; case "^":d=g^e;break;case "|":d=g|e;break;case "&&":d=g&&e?1:0;break;case "||":d=g||e?1:0;break;default:return!1}a.push(d|0)}return!0} -function V(a,b,c){var d;if(b){b=He(a,b);for(var e=0,g=!1,f=b,h=[],k=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1,aa--;f=r+f;d>>=8}d=t(c,0,!0)+" "+c+". "+va(c,0,!0)+" "+("0b"+f);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.i((null!=b?b+": ":"")+d);return e} -function Le(a,b){if(b)return Ke(a,b,a.W[b]);var c=0;for(b in a.W)Ke(a,b,a.W[b]),c++;return 0>2:0)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c}var Je={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9}; -function Me(a){Ee.call(this,a);this.wa=!1;this.la=!0;this.va=W();this.L=W(0);this.ja=W(0);this.ba=W(0);this.H=[];this.b=this.M=this.J=[];Ne(this);this.R=this.ka=0;this.f=[];this.sa=void 0;Oe(this);this.C=this;this.qa={};this.X=this.nb=0;this.S=null;this.O=[];Pe(this,a.messages);this.ua=a.commands;this.N=0;this.Ba=this.ta=null;this.D=this.Aa=this.za=this.ia=this.ra=0;this.ha=this.aa=null;var b=this;window?void 0===window[y]&&(window[y]=function(a){return hd(b,a)}):void 0===global[y]&&(global[y]=function(a){return hd(b, -a)})}p(Me,Ee);function Y(a){a=a&&a.B;null==a&&(a=-1);return a}function W(a,b,c){return{B:void 0===a?null:a,qb:void 0===b?!1:b,ea:!1,ca:c}}function Qe(a,b,c,d){a.B=b;a.qb=c||!1;a.ea=!1;a.ca=d}function Re(a){return[a.B,a.qb,a.ca,a.ea,a.Pa]}function Se(a,b){var c=W(b[0],b[1],b[2]);c.ea=b[3];b[4]&&(c.lb=Fe(a,c.Pa=b[4]));return c}l=Me.prototype; -l.xa=function(a,b,c,d){this.G=b;this.F=a;this.u=c;this.ha=a.w;(a=cd(a,"messages"))&&Pe(this,a);Te(this,function(a){a:{var b=d.G.b,c=a[0],e=a=0,k=b.length;if(c){a=Y(Z(d,c,d.ja));if(-1===a){d.i("invalid address: "+c);break a}e=a>>>d.G.f;k=1}d.i("blockid physical blockaddr used size type");d.i("-------- --------- --------- ------ ------ ----");for(var c=-1,m=0;k--;){var n=b[e];n.type==c?m++||d.i("..."):(c=n.type,m=Nc[c],n&&d.i(t(n.id,8)+" %"+t(e<=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1,aa--;f=r+f;d>>=8}d=t(c,0,!0)+" "+c+". "+va(c,0,!0)+" "+("0b"+f);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.i((null!=b?b+": ":"")+d);return e} +function Me(a,b){if(b)return Le(a,b,a.W[b]);var c=0;for(b in a.W)Le(a,b,a.W[b]),c++;return 0>2:0)}0>c?c=b.replace(/^0+([0-9A-F]+)$/i,"$1"):c=b;return c}var Ke={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9}; +function Ne(a){Fe.call(this,a);this.wa=!1;this.la=!0;this.va=W();this.L=W(0);this.ja=W(0);this.ba=W(0);this.H=[];this.b=this.M=this.J=[];Oe(this);this.R=this.ka=0;this.f=[];this.sa=void 0;Pe(this);this.C=this;this.ma={};this.X=this.ob=0;this.S=null;this.O=[];Qe(this,a.messages);this.ua=a.commands;this.N=0;this.Ba=this.ta=null;this.D=this.ya=this.xa=this.fa=this.na=0;this.ea=this.aa=null;var b=this;window?void 0===window[y]&&(window[y]=function(a){return hd(b,a)}):void 0===global[y]&&(global[y]=function(a){return hd(b, +a)})}p(Ne,Fe);function Y(a){a=a&&a.B;null==a&&(a=-1);return a}function W(a,b,c){return{B:void 0===a?null:a,rb:void 0===b?!1:b,ga:!1,ca:c}}function Re(a,b,c,d){a.B=b;a.rb=c||!1;a.ga=!1;a.ca=d}function Se(a){return[a.B,a.rb,a.ca,a.ga,a.Sa]}function Te(a,b){var c=W(b[0],b[1],b[2]);c.ga=b[3];b[4]&&(c.mb=Ge(a,c.Sa=b[4]));return c}l=Ne.prototype; +l.za=function(a,b,c,d){this.G=b;this.F=a;this.u=c;this.ea=a.w;(a=cd(a,"messages"))&&Qe(this,a);Ue(this,function(a){a:{var b=d.G.b,c=a[0],e=a=0,k=b.length;if(c){a=Y(Z(d,c,d.ja));if(-1===a){d.i("invalid address: "+c);break a}e=a>>>d.G.f;k=1}d.i("blockid physical blockaddr used size type");d.i("-------- --------- --------- ------ ------ ----");for(var c=-1,m=0;k--;){var n=b[e];n.type==c?m++||d.i("..."):(c=n.type,m=Nc[c],n&&d.i(t(n.id,8)+" %"+t(e<d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d>23&&a.u.sa==b&&(b=Od(a.u,1)));if(0d&&(d=a.u.g(b)),0<=d&&(Qe(a.f[a.R],b),++a.R==a.f.length&&(a.R=0)));return!1} -function Uf(a,b,c,d){var e=W(b.B),g=a.ya(b,1),f,h,k,m=0,n=g/Yb|0,r;for(r in Vf)if(f=Vf[r][n&r]){h=+r;n>>=6;switch(h){case 32512:k=Wf;m=n&3;break;case 32256:k=Xf;m=n&7;break;case 29248:k=Yf,m=(n&48)>>2|(n&6)>>1}break}k=k&&k[m]||"";"S"==k&&f>Zf&&(k="B");k=$f[f||0]+k;k=Ha(k,8);f?(k=28700==h?k+N(a,g/Zb&127,-1):k+N(a,g>>23&15,-1),k+=",",g&4194304&&(k+="@"),k+=N(a,g&262143,-1),(g=g>>18&15)&&(k+="("+N(a,g,-1)+")")):k+=Ve(g);g=k;f="";h=N(a,e.B)+":";if(-1!==e.B&&-1!==b.B){do if(k=a.ya(e,1),f+=" "+Ve(k),null== -e.B)break;while(e.B!=b.B)}h+=Ha(f,16)+g;c&&(h=Ha(h,48)+";"+(c||""),h=a.u.v.Ea?h+("cycles="+id(a.u).toString()+" cs="+t(a.u.ua)):h+(null!=d?"="+d.toString():""));return h}function Ne(a){var b,c;a.b=["bp"];if(a.M)for(b=1;b>>d.f],!1)}a.M=["br"];if(a.J)for(b=1;b>>d.f],!0);a.J=["bw"];a.ra=0;a.ka=0} -l.Da=function(a,b,c){var d=!0;c||ag(this,a,b,!1,!0);if(a!=this.b){var e=Y(b);if(-1===e)this.i("invalid address: "+N(this,b.B)),d=!1;else{var g=this.G;g.b[e>>>g.f].Da(e&16383,a==this.J)}}d&&(a.push(b),c?b.ea=!0:(bg(this,a,a.length-1,"set"),Oe(this)));return d};function ag(a,b,c,d,e){var g=!1;c=Y(c);for(var f=1;f>>d.f],b==a.J));h.ea||Oe(a);break}}return g} -function cg(a,b){for(var c=1;cd;d++){!d||d&3||(c+="\n");var e=a,g=va(d,2);Qe(e.va,d);g+="="+N(e,e.ya(e.va),36)+" ";c+=g}if(b){b="";for(d=0;d=$e?1:d==Ye?23:18)+" "),b+=e;c+="\n"+b}return c}l.ob=function(a,b){return a[0]>b[0]?1:a[0]>>0,f],r=Ja(n,k,a.ob);0>r&&n.splice(-(r+1),0,k)}m&&(h.a=m.replace(/''/g,'"'))}a.H.push({fd:b,B:c,Fb:d,T:e,mb:g})}function fg(a,b,c){var d=[],e=Y(b)>>>0;for(b=0;b>>0,h=g.Fb;if(e>=f&&eh[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.i(m)}h[3]&&(f=h[3],g=null);h=a.ba;m=b;h.B=m.B;h.ea=m.ea;h.ca=m.ca;a.i(Uf(a,b,f,g));e-=b.B-k;c++}}} -function dg(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.i(Qf+b):(a.P&&(a.i("ended assemble at "+N(a,a.ba.B)),a.P=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.S=null;if(Kb(a)&&0n||"z"Zf&&(rd="B");if(Mg==$f[kf]+rd){jf=29248!=nc?Qa:(Qa&3)<<1|(Qa&12)<<2;A=(qd|jf<<6)*Yb;break}}if(0<= +l.ia=function(a,b,c){var d=this;switch(b){case "debugInput":return this.aa=this.I[b]=c,c.onkeydown=function(a){var b;if(13==a.keyCode)b=c.value,c.value="",hd(d,b,!0);else if(27==a.keyCode)c.value=b="";else if(38==a.keyCode?(b=null,d.Ad&&(d+=b.length);0>d&&(d=0);for(var e=b.length;d>23&&a.u.ua==b&&(b=Od(a.u,1)));if(0d&&(d=a.u.g(b)),0<=d&&(Re(a.f[a.R],b),++a.R==a.f.length&&(a.R=0)));return!1} +function Vf(a,b,c,d){var e=W(b.B),g=a.Aa(b,1),f,h,k,m=0,n=g/Yb|0,r;for(r in Wf)if(f=Wf[r][n&r]){h=+r;n>>=6;switch(h){case 32512:k=Xf;m=n&3;break;case 32256:k=Yf;m=n&7;break;case 29248:k=Zf,m=(n&48)>>2|(n&6)>>1}break}k=k&&k[m]||"";"S"==k&&f>$f&&(k="B");k=ag[f||0]+k;k=Ha(k,8);f?(k=28700==h?k+N(a,g/Zb&127,-1):k+N(a,g>>23&15,-1),k+=",",g&4194304&&(k+="@"),k+=N(a,g&262143,-1),(g=g>>18&15)&&(k+="("+N(a,g,-1)+")")):k+=We(g);g=k;f="";h=N(a,e.B)+":";if(-1!==e.B&&-1!==b.B){do if(k=a.Aa(e,1),f+=" "+We(k),null== +e.B)break;while(e.B!=b.B)}h+=Ha(f,16)+g;c&&(h=Ha(h,48)+";"+(c||""),h=a.u.v.Ea?h+("cycles="+id(a.u).toString()+" cs="+t(a.u.wa)):h+(null!=d?"="+d.toString():""));return h}function Oe(a){var b,c;a.b=["bp"];if(a.M)for(b=1;b>>d.f],!1)}a.M=["br"];if(a.J)for(b=1;b>>d.f],!0);a.J=["bw"];a.na=0;a.ka=0} +l.Da=function(a,b,c){var d=!0;c||bg(this,a,b,!1,!0);if(a!=this.b){var e=Y(b);if(-1===e)this.i("invalid address: "+N(this,b.B)),d=!1;else{var g=this.G;g.b[e>>>g.f].Da(e&16383,a==this.J)}}d&&(a.push(b),c?b.ga=!0:(cg(this,a,a.length-1,"set"),Pe(this)));return d};function bg(a,b,c,d,e){var g=!1;c=Y(c);for(var f=1;f>>d.f],b==a.J));h.ga||Pe(a);break}}return g} +function dg(a,b){for(var c=1;cd;d++){!d||d&3||(c+="\n");var e=a,g=va(d,2);Re(e.va,d);g+="="+N(e,e.Aa(e.va),36)+" ";c+=g}if(b){b="";for(d=0;d=af?1:d==Ze?23:18)+" "),b+=e;c+="\n"+b}return c}l.pb=function(a,b){return a[0]>b[0]?1:a[0]>>0,f],r=Ja(n,k,a.pb);0>r&&n.splice(-(r+1),0,k)}m&&(h.a=m.replace(/''/g,'"'))}a.H.push({fd:b,B:c,Fb:d,T:e,nb:g})}function gg(a,b,c){var d=[],e=Y(b)>>>0;for(b=0;b>>0,h=g.Fb;if(e>=f&&eh[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.i(m)}h[3]&&(f=h[3],g=null);h=a.ba;m=b;h.B=m.B;h.ga=m.ga;h.ca=m.ca;a.i(Vf(a,b,f,g));e-=b.B-k;c++}}} +function eg(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.i(Rf+b):(a.P&&(a.i("ended assemble at "+N(a,a.ba.B)),a.P=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.S=null;if(Kb(a)&&0n||"z"$f&&(rd="B");if(Ng==ag[kf]+rd){jf=29248!=nc?Qa:(Qa&3)<<1|(Qa&12)<<2;A=(qd|jf<<6)*Yb;break}}if(0<= A)break}if(0<=A)break}if(0<=A)if(gf)for(var sd=gf.split(","),nb=0;nbJ||127J||15 -J||262143J||15da.length&&(a.i("note: only "+da.length+" available"),T=da.length);X-=T;0>X&&(null==da[da.length-1].B?(T=X+T,X=0):X+=da.length);var xd=[];"call"==qf&&(pb=1E5,xd=["CALL"]);for(void 0!==pf&&a.i(T+" instructions earlier:");0=da.length&&(X=0);a.sa=T;sf++;pb--}}sf||(a.i("no "+rf+"history available"),a.sa=void 0)}else{var Wa=Z(a,ca,a.ja);if(Wa){var Aa=0,vf="ds"==Ta;if(oa){if("l"==oa.charAt(0))oa=oa.substr(1)||Pg,Aa=Ie(a,oa);else{var wf=Z(a,oa);wf&&(Aa=wf.B-Wa.B)}0>Aa&&(Aa=0);65536Af;Af++)yf+=String.fromCharCode((pc%64|0)+32),pc/=64}Ba&&(Ba+="\n");Ba=vf?Ba+(Ca+","):Ba+(ca+": "+Ca+(0>zf?" "+yf:""))}Ba&&a.i(Ba);a.ca=Rg}}}}break;case "e":if("else"==f[0])break;var Bf,Cf,Df=f[0],Ad=f[1];"e"==Df||"ew"==Df?(Bf=a.ya,Cf=a.eb):Ad=null;if(null==Ad)a.i("edit memory commands:"),a.i("\tew [a] [...] edit words at address a");else{var qc=Z(a,Ad,a.ja);if(qc)for(var rc=2;rc< -f.length;rc++){var Bd=V(a,f[rc]);if(void 0===Bd){a.i("unknown value: "+f[rc]);break}a.i("changing "+N(a,qc.B)+" from "+Ve(Bf.call(a,qc))+" to "+Ve(Bd));Cf.call(a,qc,Bd,1)}}break;case "g":a:{var Ef=f[1],Tg=b;if(void 0!==Ef){var Cd=Z(a,Ef);if(!Cd)break a;Ue(a,Cd,Tg);a.Da(a.b,Cd,!0)}ff(a,!0,c)}break;case "h":a.v.K?(c||a.i("halting"),a.V()):Lb(a,!0)||c||a.i("already halted");break;case "i":if("if"==f[0]){var Dd;var rb=b.substr(2),rb=Ia(rb);V(a,rb)?(c||a.i("true: "+rb),Dd=!0):(c||a.i("false: "+rb),Dd= -!1);Dd||(d=!1);break}g=!0;break;case "k":var Ug=f[0];if("?"==f[1])a.i("stack trace commands:"),a.i("\tk\tshow frame addresses"),a.i("\tks\tshow symbol information");else{var Ed=0,Fd=W(),sb=W();for(a.i("stack trace for "+N(a,sb.B));10>Ed;){for(var Da=null,Vg=256;65536>sb.B>>>0;){Fd.B=a.ya(sb,2);if(null==sb.B||!Vg--)break;if(!(Fd.B&1)){for(var Wg=a,sc=Fd,Ff=null,tb=sc.B,Gf=tb,Gd=1;6>=Gd&&tb;Gd++){if(2Mf)a.i("step commands:"),a.i("\tp\tstep over instruction"),a.i("\tpr\tstep over instruction with register update");else if(a.N)a.i("step in progress");else{var Nf=W(a.u.w);a.ya(Nf);a.N?(a.Da(a.b,Nf,!0),ff(a)||(a.F&&md(a.F),a.N=0)):kg(a,Mf?"tr":"t")}break;case "r":if("reset"==b){a.F&&a.F.reset(); -break}Rf(a,f);break;case "s":a:switch(f[1]){case "base":if(f[2]){var vb=+f[2];if(8==vb||10==vb||16==vb)a.ca=vb;else{a.i("invalid base: "+vb);break}}a.i("default base: "+a.ca);break;case "cs":var wb;void 0!==f[3]&&(wb=+f[3]);switch(f[2]){case "int":a.u.ha=wb;break;case "start":a.u.va=wb;break;case "stop":a.u.ja=wb;break;default:a.i("unknown cs option");break a}void 0!==wb&&ed(a.u);a.i("checksums "+(a.u.v.Ea?"enabled":"disabled"));break;case "sp":void 0!==f[2]&&(jd(a.u,+f[2])||a.i("warning: using 1x multiplier, previous target not reached")); -a.i("target speed: "+(a.u.W.toFixed(2)+"Mhz")+" ("+a.u.aa+"x)");break;default:if(f[1]){a.i("unknown option: "+f[1]);break}case "?":a.i("debugger options:"),a.i("\tbase #\t\tset default base to #"),a.i("\tcs int #\tset checksum cycle interval to #"),a.i("\tcs start #\tset checksum cycle start count to #"),a.i("\tcs stop #\tset checksum cycle stop count to #"),a.i("\tsp #\t\tset speed multiplier to #")}break;case "t":kg(a,f[0],f[1]);break;case "u":Sf(a,f[1],f[2],8);break;case "v":if("var"==f[0]){hg(a, -b.substr(3))||(d=!1);break}if("ver"==f[0]){a.i((Pb||"PDP10")+" version 1.34.2 ("+a.u.jb+",RELEASE)");a.i(window?window.navigator.userAgent:"");break}g=!0;break;case "?":if(f[1]){jg(a,b.substr(1));break}var Hd="commands:",Id;for(Id in mg)Hd+="\n"+Ha(Id,9)+mg[Id];Qd(a)||(Hd+="\nnote: history disabled if no exec breakpoints");a.i(Hd);break;default:g=!0}g&&(a.i("unknown command: "+b),d=!1)}}catch(Pf){a.i("debugger error: "+(Pf.stack||Pf.message)),d=!1}return d} -function hd(a,b,c){b=Fe(a,b,c);for(var d in b)if(!dg(a,b[+d]))return!1;return!0} -var mg={"?":"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","var":"assign variable",ver:"print version"},Zf=20,$f=".WORD HLL HLLZ HLLO HLLE HRL HRLZ HRLO HRLE HRR HRRZ HRRO HRRE HLR HLRZ HLRO HLRE MOVE MOVS MOVN MOVM EXCH BLT PUSH POP LDB DPB IBP ILDB IDPB SETZ SETO SETA SETCA SETM SETCM AND ANDCA ANDCM ANDCB IOR ORCA ORCM ORCB XOR EQV LSH LSHC ROT ROTC ADD SUB MUL IMUL DIV IDIV ASH ASHC FSC FADR FSBR FMPR FDVR DFN UFA FAD FSB FMP FDV AOBJP AOBJN CAI CA JUMP SKIP AOJ AOS SOJ SOS TR TL TD TS XCT JFFO JFCL JSR JSP JRST JSA JRA PUSHJ POPJ BLKI DATAI BLKO DATAO CONO CONI CONSZ CONSO UUO".split(" "), -Xe=0,Ye=1,Ze=2,$e=3,af=4,bf=5,cf=6,df=7,We="PC RA EA C0 C1 OV ND PD".split(" "),ng={},Vf=(ng[28672]={0:101},ng[32704]={5632:64,5696:63,5760:58,5824:27,5888:28,5952:25,6016:29,6080:26,10240:56,10304:48,10368:46,10432:84,10496:57,10560:49,10624:47,10752:21,10816:22,10880:69,10944:70,11008:88,11072:85,11136:83,11264:91,11328:23,11392:24,11456:92,11520:86,11584:87,11648:89,11712:90},ng[32512]={6144:65,6400:59,6656:66,6912:60,7168:67,7424:61,7680:68,7936:62,8192:17,8448:18,8704:19,8960:Zf,9216:53,9472:52, -9728:55,9984:54,11776:50,12032:51,16384:30,16640:36,16896:37,17152:34,17408:38,17664:32,17920:44,18176:40,18432:39,18688:45,18944:33,19200:41,19456:35,19712:42,19968:43,20224:31,20480:1,20736:5,20992:2,21248:6,21504:3,21760:7,22016:4,22272:8,22528:9,22784:13,23040:10,23296:14,23552:11,23808:15,24064:12,24320:16},ng[32256]={12288:71,12800:72,13312:73,13824:74,14336:75,14848:76,15360:77,15872:78},ng[29248]={24576:79,24640:80,25088:81,25152:82},ng[28700]={28672:93,28676:94,28680:95,28684:96,28688:97, -28692:98,28696:99,28700:100},ng),Wf=["","I","M","S"],Xf=" L E LE A GE N G".split(" "),Yf="N NE NA NN Z ZE ZA ZN C CE CA CN O OE OA ON".split(" "),ef=1E3,Qf=">> ";eb(function(){for(var a=z(document,y,"debugger"),b=0;b\nLicense: GPL version 3 or later ");for(b=0;brg){if(sg(d,this.M)){this.D=new L(this,"1.34.2",Bg);sg(this.D)&&(Cg(this,d),a=Dg,Eg(this.D));this.D.set(yg,Ka());Fg(this.D);var e=this.b&&!this.L;if(a==zg||yb("Click OK to restore the previous "+Pb+" machine state, or CANCEL to reset the machine.")){if(c=xg(d)){var g=d.get("code"),f=d.get("data");g&&("ok"==g?sg(d,f):("error"==g&&"no machine state"!= -f?(this.da("Error: "+f),"unable to verify user"==f&&(Ya(Gg,""),this.f=null)):this.i(g+": "+f),Eg(d),sg(d)?(c=xg(d),e=!0):c=!1))}e&&vg(this,c?d:null)}else a==Dg&&d.clear()}else vg(this);delete this.M;delete this.J}e=zb(this.id);for(g=0;ga[1];a=a[2];this.S=!0;this.v.U=!0;var d=this.I.power;d&&(d.textContent="Shutdown");this.u&&(Hg(this,this.u,b,c,a),M(this,-2),this.u.Z());this.P&&(Cg(this,b),b.clear());!c&&this.D&&(this.D.clear(),delete this.D);this.A=0}; -function Cg(a,b){if(yb("There may be a problem with your "+Pb+" machine.\n\nTo help us diagnose it, click OK to send this "+Pb+" machine state to http://www.pcjs.org.")){var c=a.ba;a=a.f||"";b=b.toString();var d={};d.app=Pb;d.ver="1.34.2";d.url=c;d.user=a;d.type="bug";d.data=b;La("http://www.pcjs.org/api/v1/report",d,!0)}} -function lg(a,b,c){var d,e="none";if(a.A)return null;a.A--;var g=new L(a,"1.34.2"),f=new L(a,"1.34.2",wg),h=Ka();f.set(yg,h);g.set(yg,h);g.set(Ig,"1.34.2");g.set(Jg,window?window.location.href:null);g.set(Kg,window?window.navigator.userAgent:"");a.u&&a.u.fa&&(c&&(b&&(a.u.v.Z=a.u.v.K),a.u.V()),d=a.u.fa(b,c),"object"===typeof d&&g.set(a.u.id,d),c&&(a.u.v.U=!1,!1===d&&(e=null)));for(var h=zb(a.id),k=0;kJ||15da.length&&(a.i("note: only "+da.length+" available"),T=da.length);X-=T;0>X&&(null==da[da.length-1].B?(T=X+T,X=0):X+=da.length);var xd=[];"call"==qf&&(pb=1E5,xd=["CALL"]);for(void 0!==pf&&a.i(T+" instructions earlier:");0=da.length&&(X=0);a.sa=T;sf++;pb--}}sf||(a.i("no "+rf+"history available"),a.sa=void 0)}else{var Wa=Z(a,ca,a.ja);if(Wa){var Aa=0,vf="ds"==Ta;if(oa){if("l"==oa.charAt(0))oa=oa.substr(1)||Qg,Aa=Je(a,oa);else{var wf=Z(a,oa);wf&&(Aa=wf.B-Wa.B)}0>Aa&&(Aa=0);65536Af;Af++)yf+=String.fromCharCode((pc%64|0)+32),pc/=64}Ba&&(Ba+="\n");Ba=vf?Ba+(Ca+","):Ba+(ca+": "+Ca+(0>zf?" "+yf:""))}Ba&&a.i(Ba);a.ca=Sg}}}}break;case "e":if("else"==f[0])break;var Bf,Cf,Df=f[0],Ad=f[1];"e"==Df||"ew"==Df?(Bf=a.Aa,Cf=a.ib):Ad=null;if(null==Ad)a.i("edit memory commands:"),a.i("\tew [a] [...] edit words at address a");else{var qc=Z(a,Ad,a.ja);if(qc)for(var rc=2;rc< +f.length;rc++){var Bd=V(a,f[rc]);if(void 0===Bd){a.i("unknown value: "+f[rc]);break}a.i("changing "+N(a,qc.B)+" from "+We(Bf.call(a,qc))+" to "+We(Bd));Cf.call(a,qc,Bd,1)}}break;case "g":a:{var Ef=f[1],Ug=b;if(void 0!==Ef){var Cd=Z(a,Ef);if(!Cd)break a;Ve(a,Cd,Ug);a.Da(a.b,Cd,!0)}Of(a,!0,c)}break;case "h":a.v.K?(c||a.i("halting"),a.V()):Lb(a,!0)||c||a.i("already halted");break;case "i":if("if"==f[0]){var Dd;var rb=b.substr(2),rb=Ia(rb);V(a,rb)?(c||a.i("true: "+rb),Dd=!0):(c||a.i("false: "+rb),Dd= +!1);Dd||(d=!1);break}g=!0;break;case "k":var Vg=f[0];if("?"==f[1])a.i("stack trace commands:"),a.i("\tk\tshow frame addresses"),a.i("\tks\tshow symbol information");else{var Ed=0,Fd=W(),sb=W();for(a.i("stack trace for "+N(a,sb.B));10>Ed;){for(var Da=null,Wg=256;65536>sb.B>>>0;){Fd.B=a.Aa(sb,2);if(null==sb.B||!Wg--)break;if(!(Fd.B&1)){for(var Xg=a,sc=Fd,Ff=null,tb=sc.B,Gf=tb,Gd=1;6>=Gd&&tb;Gd++){if(2Mf)a.i("step commands:"),a.i("\tp\tstep over instruction"),a.i("\tpr\tstep over instruction with register update");else if(a.N)a.i("step in progress");else{var Nf=W(a.u.w);a.Aa(Nf);a.N?(a.Da(a.b,Nf,!0),Of(a)||(a.F&&md(a.F),a.N=0)):lg(a,Mf?"tr":"t")}break;case "r":if("reset"==b){a.F&&a.F.reset(); +break}Sf(a,f);break;case "s":a:switch(f[1]){case "base":if(f[2]){var vb=+f[2];if(8==vb||10==vb||16==vb)a.ca=vb;else{a.i("invalid base: "+vb);break}}a.i("default base: "+a.ca);break;case "cs":var wb;void 0!==f[3]&&(wb=+f[3]);switch(f[2]){case "int":a.u.ka=wb;break;case "start":a.u.xa=wb;break;case "stop":a.u.ma=wb;break;default:a.i("unknown cs option");break a}void 0!==wb&&ed(a.u);a.i("checksums "+(a.u.v.Ea?"enabled":"disabled"));break;case "sp":void 0!==f[2]&&(jd(a.u,+f[2])||a.i("warning: using 1x multiplier, previous target not reached")); +a.i("target speed: "+(a.u.ba.toFixed(2)+"Mhz")+" ("+a.u.ea+"x)");break;default:if(f[1]){a.i("unknown option: "+f[1]);break}case "?":a.i("debugger options:"),a.i("\tbase #\t\tset default base to #"),a.i("\tcs int #\tset checksum cycle interval to #"),a.i("\tcs start #\tset checksum cycle start count to #"),a.i("\tcs stop #\tset checksum cycle stop count to #"),a.i("\tsp #\t\tset speed multiplier to #")}break;case "t":lg(a,f[0],f[1]);break;case "u":Tf(a,f[1],f[2],8);break;case "v":if("var"==f[0]){ig(a, +b.substr(3))||(d=!1);break}if("ver"==f[0]){a.i((Pb||"PDP10")+" version 1.34.2 ("+a.u.lb+",RELEASE)");a.i(window?window.navigator.userAgent:"");break}g=!0;break;case "?":if(f[1]){kg(a,b.substr(1));break}var Hd="commands:",Id;for(Id in ng)Hd+="\n"+Ha(Id,9)+ng[Id];Qd(a)||(Hd+="\nnote: history disabled if no exec breakpoints");a.i(Hd);break;default:g=!0}g&&(a.i("unknown command: "+b),d=!1)}}catch(Pf){a.i("debugger error: "+(Pf.stack||Pf.message)),d=!1}return d} +function hd(a,b,c){b=Ge(a,b,c);for(var d in b)if(!eg(a,b[+d]))return!1;return!0} +var ng={"?":"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","var":"assign variable",ver:"print version"},$f=20,ag=".WORD HLL HLLZ HLLO HLLE HRL HRLZ HRLO HRLE HRR HRRZ HRRO HRRE HLR HLRZ HLRO HLRE MOVE MOVS MOVN MOVM EXCH BLT PUSH POP LDB DPB IBP ILDB IDPB SETZ SETO SETA SETCA SETM SETCM AND ANDCA ANDCM ANDCB IOR ORCA ORCM ORCB XOR EQV LSH LSHC ROT ROTC ADD SUB MUL IMUL DIV IDIV ASH ASHC FSC FADR FSBR FMPR FDVR DFN UFA FAD FSB FMP FDV AOBJP AOBJN CAI CA JUMP SKIP AOJ AOS SOJ SOS TR TL TD TS XCT JFFO JFCL JSR JSP JRST JSA JRA PUSHJ POPJ BLKI DATAI BLKO DATAO CONO CONI CONSZ CONSO UUO".split(" "), +Ye=0,Ze=1,$e=2,af=3,bf=4,cf=5,df=6,ef=7,Xe="PC RA EA C0 C1 OV ND PD".split(" "),og={},Wf=(og[28672]={0:101},og[32704]={5632:64,5696:63,5760:58,5824:27,5888:28,5952:25,6016:29,6080:26,10240:56,10304:48,10368:46,10432:84,10496:57,10560:49,10624:47,10752:21,10816:22,10880:69,10944:70,11008:88,11072:85,11136:83,11264:91,11328:23,11392:24,11456:92,11520:86,11584:87,11648:89,11712:90},og[32512]={6144:65,6400:59,6656:66,6912:60,7168:67,7424:61,7680:68,7936:62,8192:17,8448:18,8704:19,8960:$f,9216:53,9472:52, +9728:55,9984:54,11776:50,12032:51,16384:30,16640:36,16896:37,17152:34,17408:38,17664:32,17920:44,18176:40,18432:39,18688:45,18944:33,19200:41,19456:35,19712:42,19968:43,20224:31,20480:1,20736:5,20992:2,21248:6,21504:3,21760:7,22016:4,22272:8,22528:9,22784:13,23040:10,23296:14,23552:11,23808:15,24064:12,24320:16},og[32256]={12288:71,12800:72,13312:73,13824:74,14336:75,14848:76,15360:77,15872:78},og[29248]={24576:79,24640:80,25088:81,25152:82},og[28700]={28672:93,28676:94,28680:95,28684:96,28688:97, +28692:98,28696:99,28700:100},og),Xf=["","I","M","S"],Yf=" L E LE A GE N G".split(" "),Zf="N NE NA NN Z ZE ZA ZN C CE CA CN O OE OA ON".split(" "),ff=1E3,Rf=">> ";eb(function(){for(var a=z(document,y,"debugger"),b=0;b\nLicense: GPL version 3 or later ");for(b=0;bsg){if(tg(d,this.M)){this.D=new L(this,"1.34.2",Cg);tg(this.D)&&(Dg(this,d),a=Eg,Fg(this.D));this.D.set(zg,Ka());Gg(this.D);var e=this.b&&!this.L;if(a==Ag||yb("Click OK to restore the previous "+Pb+" machine state, or CANCEL to reset the machine.")){if(c=yg(d)){var g=d.get("code"),f=d.get("data");g&&("ok"==g?tg(d,f):("error"==g&&"no machine state"!= +f?(this.da("Error: "+f),"unable to verify user"==f&&(Ya(Hg,""),this.f=null)):this.i(g+": "+f),Fg(d),tg(d)?(c=yg(d),e=!0):c=!1))}e&&wg(this,c?d:null)}else a==Eg&&d.clear()}else wg(this);delete this.M;delete this.J}e=zb(this.id);for(g=0;ga[1];a=a[2];this.S=!0;this.v.U=!0;var d=this.I.power;d&&(d.textContent="Shutdown");this.u&&(Ig(this,this.u,b,c,a),M(this,-2),this.u.Z());this.P&&(Dg(this,b),b.clear());!c&&this.D&&(this.D.clear(),delete this.D);this.A=0}; +function Dg(a,b){if(yb("There may be a problem with your "+Pb+" machine.\n\nTo help us diagnose it, click OK to send this "+Pb+" machine state to http://www.pcjs.org.")){var c=a.ba;a=a.f||"";b=b.toString();var d={};d.app=Pb;d.ver="1.34.2";d.url=c;d.user=a;d.type="bug";d.data=b;La("http://www.pcjs.org/api/v1/report",d,!0)}} +function mg(a,b,c){var d,e="none";if(a.A)return null;a.A--;var g=new L(a,"1.34.2"),f=new L(a,"1.34.2",xg),h=Ka();f.set(zg,h);g.set(zg,h);g.set(Jg,"1.34.2");g.set(Kg,window?window.location.href:null);g.set(Lg,window?window.navigator.userAgent:"");a.u&&a.u.ha&&(c&&(b&&(a.u.v.Z=a.u.v.K),a.u.V()),d=a.u.ha(b,c),"object"===typeof d&&g.set(a.u.id,d),c&&(a.u.v.U=!1,!1===d&&(e=null)));for(var h=zb(a.id),k=0;k=d||30<=(c.Ra+=d))&&(e.textContent=c.v.K?c.S.toFixed(2)+"Mhz":"Stopped",c.Ra=0)}if(a.w&&(a=a.w,b=b||0,a.M)){c=a.u.v.K;d=!!(a.u.A&8);if(0>=b||60<=(a.L+=b)){e=a.u.w;if(a.I.PC){var g=a.C&&a.C.ca||8,e=e||0,e=8==g?va(e,void 0):t(e,void 0);a.I.PC.textContent!=e&&(a.I.PC.textContent=e)}a.L=0}-1>b?a.f=a.u.w:0f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(f?' url="'+f+'"':"")));g||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), -a=a.replace(/().*?(<\/xsl:variable>)/,"$1"+d+"$2"));f=null;if("<"==a.charAt(0))try{g||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){f=null,a=r.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");La(e,null,!0,function(g,f,h){if(h||!f)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(g=d[3])if(h=f.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(g);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(f=f.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}f=f.replace(/<\?xml[^>]*>[\r\n]*/, -"");a=a.replace(d[0],f);eh(a,b,c)}})}else c(a,null)} -function fh(a,b,c,d,e){function g(a){if(void 0===k){var b=h&&z(h,"machine-warning");k=b&&b[0]||h}k&&(k.innerHTML=Fa(a))}function f(a){g("Error: "+a);m&&(--bh||ib(!0));m=!1}var h,k,m=!0;bh++;ob[b]={};try{if(h=document.getElementById(b)){var n;if("object"==typeof resources&&(n=resources.css)){var r=document.head||document.getElementsByTagName("head")[0],C=document.createElement("style");C.type="text/css";C.styleSheet?C.styleSheet.cssText=n:C.appendChild(document.createTextNode(n));r.appendChild(C)}d|| -(n=a,"pdp"==a.substr(0,3)&&(n="pdpjs"),d="/versions/"+n+"/1.34.2/components.xsl");n=function(e,k){k?ch(d,null,a,null,!1,g,function(a,e){e?(mb(b,d,a),g("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=k.transformNode(e))?(h.outerHTML=e,--bh||ib(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(k,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--bh|| -ib(!0)):f("invalid machine element: "+b):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(a)}):f(e)};"<"!=c.charAt(0)?ch(c,b,a,e,!0,g,n):dh(c,null,b,a,e,!1,g,n)}else f("missing machine element: "+b)}catch(aa){f(aa.message)}return m}window.embedPDP10=function(a,b,c,d){ib(!1);return fh("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){ib(!1);return fh("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return Bb(b,a+".machine")}; +function M(a,b){if(a.u){var c=a.u,d=b||0,e=c.I.speed;e&&(0>=d||30<=(c.Ua+=d))&&(e.textContent=c.v.K?c.aa.toFixed(2)+"Mhz":"Stopped",c.Ua=0)}if(a.w&&(a=a.w,b=b||0,a.M)){c=a.u.v.K;d=!!(a.u.A&8);if(0>=b||60<=(a.L+=b)){e=a.u.w;if(a.I.PC){var g=a.C&&a.C.ca||8,e=e||0,e=8==g?va(e,void 0):t(e,void 0);a.I.PC.textContent!=e&&(a.I.PC.textContent=e)}a.L=0}-1>b?a.f=a.u.w:0f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(f?' url="'+f+'"':"")));g||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), +a=a.replace(/().*?(<\/xsl:variable>)/,"$1"+d+"$2"));f=null;if("<"==a.charAt(0))try{g||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){f=null,a=r.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");La(e,null,!0,function(g,f,h){if(h||!f)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(g=d[3])if(h=f.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var k=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(g);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=k&&(f=f.replace(h[0],k))}else{c(a,"missing <"+d[1]+"> in "+e);return}f=f.replace(/<\?xml[^>]*>[\r\n]*/, +"");a=a.replace(d[0],f);fh(a,b,c)}})}else c(a,null)} +function gh(a,b,c,d,e){function g(a){if(void 0===k){var b=h&&z(h,"machine-warning");k=b&&b[0]||h}k&&(k.innerHTML=Fa(a))}function f(a){g("Error: "+a);m&&(--ch||ib(!0));m=!1}var h,k,m=!0;ch++;ob[b]={};try{if(h=document.getElementById(b)){var n;if("object"==typeof resources&&(n=resources.css)){var r=document.head||document.getElementsByTagName("head")[0],C=document.createElement("style");C.type="text/css";C.styleSheet?C.styleSheet.cssText=n:C.appendChild(document.createTextNode(n));r.appendChild(C)}d|| +(n=a,"pdp"==a.substr(0,3)&&(n="pdpjs"),d="/versions/"+n+"/1.34.2/components.xsl");n=function(e,k){k?dh(d,null,a,null,!1,g,function(a,e){e?(mb(b,d,a),g("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=k.transformNode(e))?(h.outerHTML=e,--ch||ib(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(k,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--ch|| +ib(!0)):f("invalid machine element: "+b):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(a)}):f(e)};"<"!=c.charAt(0)?dh(c,b,a,e,!0,g,n):eh(c,null,b,a,e,!1,g,n)}else f("missing machine element: "+b)}catch(aa){f(aa.message)}return m}window.embedPDP10=function(a,b,c,d){ib(!1);return gh("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){ib(!1);return gh("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return Bb(b,a+".machine")}; window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!Eb[a]){for(var c=!0,d=Eb,e=a,g=b.length,f=[],h=[],k="",m=null,n=0;na?-b:b}});ha("Math.log2",function(a){return a?a:function(a){return Math.log(a)/Math.LN2}}); -var ia=Math.pow(2,36),ja=-Math.pow(2,35),q={Cb:0,Va:1,Eb:2,Fb:3,Gb:4,Hb:5,Ib:6,Jb:7,Ma:8,Kb:9,Wa:10,Lb:11,Mb:12,Xa:13,Nb:14,Ob:15,Pb:16,Qb:17,Rb:18,Sb:19,Tb:20,Ub:21,Vb:22,Wb:23,Xb:24,Yb:25,Zb:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,La:65,Bb:66,Db:67,$b:68,E:69,ac:70,bc:71,cc:72,dc:73,ec:74,fc:75,gc:76,hc:77,ic:78,jc:79,kc:80,Q:81, -lc:82,mc:83,nc:84,oc:85,pc:86,qc:87,rc:88,sc:89,ab:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,tc:97,uc:98,vc:99,d:100,e:101,wc:102,xc:103,yc:104,zc:105,Ac:106,k:107,Bc:108,Cc:109,n:110,Dc:111,p:112,q:113,r:114,Ec:115,t:116,Fc:117,Gc:118,Hc:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,Ya:127}; +var ia=Math.pow(2,36),ja=-Math.pow(2,35),q={Eb:0,Ya:1,Gb:2,Hb:3,Ib:4,Jb:5,Kb:6,Lb:7,Pa:8,Mb:9,Za:10,Nb:11,Ob:12,$a:13,Pb:14,Qb:15,Rb:16,Sb:17,Tb:18,Ub:19,Vb:20,Wb:21,Xb:22,Yb:23,Zb:24,$b:25,ac:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Oa:65,Db:66,Fb:67,bc:68,E:69,cc:70,dc:71,ec:72,fc:73,gc:74,hc:75,ic:76,jc:77,kc:78,lc:79,mc:80,Q:81, +nc:82,oc:83,pc:84,qc:85,rc:86,sc:87,tc:88,uc:89,bb:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,vc:97,wc:98,xc:99,d:100,e:101,yc:102,zc:103,Ac:104,Bc:105,Cc:106,k:107,Dc:108,Ec:109,n:110,Fc:111,p:112,q:113,r:114,Gc:115,t:116,Hc:117,Ic:118,Jc:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126,ab:127}; function ka(a,b,c,d){var e="";if(null==a||isNaN(a))for(;0a&&-1=f?48:55),e=String.fromCharCode(f)+e;a=Math.trunc(a/b)}return(void 0===d?"":d)+e}function la(a,b){b?12"']/g,function(a){return sa[a]})}function ta(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var sa={"&":"&","<":"<",">":">",'"':""","'":"'"}; function ua(){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 t(a,b,c,d){c=void 0===c?!1:c;var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];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&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a, f,e))});if(b&&"object"==typeof b){var l="",p;for(p in b)b.hasOwnProperty(p)&&(l&&(l+="&"),l+=p+"="+encodeURIComponent(b[p]));l=l.replace(/%20/g,"+");h.open("POST",a,c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(l)}else h.open("GET",a,c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g} -function va(a,b){var c,d={H:null,N:null,T:null,S:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.T=g.load;d.S=g.exec;if(e=g.bytes)d.H=e;else if(e=g.words)for(d.H=Array(2*e.length),f=c=0;c>8&255;else if(e=g.longs)for(d.H=Array(4*e.length),f=c=0;c>8&255,d.H[f++]=e[c]>>16&255,d.H[f++]=e[c]>>24&255;else(e=g.data)?d.Y=e:d.H=g;d.H&&(d.H.length?1==d.H.length&&(u(d.H[0]),d=null):(u("Empty resource: "+a),d=null));d.N=g.symbols}catch(h){u("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;cb.indexOf("0x")&&0>b.indexOf("0o")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.T=g.load;d.S=g.exec;if(e=g.bytes)d.H=e;else if(e=g.words)for(d.H=Array(2*e.length),f=c=0;c>8&255;else if(e=g.longs)for(d.H=Array(4*e.length),f=c=0;c>8&255,d.H[f++]=e[c]>>16&255,d.H[f++]=e[c]>>24&255;else(e=g.data)?d.Y=e:d.H=g;d.H&&(d.H.length?1==d.H.length&&(u(d.H[0]),d=null):(u("Empty resource: "+a),d=null));d.O=g.symbols}catch(h){u("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;ca?this.na=this.id:(this.oa=this.id.substr(0,a),this.na=this.id.substr(a+1));this.g={ready:!1,ta:!1,Ga:!1,C:!1,error:!1};this.va=null;this.g.error=!1;this.v=this.h=this.o=this.u=this.ba=null;A.push(this)}function Ka(a,b,c){La[a]&&b&&(La[a][b]=c)}function Ma(){return Date.now()||+new Date} +function y(a,b){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Ra=b.comment;this.eb=b;this.exports={};this.m=this.bindings={};a=this.id.indexOf(".");0>a?this.qa=this.id:(this.ra=this.id.substr(0,a),this.qa=this.id.substr(a+1));this.g={ready:!1,wa:!1,Ja:!1,C:!1,error:!1};this.ya=null;this.g.error=!1;this.v=this.h=this.o=this.u=this.ba=null;A.push(this)}function Ka(a,b,c){La[a]&&b&&(La[a][b]=c)}function Ma(){return Date.now()||+new Date} function u(a){window&&window.alert(a)}function Na(a){var b=!1;window&&(b=window.confirm(a));return b}function B(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;ba;a++)this.a["S"+a]=[0,0,!1,!1,this.lb,a];this.v=this.h=this.o=this.u=null;this.exports={hold:this.eb,toggle:this.wb,reset:this.sb, -set:this.vb};H(this)}n(eb,y);k=eb.prototype;k.reset=function(a){this.stop();a&&gb(this,this.j=0)}; +function eb(a,b){y.call(this,"Panel",a);this.B=this.D=0;this.P=b;this.b=this.w=this.i=this.j=0;this.G=this.I=-1;this.K=this.L=this.s=!1;this.N=fb;this.l={};this.a={START:[1,1,!0,!1,this.ob],STEP:[1,1,!1,!1,this.pb],ENABLE:[1,1,!1,!1,this.jb],CONT:[1,1,!0,!1,this.hb],DEP:[0,0,!0,!1,this.ib],EXAM:[1,1,!0,!1,this.kb],LOAD:[1,1,!0,!1,this.mb],TEST:[0,0,!0,!1,this.lb]};for(a=0;22>a;a++)this.a["S"+a]=[0,0,!1,!1,this.nb,a];this.v=this.h=this.o=this.u=null;this.exports={hold:this.gb,toggle:this.yb,reset:this.ub, +set:this.xb};H(this)}n(eb,y);k=eb.prototype;k.reset=function(a){this.stop();a&&gb(this,this.j=0)}; k.U=function(a,b,c,d){if(this.u&&this.u.U(a,b,c,d)||this.h&&this.h.U(a,b,c,d))return!0;switch(b){case "PC":return this.m[b]=c,this.D++,!0;default:return"led"==a||"rled"==a?(this.m[b]=c,this.l[b]=d?1:0,this.D++,!0):"switch"==a?(void 0===this.a[b]&&(this.a[b]=[d?1:0,d?1:0]),this.m[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){hb(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){ib(a,b)}}(this,b),a.ontouchstart=function(a,b){return function(c){hb(a, -b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){ib(a,b)}}(this,b),!0):y.prototype.U.call(this,a,b,c,d)}};k.Z=function(a,b,c,d){this.u=a;this.o=b;this.h=c;this.v=d;jb(this);kb(this)};k.V=function(a,b){if(!b)if(this.R&&lb(),!a)this.reset(!0);else if(!this.restore(a))return!1;return!0};k.P=function(a){return a?this.save():!0};k.save=function(){var a=new P(this);a.set(0,[this.b,this.j,this.i]);return a.data()}; -k.restore=function(a){if(a=a[0])mb(this,this.b=a[0]),gb(this,this.j=a[1]),nb(this,a[2]);return!0};k.sb=function(){for(var a in this.a){var b=this.a[a];b[1]=b[0]}kb(this);return!0};function ob(a,b,c){if(a=a.m[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function jb(a,b){for(var c in a.l)ob(a,c,null!=b?b:a.l[c])}function pb(a,b,c){if(a=a.m[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function kb(a){for(var b in a.a)pb(a,b,a.a[b][1])} -k.eb=function(a,b,c){if(hb(this,b)){if(c){var d=this;setTimeout(function(){ib(d,b);a&&a()},+c);return!1}ib(this,b)}return!0}; -k.vb=function(a,b){if("SR"==a){a=b;b=8;var c;if(a){b||(b=10);var d=a.charAt(0),e=0>>a.b];a.j++;b=c.o(b&16383,b);a.j--;a=b}else a=this.h.c(this.b);gb(this,this.j=a)}};k.kb=function(a){a||this.h.g.A||mb(this,this.i)};k.jb=function(a){a?(this.s=!0,jb(this,!0)):(this.s=!1,jb(this),nb(this,0))};k.lb=function(a,b){this.i=a?this.i|1<>>a.b];a.j++;b=c.o(b&16383,b);a.j--;a=b}else a=this.h.c(this.b);gb(this,this.j=a)}};k.mb=function(a){a||this.h.g.A||mb(this,this.i)};k.lb=function(a){a?(this.s=!0,jb(this,!0)):(this.s=!1,jb(this),nb(this,0))};k.nb=function(a,b){this.i=a?this.i|1<c;c++){var d=a,e="A"+c,f=b&1<c;c++){var d=a,e="D"+c,f=b&1<b;b++)a.a["S"+b][1]=a.i&1<d.length){for(var e=0,f=Array(4096),g=0;g>>a.b;0f&&(p=f);if(h&&h.size){if(h.type==d){if(e+f<=h.aa)return h.xa+=h.aa-e,h.aa=e,!0;if(e>=h.aa+h.xa){p=h.size-(e-l);p>f&&(p=f);h.xa=e-h.aa+p;e=l+16384;f-=p;g++;continue}}return Eb(Fb,e,f)}e=new S(a,e,p,16384,d);Bb(e,h);a.a[g++]=e;e=l+16384;f-=p}return 0>=f?(a.status("Added "+(c>>10)+"Kb "+Gb[d]+" at "+la(b)),!0):Eb(Hb,b,c)}function zb(a,b,c){var d=a.a[(b&a.i)>>>a.b];a.j++;d.m(c,b&16383,b);a.j--} -function Cb(a){for(var b=0,c=[],d=0;d=a.W&&(a.W+=a.fa,c=!0);0<=a.ga&&a.ga<=Xb(a)&&(a.fa=a.ga=-1,Wb(a),Q(a),c=!0);c&&a.M(Xb(a)+" cycles: checksum="+r(a.pa))}} -k.U=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.m[b]=c,!0;case "run":return this.m[b]=c,c.onclick=function(){var a;if(a=d.u)if(a=d.u,a.g.C)a=!0;else{var b=null,c,h=B(a.id);for(c=0;ca.O/a.R&&(b=1);a.X=b;b=a.Ca*a.X;if(a.R!=b){a.R=b;b=a.R.toFixed(2)+"Mhz";var d=a.m.setSpeed;d&&(d.textContent=b);a.M("target speed: "+b)}c&&a.u&&(c=a.u,c.ba&&(d=b=0,window&&(b=window.scrollX,d=window.scrollY),c.ba.focus(),window&&window.scrollTo(b,d)))}wb(a,a.B);a.B=0;a.w=Ma();a.G=0;Zb(a)}function ac(a){for(var b=[],c=0;cd[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function bc(a,b){var c=a.I-=a.K;a.K=0;b&&(a.I=0);return c} -k.tb=function(){if(this.g.A){this.ra>=this.Ea&&Zb(this,!0);this.da=0;this.ea=Ma();if(this.G){var a=this.ea-this.G;a>this.Da&&(this.w+=a,this.w>this.ea&&(this.w=this.ea))}try{do{for(var b,c=this.g.ua?1:this.ha,d=this.D.length-1;0<=d;d--){var e=this.D[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.ya(b)}catch(f){if("number"!=typeof f)throw f;}b=bc(this,!0);this.da+=b;this.B+=b;xb(this,b);vb(this,b);this.ca-=b;if(0>=this.ca){this.ca+=this.ha;++this.Fa>=cc&&(this.u&&R(this.u,void 0),this.Fa=0);break}}while(this.g.A)}catch(f){Q(this); -this.u&&this.u.stop(Ma(),Xb(this));a=f.stack||f.message;this.g.error=!0;this.F(a);return}if(this.g.A){a=setTimeout;b=this.Qa;this.G=Ma();c=this.Da;this.da&&(c=Math.round(c*this.da/this.ha));c-=this.G-this.ea;if(d=this.G-this.w)this.O=Math.round(this.B/(10*d))/100,864E5<=d&&(this.L=0,Yb(this));if(0>c||this.Oc&&(this.w-=c),c=0;this.ra+=this.da;this.G+=c;a(b,c)}}}; -function ub(a){var b;a.g.error?(a.M(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.g.A)a.M(a.toString()+" busy");else{Yb(a);a.g.A=!0;a.g.Ja=!0;if(b=a.m.run)b.textContent="Halt";a.u&&a.u.start(a.w,Xb(a));a.v||a.status("Started");setTimeout(a.Qa,0)}}k.ya=function(){return 0};function Q(a){var b=!1;if(a.g.A){bc(a);wb(a,a.B);a.B=0;a.g.A=!1;if(b=a.m.run)b.textContent="Run";a.u&&a.u.stop(Ma(),Xb(a));b=!0;a.v||a.status("Stopped")}a.g.complete=void 0;return b}var $b=30,cc=15,Tb=["power","reset"]; -function dc(a){var b=+a.model||1001;Sb.call(this,a,1E6);this.$a=b;this.Oa=+a.addrReset||0;this.bb=ec.bind(this);this.a=T.bind(this);this.ja=null;this.Na=[];this.g.complete=!1}n(dc,Sb);k=dc.prototype;k.reset=function(){this.status("Model "+this.$a);this.g.A&&Q(this);this.b=this.s=this.sa=0;this.j=this.Ba=this.Oa;this.ma=this.Za=this.Aa=!1;this.l=-1;this.ka=this.j;this.i=0;this.c=this.pb;this.f=this.Ab;this.ja=null;Vb(this);this.g.error=!1;Sb.prototype.reset.call(this)};k.Sa=function(){return 0}; -k.save=function(){var a=new P(this);a.set(0,[this.b,this.s,this.l,this.sa,this.j,this.Ba,this.ka,this.i]);a.set(1,[]);a.set(2,[this.L,this.X,this.g.J]);a.set(3,fc(this));a.set(4,ac(this));return a.data()}; -k.restore=function(a){var b;b=a[0];ea();ba();ea();var c=b[Symbol.iterator];b=c?c.call(b):fa(b);this.b=b.next().value;this.s=b.next().value;this.l=b.next().value;this.sa=b.next().value;this.j=b.next().value;this.Ba=b.next().value;this.ka=b.next().value;this.i=b.next().value;b=a[2];this.L=b[0];Yb(this,b[1]);this.g.J=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d=0;dN&&(a!=ab?a=bb-a:this.ma=this.Aa=!0);return a};function hc(a,b){b?b==ab?a.ma=a.Aa=!0:b=bb-b:a.Za=a.Aa=!0;return b}function fc(a){var b=[];for(a=a.ja;a;)b.push(a.xb),a=a.next;return b}k.pb=function(a){var b=this.o;a=this.ka=a;return b.a[(a&b.i)>>>b.b].c(a&16383,a)};k.Ab=function(a,b){var c=this.o;a=this.ka=a;c.a[(a&c.i)>>>c.b].f(b,a&16383,a);return b}; -k.ya=function(a){this.g.complete=!0;var b=a?this.g.Ja?0:1:-1;this.g.Ja=!1;this.I=this.K=a;this.i=this.i&-5|0;do{if(a=this.i)if(a=this.i&11)this.i&2?this.ja||(this.i&=-3):this.i&1&&this.i++,a=!1;if(a){if(this.i&4&&this.v.j(this.j,b)){Q(this);break}if(0>b)break}this.i&=15;this.s=this.s&4194304?this.c(this.b):this.sa=this.c(this.Ba=this.j);this.s&=8388607;this.b=this.s&262143;if(a=this.s>>18&15)this.b=this.b+this.c(a)&Xa;this.s&4194304?a=-1:(this.j=(this.j+1)%Wa,a=this.sa/cb|0);0<=a&&this.bb(a)}while(0< -this.K);return this.g.complete?this.I-this.K:!1===this.g.complete?-1:0};w(function(){for(var a=G(document,F,"cpu"),b=0;b>4].call(this,a,a&15)}function U(a){this.a(a)}function jc(){var a=0,b=this.c(this.b),c=b/db&63,d=b>>24&63,c=c-d;0>c&&(a++,c=36-d,0>c&&(c=64-d));b=c*db+(d<<24)+(b&16777215);a&&(b=(b+a)%J);this.f(this.b,b)} +k.V=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.R=function(a){return a?this.save():!0};k.save=function(){var a=new P(this);a.set(0,Cb(this));return a.data()};k.restore=function(a){a:{a=a[0];var b;for(b=0;bd.length){for(var e=0,f=Array(4096),g=0;g>>a.b;0f&&(p=f);if(h&&h.size){if(h.type==d){if(e+f<=h.aa)return h.Aa+=h.aa-e,h.aa=e,!0;if(e>=h.aa+h.Aa){p=h.size-(e-l);p>f&&(p=f);h.Aa=e-h.aa+p;e=l+16384;f-=p;g++;continue}}return Eb(Fb,e,f)}e=new S(a,e,p,16384,d);Bb(e,h);a.a[g++]=e;e=l+16384;f-=p}return 0>=f?(a.status("Added "+(c>>10)+"Kb "+Gb[d]+" at "+la(b)),!0):Eb(Hb,b,c)}function zb(a,b,c){var d=a.a[(b&a.i)>>>a.b];a.j++;d.m(c,b&16383,b);a.j--} +function Cb(a){for(var b=0,c=[],d=0;d=a.ca&&(a.ca+=a.ka,c=!0);0<=a.la&&a.la<=Xb(a)&&(a.ka=a.la=-1,Wb(a),Q(a),c=!0);c&&a.M(Xb(a)+" cycles: checksum="+r(a.sa))}} +k.U=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.m[b]=c,!0;case "run":return this.m[b]=c,c.onclick=function(){var a;if(a=d.u)if(a=d.u,a.g.C)a=!0;else{var b=null,c,h=B(a.id);for(c=0;ca.P/a.X&&(b=1);a.da=b;b=a.Fa*a.da;if(a.X!=b){a.X=b;b=a.X.toFixed(2)+"Mhz";var d=a.m.setSpeed;d&&(d.textContent=b);a.M("target speed: "+b)}c&&a.u&&(c=a.u,c.ba&&(d=b=0,window&&(b=window.scrollX,d=window.scrollY),c.ba.focus(),window&&window.scrollTo(b,d)))}wb(a,a.B);a.B=0;a.w=Ma();a.I=0;Zb(a)}function ac(a){for(var b=[],c=0;cd[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function bc(a,b){var c=a.K-=a.L;a.L=0;b&&(a.K=0);return c} +k.vb=function(){if(this.g.A){this.ua>=this.Ha&&Zb(this,!0);this.fa=0;this.ja=Ma();if(this.I){var a=this.ja-this.I;a>this.Ga&&(this.w+=a,this.w>this.ja&&(this.w=this.ja))}try{do{for(var b,c=this.g.xa?1:this.ma,d=this.D.length-1;0<=d;d--){var e=this.D[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.Ba(b)}catch(f){if("number"!=typeof f)throw f;}b=bc(this,!0);this.fa+=b;this.B+=b;xb(this,b);vb(this,b);this.ea-=b;if(0>=this.ea){this.ea+=this.ma;++this.Ia>=cc&&(this.u&&R(this.u,void 0),this.Ia=0);break}}while(this.g.A)}catch(f){Q(this); +this.u&&this.u.stop(Ma(),Xb(this));a=f.stack||f.message;this.g.error=!0;this.F(a);return}if(this.g.A){a=setTimeout;b=this.Ta;this.I=Ma();c=this.Ga;this.fa&&(c=Math.round(c*this.fa/this.ma));c-=this.I-this.ja;if(d=this.I-this.w)this.P=Math.round(this.B/(10*d))/100,864E5<=d&&(this.N=0,Yb(this));if(0>c||this.Pc&&(this.w-=c),c=0;this.ua+=this.fa;this.I+=c;a(b,c)}}}; +function ub(a){var b;a.g.error?(a.M(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.g.A)a.M(a.toString()+" busy");else{Yb(a);a.g.A=!0;a.g.Ma=!0;if(b=a.m.run)b.textContent="Halt";a.u&&a.u.start(a.w,Xb(a));a.v||a.status("Started");setTimeout(a.Ta,0)}}k.Ba=function(){return 0};function Q(a){var b=!1;if(a.g.A){bc(a);wb(a,a.B);a.B=0;a.g.A=!1;if(b=a.m.run)b.textContent="Run";a.u&&a.u.stop(Ma(),Xb(a));b=!0;a.v||a.status("Stopped")}a.g.complete=void 0;return b}var $b=30,cc=15,Tb=["power","reset"]; +function dc(a){var b=+a.model||1001;Sb.call(this,a,1E6);this.Xa=b;this.pa=+a.addrReset||0;this.cb=ec.bind(this);this.a=T.bind(this);this.ia=null;this.Qa=[];this.g.complete=!1}n(dc,Sb);k=dc.prototype;k.reset=function(){this.status("Model "+this.Xa);this.g.A&&Q(this);this.b=this.s=this.va=0;this.j=this.Ea=this.pa;this.l=-1;this.G=this.Da=this.ha=this.Sa=this.W=!1;this.ga=this.j;this.i=0;this.c=this.rb;this.f=this.Cb;this.ia=null;Vb(this);this.g.error=!1;Sb.prototype.reset.call(this)};k.Va=function(){return 0}; +k.save=function(){var a=new P(this);a.set(0,[this.b,this.s,this.va,this.j,this.l,this.i,this.G,this.Da,this.ha,this.Sa,this.W,this.Ea,this.ga,this.pa]);a.set(1,[]);a.set(2,[this.N,this.da,this.g.J]);a.set(3,fc(this));a.set(4,ac(this));return a.data()}; +k.restore=function(a){var b;b=a[0];ea();ba();ea();var c=b[Symbol.iterator];b=c?c.call(b):fa(b);this.b=b.next().value;this.s=b.next().value;this.va=b.next().value;this.j=b.next().value;this.l=b.next().value;this.i=b.next().value;this.G=b.next().value;this.Da=b.next().value;this.ha=b.next().value;this.Sa=b.next().value;this.W=b.next().value;this.Ea=b.next().value;this.ga=b.next().value;this.pa=b.next().value;b=a[2];this.N=b[0];Yb(this,b[1]);this.g.J=b[2];b=a[3];for(c=b.length-1;0<=c;c--){var d;a:{for(d= +0;dN&&(a!=ab?a=bb-a:this.G=this.ha=!0);return a};function hc(a,b){b?b==ab?a.G=a.ha=!0:b=bb-b:a.Da=a.ha=!0;return b}function fc(a){var b=[];for(a=a.ia;a;)b.push(a.zb),a=a.next;return b}k.rb=function(a){var b=this.o;a=this.ga=a;return b.a[(a&b.i)>>>b.b].c(a&16383,a)}; +k.Cb=function(a,b){var c=this.o;a=this.ga=a;c.a[(a&c.i)>>>c.b].f(b,a&16383,a);return b}; +k.Ba=function(a){this.g.complete=!0;var b=a?this.g.Ma?0:1:-1;this.g.Ma=!1;this.K=this.L=a;this.i=this.i&-5|0;do{if(a=this.i)if(a=this.i&11)this.i&2?this.ia||(this.i&=-3):this.i&1&&this.i++,a=!1;if(a){if(this.i&4&&this.v.j(this.j,b)){Q(this);break}if(0>b)break}this.i&=15;this.s=this.s&4194304?this.c(this.b):this.va=this.c(this.Ea=this.j);this.s&=8388607;this.b=this.s&262143;if(a=this.s>>18&15)this.b=this.b+this.c(a)&Xa;this.s&4194304?a=-1:(this.j=(this.j+1)%Wa,a=this.va/cb|0);0<=a&&this.cb(a)}while(0< +this.L);return this.g.complete?this.K-this.L:!1===this.g.complete?-1:0};w(function(){for(var a=G(document,F,"cpu"),b=0;b>4].call(this,a,a&15)}function U(a){this.a(a)}function jc(){var a=0,b=this.c(this.b),c=b/db&63,d=b>>24&63,c=c-d;0>c&&(a++,c=36-d,0>c&&(c=64-d));b=c*db+(d<<24)+(b&16777215);a&&(b=(b+a)%J);this.f(this.b,b)} function kc(a,b){a=this.c(this.b);if(0>this.l)this.l=a,this.s=this.b|4194304,gc(this);else{var c=this.l/db&63,d=this.l>>24&63;a=32>=c+d?(a>>c&(1<>>0:Math.trunc(a/Math.pow(2,c))%Math.pow(2,d);this.f(b,a);this.l=-1}}function lc(a,b){a=this.c(this.b);if(0>this.l)this.l=a,this.s=this.b|4194304,gc(this);else{var c=this.l/db&63,d=this.l>>24&63;b=this.c(b)%Math.pow(2,d)*Math.pow(2,c)%J;a=a-a%Math.pow(2,c+d)+b+a%Math.pow(2,c);this.f(this.b,a);this.l=-1}}function mc(a,b){this.f(b,this.c(this.b))} function nc(a,b){this.f(b,this.b)}function oc(a,b){this.f(this.b,this.c(b))}function pc(a,b){this.f(b,0)}function qc(a,b){this.f(b,K-this.c(b))}function rc(a,b){this.f(b,K)}function sc(a,b){var c=this.c(this.b),d=this.c(b);this.f(b,V(a,d,c)+(c-(c&M)))}function tc(a,b){var c=this.c(b);this.f(b,V(a,c,0))}function uc(a,b){b=this.c(b);var c=this.c(this.b);this.f(this.b,V(a,c,b)+(b-(b&M)))} function vc(a,b){var c=this.c(this.b),d=c;if(a&=384)switch(d-=d&M,a){case 256:d+=M;break;case 384:d+=c>N?M:0}c=d;this.f(this.b,c);b&&this.f(b,c)}function wc(a,b){var c=(this.c(this.b)&M)*L,d=this.c(b);this.f(b,V(a,d,c)+c)}function xc(a,b){var c=this.b*L,d=this.c(b);this.f(b,V(a,d,c)+c)}function yc(a,b){b=(this.c(b)&M)*L;var c=this.c(this.b);this.f(this.b,V(a,c,b)+b)}function zc(a,b){var c=this.c(this.b),d=(c&M)*L,c=V(a,c,d)+d;this.f(this.b,c);b&&this.f(b,c)} function Ac(a,b){var c=this.c(this.b)&M,d=this.c(b);this.f(b,W(a,d,c)+c)}function Bc(a,b){var c=this.c(b);this.f(b,W(a,c,this.b)+this.b)}function Cc(a,b){b=this.c(b)&M;var c=this.c(this.b);this.f(this.b,W(a,c,b)+b)}function Dc(a,b){var c=this.c(this.b),d=c;if(a&=384)switch(d&=M,a){case 256:d+=M*L;break;case 384:d+=c>$a?M*L:0}c=d;this.f(this.b,c);b&&this.f(b,c)}function Ec(a,b){var c=this.c(this.b)/L|0,d=this.c(b);this.f(b,W(a,d,c)+c)}function Fc(a,b){var c=this.c(b);this.f(b,W(a,c,0))} -function Gc(a,b){b=this.c(b)/L|0;var c=this.c(this.b);this.f(this.b,W(a,c,b)+b)}function Hc(a,b){var c=this.c(this.b),d=c/L|0,c=W(a,c,d)+d;this.f(this.b,c);b&&this.f(b,c)}function X(a){this.a(a)}function Ic(){}function T(a){this.M("undefined opcode: "+la(a));gc(this);Q(this)}function W(a,b,c){switch(a&384){case 0:b-=b&M;break;case 128:b=0;break;case 256:b=M*L;break;case 384:b=c>$a?M*L:0}return b} -function V(a,b,c){switch(a&384){case 0:b&=M;break;case 128:b=0;break;case 256:b=M;break;case 384:b=c>N?M:0}return b}function Y(a,b){return((a/O|0)&(b/O|0))*O+((a&b)>>>0)}function Jc(a,b){return((a/O|0)^(b/O|0))*O+((a^b)>>>0)}function Kc(a,b){return(~((a/O|0)^(b/O|0))&15)*O+(~(a^b)>>>0)}function Z(a,b){return(a/O|0|b/O|0)*O+((a|b)>>>0)} +function Gc(a,b){b=this.c(b)/L|0;var c=this.c(this.b);this.f(this.b,W(a,c,b)+b)}function Hc(a,b){var c=this.c(this.b),d=c/L|0,c=W(a,c,d)+d;this.f(this.b,c);b&&this.f(b,c)}function X(a){Ic[a&7].call(this,a>>3&127)}function Jc(){}function T(a){this.M("undefined opcode: "+la(a));gc(this);Q(this)}function W(a,b,c){switch(a&384){case 0:b-=b&M;break;case 128:b=0;break;case 256:b=M*L;break;case 384:b=c>$a?M*L:0}return b} +function V(a,b,c){switch(a&384){case 0:b&=M;break;case 128:b=0;break;case 256:b=M;break;case 384:b=c>N?M:0}return b}function Y(a,b){return((a/O|0)&(b/O|0))*O+((a&b)>>>0)}function Kc(a,b){return((a/O|0)^(b/O|0))*O+((a^b)>>>0)}function Lc(a,b){return(~((a/O|0)^(b/O|0))&15)*O+(~(a^b)>>>0)}function Z(a,b){return(a/O|0|b/O|0)*O+((a|b)>>>0)} var ic=[U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},jc,function(a,b){0>this.l&&jc.call(this);kc.call(this,0,b)},kc,function(a,b){0>this.l&&jc.call(this);lc.call(this,0,b)},lc,function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},mc,nc,oc,function(a,b){b&&this.f(b,this.c(this.b))},function(a,b){a=this.c(this.b);a=(a/L|0)+a%L*L;this.f(b,a)},function(a,b){this.f(b,this.b*L)},function(a,b){a=this.c(b);a=(a/L|0)+a%L*L;this.f(this.b,a)},function(a,b){a=this.c(this.b);a=(a/L|0)+a%L*L;this.f(this.b,a);b&&this.f(b,a)},function(a,b){this.f(b,hc(this,this.c(this.b)))},function(a,b){this.f(b,this.b?bb-this.b:0)},function(a,b){this.f(this.b,hc(this, this.c(b)))},function(a,b){a=hc(this,this.c(this.b));this.f(this.b,a);b&&this.f(b,a)},function(a,b){this.f(b,this.abs(this.c(this.b)))},function(a,b){this.f(b,this.b)},function(a,b){this.f(this.b,this.abs(this.c(b)))},function(a,b){a=this.abs(this.c(this.b));this.f(this.b,a);b&&this.f(b,a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, -function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a,b){var c=this.b<<14>>24;if(c){a=this.c(b);var d=a>N?-(J-a):a;0d?Ya:0,c=Za):(d=d*Math.pow(2,c)%Ya,c=Ya-Math.pow(2,35-c)),a<=N?a+c>N&&(this.ma=!0):a-c<=N&&(this.ma=!0)):d=-35>=c?0>d?-1:0:Math.trunc(d/Math.pow(2,-c));a=0>d?d+J:d;this.f(b,a)}},function(a,b){if(a=(this.b<<14>>24)%36){var c=this.c(b);0>a&&(a=36+a);c=c*Math.pow(2,a)%J+Math.trunc(c/ +function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a,b){var c=this.b<<14>>24;if(c){a=this.c(b);var d=a>N?-(J-a):a;0d?Ya:0,c=Za):(d=d*Math.pow(2,c)%Ya,c=Ya-Math.pow(2,35-c)),a<=N?a+c>N&&(this.G=!0):a-c<=N&&(this.G=!0)):d=-35>=c?0>d?-1:0:Math.trunc(d/Math.pow(2,-c));a=0>d?d+J:d;this.f(b,a)}},function(a,b){if(a=(this.b<<14>>24)%36){var c=this.c(b);0>a&&(a=36+a);c=c*Math.pow(2,a)%J+Math.trunc(c/ Math.pow(2,36-a));this.f(b,c)}},function(a,b){if(a=this.b<<14>>24){var c=this.c(b),c=0=a?0:Math.trunc(c/Math.pow(2,-a));this.f(b,c)}},function(a){this.a(a)},function(a){this.a(a)},function(a,b){if(a=(this.b<<14>>24)%72){var c=this.c(b),d=this.c(b+1&15),e=c;0>a&&(a=72+a);36>a?(c=c*Math.pow(2,a)%J+Math.trunc(d/Math.pow(2,36-a)),d=d*Math.pow(2,a)%J+Math.trunc(e/Math.pow(2,36-a))):(c=d*Math.pow(2,a-36)%J+Math.trunc(c/Math.pow(2,72-a)),d=e*Math.pow(2,a-36)%J+Math.trunc(d/ Math.pow(2,72-a)));this.f(b,c);this.f(b+1&15,d)}},function(a,b){if(a=this.b<<14>>24){var c=this.c(b),d=this.c(b+1&15);0=a?(c=0,d=-72>=a?0:Math.trunc(c/Math.pow(2,-a-36))):(d=Math.trunc(d/Math.pow(2,-a))+c*Math.pow(2,36+a)%J,c=Math.trunc(c/Math.pow(2,-a)));this.f(b,c);this.f(b+1&15,d)}},T,function(a,b){a=this.c(b);this.f(b,this.c(this.b));this.f(this.b,a)},function(a,b){a=!1;for(var c= -this.c(b),d=c/L|0,c=c&M;!a;)this.f(c,this.c(d)),c==this.b&&(a=!0),d=d+1&M,c=c+1&M,this.g.A||(this.f(b,d*L+c),a||gc(this),a=!0)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},T,function(a){this.a(a)},function(a,b){a=this.c(b);a+=262145;this.f(a&M,this.c(this.b));a>=J&&(a-=J);this.f(b,a)},function(a,b){a=this.c(b);var c=this.c(a&M);this.f(this.b,c);this.b==b&&(a=c);a-=262145;0>a&&(a+=J);this.f(b,a)},function(a){this.a(a)},function(a){this.a(a)}, +this.c(b),d=c/L|0,c=c&M;!a;)this.f(c,this.c(d)),c==this.b&&(a=!0),d=d+1&M,c=c+1&M,this.g.A||(this.f(b,d*L+c),a||gc(this),a=!0)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},T,function(a){this.a(a)},function(a,b){a=this.c(b);a+=262145;this.f(a&M,this.c(this.b));a>=J&&(a-=J);a/L|0||(this.W=!0);this.f(b,a)},function(a,b){a=this.c(b);var c=this.c(a&M);this.f(this.b,c);this.b==b&&(a=c);a-=262145;0>a&&(a+=J);(a/L|0)==M&&(this.W=!0);this.f(b, +a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, -function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, -function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},pc,pc,function(){this.f(this.b,0)},function(a,b){this.f(this.b,this.f(b,0))},function(a,b){this.f(b,Y(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Y(this.c(b),this.b))},function(a,b){this.f(this.b,Y(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Y(this.c(b),this.c(this.b))))}, -function(a,b){this.f(b,Y(K-this.c(b),this.c(this.b)))},function(a,b){this.f(b,Y(K-this.c(b),this.b))},function(a,b){this.f(this.b,Y(K-this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Y(K-this.c(b),this.c(this.b))))},mc,nc,Ic,mc,function(a,b){this.f(b,Y(this.c(b),K-this.c(this.b)))},function(a,b){this.f(b,Y(this.c(b),K-this.b))},function(a,b){this.f(this.b,Y(this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Y(this.c(b),K-this.c(this.b))))},Ic,Ic,oc,oc,function(a,b){this.f(b, -Jc(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Jc(this.c(b),this.b))},function(a,b){this.f(this.b,Jc(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Jc(this.c(b),this.c(this.b))))},function(a,b){this.f(b,Z(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Z(this.c(b),this.b))},function(a,b){this.f(this.b,Z(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(this.c(b),this.c(this.b))))},function(a,b){this.f(b,Y(K-this.c(b),K-this.c(this.b)))},function(a,b){this.f(b, -Y(K-this.c(b),K-this.b))},function(a,b){this.f(this.b,Y(K-this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Y(K-this.c(b),K-this.c(this.b))))},function(a,b){this.f(b,Kc(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Kc(this.c(b),this.b))},function(a,b){this.f(this.b,Kc(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Kc(this.c(b),this.c(this.b))))},qc,qc,function(a,b){this.f(this.b,K-this.c(b))},function(a,b){this.f(this.b,this.f(b,K-this.c(b)))},function(a,b){this.f(b, -Z(K-this.c(b),this.c(this.b)))},function(a,b){this.f(b,Z(K-this.c(b),this.b))},function(a,b){this.f(this.b,Z(K-this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(K-this.c(b),this.c(this.b))))},function(a,b){this.f(b,K-this.c(this.b))},function(a,b){this.f(b,K-this.b)},function(){this.f(this.b,K-this.c(this.b))},function(a,b){this.f(this.b,this.f(b,K-this.c(this.b)))},function(a,b){this.f(b,Z(this.c(b),K-this.c(this.b)))},function(a,b){this.f(b,Z(this.c(b),K-this.b))},function(a,b){this.f(this.b, -Z(this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(this.c(b),K-this.c(this.b))))},function(a,b){this.f(b,Z(K-this.c(b),K-this.c(this.b)))},function(a,b){this.f(b,Z(K-this.c(b),K-this.b))},function(a,b){this.f(this.b,Z(K-this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(K-this.c(b),K-this.c(this.b))))},rc,rc,function(){this.f(this.b,K)},function(a,b){this.f(this.b,this.f(b,K))},sc,tc,uc,vc,wc,xc,yc,zc,sc,tc,uc,vc,wc,xc,yc,zc,sc,tc,uc,vc,wc,xc,yc,zc,sc,tc,uc,vc, -wc,xc,yc,zc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, +function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},pc,pc,function(){this.f(this.b,0)},function(a,b){this.f(this.b,this.f(b,0))},function(a,b){this.f(b,Y(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Y(this.c(b),this.b))},function(a,b){this.f(this.b,Y(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b, +this.f(b,Y(this.c(b),this.c(this.b))))},function(a,b){this.f(b,Y(K-this.c(b),this.c(this.b)))},function(a,b){this.f(b,Y(K-this.c(b),this.b))},function(a,b){this.f(this.b,Y(K-this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Y(K-this.c(b),this.c(this.b))))},mc,nc,Jc,mc,function(a,b){this.f(b,Y(this.c(b),K-this.c(this.b)))},function(a,b){this.f(b,Y(this.c(b),K-this.b))},function(a,b){this.f(this.b,Y(this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Y(this.c(b),K-this.c(this.b))))}, +Jc,Jc,oc,oc,function(a,b){this.f(b,Kc(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Kc(this.c(b),this.b))},function(a,b){this.f(this.b,Kc(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Kc(this.c(b),this.c(this.b))))},function(a,b){this.f(b,Z(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Z(this.c(b),this.b))},function(a,b){this.f(this.b,Z(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(this.c(b),this.c(this.b))))},function(a,b){this.f(b,Y(K-this.c(b), +K-this.c(this.b)))},function(a,b){this.f(b,Y(K-this.c(b),K-this.b))},function(a,b){this.f(this.b,Y(K-this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Y(K-this.c(b),K-this.c(this.b))))},function(a,b){this.f(b,Lc(this.c(b),this.c(this.b)))},function(a,b){this.f(b,Lc(this.c(b),this.b))},function(a,b){this.f(this.b,Lc(this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Lc(this.c(b),this.c(this.b))))},qc,qc,function(a,b){this.f(this.b,K-this.c(b))},function(a,b){this.f(this.b, +this.f(b,K-this.c(b)))},function(a,b){this.f(b,Z(K-this.c(b),this.c(this.b)))},function(a,b){this.f(b,Z(K-this.c(b),this.b))},function(a,b){this.f(this.b,Z(K-this.c(b),this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(K-this.c(b),this.c(this.b))))},function(a,b){this.f(b,K-this.c(this.b))},function(a,b){this.f(b,K-this.b)},function(){this.f(this.b,K-this.c(this.b))},function(a,b){this.f(this.b,this.f(b,K-this.c(this.b)))},function(a,b){this.f(b,Z(this.c(b),K-this.c(this.b)))},function(a,b){this.f(b, +Z(this.c(b),K-this.b))},function(a,b){this.f(this.b,Z(this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(this.c(b),K-this.c(this.b))))},function(a,b){this.f(b,Z(K-this.c(b),K-this.c(this.b)))},function(a,b){this.f(b,Z(K-this.c(b),K-this.b))},function(a,b){this.f(this.b,Z(K-this.c(b),K-this.c(this.b)))},function(a,b){this.f(this.b,this.f(b,Z(K-this.c(b),K-this.c(this.b))))},rc,rc,function(){this.f(this.b,K)},function(a,b){this.f(this.b,this.f(b,K))},sc,tc,uc,vc,wc,xc,yc,zc,sc,tc, +uc,vc,wc,xc,yc,zc,sc,tc,uc,vc,wc,xc,yc,zc,sc,tc,uc,vc,wc,xc,yc,zc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,Ac,Bc,Cc,Dc,Ec,Fc,Gc,Hc,function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)},function(a){this.a(a)}, -function(a){this.a(a)},function(a){this.a(a)},X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X]; -function Lc(a){y.call(this,"ROM",a);this.N=this.a=null;this.l=+a.addr;this.i=+a.size;this.b=a.alias;"string"==typeof this.b&&(this.b=eval(this.b));this.j=a.file;this.s=ma(this.j);if(this.j){a=this.j;var b=na(this.s);"json"!=b&&"hex"!=b&&(a=pa()+"/api/v1/dump?file="+this.j+"&format=bytes&decimal=true");var c=this;t(a,null,!0,function(a,b,f){f?(c.F("Unable to load ROM resource (error "+f+": "+a+")"),c.j=null):(Ka(c.oa,a,b),(a=va(a,b))?(c.a=a.H,c.N=a.N):c.j=null);Mc(c)})}}n(Lc,y); -Lc.prototype.Z=function(a,b,c,d){this.o=b;this.h=c;this.v=d;Mc(this)};Lc.prototype.V=function(){this.N&&(this.v&&this.v.a(this.id,this.l,this.i,this.N),delete this.N);return!0};Lc.prototype.P=function(){return!0}; -function Mc(a){if(!Ua(a)){if(a.j){if(!a.a||!a.o)return;a.i||(a.i=a.a.length);if(a.a.length!=a.i){var b="ROM size ("+r(a.a.length,8,!0)+") does not match specified size ("+r(a.i,8,!0)+")";a.g.error=!0;a.F(b)}else{b=a.l;if(Db(a.o,b,a.i,Lb)){var c;for(c=0;c>>f.b;0>>=f.b;0>>a.b;0g&&g>=ja&&(g+=ia);g=Math.trunc(Math.abs(g))%ia;void 0===f&&(f=e.size);for(h=d;f--&&h=q.La&&c<=q.ab&&(b=c-(q.La-q.Va));b&&(a.preventDefault&&a.preventDefault(),d.wa(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==q.Xa&&(b=q.Wa);d.wa(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation(); -a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.wa(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};k.Z=function(a,b,c,d){this.u=a;this.o=b;this.h=c;this.v=d;H(this)}; -k.Ta=function(a){if(!this.a){var b=Ub(this.u,"connection");if(b){var c=b.split("->");if(2==c.length){var d=ta(c[0]);if(d!=this.na)return;c=ta(c[1]);if(this.a=Oa(c)){var e=this.a.exports;if(e){var f=e.connect;f&&f.call(this.a,this.i);if(this.l=e.receiveData){this.i=a;this.status("Connected "+this.oa+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};k.V=function(a,b){if(!b)if(this.Ta(this.i),!a)this.reset();else if(!this.restore(a))return!1;return!0}; -k.P=function(a){return a?this.save():!0};k.reset=function(){};k.save=function(){var a=new P(this);a.set(0,[]);return a.data()};k.restore=function(){return!0};k.wa=function(a){if("number"==typeof a)this.b.push(a);else if("string"==typeof a)for(var b=0,c,d=0;d\nLicense: GPL version 3 or later ");for(b=0;bVc){if(Wc(d,this.D)){this.l=new P(this,"1.34.2",ed);Wc(this.l)&&(fd(this,d),a=gd,hd(this.l));this.l.set(bd,ua());id(this.l);var e=this.a&&!this.B;if(a==cd||Na("Click OK to restore the previous "+I+" machine state, or CANCEL to reset the machine.")){if(c=ad(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Wc(d,g):("error"==f&&"no machine state"!= -g?(this.F("Error: "+g),"unable to verify user"==g&&(za(jd,""),this.b=null)):this.M(f+": "+g),hd(d),Wc(d)?(c=ad(d),e=!0):c=!1))}e&&Zc(this,c?d:null)}else a==gd&&d.clear()}else Zc(this);delete this.D;delete this.w}e=B(this.id);for(f=0;fa[1];a=a[2];this.O=!0;this.g.C=!0;var d=this.m.power;d&&(d.textContent="Shutdown");this.h&&(kd(this,this.h,b,c,a),R(this,-2),this.h.J());this.K&&(fd(this,b),b.clear());!c&&this.l&&(this.l.clear(),delete this.l);this.j=0}; -function fd(a,b){if(Na("There may be a problem with your "+I+" machine.\n\nTo help us diagnose it, click OK to send this "+I+" machine state to http://www.pcjs.org.")){var c=a.X;a=a.b||"";b=b.toString();var d={};d.app=I;d.ver="1.34.2";d.url=c;d.user=a;d.type="bug";d.data=b;t("http://www.pcjs.org/api/v1/report",d,!0)}} -function ld(a,b,c){var d,e="none";if(a.j)return null;a.j--;var f=new P(a,"1.34.2"),g=new P(a,"1.34.2",$c),h=ua();g.set(bd,h);f.set(bd,h);f.set(md,"1.34.2");f.set(nd,window?window.location.href:null);f.set(od,window?window.navigator.userAgent:"");a.h&&a.h.P&&(c&&(b&&(a.h.g.J=a.h.g.A),Q(a.h)),d=a.h.P(b,c),"object"===typeof d&&f.set(a.h.id,d),c&&(a.h.g.C=!1,!1===d&&(e=null)));for(var h=B(a.id),l=0;l>>f.b;0>>=f.b;0>>a.b;0g&&g>=ja&&(g+=ia);g=Math.trunc(Math.abs(g))%ia;void 0===f&&(f=e.size);for(h=d;f--&&h=q.Oa&&c<=q.bb&&(b=c-(q.Oa-q.Ya));b&&(a.preventDefault&&a.preventDefault(),d.za(b));return!0},c.onkeypress=function(a){a=a||window.event;if(!a.metaKey){var b=a.which||a.keyCode;a.altKey&&b==q.$a&&(b=q.Za);d.za(b);a.preventDefault&&a.preventDefault()}return!0},c.onpaste=function(a){a.stopPropagation&&a.stopPropagation(); +a.preventDefault&&a.preventDefault();(a=a.clipboardData||window.clipboardData)&&d.za(a.getData("Text"))},c.removeAttribute("readonly"),!0}return!1};k.Z=function(a,b,c,d){this.u=a;this.o=b;this.h=c;this.v=d;H(this)}; +k.Wa=function(a){if(!this.a){var b=Ub(this.u,"connection");if(b){var c=b.split("->");if(2==c.length){var d=ta(c[0]);if(d!=this.qa)return;c=ta(c[1]);if(this.a=Oa(c)){var e=this.a.exports;if(e){var f=e.connect;f&&f.call(this.a,this.i);if(this.l=e.receiveData){this.i=a;this.status("Connected "+this.ra+"."+d+" to "+c);return}}}}this.status("Unable to establish connection: "+b)}}};k.V=function(a,b){if(!b)if(this.Wa(this.i),!a)this.reset();else if(!this.restore(a))return!1;return!0}; +k.R=function(a){return a?this.save():!0};k.reset=function(){};k.save=function(){var a=new P(this);a.set(0,[]);return a.data()};k.restore=function(){return!0};k.za=function(a){if("number"==typeof a)this.b.push(a);else if("string"==typeof a)for(var b=0,c,d=0;d\nLicense: GPL version 3 or later ");for(b=0;bWc){if(Xc(d,this.D)){this.l=new P(this,"1.34.2",fd);Xc(this.l)&&(gd(this,d),a=hd,id(this.l));this.l.set(cd,ua());jd(this.l);var e=this.a&&!this.B;if(a==dd||Na("Click OK to restore the previous "+I+" machine state, or CANCEL to reset the machine.")){if(c=bd(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Xc(d,g):("error"==f&&"no machine state"!= +g?(this.F("Error: "+g),"unable to verify user"==g&&(za(kd,""),this.b=null)):this.M(f+": "+g),id(d),Xc(d)?(c=bd(d),e=!0):c=!1))}e&&$c(this,c?d:null)}else a==hd&&d.clear()}else $c(this);delete this.D;delete this.w}e=B(this.id);for(f=0;fa[1];a=a[2];this.N=!0;this.g.C=!0;var d=this.m.power;d&&(d.textContent="Shutdown");this.h&&(ld(this,this.h,b,c,a),R(this,-2),this.h.J());this.K&&(gd(this,b),b.clear());!c&&this.l&&(this.l.clear(),delete this.l);this.j=0}; +function gd(a,b){if(Na("There may be a problem with your "+I+" machine.\n\nTo help us diagnose it, click OK to send this "+I+" machine state to http://www.pcjs.org.")){var c=a.X;a=a.b||"";b=b.toString();var d={};d.app=I;d.ver="1.34.2";d.url=c;d.user=a;d.type="bug";d.data=b;t("http://www.pcjs.org/api/v1/report",d,!0)}} +function md(a,b,c){var d,e="none";if(a.j)return null;a.j--;var f=new P(a,"1.34.2"),g=new P(a,"1.34.2",ad),h=ua();g.set(cd,h);f.set(cd,h);f.set(nd,"1.34.2");f.set(od,window?window.location.href:null);f.set(pd,window?window.navigator.userAgent:"");a.h&&a.h.R&&(c&&(b&&(a.h.g.J=a.h.g.A),Q(a.h)),d=a.h.R(b,c),"object"===typeof d&&f.set(a.h.id,d),c&&(a.h.g.C=!1,!1===d&&(e=null)));for(var h=B(a.id),l=0;l=d||30<=(c.za+=d))&&(e.textContent=c.g.A?c.O.toFixed(2)+"Mhz":"Stopped",c.za=0)}if(a.i&&(a=a.i,b=b||0,a.D)){c=a.h.g.A;d=!!(a.h.i&8);if(0>=b||60<=(a.B+=b)){e=a.h.j;if(a.m.PC){var f=a.v&&a.v.l||8,e=e||0,e=8==f?la(e,void 0):r(e,void 0);a.m.PC.textContent!=e&&(a.m.PC.textContent=e)}a.B=0}-1>b?a.b=a.h.j:0g.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(g=window.location.pathname+g),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(g?' url="'+g+'"':"")));f||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), -a=a.replace(/().*?(<\/xsl:variable>)/,"$1"+d+"$2"));g=null;if("<"==a.charAt(0))try{f||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(z){g=null,a=z.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");t(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],p,v=/( [a-z]+=)(['"])(.*?)\2/g;p=v.exec(f);)l=0>l.indexOf(p[1])?l.replace(">",p[0]+">"):l.replace(new RegExp(p[1]+"(['\"])(.*?)\\1"),p[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, -"");a=a.replace(d[0],g);wd(a,b,c)}})}else c(a,null)} -function xd(a,b,c,d,e){function f(a){if(void 0===l){var b=h&&G(h,"machine-warning");l=b&&b[0]||h}l&&(l.innerHTML=qa(a))}function g(a){f("Error: "+a);p&&(--td||Ga(!0));p=!1}var h,l,p=!0;td++;La[b]={};try{if(h=document.getElementById(b)){var v;if("object"==typeof resources&&(v=resources.css)){var z=document.head||document.getElementsByTagName("head")[0],ra=document.createElement("style");ra.type="text/css";ra.styleSheet?ra.styleSheet.cssText=v:ra.appendChild(document.createTextNode(v));z.appendChild(ra)}d|| -(v=a,"pdp"==a.substr(0,3)&&(v="pdpjs"),d="/versions/"+v+"/1.34.2/components.xsl");v=function(e,l){l?ud(d,null,a,null,!1,f,function(a,e){e?(Ka(b,d,a),f("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=l.transformNode(e))?(h.outerHTML=e,--td||Ga(!0)):g("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(l,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--td|| -Ga(!0)):g("invalid machine element: "+b):g("transformToFragment failed")):g("unable to transform XML: unsupported browser")):g(a)}):g(e)};"<"!=c.charAt(0)?ud(c,b,a,e,!0,f,v):vd(c,null,b,a,e,!1,f,v)}else g("missing machine element: "+b)}catch(yd){g(yd.message)}return p}window.embedPDP10=function(a,b,c,d){Ga(!1);return xd("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){Ga(!1);return xd("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return C(b,a+".machine")}; +function R(a,b){if(a.h){var c=a.h,d=b||0,e=c.m.speed;e&&(0>=d||30<=(c.Ca+=d))&&(e.textContent=c.g.A?c.P.toFixed(2)+"Mhz":"Stopped",c.Ca=0)}if(a.i&&(a=a.i,b=b||0,a.D)){c=a.h.g.A;d=!!(a.h.i&8);if(0>=b||60<=(a.B+=b)){e=a.h.j;if(a.m.PC){var f=a.v&&a.v.l||8,e=e||0,e=8==f?la(e,void 0):r(e,void 0);a.m.PC.textContent!=e&&(a.m.PC.textContent=e)}a.B=0}-1>b?a.b=a.h.j:0g.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(g=window.location.pathname+g),e?"}"==e.slice(-1)?(e=e.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(e?" parms='"+e+"'":"")+(g?' url="'+g+'"':"")));f||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), +a=a.replace(/().*?(<\/xsl:variable>)/,"$1"+d+"$2"));g=null;if("<"==a.charAt(0))try{f||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(z){g=null,a=z.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");t(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],p,v=/( [a-z]+=)(['"])(.*?)\2/g;p=v.exec(f);)l=0>l.indexOf(p[1])?l.replace(">",p[0]+">"):l.replace(new RegExp(p[1]+"(['\"])(.*?)\\1"),p[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, +"");a=a.replace(d[0],g);xd(a,b,c)}})}else c(a,null)} +function yd(a,b,c,d,e){function f(a){if(void 0===l){var b=h&&G(h,"machine-warning");l=b&&b[0]||h}l&&(l.innerHTML=qa(a))}function g(a){f("Error: "+a);p&&(--ud||Ga(!0));p=!1}var h,l,p=!0;ud++;La[b]={};try{if(h=document.getElementById(b)){var v;if("object"==typeof resources&&(v=resources.css)){var z=document.head||document.getElementsByTagName("head")[0],ra=document.createElement("style");ra.type="text/css";ra.styleSheet?ra.styleSheet.cssText=v:ra.appendChild(document.createTextNode(v));z.appendChild(ra)}d|| +(v=a,"pdp"==a.substr(0,3)&&(v="pdpjs"),d="/versions/"+v+"/1.34.2/components.xsl");v=function(e,l){l?vd(d,null,a,null,!1,f,function(a,e){e?(Ka(b,d,a),f("Processing "+c+"..."),window.ActiveXObject||"ActiveXObject"in window?(e=l.transformNode(e))?(h.outerHTML=e,--ud||Ga(!0)):g("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(a=new XSLTProcessor,a.importStylesheet(e),(e=a.transformToFragment(l,document))?h.parentNode?(h.parentNode.replaceChild(e,h),--ud|| +Ga(!0)):g("invalid machine element: "+b):g("transformToFragment failed")):g("unable to transform XML: unsupported browser")):g(a)}):g(e)};"<"!=c.charAt(0)?vd(c,b,a,e,!0,f,v):wd(c,null,b,a,e,!1,f,v)}else g("missing machine element: "+b)}catch(zd){g(zd.message)}return p}window.embedPDP10=function(a,b,c,d){Ga(!1);return yd("pdp10",a,b,c,d)};window.embedPDP11=function(a,b,c,d){Ga(!1);return yd("pdp11",a,b,c,d)};window.findMachineComponent=function(a,b){return C(b,a+".machine")}; window.processMachineScript=function(a,b){var c=!1;a+=".machine";if("string"==typeof b&&!Qa[a]){for(var c=!0,d=Qa,e=a,f=b.length,g=[],h=[],l="",p=null,v=0;v