Added more register documentation

This commit is contained in:
Jeff 2016-09-24 21:32:00 -07:00 committed by Jeff Parsons
commit 56c305ca64
5 changed files with 503 additions and 349 deletions

View file

@ -123,14 +123,13 @@ CPUStatePDP11.prototype.reset = function()
CPUStatePDP11.prototype.initRegs = function() CPUStatePDP11.prototype.initRegs = function()
{ {
/* /*
* TODO: Verify the initial state of all PDP-11 flags (are they documented?) * TODO: Verify the initial state of all PDP-11 flags and registers (are they well-documented?)
*/ */
this.flagC = 0x10000; // PSW C bit this.flagC = 0x10000; // PSW C bit
this.flagV = 0x8000; // PSW V bit this.flagV = 0x8000; // PSW V bit
this.flagZ = 0xffff; // ~ PSW Z bit (TODO: Why is Z clear instead of set like all other flags?) this.flagZ = 0xffff; // ~ PSW Z bit (TODO: Why do we clear instead of set Z, like other flags?)
this.flagN = 0x8000; // PSW N bit this.flagN = 0x8000; // PSW N bit
this.regPSW = 0xf; // PSW other bits (TODO: What's the point of setting the flag bits here, too?) this.regPSW = 0x000f; // PSW other bits (TODO: What's the point of setting the flag bits here, too?)
this.regOp = -1; // current opcode
this.regsGen = [ // General R0 - R7 this.regsGen = [ // General R0 - R7
0, 0, 0, 0, 0, 0, 0, this.resetAddr 0, 0, 0, 0, 0, 0, 0, this.resetAddr
]; ];
@ -140,22 +139,14 @@ CPUStatePDP11.prototype.initRegs = function()
this.regsAltStack = [ // Alternate R6 stack pointers (kernel, super, illegal, user) this.regsAltStack = [ // Alternate R6 stack pointers (kernel, super, illegal, user)
0, 0, 0, 0 0, 0, 0, 0
]; ];
this.memory = []; // Main memory (words) this.regSL = 0xff; // 177774
this.interruptQueue = []; // List of interrupts pending this.regPIR = 0; // 177772
this.pir = 0; this.regCPUErr = 0; // 177766
this.runState = 0; // 0=run, 1=step, 2=wait, 3=run this.MMR0 = 0; // 177572
this.loopRate = 9999; // instructions we can execute in 12ms this.MMR1 = 0; // 177574
this.priorityReview = 2; // flag to mark if we need to check priority change this.MMR2 = 0; // 177576
this.stackLimit = 0xff; this.MMR3 = 0; // 172516
this.opFlags = 0; this.mmuMode = 0; // current memory management mode (see PDP11.MODE.KERNEL | SUPER | UNUSED | USER)
this.trapPSW = -1;
this.CPU_Error = 0;
this.cpuType = 70;
this.MMR0 = 0;
this.MMR1 = 0;
this.MMR2 = 0;
this.MMR3 = 0;
this.mmuMode = 0; // current memory management mode (0=kernel,1=super,2=undefined,3=user)
this.mmuEnable = 0; // MMU enabled for PDP11.ACCESS.READ or PDP11.ACCESS.WRITE this.mmuEnable = 0; // MMU enabled for PDP11.ACCESS.READ or PDP11.ACCESS.WRITE
this.mmuLastMode = 0; this.mmuLastMode = 0;
this.mmuLastPage = 0; this.mmuLastPage = 0;
@ -176,6 +167,16 @@ CPUStatePDP11.prototype.initRegs = function()
this.controlReg = [ // various control registers we don't really care about this.controlReg = [ // various control registers we don't really care about
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
]; ];
this.regOp = -1; // current opcode
this.opFlags = 0;
this.cpuType = 70;
this.trapPSW = -1;
this.interruptQueue = []; // List of interrupts pending
this.runState = 0; // 0=run, 1=step, 2=wait, 3=run
this.loopRate = 9999; // instructions we can execute in 12ms
this.priorityReview = 2; // flag to mark if we need to check priority change
}; };
/** /**
@ -185,10 +186,10 @@ CPUStatePDP11.prototype.initRegs = function()
*/ */
CPUStatePDP11.prototype.resetRegs = function() CPUStatePDP11.prototype.resetRegs = function()
{ {
this.stackLimit = 0xff; this.regSL = 0xff;
this.CPU_Error = 0; this.regCPUErr = 0;
this.interruptQueue = []; this.interruptQueue = [];
this.pir = 0; this.regPIR = 0;
this.MMR0 = this.MMR1 = this.MMR2 = this.MMR3 = this.mmuFrozen = this.mmuEnable = 0; this.MMR0 = this.MMR1 = this.MMR2 = this.MMR3 = this.mmuFrozen = this.mmuEnable = 0;
this.mmuMask[0] = this.mmuMask[1] = this.mmuMask[3] = 0x7; this.mmuMask[0] = this.mmuMask[1] = this.mmuMask[3] = 0x7;
this.mmuLastMode = 0; this.mmuLastMode = 0;
@ -739,7 +740,7 @@ CPUStatePDP11.prototype.trap = function(vector, reason)
if ((newPSW = this.readWordByVirtual(((vector + 2) & 0xffff) | 0x10000)) >= 0) { if ((newPSW = this.readWordByVirtual(((vector + 2) & 0xffff) | 0x10000)) >= 0) {
this.setPSW((newPSW & 0xcfff) | ((this.trapPSW >> 2) & 0x3000)); // set new this.PSW with previous mode this.setPSW((newPSW & 0xcfff) | ((this.trapPSW >> 2) & 0x3000)); // set new this.PSW with previous mode
if (doubleTrap) { if (doubleTrap) {
this.CPU_Error |= 4; this.regCPUErr |= PDP11.CPUERR.RED;
this.regsGen[6] = 4; this.regsGen[6] = 4;
} }
if (this.pushWord(this.trapPSW) >= 0 && this.pushWord(this.regsGen[7]) >= 0) { if (this.pushWord(this.trapPSW) >= 0 && this.pushWord(this.regsGen[7]) >= 0) {
@ -763,7 +764,7 @@ CPUStatePDP11.prototype.mapUnibus = function(unibusAddress)
{ {
var idx = (unibusAddress >> 13) & 0x1f; var idx = (unibusAddress >> 13) & 0x1f;
if (idx < 31) { if (idx < 31) {
if (this.MMR3 & 0x20) { if (this.MMR3 & PDP11.MMR3.UNIBUS_MAP) {
unibusAddress = (this.unibusMap[idx] + (unibusAddress & 0x1ffe)) & 0x3ffffe; unibusAddress = (this.unibusMap[idx] + (unibusAddress & 0x1ffe)) & 0x3ffffe;
if (unibusAddress >= BusPDP11.IOPAGE_UNIBUS && unibusAddress < BusPDP11.IOPAGE_22BIT) this.panic(898); if (unibusAddress >= BusPDP11.IOPAGE_UNIBUS && unibusAddress < BusPDP11.IOPAGE_22BIT) this.panic(898);
} }
@ -832,7 +833,7 @@ CPUStatePDP11.prototype.mapVirtualToPhysical = function(virtualAddress, accessFl
physicalAddress |= BusPDP11.IOPAGE_22BIT; physicalAddress |= BusPDP11.IOPAGE_22BIT;
} else { // no max_memory check in 16 bit mode } else { // no max_memory check in 16 bit mode
if ((physicalAddress & 1) && !(accessFlags & PDP11.ACCESS.BYTE)) { if ((physicalAddress & 1) && !(accessFlags & PDP11.ACCESS.BYTE)) {
this.CPU_Error |= 0x40; this.regCPUErr |= PDP11.CPUERR.ODDADDR;
this.trap(PDP11.TRAP.BUS_ERROR, 22); this.trap(PDP11.TRAP.BUS_ERROR, 22);
} }
} }
@ -852,11 +853,11 @@ CPUStatePDP11.prototype.mapVirtualToPhysical = function(virtualAddress, accessFl
} }
if (physicalAddress < BusPDP11.IOPAGE_UNIBUS) { if (physicalAddress < BusPDP11.IOPAGE_UNIBUS) {
if (physicalAddress >= BusPDP11.MAX_MEMORY) { if (physicalAddress >= BusPDP11.MAX_MEMORY) {
this.CPU_Error |= 0x20; this.regCPUErr |= PDP11.CPUERR.NOMEMORY;
this.trap(PDP11.TRAP.BUS_ERROR, 24); // KB11-EM does this after ABORT handling - KB11-CM before this.trap(PDP11.TRAP.BUS_ERROR, 24); // KB11-EM does this after ABORT handling - KB11-CM before
} }
if ((physicalAddress & 1) && !(accessFlags & PDP11.ACCESS.BYTE)) { if ((physicalAddress & 1) && !(accessFlags & PDP11.ACCESS.BYTE)) {
this.CPU_Error |= 0x40; this.regCPUErr |= PDP11.CPUERR.ODDADDR;
this.trap(PDP11.TRAP.BUS_ERROR, 26); this.trap(PDP11.TRAP.BUS_ERROR, 26);
} }
} }
@ -1066,13 +1067,13 @@ CPUStatePDP11.prototype.pushWord = function(data)
if (!(this.MMR0 & 0xe000)) { if (!(this.MMR0 & 0xe000)) {
this.MMR1 = (this.MMR1 << 8) | 0xf6; this.MMR1 = (this.MMR1 << 8) | 0xf6;
} }
if ((!this.mmuMode) && virtualAddress <= this.stackLimit && virtualAddress > 4) { if ((!this.mmuMode) && virtualAddress <= this.regSL && virtualAddress > 4) {
if (virtualAddress <= this.stackLimit - 32) { if (virtualAddress <= this.regSL - 32) {
this.CPU_Error |= 4; // Red stack this.regCPUErr |= PDP11.CPUERR.RED;
this.regsGen[6] = 4; this.regsGen[6] = 4;
this.trap(PDP11.TRAP.BUS_ERROR, 32); this.trap(PDP11.TRAP.BUS_ERROR, 32);
} else { } else {
this.CPU_Error |= 8; // Yellow this.regCPUErr |= PDP11.CPUERR.YELLOW;
this.opFlags |= 4; this.opFlags |= 4;
} }
} }
@ -1123,13 +1124,13 @@ CPUStatePDP11.prototype.getVirtualByMode = function(addressMode, accessFlags)
case 1: // Mode 1: (R) case 1: // Mode 1: (R)
if (reg === 6 && (!this.mmuMode) && (accessFlags & PDP11.ACCESS.WRITE) && if (reg === 6 && (!this.mmuMode) && (accessFlags & PDP11.ACCESS.WRITE) &&
(this.regsGen[6] <= this.stackLimit || this.regsGen[6] >= 0xfffe)) { (this.regsGen[6] <= this.regSL || this.regsGen[6] >= 0xfffe)) {
if (this.regsGen[6] <= this.stackLimit - 32 || this.regsGen[6] >= 0xfffe) { if (this.regsGen[6] <= this.regSL - 32 || this.regsGen[6] >= 0xfffe) {
this.CPU_Error |= 4; // Red stack this.regCPUErr |= PDP11.CPUERR.RED;
this.regsGen[6] = 4; this.regsGen[6] = 4;
this.trap(PDP11.TRAP.BUS_ERROR, 36); this.trap(PDP11.TRAP.BUS_ERROR, 36);
} else { } else {
this.CPU_Error |= 8; // Yellow this.regCPUErr |= PDP11.CPUERR.YELLOW;
this.opFlags |= PDP11.OPFLAG.TRAP_SP; this.opFlags |= PDP11.OPFLAG.TRAP_SP;
} }
} }
@ -1207,13 +1208,13 @@ CPUStatePDP11.prototype.getVirtualByMode = function(addressMode, accessFlags)
this.MMR1 = (this.MMR1 << 8) | ((stepSize << 3) & 0xf8) | reg; this.MMR1 = (this.MMR1 << 8) | ((stepSize << 3) & 0xf8) | reg;
} }
if (reg === 6 && (!this.mmuMode) && (accessFlags & PDP11.ACCESS.WRITE) && stepSize <= 0 && if (reg === 6 && (!this.mmuMode) && (accessFlags & PDP11.ACCESS.WRITE) && stepSize <= 0 &&
(this.regsGen[6] <= this.stackLimit || this.regsGen[6] >= 0xfffe)) { (this.regsGen[6] <= this.regSL || this.regsGen[6] >= 0xfffe)) {
if (this.regsGen[6] <= this.stackLimit - 32) { if (this.regsGen[6] <= this.regSL - 32) {
this.CPU_Error |= 4; // Red stack this.regCPUErr |= PDP11.CPUERR.RED;
this.regsGen[6] = 4; this.regsGen[6] = 4;
this.trap(PDP11.TRAP.BUS_ERROR, 38); this.trap(PDP11.TRAP.BUS_ERROR, 38);
} else { } else {
this.CPU_Error |= 8; // Yellow this.regCPUErr |= PDP11.CPUERR.YELLOW;
this.opFlags |= PDP11.OPFLAG.TRAP_SP; this.opFlags |= PDP11.OPFLAG.TRAP_SP;
} }
} }
@ -1493,7 +1494,7 @@ CPUStatePDP11.prototype.stepCPU = function(nMinCycles)
} else { } else {
this.priorityReview = 0; this.priorityReview = 0;
j = -1; j = -1;
savePSW = this.pir & 0xe0; savePSW = this.regPIR & 0xe0;
if ((i = this.interruptQueue.length) > 0) { if ((i = this.interruptQueue.length) > 0) {
while (i-- > 0) { while (i-- > 0) {
if (this.interruptQueue[i].delay > 0) { if (this.interruptQueue[i].delay > 0) {
@ -2483,7 +2484,7 @@ CPUStatePDP11.prototype.stepCPU = function(nMinCycles)
case 0x0: /*0000000*/ // HALT 000000 case 0x0: /*0000000*/ // HALT 000000
//LOG_INSTRUCTION(opCode, 0, "HALT"); //LOG_INSTRUCTION(opCode, 0, "HALT");
if (0xc000 & this.PSW) { if (0xc000 & this.PSW) {
this.CPU_Error |= 0x80; /*0200*/ this.regCPUErr |= PDP11.CPUERR.BADHALT;
this.trap(PDP11.TRAP.BUS_ERROR, 46); this.trap(PDP11.TRAP.BUS_ERROR, 46);
} else { } else {
this.runState = 3; // halt this.runState = 3; // halt

View file

@ -236,19 +236,168 @@ var PDP11 = {
ZERO: 0x1, // zero byte or word ZERO: 0x1, // zero byte or word
SIGNEXT: 0x2 // sign-extend a byte to a word SIGNEXT: 0x2 // sign-extend a byte to a word
}, },
CPUERR: {
RED: 0x0004, // red zone stack limit
YELLOW: 0x0008, // yellow zone stack limit
TIMEOUT: 0x0010, // UNIBUS timeout error
NOMEMORY: 0x0020, // non-existent memory error
ODDADDR: 0x0040, // odd word address error (as in non-even, not strange)
BADHALT: 0x0080 // HALT attempted in USER or SUPER modes
},
MMR0: {
ENABLED: 0x0001, // address relocation enabled
PAGE_NUM: 0x000E, // page number of last fault
PAGE_D: 0x0010, // last fault occurred in D space
PAGE_MODE: 0x0060, // processor mode as of last fault
COMPLETED: 0x0080, // last instruction completed
DSTMODE: 0x0100, // only destination mode references will be relocated (for diagnostic use)
MMU_TRAPS: 0x0200, // enable MMU traps
UNUSED: 0x0C00,
TRAP_MMU: 0x1000, // trap: MMU
ABORT_RO: 0x2000, // abort: read-only
ABORT_PL: 0x4000, // abort: page length
ABORT_NR: 0x8000 // abort: non-resident
},
MMR1: { // general purpose auto-inc/auto-dec register
REG1_NUM: 0x0007,
REG1_DELTA: 0x00F8,
REG2_NUM: 0x0700,
REG2_DELTA: 0xF800
},
MMR2: { // virtual program counter register
},
MMR3: { // mapping register
USER_D: 0x0001,
SUPER_D: 0x0002,
KERNEL_D: 0x0004,
MMU_22BIT: 0x0010,
UNIBUS_MAP: 0x0020 // UNIBUS map relocation enabled
},
/* /*
* Assorted special (UNIBUS) addresses * Assorted special (UNIBUS) addresses
* *
* Within the PDP-11's 18-bit address space, of the 0x40000 possible addresses, the top 8Kb (0x2000)
* is called the IOPAGE and is reserved for CPU and I/O registers. The IOPAGE spans 0x3E000-0x3FFFF.
*
* To map UNIBUS addresses to 22-bit physical addresses, a UNIBUS relocation map is used. It consists
* of 31 double-word registers that each hold a 22-bit base address. When UNIBUS relocation is enabled,
* the top 5 bits of an address select one of the 31 mapping registers, and the bottom 13 bits are then
* added to the contents of the selected mapping register.
*
* ES6 ALERT: By using octal constants, this is the first place I'm dipping my toe into ECMAScript 6 waters. * ES6 ALERT: By using octal constants, this is the first place I'm dipping my toe into ECMAScript 6 waters.
* If you're loading this raw source code into your browser, then by now (2016) you're almost certainly using * If you're loading this raw source code into your browser, then by now (2016) you're almost certainly using
* an ES6-aware browser. Everyone else should be using code compiled by Google's Closure Compiler, which * an ES6-aware browser. Everyone else should be using code compiled by Google's Closure Compiler, which
* automatically produces code that's backward-compatible with ES5.1 (for example, octal constants are converted * automatically produces code that's backward-compatible with ES5.1 (for example, octal constants are
* to decimal values). * converted to decimal values).
* *
* For more details: https://github.com/google/closure-compiler/wiki/ECMAScript6 * For more details: https://github.com/google/closure-compiler/wiki/ECMAScript6
*/ */
UNIBUS: { // 22-bit 18-bit 16-bit 22-bit Description UNIBUS: { //16-bit 18-bit 22-bit Hex Description
PSW: 0o17777776, // 777776 177776 0x3FFFFE PSW PSW: 0o177776, // 777776 17777776 0x3FFFFE PSW
SL: 0o177774, // Stack Limit
PIR: 0o177772, // Program Interrupt Request
MB: 0o177770, // Microprogram break
CPUERR: 0o177766, // CPU error
MMR0: 0o177572, // 777572 17777572
MMR1: 0o177574, // 777574 17777574
MMR2: 0o177576, // 777576 17777576
MMR3: 0o172516, // 772516 17772516
UISDR0: 0o177600, // User I Space Descriptor Register 0
UISDR1: 0o177602, // User I Space Descriptor Register 1
UISDR2: 0o177604, // User I Space Descriptor Register 2
UISDR3: 0o177606, // User I Space Descriptor Register 3
UISDR4: 0o177610, // User I Space Descriptor Register 4
UISDR5: 0o177612, // User I Space Descriptor Register 5
UISDR6: 0o177614, // User I Space Descriptor Register 6
UISDR7: 0o177616, // User I Space Descriptor Register 7
UDSDR0: 0o177620, // User D Space Descriptor Register 0
UDSDR1: 0o177622, // User D Space Descriptor Register 1
UDSDR2: 0o177624, // User D Space Descriptor Register 2
UDSDR3: 0o177626, // User D Space Descriptor Register 3
UDSDR4: 0o177630, // User D Space Descriptor Register 4
UDSDR5: 0o177632, // User D Space Descriptor Register 5
UDSDR6: 0o177634, // User D Space Descriptor Register 6
UDSDR7: 0o177636, // User D Space Descriptor Register 7
UISAR0: 0o177640, // User I Space Address Register 0
UISAR1: 0o177642, // User I Space Address Register 1
UISAR2: 0o177644, // User I Space Address Register 2
UISAR3: 0o177646, // User I Space Address Register 3
UISAR4: 0o177650, // User I Space Address Register 4
UISAR5: 0o177652, // User I Space Address Register 5
UISAR6: 0o177654, // User I Space Address Register 6
UISAR7: 0o177656, // User I Space Address Register 7
UDSAR0: 0o177660, // User D Space Address Register 0
UDSAR1: 0o177662, // User D Space Address Register 1
UDSAR2: 0o177664, // User D Space Address Register 2
UDSAR3: 0o177666, // User D Space Address Register 3
UDSAR4: 0o177670, // User D Space Address Register 4
UDSAR5: 0o177672, // User D Space Address Register 5
UDSAR6: 0o177674, // User D Space Address Register 6
UDSAR7: 0o177676, // User D Space Address Register 7
SISDR0: 0o172200, // Supervisor I Space Descriptor Register 0
SISDR1: 0o172202, // Supervisor I Space Descriptor Register 1
SISDR2: 0o172204, // Supervisor I Space Descriptor Register 2
SISDR3: 0o172206, // Supervisor I Space Descriptor Register 3
SISDR4: 0o172210, // Supervisor I Space Descriptor Register 4
SISDR5: 0o172212, // Supervisor I Space Descriptor Register 5
SISDR6: 0o172214, // Supervisor I Space Descriptor Register 6
SISDR7: 0o172216, // Supervisor I Space Descriptor Register 7
SDSDR0: 0o172220, // Supervisor D Space Descriptor Register 0
SDSDR1: 0o172222, // Supervisor D Space Descriptor Register 1
SDSDR2: 0o172224, // Supervisor D Space Descriptor Register 2
SDSDR3: 0o172226, // Supervisor D Space Descriptor Register 3
SDSDR4: 0o172230, // Supervisor D Space Descriptor Register 4
SDSDR5: 0o172232, // Supervisor D Space Descriptor Register 5
SDSDR6: 0o172234, // Supervisor D Space Descriptor Register 6
SDSDR7: 0o172236, // Supervisor D Space Descriptor Register 7
SISAR0: 0o172240, // Supervisor I Space Address Register 0
SISAR1: 0o172242, // Supervisor I Space Address Register 1
SISAR2: 0o172244, // Supervisor I Space Address Register 2
SISAR3: 0o172246, // Supervisor I Space Address Register 3
SISAR4: 0o172250, // Supervisor I Space Address Register 4
SISAR5: 0o172252, // Supervisor I Space Address Register 5
SISAR6: 0o172254, // Supervisor I Space Address Register 6
SISAR7: 0o172256, // Supervisor I Space Address Register 7
SDSAR0: 0o172260, // Supervisor D Space Address Register 0
SDSAR1: 0o172262, // Supervisor D Space Address Register 1
SDSAR2: 0o172264, // Supervisor D Space Address Register 2
SDSAR3: 0o172266, // Supervisor D Space Address Register 3
SDSAR4: 0o172270, // Supervisor D Space Address Register 4
SDSAR5: 0o172272, // Supervisor D Space Address Register 5
SDSAR6: 0o172274, // Supervisor D Space Address Register 6
SDSAR7: 0o172276, // Supervisor D Space Address Register 7
KISDR0: 0o172300, // Kernel I Space Descriptor Register 0
KISDR1: 0o172302, // Kernel I Space Descriptor Register 1
KISDR2: 0o172304, // Kernel I Space Descriptor Register 2
KISDR3: 0o172306, // Kernel I Space Descriptor Register 3
KISDR4: 0o172310, // Kernel I Space Descriptor Register 4
KISDR5: 0o172312, // Kernel I Space Descriptor Register 5
KISDR6: 0o172314, // Kernel I Space Descriptor Register 6
KISDR7: 0o172316, // Kernel I Space Descriptor Register 7
KDSDR0: 0o172320, // Kernel D Space Descriptor Register 0
KDSDR1: 0o172322, // Kernel D Space Descriptor Register 1
KDSDR2: 0o172324, // Kernel D Space Descriptor Register 2
KDSDR3: 0o172326, // Kernel D Space Descriptor Register 3
KDSDR4: 0o172330, // Kernel D Space Descriptor Register 4
KDSDR5: 0o172332, // Kernel D Space Descriptor Register 5
KDSDR6: 0o172334, // Kernel D Space Descriptor Register 6
KDSDR7: 0o172336, // Kernel D Space Descriptor Register 7
KISAR0: 0o172340, // Kernel I Space Address Register 0
KISAR1: 0o172342, // Kernel I Space Address Register 1
KISAR2: 0o172344, // Kernel I Space Address Register 2
KISAR3: 0o172346, // Kernel I Space Address Register 3
KISAR4: 0o172350, // Kernel I Space Address Register 4
KISAR5: 0o172352, // Kernel I Space Address Register 5
KISAR6: 0o172354, // Kernel I Space Address Register 6
KISAR7: 0o172356, // Kernel I Space Address Register 7
KDSAR0: 0o172360, // Kernel D Space Address Register 0
KDSAR1: 0o172362, // Kernel D Space Address Register 1
KDSAR2: 0o172364, // Kernel D Space Address Register 2
KDSAR3: 0o172366, // Kernel D Space Address Register 3
KDSAR4: 0o172370, // Kernel D Space Address Register 4
KDSAR5: 0o172372, // Kernel D Space Address Register 5
KDSAR6: 0o172374, // Kernel D Space Address Register 6
KDSAR7: 0o172376, // Kernel D Space Address Register 7
} }
}; };

View file

@ -204,7 +204,7 @@ DevicePDP11.prototype.initBus = function(cmp, bus, cpu, dbg)
* readPSW(addr) * readPSW(addr)
* *
* @this {DevicePDP11} * @this {DevicePDP11}
* @param {number} addr (ie, PDP11.UNIBUS.PSW) * @param {number} addr (eg, PDP11.UNIBUS.PSW)
* @return {number} * @return {number}
*/ */
DevicePDP11.prototype.readPSW = function(addr) DevicePDP11.prototype.readPSW = function(addr)
@ -697,7 +697,7 @@ DevicePDP11.prototype.insertData = function(original, physicalAddress, data, byt
if (physicalAddress & 1) { if (physicalAddress & 1) {
if (!byteFlag) { if (!byteFlag) {
//log.push("TRAP 4 201 " + physicalAddress.toString(8) + " " + data.toString(8)); //log.push("TRAP 4 201 " + physicalAddress.toString(8) + " " + data.toString(8));
return this.cpu.trap(4, 122); return this.cpu.trap(PDP11.TRAP.BUS_ERROR, 122);
} }
if (data >= 0) { if (data >= 0) {
data = ((data << 8) & 0xff00) | (original & 0xff); data = ((data << 8) & 0xff00) | (original & 0xff);
@ -821,7 +821,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
case 0x3FFFC0: /*017777700*/ // 017777700 - 017777777 case 0x3FFFC0: /*017777700*/ // 017777700 - 017777777
switch (physicalAddress & ~1) { switch (physicalAddress & ~1) {
/* /*
* Superseded by UNIBUS_TABLE (much more of this code will be commented out * Superseded by UNIBUS_TABLE (more of this code will be commented out
* as it is replaced by read/write handlers in the UNIBUS_TABLE; stay tuned). * as it is replaced by read/write handlers in the UNIBUS_TABLE; stay tuned).
* *
case 0x3FFFFE: // 017777776 // PSW case 0x3FFFFE: // 017777776 // PSW
@ -840,19 +840,19 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
*/ */
case 0x3FFFFC: /*017777774*/ // stack limit case 0x3FFFFC: /*017777774*/ // stack limit
if (data < 0) { if (data < 0) {
result = cpu.stackLimit & 0xff00; result = cpu.regSL & 0xff00;
} else { } else {
if (physicalAddress & 1) { if (physicalAddress & 1) {
data = data << 8; data = data << 8;
} }
cpu.stackLimit = data | 0xff; cpu.regSL = data | 0xff;
result = 0; result = 0;
} }
//log.push("stacklimit access "+cpu.stackLimit.toString(8)); //log.push("stack limit access "+cpu.regSL.toString(8));
break; break;
case 0x3FFFFA: /*017777772*/ // PIR case 0x3FFFFA: /*017777772*/ // PIR
if (data < 0) { if (data < 0) {
result = cpu.pir; result = cpu.regPIR;
} else { } else {
if (physicalAddress & 1) { if (physicalAddress & 1) {
data = data << 8; data = data << 8;
@ -864,28 +864,28 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
result += 0x22; result += 0x22;
} while (idx >>= 1); } while (idx >>= 1);
} }
cpu.pir = result; cpu.regPIR = result;
cpu.priorityReview = 2; cpu.priorityReview = 2;
} }
break; break;
case 0x3FFFF6: /*017777766*/ // CPU error case 0x3FFFF6: /*017777766*/ // CPU error
if (cpu.cpuType !== 70) return cpu.trap(4, 222); if (cpu.cpuType !== 70) return cpu.trap(PDP11.TRAP.BUS_ERROR, 222);
if (data < 0) { if (data < 0) {
result = cpu.CPU_Error; result = cpu.regCPUErr;
} else { } else {
result = cpu.CPU_Error = 0; // Always writes as zero? result = cpu.regCPUErr = 0; // TODO: Always writes as zero?
} }
break; break;
case 0x3FFFF4: /*017777764*/ // System I/D case 0x3FFFF4: /*017777764*/ // System I/D
if (cpu.cpuType !== 70) return cpu.trap(4, 224); if (cpu.cpuType !== 70) return cpu.trap(PDP11.TRAP.BUS_ERROR, 224);
result = 1; result = 1;
break; break;
case 0x3FFFF2: /*017777762*/ // Upper size case 0x3FFFF2: /*017777762*/ // Upper size
if (cpu.cpuType !== 70) return cpu.trap(4, 226); if (cpu.cpuType !== 70) return cpu.trap(PDP11.TRAP.BUS_ERROR, 226);
result = 0; result = 0;
break; break;
case 0x3FFFF0: /*017777760*/ // Lower size case 0x3FFFF0: /*017777760*/ // Lower size
if (cpu.cpuType !== 70) return cpu.trap(4, 228); if (cpu.cpuType !== 70) return cpu.trap(PDP11.TRAP.BUS_ERROR, 228);
result = (BusPDP11.MAX_MEMORY >> 6) - 1; result = (BusPDP11.MAX_MEMORY >> 6) - 1;
break; break;
case 0x3FFFF8: /*017777770*/ // Microprogram break case 0x3FFFF8: /*017777770*/ // Microprogram break
@ -899,7 +899,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
case 0x3FFFE4: /*017777744*/ // Memory system error case 0x3FFFE4: /*017777744*/ // Memory system error
case 0x3FFFE2: /*017777742*/ // High error address case 0x3FFFE2: /*017777742*/ // High error address
case 0x3FFFE0: /*017777740*/ // Low error address case 0x3FFFE0: /*017777740*/ // Low error address
if (cpu.cpuType !== 70) return cpu.trap(4, 232); if (cpu.cpuType !== 70) return cpu.trap(PDP11.TRAP.BUS_ERROR, 232);
idx = (physicalAddress - 0x3FFFE0) /*017777740*/ >> 1; idx = (physicalAddress - 0x3FFFE0) /*017777740*/ >> 1;
if (data < 0) { if (data < 0) {
result = cpu.controlReg[idx]; result = cpu.controlReg[idx];
@ -968,8 +968,8 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
} }
return result; return result;
default: default:
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 124); return cpu.trap(PDP11.TRAP.BUS_ERROR, 124);
} }
break; break;
case 0x3FFF80: /*017777600*/ // 017777600 - 017777677 MMU user mode Map case 0x3FFF80: /*017777600*/ // 017777600 - 017777677 MMU user mode Map
@ -1121,8 +1121,8 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
} }
break; break;
default: default:
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 126); return cpu.trap(PDP11.TRAP.BUS_ERROR, 126);
} }
break; break;
case 0x3FFF00: /*017777400*/ // 017777400 - 017777477 case 0x3FFF00: /*017777400*/ // 017777400 - 017777477
@ -1164,8 +1164,8 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
if (result >= 0) rk11.rkdb = result; if (result >= 0) rk11.rkdb = result;
break; break;
default: default:
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 128); return cpu.trap(PDP11.TRAP.BUS_ERROR, 128);
} }
break; break;
case 0x3FFDC0: /*017776700*/ // 017777600 - 017777677 rp11 controller case 0x3FFDC0: /*017776700*/ // 017777600 - 017777677 rp11 controller
@ -1269,8 +1269,8 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
if (result >= 0) rp11.rpcs3 = result; if (result >= 0) rp11.rpcs3 = result;
break; break;
default: default:
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 132); return cpu.trap(PDP11.TRAP.BUS_ERROR, 132);
} }
break; break;
case 0x3FF900: /*017774400*/ // 017774400 - 017774477 case 0x3FF900: /*017774400*/ // 017774400 - 017774477
@ -1308,8 +1308,8 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
} }
break; break;
default: default:
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 134); return cpu.trap(PDP11.TRAP.BUS_ERROR, 134);
} }
break; break;
case 0x3FF540: /*017772500*/ // 017772500 - 017772577 case 0x3FF540: /*017772500*/ // 017772500 - 017772577
@ -1334,8 +1334,8 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
} }
break; break;
default: default:
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 136); return cpu.trap(PDP11.TRAP.BUS_ERROR, 136);
} }
break; break;
case 0x3FF4C0: /*017772300*/ // 017772300 - 017772377 MMU kernel mode Map case 0x3FF4C0: /*017772300*/ // 017772300 - 017772377 MMU kernel mode Map
@ -1356,7 +1356,7 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
break; break;
case 0x3FF0C0: /*017770300*/ // 017770300 - 017770377 Unibus Map case 0x3FF0C0: /*017770300*/ // 017770300 - 017770377 Unibus Map
case 0x3FF080: /*017770200*/ // 017770200 - 017770277 Unibus Map case 0x3FF080: /*017770200*/ // 017770200 - 017770277 Unibus Map
if (cpu.cpuType !== 70) return cpu.trap(4, 234); if (cpu.cpuType !== 70) return cpu.trap(PDP11.TRAP.BUS_ERROR, 234);
idx = (physicalAddress >> 2) & 0x1f; idx = (physicalAddress >> 2) & 0x1f;
result = cpu.unibusMap[idx]; result = cpu.unibusMap[idx];
if (physicalAddress & 0x2) /*02*/ result = result >> 16; if (physicalAddress & 0x2) /*02*/ result = result >> 16;
@ -1384,13 +1384,13 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
idx = (physicalAddress >> 1) & 0xff; idx = (physicalAddress >> 1) & 0xff;
result = DevicePDP11.M9312[idx]; result = DevicePDP11.M9312[idx];
} else { } else {
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 138); return cpu.trap(PDP11.TRAP.BUS_ERROR, 138);
} }
break; break;
default: default:
cpu.CPU_Error |= 0x10; cpu.regCPUErr |= PDP11.CPUERR.TIMEOUT;
return cpu.trap(4, 142); return cpu.trap(PDP11.TRAP.BUS_ERROR, 142);
} }
if (byteFlag && result >= 0) { // make any required byte adjustment if (byteFlag && result >= 0) { // make any required byte adjustment
if ((physicalAddress & 1)) { if ((physicalAddress & 1)) {
@ -1405,8 +1405,12 @@ DevicePDP11.prototype.access = function(physicalAddress, data, byteFlag)
return result; return result;
}; };
DevicePDP11.UNIBUS_TABLE = {}; /*
DevicePDP11.UNIBUS_TABLE[PDP11.UNIBUS.PSW] = [null, null, DevicePDP11.prototype.readPSW, DevicePDP11.prototype.writePSW]; * ES6 ALERT: As you can see below, I've finally started using computed property names.
*/
DevicePDP11.UNIBUS_TABLE = {
[PDP11.UNIBUS.PSW]: [null, null, DevicePDP11.prototype.readPSW, DevicePDP11.prototype.writePSW]
};
/** /**
* DevicePDP11.init() * DevicePDP11.init()

View file

@ -28,192 +28,192 @@ function Gb(a,b,d,c,f){for(var e=b,h=d,g=e>>>a.Y;0<h&&g<a.R.length;){var k=a.R[g
l.Hb=function(a){return this.R[(a&this.H)>>>this.Y].sb(a&this.g,a)};l.Ha=function(a){var b=a&this.g,d=(a&this.H)>>>this.Y;return b!=this.g?this.R[d].vc(b,a):this.R[d++].sb(b,a)|this.R[d&this.F].sb(0,a+1)<<8};function Kb(a,b){var d=b&a.g,c=(b&a.H)>>>a.Y;return d!=a.g?a.R[c].hc(d,b):a.R[c++].Ob(d,b)|a.R[c&a.F].Ob(0,b+1)<<8}l.bc=function(a,b){this.R[(a&this.H)>>>this.Y].xb(a&this.g,b&255,a)}; l.Hb=function(a){return this.R[(a&this.H)>>>this.Y].sb(a&this.g,a)};l.Ha=function(a){var b=a&this.g,d=(a&this.H)>>>this.Y;return b!=this.g?this.R[d].vc(b,a):this.R[d++].sb(b,a)|this.R[d&this.F].sb(0,a+1)<<8};function Kb(a,b){var d=b&a.g,c=(b&a.H)>>>a.Y;return d!=a.g?a.R[c].hc(d,b):a.R[c++].Ob(d,b)|a.R[c&a.F].Ob(0,b+1)<<8}l.bc=function(a,b){this.R[(a&this.H)>>>this.Y].xb(a&this.g,b&255,a)};
l.jc=function(a,b){var d=a&this.g,c=(a&this.H)>>>this.Y;d!=this.g?this.R[c].Bc(d,b&65535,a):(this.R[c++].xb(d,b&255,a),this.R[c&this.F].xb(0,b>>8&255,a+1))};function Lb(a){for(var b=0,d=[],c=0;c<a.C;c++){var f=a.R[c];if(f.Wa||f.Kc){d[b++]=c;var e=b++;if(f=f.save()){for(var h=0,g=0,k=[];h<f.length;){for(var m=f[h],n=h+1;n<f.length&&f[n]===m;)n++;k[g++]=n-h;k[g++]=m;h=n}k.length<f.length&&(f=k)}d[e]=f}}return d}function Ib(a,b,d){t("Memory block error ("+a+": "+r(b)+","+r(d)+")");return!1} l.jc=function(a,b){var d=a&this.g,c=(a&this.H)>>>this.Y;d!=this.g?this.R[c].Bc(d,b&65535,a):(this.R[c++].xb(d,b&255,a),this.R[c&this.F].xb(0,b>>8&255,a+1))};function Lb(a){for(var b=0,d=[],c=0;c<a.C;c++){var f=a.R[c];if(f.Wa||f.Kc){d[b++]=c;var e=b++;if(f=f.save()){for(var h=0,g=0,k=[];h<f.length;){for(var m=f[h],n=h+1;n<f.length&&f[n]===m;)n++;k[g++]=n-h;k[g++]=m;h=n}k.length<f.length&&(f=k)}d[e]=f}}return d}function Ib(a,b,d){t("Memory block error ("+a+": "+r(b)+","+r(d)+")");return!1}
function Mb(a){u.call(this,"Device",a,Mb);this.N={gc:[],Ia:0,qa:128,g:127,Ic:0};this.g={data:0,gd:0,pb:20,dd:0};this.F={Ib:0,K:0};this.C={Qb:2496,la:0,S:128,Rb:0,Pb:0,ta:0,wc:0,na:[],cb:[406,406,406,406],Z:[12,12,12,12]};this.G={K:129,Fb:0,da:0,Ya:0,Ua:0,ab:0,na:[],Z:[40,40,40,40],cb:[1024,1024,512,512],Ec:[157,157,29,29]};this.J={b:[8210,8208,8210,8226],Z:[22,22,22,50],bb:[19,19,19,32],cc:[815,411,815,630],na:[],U:2176,vb:0,tb:0,Ca:[0,0,0,0,0,0,0,0],Ba:0,pa:[4544,4544,4544,4544,4544,4544,4544,4544], function Mb(a){u.call(this,"Device",a,Mb);this.N={gc:[],Ia:0,qa:128,g:127,Ic:0};this.g={data:0,gd:0,pb:20,dd:0};this.F={Ib:0,K:0};this.C={Qb:2496,la:0,S:128,Rb:0,Pb:0,ta:0,wc:0,na:[],cb:[406,406,406,406],Z:[12,12,12,12]};this.G={K:129,Fb:0,da:0,Ya:0,Ua:0,ab:0,na:[],Z:[40,40,40,40],cb:[1024,1024,512,512],Ec:[157,157,29,29]};this.J={b:[8210,8208,8210,8226],Z:[22,22,22,50],bb:[19,19,19,32],cc:[815,411,815,630],na:[],U:2176,vb:0,tb:0,Ca:[0,0,0,0,0,0,0,0],Ba:0,pa:[4544,4544,4544,4544,4544,4544,4544,4544],
ub:[0,0,0,0,0,0,0,0],kb:0,bd:[0,0,0,0,0,0,0,0],xc:0,yc:[0,0,0,0,0,0,0,0],I:[0,0,0,0,0,0,0,0],cd:[1,2,3,4,5,6,7,8],zc:[0,0,0,0,0,0,0,0],Pa:[0,0,0,0,0,0,0,0],ac:[0,0,0,0,0,0,0,0],$c:[0,0,0,0,0,0,0,0],ad:[0,0,0,0,0,0,0,0],Yc:[0,0,0,0,0,0,0,0],Zc:[0,0,0,0,0,0,0,0],$a:0,ic:0}}w(Mb); ub:[0,0,0,0,0,0,0,0],kb:0,bd:[0,0,0,0,0,0,0,0],xc:0,yc:[0,0,0,0,0,0,0,0],I:[0,0,0,0,0,0,0,0],cd:[1,2,3,4,5,6,7,8],zc:[0,0,0,0,0,0,0,0],Qa:[0,0,0,0,0,0,0,0],ac:[0,0,0,0,0,0,0,0],$c:[0,0,0,0,0,0,0,0],ad:[0,0,0,0,0,0,0,0],Yc:[0,0,0,0,0,0,0,0],Zc:[0,0,0,0,0,0,0,0],$a:0,ic:0}}w(Mb);
var Yb=[4127,448,4191,450,4383,452,2591,454,21983,32768,65534,13791,16384,65534,770,2719,454,2591,65534,257,0,2566,33028,34051,33282,1281,33537,0,2758,32771,770,1025,1793,0,3078,33794,34305,513,0,5574,43690,4480,4097,4162,4227,4292,4357,57665,1281,769,0,3138,34305,1281,0,24707,2691,2627,24769,34561,1793,0,3076,20739,24899,2691,34562,2753,1281,0,2624,33537,0,16385,24641,1537,1793,0,193,8279,21589,516,12549,1538,2629,513,0,38336,65281,32769,0,32258,2561,2689,32258,3008,514,3009,769,0,5574,510,2551, var Yb=[4127,448,4191,450,4383,452,2591,454,21983,32768,65534,13791,16384,65534,770,2719,454,2591,65534,257,0,2566,33028,34051,33282,1281,33537,0,2758,32771,770,1025,1793,0,3078,33794,34305,513,0,5574,43690,4480,4097,4162,4227,4292,4357,57665,1281,769,0,3138,34305,1281,0,24707,2691,2627,24769,34561,1793,0,3076,20739,24899,2691,34562,2753,1281,0,2624,33537,0,16385,24641,1537,1793,0,193,8279,21589,516,12549,1538,2629,513,0,38336,65281,32769,0,32258,2561,2689,32258,3008,514,3009,769,0,5574,510,2551,
2,0,9678,208,769,0,5582,226,135,0,2598,5606,236,2,0,95,242,128,5573,57344,2591,6,5599,256,4,5574,510,3045,5599,460,76,2591,78,5571,65510,5579,12,5570,512,4224,4104,3024,8197,33788,4224,4609,8193,769,0,2640,8197,33785,6145,2625,8193,769,0,8194,761,2574,5572,43690,5579,24,5568,2048,5570,512,2628,4360,2632,2632,8708,769,0,3103,65514,34562,0,305,35406,754,258,119,65160,3024,32403,5579,36,5568,3072,35446,1,740,5570,512,4224,4104,3024,8197,33788,5569,3,2574,3039,454,528,5582,24,4224,2632,2632,8200,769, 2,0,9678,208,769,0,5582,226,135,0,2598,5606,236,2,0,95,242,128,5573,57344,2591,6,5599,256,4,5574,510,3045,5599,460,76,2591,78,5571,65510,5579,12,5570,512,4224,4104,3024,8197,33788,4224,4609,8193,769,0,2640,8197,33785,6145,2625,8193,769,0,8194,761,2574,5572,43690,5579,24,5568,2048,5570,512,2628,4360,2632,2632,8708,769,0,3103,65514,34562,0,305,35406,754,258,119,65160,3024,32403,5579,36,5568,3072,35446,1,740,5570,512,4224,4104,3024,8197,33788,5569,3,2574,3039,454,528,5582,24,4224,2632,2632,8200,769,
0,3024,3103,65514,34562,0,264,8197,33779,5003,2574,32337,260,0,258,5579,12,6080,448,6081,450,6084,452,116,2,6084,65400,17860,65024,21956,62976,38848,65401,3200,161,76,0,16944,10797];l=Mb.prototype; 0,3024,3103,65514,34562,0,264,8197,33779,5003,2574,32337,260,0,258,5579,12,6080,448,6081,450,6084,452,116,2,6084,65400,17860,65024,21956,62976,38848,65401,3200,161,76,0,16944,10797];l=Mb.prototype;
l.Xa=function(a,b,d,c){this.H=b;this.b=d;this.I=c;a=Zb;for(var f in a){var e=a[f];d=b;c=+f;for(var h=e[0]?e[0].bind(this):null,g=e[1]?e[1].bind(this):null,k=e[2]?e[2].bind(this):null,e=e[3]?e[3].bind(this):null,m=+f;m<=c;m+=2){var n=m&8191;void 0!==d.Ta[n]?t("I/O address already registered: "+r(d.P+n,8,!0)):d.Ta[n]=[h,g,k,e,!1]}}f=this.Dc.bind(this);b.J=this.reset.bind(this);b.Gb=f;A(this)};l.Uc=function(){return $b(this.b)};l.fd=function(a){ac(this.b,a&-1809|$b(this.b)&1808);this.b.V|=128}; l.Xa=function(a,b,d,c){this.H=b;this.b=d;this.I=c;a=Zb;for(var f in a){var e=a[f];d=b;c=+f;for(var h=e[0]?e[0].bind(this):null,g=e[1]?e[1].bind(this):null,k=e[2]?e[2].bind(this):null,e=e[3]?e[3].bind(this):null,m=+f;m<=c;m+=2){var n=m&8191;void 0!==d.Ta[n]?t("I/O address already registered: "+r(d.P+n,8,!0)):d.Ta[n]=[h,g,k,e,!1]}}f=this.Dc.bind(this);b.J=this.reset.bind(this);b.Gb=f;A(this)};l.Uc=function(){return $b(this.b)};l.fd=function(a){ac(this.b,a&-1809|$b(this.b)&1808);this.b.V|=128};
function bc(a){var b=a.C,d,c,f,e=b.ta>>13&7;"undefined"===typeof b.na[e]&&(b.na[e]={cache:[],postProcess:a.Vc,drive:e,blocksize:256,mapped:0,maxblock:b.cb[e]*b.Z[e],url:"rk"+e+".dsk"});b.S&=-129;switch(b.S>>1&7){case 0:b.Qb=2496;b.la=0;b.S=128;b.ta=0;break;case 1:if((b.ta>>4&511)>=b.cb[e]){b.la|=32832;b.S|=49152;break}if((b.ta&15)>=b.Z[e]){b.la|=32800;b.S|=49152;break}d=(b.ta>>4&511)*b.Z[e]+(b.ta&15);c=(b.S&48)<<12|b.Pb;f=65536-b.Rb&65535;cc(a,b.na[e],d,c,f);return;case 2:if((b.ta>>4&511)>=b.cb[e])b.la|= function bc(a){var b=a.C,d,c,f,e=b.ta>>13&7;"undefined"===typeof b.na[e]&&(b.na[e]={cache:[],postProcess:a.Vc,drive:e,blocksize:256,mapped:0,maxblock:b.cb[e]*b.Z[e],url:"rk"+e+".dsk"});b.S&=-129;switch(b.S>>1&7){case 0:b.Qb=2496;b.la=0;b.S=128;b.ta=0;break;case 1:if((b.ta>>4&511)>=b.cb[e]){b.la|=32832;b.S|=49152;break}if((b.ta&15)>=b.Z[e]){b.la|=32800;b.S|=49152;break}d=(b.ta>>4&511)*b.Z[e]+(b.ta&15);c=(b.S&48)<<12|b.Pb;f=65536-b.Rb&65535;cc(a,b.na[e],d,c,f);return;case 2:if((b.ta>>4&511)>=b.cb[e])b.la|=
32832,b.S|=49152;else if((b.ta&15)>=b.Z[e])b.la|=32800,b.S|=49152;else{d=(b.ta>>4&511)*b.Z[e]+(b.ta&15);c=(b.S&48)<<12|b.Pb;f=65536-b.Rb&65535;a.$b(b.na[e],d,c,f);return}}b.Qb=e<<13|b.Qb&8176|b.ta%9&15;I(a.b,20,160,144,function(){b.S=b.S&65534|128;return!!(b.S&64)})}l.Vc=function(a,b,d,c,f){var e=this.C;e.Pb=c&65535;e.S=e.S&-49|c>>12&48;e.Rb=65536-f&65535;switch(a){case 1:e.la|=33024;e.S|=49152;break;case 2:e.la|=33792,e.S|=49152}I(this.b,20,160,144,function(){e.S=e.S&65534|128;return!!(e.S&64)})}; 32832,b.S|=49152;else if((b.ta&15)>=b.Z[e])b.la|=32800,b.S|=49152;else{d=(b.ta>>4&511)*b.Z[e]+(b.ta&15);c=(b.S&48)<<12|b.Pb;f=65536-b.Rb&65535;a.Zb(b.na[e],d,c,f);return}}b.Qb=e<<13|b.Qb&8176|b.ta%9&15;I(a.b,20,160,144,function(){b.S=b.S&65534|128;return!!(b.S&64)})}l.Vc=function(a,b,d,c,f){var e=this.C;e.Pb=c&65535;e.S=e.S&-49|c>>12&48;e.Rb=65536-f&65535;switch(a){case 1:e.la|=33024;e.S|=49152;break;case 2:e.la|=33792,e.S|=49152}I(this.b,20,160,144,function(){e.S=e.S&65534|128;return!!(e.S&64)})};
function dc(a){var b=a.G,d,c,f,e=b.K>>8&3;b.K&=-2;"undefined"===typeof b.na[e]&&(b.na[e]={cache:[],postProcess:a.Wc,drive:e,blocksize:128,mapped:1,maxblock:b.cb[e]*b.Z[e],url:"rl"+e+".dsk"});switch(b.K>>1&7){case 2:b.Ya&8&&(b.K&=63);b.Ya=b.Ec[e]|b.ab&64;break;case 3:1==(b.da&3)&&(b.ab=b.da&4?b.ab+(b.da&65408)&65408|b.da<<2&64:b.ab-(b.da&65408)&65408|b.da<<2&64,b.da=b.ab);break;case 4:b.Ya=b.ab;break;case 5:if(b.da>>6>=b.cb[e]){b.K|=37888;break}if((b.da&63)>=b.Z[e]){b.K|=37888;break}d=(b.da>>6)*b.Z[e]+ function dc(a){var b=a.G,d,c,f,e=b.K>>8&3;b.K&=-2;"undefined"===typeof b.na[e]&&(b.na[e]={cache:[],postProcess:a.Wc,drive:e,blocksize:128,mapped:1,maxblock:b.cb[e]*b.Z[e],url:"rl"+e+".dsk"});switch(b.K>>1&7){case 2:b.Ya&8&&(b.K&=63);b.Ya=b.Ec[e]|b.ab&64;break;case 3:1==(b.da&3)&&(b.ab=b.da&4?b.ab+(b.da&65408)&65408|b.da<<2&64:b.ab-(b.da&65408)&65408|b.da<<2&64,b.da=b.ab);break;case 4:b.Ya=b.ab;break;case 5:if(b.da>>6>=b.cb[e]){b.K|=37888;break}if((b.da&63)>=b.Z[e]){b.K|=37888;break}d=(b.da>>6)*b.Z[e]+
(b.da&63);c=(b.Ua&63)<<16|b.Fb;f=65536-b.Ya&65535;cc(a,b.na[e],d,c,f);return;case 6:if(b.da>>6>=b.cb[e])b.K|=37888;else if((b.da&63)>=b.Z[e])b.K|=37888;else{d=(b.da>>6)*b.Z[e]+(b.da&63);c=(b.Ua&63)<<16|b.Fb;f=65536-b.Ya&65535;a.$b(b.na[e],d,c,f);return}}I(a.b,20,160,112,function(){b.K|=129;return!!(b.K&64)})} (b.da&63);c=(b.Ua&63)<<16|b.Fb;f=65536-b.Ya&65535;cc(a,b.na[e],d,c,f);return;case 6:if(b.da>>6>=b.cb[e])b.K|=37888;else if((b.da&63)>=b.Z[e])b.K|=37888;else{d=(b.da>>6)*b.Z[e]+(b.da&63);c=(b.Ua&63)<<16|b.Fb;f=65536-b.Ya&65535;a.Zb(b.na[e],d,c,f);return}}I(a.b,20,160,112,function(){b.K|=129;return!!(b.K&64)})}
l.Wc=function(a,b,d,c,f){var e=this.G;e.Fb=c&65535;e.K=e.K&-49|c>>12&48;e.Ua=c>>16&63;e.da=~~(d/e.Z[b.La])<<6|d%e.Z[b.La];e.ab=e.da;e.Ya=65536-f&65535;switch(a){case 1:e.K|=33792;break;case 2:e.K|=40960}I(this.b,20,160,112,function(){e.K|=129;return!!(e.K&64)})};function ec(a){a=a.J;a.U=2176;a.Ba=0;a.pa=[4544,4544,4544,4544,4544,4544,4544,4544];a.ub=[0,0,0,0,0,0,0,0];a.kb=a.vb=a.tb=a.$a=a.ic=0} l.Wc=function(a,b,d,c,f){var e=this.G;e.Fb=c&65535;e.K=e.K&-49|c>>12&48;e.Ua=c>>16&63;e.da=~~(d/e.Z[b.La])<<6|d%e.Z[b.La];e.ab=e.da;e.Ya=65536-f&65535;switch(a){case 1:e.K|=33792;break;case 2:e.K|=40960}I(this.b,20,160,112,function(){e.K|=129;return!!(e.K&64)})};function ec(a){a=a.J;a.U=2176;a.Ba=0;a.pa=[4544,4544,4544,4544,4544,4544,4544,4544];a.ub=[0,0,0,0,0,0,0,0];a.kb=a.vb=a.tb=a.$a=a.ic=0}
function fc(a,b){var d=a.J,c,f,e;d.U&=-16513;d.Ba&=-2049;d.pa[b]&=-1153;I(a.b,-1,0,172);"undefined"===typeof d.na[b]&&(d.na[b]={cache:[],postProcess:a.Xc,drive:b,blocksize:256,mapped:0,maxblock:d.cc[0]*d.bb[0]*d.Z[0],url:"rp"+b+".dsk"});switch(d.U&63){case 5:d.ac[b]=d.Pa[b];d.U|=32896;d.pa[b]|=32896;d.kb|=1<<b;break;case 9:ec(a);break;case 19:d.pa[b]|=64;break;case 49:if(d.Pa[b]>=d.cc[0]||d.Ca[b]>>8>=d.bb[0]||(d.Ca[b]&255)>=d.Z[0]){d.ub[b]|=1024;d.U|=49152;break}c=(d.Pa[b]*d.bb[0]+(d.Ca[b]>>8))*d.Z[0]+ function fc(a,b){var d=a.J,c,f,e;d.U&=-16513;d.Ba&=-2049;d.pa[b]&=-1153;I(a.b,-1,0,172);"undefined"===typeof d.na[b]&&(d.na[b]={cache:[],postProcess:a.Xc,drive:b,blocksize:256,mapped:0,maxblock:d.cc[0]*d.bb[0]*d.Z[0],url:"rp"+b+".dsk"});switch(d.U&63){case 5:d.ac[b]=d.Qa[b];d.U|=32896;d.pa[b]|=32896;d.kb|=1<<b;break;case 9:ec(a);break;case 19:d.pa[b]|=64;break;case 49:if(d.Qa[b]>=d.cc[0]||d.Ca[b]>>8>=d.bb[0]||(d.Ca[b]&255)>=d.Z[0]){d.ub[b]|=1024;d.U|=49152;break}c=(d.Qa[b]*d.bb[0]+(d.Ca[b]>>8))*d.Z[0]+
(d.Ca[b]&255);f=(d.$a&63)<<16|d.tb;e=65536-d.vb&65535;cc(a,d.na[b],c,f,e);return;case 57:if(d.Pa[b]>=d.cc[0]||d.Ca[b]>>8>=d.bb[0]||(d.Ca[b]&255)>=d.Z[0])d.ub[b]|=1024,d.U|=49152;else{c=(d.Pa[b]*d.bb[0]+(d.Ca[b]>>8))*d.Z[0]+(d.Ca[b]&255);f=(d.$a&63)<<16|d.tb;e=65536-d.vb&65535;a.$b(d.na[b],c,f,e);return}}I(a.b,3,160,172,function(){d.U=d.U&65534|128;d.pa[b]|=128;return!!(d.U&64)})} (d.Ca[b]&255);f=(d.$a&63)<<16|d.tb;e=65536-d.vb&65535;cc(a,d.na[b],c,f,e);return;case 57:if(d.Qa[b]>=d.cc[0]||d.Ca[b]>>8>=d.bb[0]||(d.Ca[b]&255)>=d.Z[0])d.ub[b]|=1024,d.U|=49152;else{c=(d.Qa[b]*d.bb[0]+(d.Ca[b]>>8))*d.Z[0]+(d.Ca[b]&255);f=(d.$a&63)<<16|d.tb;e=65536-d.vb&65535;a.Zb(d.na[b],c,f,e);return}}I(a.b,3,160,172,function(){d.U=d.U&65534|128;d.pa[b]|=128;return!!(d.U&64)})}
l.Xc=function(a,b,d,c,f){var e=this.J;e.vb=65536-f&65535;e.tb=c&65535;e.U=e.U&-769|c>>8&768;e.$a=c>>16&63;f=~~(d/e.Z[0]);c=~~(f/e.bb[0]);e.Ca[b.La]=f%e.bb[0]<<8|d%e.Z[0];e.ac[b.La]=e.Pa[b.La]=c;e.kb|=1<<b.La;d>=b.Rc-1&&(e.pa[b.La]|=1024);switch(a){case 1:e.Ba|=512;e.U|=49152;break;case 2:e.Ba|=2048,e.U|=49152}I(this.b,20,160,172,function(){e.pa[b.La]|=128;e.U=e.U&65534|128;return!!(e.U&64)})};l.Oc=function(){this.F.K|=128;this.F.K&64&&I(this.b,0,192,64)}; l.Xc=function(a,b,d,c,f){var e=this.J;e.vb=65536-f&65535;e.tb=c&65535;e.U=e.U&-769|c>>8&768;e.$a=c>>16&63;f=~~(d/e.Z[0]);c=~~(f/e.bb[0]);e.Ca[b.La]=f%e.bb[0]<<8|d%e.Z[0];e.ac[b.La]=e.Qa[b.La]=c;e.kb|=1<<b.La;d>=b.Rc-1&&(e.pa[b.La]|=1024);switch(a){case 1:e.Ba|=512;e.U|=49152;break;case 2:e.Ba|=2048,e.U|=49152}I(this.b,20,160,172,function(){e.pa[b.La]|=128;e.U=e.U&65534|128;return!!(e.U&64)})};l.Oc=function(){this.F.K|=128;this.F.K&64&&I(this.b,0,192,64)};
function gc(a,b,d,c,f,e){var h=~~((e+d.Va-1)/d.Va),g=new XMLHttpRequest;2048>h&&c+2048<d.Rc&&(h=2048);g.open("GET",d.url,!0);g.setRequestHeader("Range","bytes="+(c*d.Va<<1)+"-"+(((c+h)*d.Va<<1)-1));g.responseType="arraybuffer";g.onreadystatechange=function(){if(4==g.readyState){var h=b.bind(a),m,n,q,p;m=g.response;if(g.status&&206!=g.status||!m)d.Zb(1,d,c,f,e);else{m=new Uint8Array(m);n=c;for(p=0;p<m.length;){if("undefined"===typeof d.cache[n])for(d.cache[n]=[],q=0;q<d.Va;q++)d.cache[n][q]=p<m.length? function gc(a,b,d,c,f,e){var h=~~((e+d.Va-1)/d.Va),g=new XMLHttpRequest;2048>h&&c+2048<d.Rc&&(h=2048);g.open("GET",d.url,!0);g.setRequestHeader("Range","bytes="+(c*d.Va<<1)+"-"+(((c+h)*d.Va<<1)-1));g.responseType="arraybuffer";g.onreadystatechange=function(){if(4==g.readyState){var h=b.bind(a),m,n,q,p;m=g.response;if(g.status&&206!=g.status||!m)d.Yb(1,d,c,f,e);else{m=new Uint8Array(m);n=c;for(p=0;p<m.length;){if("undefined"===typeof d.cache[n])for(d.cache[n]=[],q=0;q<d.Va;q++)d.cache[n][q]=p<m.length?
m[p]&255|m[p+1]<<8&65280:0,p+=2;else p+=d.Va<<1;n++}h(d,c,f,e)}}};g.send(null)}function J(a,b,d,c,f){if(d&1){if(!f)return K(a.b,4,122);c=0<=c?c<<8&65280|b&255:b}else 0<=c?f&&(c=b&65280|c&255):c=b;return c}l.$b=function(a,b,d,c){for(var f;0<c;){if("undefined"===typeof a.cache[b]){gc(this,this.$b,a,b,d,c);return}for(f=0;f<a.Va&&0<c;f++){if(0>L(this.b,a.Qc?hc(this.b,d):d,a.cache[b][f])){a.Zb(2,a,b,d,c);return}d+=2;--c}b++}a.Zb(0,a,b,d,c)}; m[p]&255|m[p+1]<<8&65280:0,p+=2;else p+=d.Va<<1;n++}h(d,c,f,e)}}};g.send(null)}function J(a,b,d,c,f){if(d&1){if(!f)return K(a.b,4,122);c=0<=c?c<<8&65280|b&255:b}else 0<=c?f&&(c=b&65280|c&255):c=b;return c}l.Zb=function(a,b,d,c){for(var f;0<c;){if("undefined"===typeof a.cache[b]){gc(this,this.Zb,a,b,d,c);return}for(f=0;f<a.Va&&0<c;f++){if(0>L(this.b,a.Qc?hc(this.b,d):d,a.cache[b][f])){a.Yb(2,a,b,d,c);return}d+=2;--c}b++}a.Yb(0,a,b,d,c)};
function cc(a,b,d,c,f){for(var e,h;0<f;){if("undefined"===typeof b.cache[d])for(b.cache[d]=[],e=0;e<b.Va;e++)b.cache[d][e]=0;for(e=0;e<b.Va&&0<f;e++){h=M(a.b,b.Qc?hc(a.b,c):c);if(0>h){b.Zb(2,b,d,c,f);return}b.cache[d][e]=h;c+=2;--f}d++}b.Zb(0,b,d,c,f)}l.reset=function(){this.g.pb=this.g.pb&-120|20;this.N.Ia=0;this.N.qa=128;this.F.K=0;this.C.S=128;this.G.K=128;ec(this)}; function cc(a,b,d,c,f){for(var e,h;0<f;){if("undefined"===typeof b.cache[d])for(b.cache[d]=[],e=0;e<b.Va;e++)b.cache[d][e]=0;for(e=0;e<b.Va&&0<f;e++){h=M(a.b,b.Qc?hc(a.b,c):c);if(0>h){b.Yb(2,b,d,c,f);return}b.cache[d][e]=h;c+=2;--f}d++}b.Yb(0,b,d,c,f)}l.reset=function(){this.g.pb=this.g.pb&-120|20;this.N.Ia=0;this.N.qa=128;this.F.K=0;this.C.S=128;this.G.K=128;ec(this)};
l.Dc=function(a,b,d){var c,f,e=this.b;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?c=e.Qa&65280:(a&1&&(b<<=8),e.Qa=b|255,c=0);break;case 4194298:if(0>b)c=e.Yb;else{a&1&&(b<<=8);if(c=b&65024){f=c>>9;do c+=34;while(f>>=1)}e.Yb=c;e.Oa=2}break;case 4194294:if(70!==e.gb)return K(e,4,222);0>b?c=e.L:c=e.L=0;break;case 4194292:if(70!==e.gb)return K(e,4,224);c=1;break;case 4194290:if(70!==e.gb)return K(e,4,226);c=0;break;case 4194288:if(70!==e.gb)return K(e,4,228);c=61183;break;case 4194296:0<= l.Dc=function(a,b,d){var c,f,e=this.b;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?c=e.Pa&65280:(a&1&&(b<<=8),e.Pa=b|255,c=0);break;case 4194298:if(0>b)c=e.$b;else{a&1&&(b<<=8);if(c=b&65024){f=c>>9;do c+=34;while(f>>=1)}e.$b=c;e.Oa=2}break;case 4194294:if(70!==e.gb)return K(e,4,222);0>b?c=e.M:c=e.M=0;break;case 4194292:if(70!==e.gb)return K(e,4,224);c=1;break;case 4194290:if(70!==e.gb)return K(e,4,226);c=0;break;case 4194288:if(70!==e.gb)return K(e,4,228);c=61183;break;case 4194296:0<=
b&&!(a&1)&&(b&=255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==e.gb)return K(e,4,232);f=a-4194272>>1;0>b?c=e.fc[f]:(c=J(this,e.fc[f],a,b,d),0<=c&&(e.fc[f]=c));break;case 4194254:return a&1?e.M>>14&1?(0<=b&&(e.f[6]=b),c=e.f[6]):(0<=b&&(e.sa[3]=b),c=e.sa[3]):e.M>>14&0?(0<=b&&(e.f[6]=b),c=e.f[6]):(0<=b&&(e.sa[1]=b),c=e.sa[1]),c;case 4194252:case 4194250:case 4194248:return f=a&7,e.M&2048?(0<=b&&(e.f[f]=b),c=e.f[f]):(0<=b&&(e.Za[f]= b&&!(a&1)&&(b&=255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==e.gb)return K(e,4,232);f=a-4194272>>1;0>b?c=e.fc[f]:(c=J(this,e.fc[f],a,b,d),0<=c&&(e.fc[f]=c));break;case 4194254:return a&1?e.L>>14&1?(0<=b&&(e.f[6]=b),c=e.f[6]):(0<=b&&(e.sa[3]=b),c=e.sa[3]):e.L>>14&0?(0<=b&&(e.f[6]=b),c=e.f[6]):(0<=b&&(e.sa[1]=b),c=e.sa[1]),c;case 4194252:case 4194250:case 4194248:return f=a&7,e.L&2048?(0<=b&&(e.f[f]=b),c=e.f[f]):(0<=b&&(e.Za[f]=
b),c=e.Za[f]),c;case 4194246:return a&1?(0<=b&&(e.f[7]=b),c=e.f[7]):e.M>>14&0?(0<=b&&(e.f[6]=b),c=e.f[6]):(0<=b&&(e.sa[0]=b),c=e.sa[0]),c;case 4194244:case 4194242:case 4194240:return f=a&7,e.M&2048?(0<=b&&(e.Za[f]=b),c=e.Za[f]):(0<=b&&(e.f[f]=b),c=e.f[f]),c;default:return e.L|=16,K(e,4,124)}break;case 4194176:f=a>>1&31;c=J(this,e.ka[3][f],a,b,d);0<=c&&(e.ka[3][f]=c,e.ka[3][f&15]&=65295);break;case 4194112:var h=this.N;f=this.F;switch(a&-2){case 4194174:c=J(this,e.Ab,a,b,d);0<=c&&(e.Ab=c);break;case 4194172:c= b),c=e.Za[f]),c;case 4194246:return a&1?(0<=b&&(e.f[7]=b),c=e.f[7]):e.L>>14&0?(0<=b&&(e.f[6]=b),c=e.f[6]):(0<=b&&(e.sa[0]=b),c=e.sa[0]),c;case 4194244:case 4194242:case 4194240:return f=a&7,e.L&2048?(0<=b&&(e.Za[f]=b),c=e.Za[f]):(0<=b&&(e.f[f]=b),c=e.f[f]),c;default:return e.M|=16,K(e,4,124)}break;case 4194176:f=a>>1&31;c=J(this,e.ka[3][f],a,b,d);0<=c&&(e.ka[3][f]=c,e.ka[3][f&15]&=65295);break;case 4194112:var h=this.N;f=this.F;switch(a&-2){case 4194174:c=J(this,e.Ab,a,b,d);0<=c&&(e.Ab=c);break;case 4194172:c=
e.Da;c&65280&&(c=(c<<8|c>>8)&65535);break;case 4194170:e.ca=e.ca&62337|e.Kb<<5|e.Xb<<1;0>b?c=e.ca:(c=J(this,e.ca,a,b,d),0<=c&&(e.ca=c&=62337,e.Kb=c>>5&3,e.Xb=c>>1&15,c&257?(f=2,e.Ra&16&&(f=1),e.Jb=c&1?ub|B:B):(e.Jb=0,f=4),this.g.pb=this.g.pb&-8|f));break;case 4194168:0>b?c=this.g.dd&65535:(c=J(this,this.g.data,a,b,d),0<=c&&(this.g.data=c));break;case 4194166:0<=b&&(b&127&&(h.Ic=0),h.qa&=-129,I(e,100,128,52,function(){h.qa|=128;return!!(h.qa&64)}));c=0;break;case 4194164:0>b?c=h.qa:(c=J(this,h.qa, e.Da;c&65280&&(c=(c<<8|c>>8)&65535);break;case 4194170:e.ca=e.ca&62337|e.Kb<<5|e.Xb<<1;0>b?c=e.ca:(c=J(this,e.ca,a,b,d),0<=c&&(e.ca=c&=62337,e.Kb=c>>5&3,e.Xb=c>>1&15,c&257?(f=2,e.Ra&16&&(f=1),e.Jb=c&1?ub|B:B):(e.Jb=0,f=4),this.g.pb=this.g.pb&-8|f));break;case 4194168:0>b?c=this.g.dd&65535:(c=J(this,this.g.data,a,b,d),0<=c&&(this.g.data=c));break;case 4194166:0<=b&&(b&127&&(h.Ic=0),h.qa&=-129,I(e,100,128,52,function(){h.qa|=128;return!!(h.qa&64)}));c=0;break;case 4194164:0>b?c=h.qa:(c=J(this,h.qa,
a,b,d),0<=c&&(128==(h.qa&192)&&c&64&&I(e,8,128,52,function(){h.qa|=128;return!!(h.qa&64)}),h.qa=h.qa&128|c&-129));break;case 4194162:c=0;0>b&&(h.Ia&=-129,0<h.gc.length&&(c=h.gc.shift(),0<h.gc.length&&setTimeout(function(){h.Ia|=128;h.Ia&64&&I(e,40,128,48)},50)));break;case 4194160:0>b?c=h.Ia:(c=J(this,h.Ia,a,b,d),0<=c&&(h.Ia=h.Ia&128|c&-129));break;case 4194150:0>b?(c=f.K,f.K&=-129):(c=J(this,f.K,a,b,d),0<=c&&(c&64&&!f.Ib&&(setInterval(this.Oc.bind(this),25),f.Ib=1),f.K=c&-129));break;default:return e.L|= a,b,d),0<=c&&(128==(h.qa&192)&&c&64&&I(e,8,128,52,function(){h.qa|=128;return!!(h.qa&64)}),h.qa=h.qa&128|c&-129));break;case 4194162:c=0;0>b&&(h.Ia&=-129,0<h.gc.length&&(c=h.gc.shift(),0<h.gc.length&&setTimeout(function(){h.Ia|=128;h.Ia&64&&I(e,40,128,48)},50)));break;case 4194160:0>b?c=h.Ia:(c=J(this,h.Ia,a,b,d),0<=c&&(h.Ia=h.Ia&128|c&-129));break;case 4194150:0>b?(c=f.K,f.K&=-129):(c=J(this,f.K,a,b,d),0<=c&&(c&64&&!f.Ib&&(setInterval(this.Oc.bind(this),25),f.Ib=1),f.K=c&-129));break;default:return e.M|=
16,K(e,4,126)}break;case 4194048:f=this.C;switch(a&-2){case 4194048:c=J(this,f.Qb,a,b,d);0<=c&&(f.Qb=c);break;case 4194050:c=J(this,f.la,a,b,d);0<=c&&(f.la=c);break;case 4194052:c=J(this,f.S,a,b,d);0<=b&&0<=c&&(f.S=c&-36993|f.S&36992,f.S&1&&bc(this));break;case 4194054:c=J(this,f.Rb,a,b,d);0<=c&&(f.Rb=c);break;case 4194056:c=J(this,f.Pb,a,b,d);0<=c&&(f.Pb=c);break;case 4194058:c=J(this,f.ta,a,b,d);0<=c&&(f.ta=c);break;case 4194060:break;case 4194062:c=J(this,f.wc,a,b,d);0<=c&&(f.wc=c);break;default:return e.L|= 16,K(e,4,126)}break;case 4194048:f=this.C;switch(a&-2){case 4194048:c=J(this,f.Qb,a,b,d);0<=c&&(f.Qb=c);break;case 4194050:c=J(this,f.la,a,b,d);0<=c&&(f.la=c);break;case 4194052:c=J(this,f.S,a,b,d);0<=b&&0<=c&&(f.S=c&-36993|f.S&36992,f.S&1&&bc(this));break;case 4194054:c=J(this,f.Rb,a,b,d);0<=c&&(f.Rb=c);break;case 4194056:c=J(this,f.Pb,a,b,d);0<=c&&(f.Pb=c);break;case 4194058:c=J(this,f.ta,a,b,d);0<=c&&(f.ta=c);break;case 4194060:break;case 4194062:c=J(this,f.wc,a,b,d);0<=c&&(f.wc=c);break;default:return e.M|=
16,K(e,4,128)}break;case 4193728:var g=this.J;f=g.Ba&7;switch(a&-2){case 4193728:c=J(this,g.U,a,b,d);0<=b&&0<=c&&(g.$a=g.$a&60|c>>8&3,g.U=c&17279|g.U&34944|2048,c&1&&g.U&128?fc(this,f):192==(c&192)&&I(e,0,160,172));break;case 4193730:c=J(this,g.vb,a,b,d);0<=c&&(g.vb=c);break;case 4193732:c=J(this,g.tb,a,b,d);0<=c&&(g.tb=c&65534);break;case 4193734:c=J(this,g.Ca[f],a,b,d);0<=c&&(g.Ca[f]=c&7967);break;case 4193736:c=J(this,g.Ba,a,b,d);0<=c&&(g.Ba=c&63|g.Ba&65472,c&128&&ec(this));break;case 4193738:c= 16,K(e,4,128)}break;case 4193728:var g=this.J;f=g.Ba&7;switch(a&-2){case 4193728:c=J(this,g.U,a,b,d);0<=b&&0<=c&&(g.$a=g.$a&60|c>>8&3,g.U=c&17279|g.U&34944|2048,c&1&&g.U&128?fc(this,f):192==(c&192)&&I(e,0,160,172));break;case 4193730:c=J(this,g.vb,a,b,d);0<=c&&(g.vb=c);break;case 4193732:c=J(this,g.tb,a,b,d);0<=c&&(g.tb=c&65534);break;case 4193734:c=J(this,g.Ca[f],a,b,d);0<=c&&(g.Ca[f]=c&7967);break;case 4193736:c=J(this,g.Ba,a,b,d);0<=c&&(g.Ba=c&63|g.Ba&65472,c&128&&ec(this));break;case 4193738:c=
g.pa[f];break;case 4193740:c=g.ub[f];break;case 4193742:c=J(this,g.kb,a,b,d);0<=c&&(g.kb=c&255);break;case 4193744:c=g.bd[f];break;case 4193746:c=J(this,g.xc,a,b,d);0<=c&&(g.xc=c);break;case 4193748:c=J(this,g.yc[f],a,b,d);0<=c&&(g.yc[f]=c&1023);break;case 4193750:c=8210;break;case 4193752:c=g.cd[f];break;case 4193754:c=J(this,g.zc[f],a,b,d);0<=c&&(g.zc[f]=c);break;case 4193756:c=J(this,g.Pa[f],a,b,d);0<=c&&(g.Pa[f]=c&511);break;case 4193758:g.ac[f]=g.Pa[f];c=g.ac[f];break;case 4193760:c=g.$c[f]; g.pa[f];break;case 4193740:c=g.ub[f];break;case 4193742:c=J(this,g.kb,a,b,d);0<=c&&(g.kb=c&255);break;case 4193744:c=g.bd[f];break;case 4193746:c=J(this,g.xc,a,b,d);0<=c&&(g.xc=c);break;case 4193748:c=J(this,g.yc[f],a,b,d);0<=c&&(g.yc[f]=c&1023);break;case 4193750:c=8210;break;case 4193752:c=g.cd[f];break;case 4193754:c=J(this,g.zc[f],a,b,d);0<=c&&(g.zc[f]=c);break;case 4193756:c=J(this,g.Qa[f],a,b,d);0<=c&&(g.Qa[f]=c&511);break;case 4193758:g.ac[f]=g.Qa[f];c=g.ac[f];break;case 4193760:c=g.$c[f];
break;case 4193762:c=g.ad[f];break;case 4193764:c=g.Yc[f];break;case 4193766:c=g.Zc[f];break;case 4193768:c=J(this,g.$a,a,b,d);0<=c&&(g.$a=c&63,g.U=g.U&-769|(c&3)<<8);break;case 4193770:c=J(this,g.ic,a,b,d);0<=c&&(g.ic=c);break;default:return e.L|=16,K(e,4,132)}break;case 4192512:f=this.G;switch(a&-2){case 4192512:c=J(this,f.K,a,b,d);0<=b&&0<=c&&(f.Ua=f.Ua&60|c>>4&3,f.K=f.K&-1023|c&1022,f.K&128||dc(this));break;case 4192514:c=J(this,f.Fb,a,b,d);0<=c&&(f.Fb=c&65534);break;case 4192516:c=J(this,f.da, break;case 4193762:c=g.ad[f];break;case 4193764:c=g.Yc[f];break;case 4193766:c=g.Zc[f];break;case 4193768:c=J(this,g.$a,a,b,d);0<=c&&(g.$a=c&63,g.U=g.U&-769|(c&3)<<8);break;case 4193770:c=J(this,g.ic,a,b,d);0<=c&&(g.ic=c);break;default:return e.M|=16,K(e,4,132)}break;case 4192512:f=this.G;switch(a&-2){case 4192512:c=J(this,f.K,a,b,d);0<=b&&0<=c&&(f.Ua=f.Ua&60|c>>4&3,f.K=f.K&-1023|c&1022,f.K&128||dc(this));break;case 4192514:c=J(this,f.Fb,a,b,d);0<=c&&(f.Fb=c&65534);break;case 4192516:c=J(this,f.da,
a,b,d);0<=c&&(f.da=c);break;case 4192518:c=J(this,f.Ya,a,b,d);0<=c&&(f.Ya=c);break;case 4192520:c=J(this,f.Ua,a,b,d);0<=c&&(f.Ua=c&63,f.K=f.K&-49|(f.Ua&3)<<4);break;default:return e.L|=16,K(e,4,134)}break;case 4191552:switch(a&-2){case 4191566:0>b?c=e.Ra:(c=J(this,e.Ra,a,b,d),0<=c&&(70!==e.gb&&(c&=-49),e.Ra=c,e.ib[0]=c&4?15:7,e.ib[1]=c&2?15:7,e.ib[3]=c&1?15:7,e.Jb&&(f=2,e.Ra&16&&(f=1),this.g.pb=this.g.pb&-8|f)));break;default:return e.L|=16,K(e,4,136)}break;case 4191424:f=a>>1&31;c=J(this,e.ka[0][f], a,b,d);0<=c&&(f.da=c);break;case 4192518:c=J(this,f.Ya,a,b,d);0<=c&&(f.Ya=c);break;case 4192520:c=J(this,f.Ua,a,b,d);0<=c&&(f.Ua=c&63,f.K=f.K&-49|(f.Ua&3)<<4);break;default:return e.M|=16,K(e,4,134)}break;case 4191552:switch(a&-2){case 4191566:0>b?c=e.Ra:(c=J(this,e.Ra,a,b,d),0<=c&&(70!==e.gb&&(c&=-49),e.Ra=c,e.ib[0]=c&4?15:7,e.ib[1]=c&2?15:7,e.ib[3]=c&1?15:7,e.Jb&&(f=2,e.Ra&16&&(f=1),this.g.pb=this.g.pb&-8|f)));break;default:return e.M|=16,K(e,4,136)}break;case 4191424:f=a>>1&31;c=J(this,e.ka[0][f],
a,b,d);0<=c&&(e.ka[0][f]=c,e.ka[0][f&15]&=65295);break;case 4191360:f=a>>1&31;c=J(this,e.ka[1][f],a,b,d);0<=c&&(e.ka[1][f]=c,e.ka[1][f&15]&=65295);break;case 4190400:case 4190336:if(70!==e.gb)return K(e,4,234);f=a>>2&31;c=e.Sb[f];a&2&&(c>>=16);c&=65535;0<=b&&(c=J(this,c,a,b,d),0<=c&&(e.Sb[f]=a&2?c<<16|e.Sb[f]&65535:e.Sb[f]&4294901760|c&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)c=Yb[a>>1&255];else return e.L|=16,K(e, a,b,d);0<=c&&(e.ka[0][f]=c,e.ka[0][f&15]&=65295);break;case 4191360:f=a>>1&31;c=J(this,e.ka[1][f],a,b,d);0<=c&&(e.ka[1][f]=c,e.ka[1][f&15]&=65295);break;case 4190400:case 4190336:if(70!==e.gb)return K(e,4,234);f=a>>2&31;c=e.Sb[f];a&2&&(c>>=16);c&=65535;0<=b&&(c=J(this,c,a,b,d),0<=c&&(e.Sb[f]=a&2?c<<16|e.Sb[f]&65535:e.Sb[f]&4294901760|c&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)c=Yb[a>>1&255];else return e.M|=16,K(e,
4,138);break;default:return e.L|=16,K(e,4,142)}d&&0<=c&&(a&1?c>>=8:c&=255);"undefined"===typeof c&&console.log("panic(76)");return c};var Zb={};Zb[4194302]=[null,null,Mb.prototype.Uc,Mb.prototype.fd];Pa(function(){for(var a=y(document,"pdp11","device"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new Mb(c);cb(c,d)}});var ic;if(tb){var jc=new ArrayBuffer(2);(new DataView(jc)).setUint16(0,256,!0);ic=256===(new Uint16Array(jc))[0]}else ic=!1;var kc=ic; 4,138);break;default:return e.M|=16,K(e,4,142)}d&&0<=c&&(a&1?c>>=8:c&=255);"undefined"===typeof c&&console.log("panic(76)");return c};var ic={},Zb=(ic[65534]=[null,null,Mb.prototype.Uc,Mb.prototype.fd],ic);Pa(function(){for(var a=y(document,"pdp11","device"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new Mb(c);cb(c,d)}});var jc;if(tb){var kc=new ArrayBuffer(2);(new DataView(kc)).setUint16(0,256,!0);jc=256===(new Uint16Array(kc))[0]}else jc=!1;var lc=jc;
function H(a,b,d,c,f){this.id=lc+=2;this.b=null;this.D=a;this.Ub=b;this.size=d||0;this.type=c||mc;this.H=c==nc;this.controller=null;Bb(this);this.Wa=this.Kc=!1;if(d)if(f)this.controller=f,this.b=null,oc(this,f.Cb);else if(tb)this.G=new ArrayBuffer(d),this.J=new DataView(this.G,0,d),this.g=new Uint8Array(this.G,0,d),this.P=new Uint16Array(this.G,0,d>>1),this.b=new Int32Array(this.G,0,d>>2),oc(this,kc?pc:qc);else{this.b=Array(d>>2);for(a=0;a<this.b.length;a++)this.b[a]=0;oc(this,rc)}else oc(this)} function H(a,b,d,c,f){this.id=mc+=2;this.b=null;this.D=a;this.Ub=b;this.size=d||0;this.type=c||nc;this.H=c==oc;this.controller=null;Bb(this);this.Wa=this.Kc=!1;if(d)if(f)this.controller=f,this.b=null,pc(this,f.Cb);else if(tb)this.G=new ArrayBuffer(d),this.J=new DataView(this.G,0,d),this.g=new Uint8Array(this.G,0,d),this.P=new Uint16Array(this.G,0,d>>1),this.b=new Int32Array(this.G,0,d>>2),pc(this,lc?qc:rc);else{this.b=Array(d>>2);for(a=0;a<this.b.length;a++)this.b[a]=0;pc(this,sc)}else pc(this)}
var mc=0,nc=2,Hb=4,Jb=["NONE","RAM","ROM","VID","H/W"],lc=0; var nc=0,oc=2,Hb=4,Jb=["NONE","RAM","ROM","VID","H/W"],mc=0;
H.prototype={constructor:H,parent:null,Ib:function(a){this.D=a},save:function(){var a,b;if(this.controller)a=null;else if(tb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.J.getInt32(b<<2,!0);else a=this.b;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(tb)for(b=0;b<a.length;b++)this.J.setInt32(b<<2,a[b],!0);else this.b=a;return this.Wa=!0}return!1},eb:function(a,b){b?this.F++||sc(this,tc,!1):this.O++||uc(this,tc,!1)},T:function(){this.I&&db(this.I, H.prototype={constructor:H,parent:null,Ib:function(a){this.D=a},save:function(){var a,b;if(this.controller)a=null;else if(tb)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.J.getInt32(b<<2,!0);else a=this.b;return a},restore:function(a){if(this.controller)return!a;if(a&&this.size==a.length<<2){var b;if(tb)for(b=0;b<a.length;b++)this.J.setInt32(b<<2,a[b],!0);else this.b=a;return this.Wa=!0}return!1},eb:function(a,b){b?this.F++||tc(this,uc,!1):this.O++||vc(this,uc,!1)},T:function(){this.I&&db(this.I,
129)&&this.I.message("attempt to read invalid block %"+r(this.D),!0);return 255},C:function(a,b){this.I&&db(this.I,129)&&this.I.message("attempt to write "+r(b,4,!0)+" to invalid block %"+r(this.D),!0)},W:function(a,b){return this.sb(a++,b++)|this.sb(a,b)<<8},N:function(a,b,d){this.xb(a++,b&255,d++);this.xb(a,b>>8,d)},ba:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ra:function(a){var b=a>>2;a=(a&3)<<3;var d=this.b[b]>>a;return 24>a?d&65535:d&255|(this.b[b+1]&255)<<8},za:function(a,b){var d=a>> 129)&&this.I.message("attempt to read invalid block %"+r(this.D),!0);return 255},C:function(a,b){this.I&&db(this.I,129)&&this.I.message("attempt to write "+r(b,4,!0)+" to invalid block %"+r(this.D),!0)},W:function(a,b){return this.sb(a++,b++)|this.sb(a,b)<<8},N:function(a,b,d){this.xb(a++,b&255,d++);this.xb(a,b>>8,d)},ba:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ra:function(a){var b=a>>2;a=(a&3)<<3;var d=this.b[b]>>a;return 24>a?d&65535:d&255|(this.b[b+1]&255)<<8},za:function(a,b){var d=a>>
2;a=(a&3)<<3;this.b[d]=this.b[d]&~(255<<a)|b<<a;this.Wa=!0},Bb:function(a,b){var d=a>>2;a=(a&3)<<3;24>a?this.b[d]=this.b[d]&~(65535<<a)|b<<a:(this.b[d]=this.b[d]&16777215|b<<24,d++,this.b[d]=this.b[d]&-256|b>>8);this.Wa=!0},$:function(a,b){if(this.I&&null!=this.D){var d=this.I;vc(d,this.D+a,1,d.X)&&d.ma(!0)}return this.Ob(a,b)},ga:function(a,b){if(this.I&&null!=this.D){var d=this.I;vc(d,this.D+a,2,d.X)&&d.ma(!0)}return this.hc(a,b)},wa:function(a,b,d){if(this.I&&null!=this.D){var c=this.I;vc(c,this.D+ 2;a=(a&3)<<3;this.b[d]=this.b[d]&~(255<<a)|b<<a;this.Wa=!0},Bb:function(a,b){var d=a>>2;a=(a&3)<<3;24>a?this.b[d]=this.b[d]&~(65535<<a)|b<<a:(this.b[d]=this.b[d]&16777215|b<<24,d++,this.b[d]=this.b[d]&-256|b>>8);this.Wa=!0},$:function(a,b){if(this.I&&null!=this.D){var d=this.I;wc(d,this.D+a,1,d.X)&&d.ma(!0)}return this.Ob(a,b)},ga:function(a,b){if(this.I&&null!=this.D){var d=this.I;wc(d,this.D+a,2,d.X)&&d.ma(!0)}return this.hc(a,b)},wa:function(a,b,d){if(this.I&&null!=this.D){var c=this.I;wc(c,this.D+
a,1,c.J)&&c.ma(!0)}this.H?this.C(a,b,d):this.yb(a,b,d)},Ja:function(a,b,d){if(this.I&&null!=this.D){var c=this.I;vc(c,this.D+a,2,c.J)&&c.ma(!0)}this.H?this.C(a,b,d):this.lc(a,b,d)},X:function(a){return this.g[a]},aa:function(a){return this.g[a]},ea:function(a){return this.J.getUint16(a,!0)},ha:function(a){return a&1?this.g[a]|this.g[a+1]<<8:this.P[a>>1]},va:function(a,b){this.g[a]=b;this.Wa=!0},ya:function(a,b){this.g[a]=b;this.Wa=!0},Ea:function(a,b){this.J.setUint16(a,b,!0);this.Wa=!0},Sa:function(a, a,1,c.J)&&c.ma(!0)}this.H?this.C(a,b,d):this.yb(a,b,d)},Ja:function(a,b,d){if(this.I&&null!=this.D){var c=this.I;wc(c,this.D+a,2,c.J)&&c.ma(!0)}this.H?this.C(a,b,d):this.lc(a,b,d)},X:function(a){return this.g[a]},aa:function(a){return this.g[a]},ea:function(a){return this.J.getUint16(a,!0)},ha:function(a){return a&1?this.g[a]|this.g[a+1]<<8:this.P[a>>1]},va:function(a,b){this.g[a]=b;this.Wa=!0},ya:function(a,b){this.g[a]=b;this.Wa=!0},Ea:function(a,b){this.J.setUint16(a,b,!0);this.Wa=!0},Sa:function(a,
b){a&1?(this.g[a]=b,this.g[a+1]=b>>8):this.P[a>>1]=b;this.Wa=!0}};function Bb(a,b,d){a.I=b;a.O=a.F=0;d&&((a.O=d.O)&&uc(a,tc,!1),(a.F=d.F)&&sc(a,tc,!1))}function wc(a,b){b?--a.F||(a.xb=a.H?a.C:a.yb,a.Bc=a.H?a.N:a.lc):--a.O||(a.sb=a.Ob,a.vc=a.hc)}function sc(a,b,d){d&&a.F||(a.xb=!a.H&&b[1]||a.C,a.Bc=!a.H&&b[3]||a.N);if(d||void 0===d)a.yb=b[1]||a.C,a.lc=b[3]||a.N}function uc(a,b,d){d&&a.O||(a.sb=b[0]||a.T,a.vc=b[2]||a.W);if(d||void 0===d)a.Ob=b[0]||a.T,a.hc=b[2]||a.W} b){a&1?(this.g[a]=b,this.g[a+1]=b>>8):this.P[a>>1]=b;this.Wa=!0}};function Bb(a,b,d){a.I=b;a.O=a.F=0;d&&((a.O=d.O)&&vc(a,uc,!1),(a.F=d.F)&&tc(a,uc,!1))}function xc(a,b){b?--a.F||(a.xb=a.H?a.C:a.yb,a.Bc=a.H?a.N:a.lc):--a.O||(a.sb=a.Ob,a.vc=a.hc)}function tc(a,b,d){d&&a.F||(a.xb=!a.H&&b[1]||a.C,a.Bc=!a.H&&b[3]||a.N);if(d||void 0===d)a.yb=b[1]||a.C,a.lc=b[3]||a.N}function vc(a,b,d){d&&a.O||(a.sb=b[0]||a.T,a.vc=b[2]||a.W);if(d||void 0===d)a.Ob=b[0]||a.T,a.hc=b[2]||a.W}
function oc(a,b){b||(b=xc);uc(a,b,void 0);sc(a,b,void 0)}var xc=[],rc=[H.prototype.ba,H.prototype.za,H.prototype.ra,H.prototype.Bb],tc=[H.prototype.$,H.prototype.wa,H.prototype.ga,H.prototype.Ja];if(tb)var qc=[H.prototype.X,H.prototype.va,H.prototype.ea,H.prototype.Ea],pc=[H.prototype.aa,H.prototype.ya,H.prototype.ha,H.prototype.Sa]; function pc(a,b){b||(b=yc);vc(a,b,void 0);tc(a,b,void 0)}var yc=[],sc=[H.prototype.ba,H.prototype.za,H.prototype.ra,H.prototype.Bb],uc=[H.prototype.$,H.prototype.wa,H.prototype.ga,H.prototype.Ja];if(tb)var rc=[H.prototype.X,H.prototype.va,H.prototype.ea,H.prototype.Ea],qc=[H.prototype.aa,H.prototype.ya,H.prototype.ha,H.prototype.Sa];
function yc(a,b){u.call(this,"CPU",a,yc,1);var d=a.multiplier||1;this.za=a.cycles||b;this.jb=d;this.ya=Math.round(this.za/1E4)/100;this.hb=this.ya*this.jb;this.A.ja=!1;this.A.kc=!1;this.A.Db=a.autoStart;this.A.sc=!1;this.A.ob=!1;this.Lb=this.$=0;this.Mb=a.csStart;this.qb=a.csInterval;this.rb=a.csStop;this.ra=[];this.Eb=this.lb.bind(this);A(this)}w(yc);var zc=["power","reset"];l=yc.prototype; function zc(a,b){u.call(this,"CPU",a,zc,1);var d=a.multiplier||1;this.za=a.cycles||b;this.jb=d;this.ya=Math.round(this.za/1E4)/100;this.hb=this.ya*this.jb;this.A.ja=!1;this.A.kc=!1;this.A.Db=a.autoStart;this.A.sc=!1;this.A.ob=!1;this.Lb=this.$=0;this.Mb=a.csStart;this.qb=a.csInterval;this.rb=a.csStop;this.ra=[];this.Eb=this.lb.bind(this);A(this)}w(zc);var Ac=["power","reset"];l=zc.prototype;
l.Xa=function(a,b,d,c){this.F=a;this.H=b;this.I=c;for(b=0;b<zc.length;b++)(d=this.O[zc[b]])&&this.F.ua(null,zc[b],d);this.ea=null;a=Ac(a,"autoStart");null!=a&&(this.A.Db="true"==a?!0:"false"==a?!1:!!a);A(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};l.Na=function(a,b){if(!b){if(a&&this.restore){Bc(this);if(!this.restore(a))return!1;Cc(this)}else this.reset();this.I?this.I.Ib():this.i("No debugger detected")}Dc(this);return!0}; l.Xa=function(a,b,d,c){this.F=a;this.H=b;this.I=c;for(b=0;b<Ac.length;b++)(d=this.O[Ac[b]])&&this.F.ua(null,Ac[b],d);this.ea=null;a=Bc(a,"autoStart");null!=a&&(this.A.Db="true"==a?!0:"false"==a?!1:!!a);A(this)};l.reset=function(){};l.save=function(){return null};l.restore=function(){return!1};l.Na=function(a,b){if(!b){if(a&&this.restore){Cc(this);if(!this.restore(a))return!1;Dc(this)}else this.reset();this.I?this.I.Ib():this.i("No debugger detected")}Ec(this);return!0};
l.Ma=function(a){return a?this.save():!0};l.Db=function(){return this.A.Db||!this.I&&void 0===this.O.run?(this.lb(!0),!0):!1};l.uc=function(){return 0};function Cc(a){void 0===a.Mb&&(a.Mb=0);void 0===a.qb&&(a.qb=-1);void 0===a.rb&&(a.rb=-1);a.A.ob=0<=a.Mb&&0<a.qb;a.A.ob&&(a.Lb=0,a.$=a.Mb-a.X)}function Ec(a,b){if(a.A.ob){var d=!1;a.Lb=a.Lb+a.uc()|0;a.$-=b;0>=a.$&&(a.$+=a.qb,d=!0);0<=a.rb&&a.rb<=Tc(a)&&(a.qb=a.rb=-1,Cc(a),a.ma(),d=!0);d&&a.i(Tc(a)+" cycles: checksum="+r(a.Lb))}} l.Ma=function(a){return a?this.save():!0};l.Db=function(){return this.A.Db||!this.I&&void 0===this.O.run?(this.lb(!0),!0):!1};l.uc=function(){return 0};function Dc(a){void 0===a.Mb&&(a.Mb=0);void 0===a.qb&&(a.qb=-1);void 0===a.rb&&(a.rb=-1);a.A.ob=0<=a.Mb&&0<a.qb;a.A.ob&&(a.Lb=0,a.$=a.Mb-a.X)}function Tc(a,b){if(a.A.ob){var d=!1;a.Lb=a.Lb+a.uc()|0;a.$-=b;0>=a.$&&(a.$+=a.qb,d=!0);0<=a.rb&&a.rb<=Uc(a)&&(a.qb=a.rb=-1,Dc(a),a.ma(),d=!0);d&&a.i(Uc(a)+" cycles: checksum="+r(a.Lb))}}
function Uc(a,b,d,c){if(a.O[b]){void 0===d&&(hb(a,"Value for "+b+" is invalid"),a.ma());var f=a.I&&a.I.wa||8;d=!a.A.ja||a.A.sc?8==f?ca(d,c):r(d,c):"--------".substr(0,c||4);a.O[b].textContent!=d&&(a.O[b].textContent=d)}} function Vc(a,b,d,c){if(a.O[b]){void 0===d&&(hb(a,"Value for "+b+" is invalid"),a.ma());var f=a.I&&a.I.wa||8;d=!a.A.ja||a.A.sc?8==f?ca(d,c):r(d,c):"--------".substr(0,c||4);a.O[b].textContent!=d&&(a.O[b].textContent=d)}}
l.ua=function(a,b,d){var c=this;a=!1;switch(b){case "power":case "reset":this.O[b]=d;a=!0;break;case "run":this.O[b]=d;d.onclick=function(){var a;if(a=c.F)if(a=c.F,a.A.fa)a=!0;else{var b=null,d,g=ab(a.id);for(d=0;d<g.length&&(b=g[d],b===a||b.A.ready);d++);if(d==g.length)for(d=0;d<g.length&&(b=g[d],b===a||b.A.fa);d++);d==g.length&&(b=a);t("The "+b.type+" component ("+b.id+") is not "+(b.A.ready?"powered yet":"ready yet"+(b.Wb?" (waiting for notification)":""))+".");a=!1}a&&(c.A.ja?c.ma():c.lb())}; l.ua=function(a,b,d){var c=this;a=!1;switch(b){case "power":case "reset":this.O[b]=d;a=!0;break;case "run":this.O[b]=d;d.onclick=function(){var a;if(a=c.F)if(a=c.F,a.A.fa)a=!0;else{var b=null,d,g=ab(a.id);for(d=0;d<g.length&&(b=g[d],b===a||b.A.ready);d++);if(d==g.length)for(d=0;d<g.length&&(b=g[d],b===a||b.A.fa);d++);d==g.length&&(b=a);t("The "+b.type+" component ("+b.id+") is not "+(b.A.ready?"powered yet":"ready yet"+(b.Wb?" (waiting for notification)":""))+".");a=!1}a&&(c.A.ja?c.ma():c.lb())};
a=!0;break;case "speed":this.O[b]=d;a=!0;break;case "setSpeed":this.O[b]=d,d.onclick=function(){Vc(c,c.jb<<1,!0)},d.textContent=this.hb.toFixed(2)+"Mhz",a=!0}return a};function Wc(a,b,d){a.X+=b;d&&(a.W=a.b=0)}function Xc(a,b){var d=1;b&&1<a.jb&&a.P&&(d=a.P/a.ya);a.mb=Math.round(1E3/30);a.wa=Math.floor(a.za/30*d);b||(a.aa=a.wa);a.Ea=0}function Tc(a){return a.X+a.N+a.W-a.b}function Bc(a){a.P=0;a.zb=0;a.X=a.N=a.W=a.b=0;Cc(a);Vc(a,1)} a=!0;break;case "speed":this.O[b]=d;a=!0;break;case "setSpeed":this.O[b]=d,d.onclick=function(){Wc(c,c.jb<<1,!0)},d.textContent=this.hb.toFixed(2)+"Mhz",a=!0}return a};function Xc(a,b,d){a.X+=b;d&&(a.W=a.b=0)}function Yc(a,b){var d=1;b&&1<a.jb&&a.P&&(d=a.P/a.ya);a.mb=Math.round(1E3/30);a.wa=Math.floor(a.za/30*d);b||(a.aa=a.wa);a.Ea=0}function Uc(a){return a.X+a.N+a.W-a.b}function Cc(a){a.P=0;a.zb=0;a.X=a.N=a.W=a.b=0;Dc(a);Wc(a,1)}
function Vc(a,b,d){var c=!1;if(void 0!==b){.8>a.P/a.hb?b=1:c=!0;a.jb=b;b=a.ya*a.jb;if(a.hb!=b){a.hb=b;b=a.hb.toFixed(2)+"Mhz";var f=a.O.setSpeed;f&&(f.textContent=b);a.i("target speed: "+b)}d&&a.F&&a.F.Tb()}Wc(a,a.N);a.N=0;a.J=sa();a.T=0;Xc(a);return c}function Yc(a){a.W-=a.b;a.b=0} function Wc(a,b,d){var c=!1;if(void 0!==b){.8>a.P/a.hb?b=1:c=!0;a.jb=b;b=a.ya*a.jb;if(a.hb!=b){a.hb=b;b=a.hb.toFixed(2)+"Mhz";var f=a.O.setSpeed;f&&(f.textContent=b);a.i("target speed: "+b)}d&&a.F&&a.F.Tb()}Xc(a,a.N);a.N=0;a.J=sa();a.T=0;Yc(a);return c}function Zc(a){a.W-=a.b;a.b=0}
l.lb=function(a){if(eb(this,!0)){if(!this.A.ja){Vc(this);this.F&&this.F.start(this.J,Tc(this));this.A.ja=!0;this.A.kc=!0;this.ea&&this.ea.start();var b=this.O.run;b&&(b.textContent="Halt");this.F&&(this.F.xa(!0),a&&this.F.Tb(!0))}this.Ea>=this.za&&Xc(this,!0);this.ga=0;this.va=sa();this.T&&(a=this.va-this.T,a>this.mb&&(this.J+=a,this.J>this.va&&(this.J=this.va)));try{do{for(var d,c=this.A.ob?1:this.wa,f=this.ra.length-1;0<=f;f--){var e=this.ra[f];0>e[0]||c>e[0]&&(c=e[0])}d=c;try{this.wb(d)}catch(m){if("number"!= l.lb=function(a){if(eb(this,!0)){if(!this.A.ja){Wc(this);this.F&&this.F.start(this.J,Uc(this));this.A.ja=!0;this.A.kc=!0;this.ea&&this.ea.start();var b=this.O.run;b&&(b.textContent="Halt");this.F&&(this.F.xa(!0),a&&this.F.Tb(!0))}this.Ea>=this.za&&Yc(this,!0);this.ga=0;this.va=sa();this.T&&(a=this.va-this.T,a>this.mb&&(this.J+=a,this.J>this.va&&(this.J=this.va)));try{do{for(var d,c=this.A.ob?1:this.wa,f=this.ra.length-1;0<=f;f--){var e=this.ra[f];0>e[0]||c>e[0]&&(c=e[0])}d=c;try{this.wb(d)}catch(m){if("number"!=
typeof m)throw m;}var h=this.W-this.b;a=h;for(var g=this.ra.length-1;0<=g;g--){var k=this.ra[g];0>k[0]||(k[0]-=a,0>=k[0]&&(k[0]=-1,k[1]()))}this.ga+=h;this.N+=h;Wc(this,0,!0);Ec(this,h);this.aa-=h;if(0>=this.aa){this.aa+=this.wa;15<=++this.zb&&(this.F&&this.F.xa(),this.zb=0);break}}while(this.A.ja)}catch(m){this.ma();Dc(this);this.F&&this.F.stop(sa(),Tc(this));eb(this,!1);hb(this,m.stack||m.message);return}d=setTimeout;c=this.Eb;this.T=sa();f=this.mb;this.ga&&(f=Math.round(f*this.ga/this.wa));f-= typeof m)throw m;}var h=this.W-this.b;a=h;for(var g=this.ra.length-1;0<=g;g--){var k=this.ra[g];0>k[0]||(k[0]-=a,0>=k[0]&&(k[0]=-1,k[1]()))}this.ga+=h;this.N+=h;Xc(this,0,!0);Tc(this,h);this.aa-=h;if(0>=this.aa){this.aa+=this.wa;15<=++this.zb&&(this.F&&this.F.xa(),this.zb=0);break}}while(this.A.ja)}catch(m){this.ma();Ec(this);this.F&&this.F.stop(sa(),Uc(this));eb(this,!1);hb(this,m.stack||m.message);return}d=setTimeout;c=this.Eb;this.T=sa();f=this.mb;this.ga&&(f=Math.round(f*this.ga/this.wa));f-=
this.T-this.va;if(e=this.T-this.J)this.P=Math.round(this.N/(10*e))/100,864E5<=e&&(this.X=0,Vc(this));if(0>f||this.P<this.hb)-1E3>f&&(this.J-=f),f=0;this.Ea+=this.ga;this.T+=f;d(c,f)}else Dc(this),this.F&&this.F.stop(sa(),Tc(this))};l.wb=function(){return 0};l.ma=function(a){fb(this,!0);Yc(this);Wc(this,this.N);this.N=0;if(this.A.ja){this.A.ja=!1;this.ea&&this.ea.stop();var b=this.O.run;b&&(b.textContent="Run")}this.A.complete=a};function Dc(a,b){a.F&&a.F.xa(b)} this.T-this.va;if(e=this.T-this.J)this.P=Math.round(this.N/(10*e))/100,864E5<=e&&(this.X=0,Wc(this));if(0>f||this.P<this.hb)-1E3>f&&(this.J-=f),f=0;this.Ea+=this.ga;this.T+=f;d(c,f)}else Ec(this),this.F&&this.F.stop(sa(),Uc(this))};l.wb=function(){return 0};l.ma=function(a){fb(this,!0);Zc(this);Xc(this,this.N);this.N=0;if(this.A.ja){this.A.ja=!1;this.ea&&this.ea.stop();var b=this.O.run;b&&(b.textContent="Run")}this.A.complete=a};function Ec(a,b){a.F&&a.F.xa(b)}
function Zc(a){this.Sc=+a.model||1170;this.Vb=a.resetAddr||0;yc.call(this,a,1E6);this.Ja=0;this.decode=$c.bind(this);this.B=65536;this.u=32768;this.w=65535;this.j=32768;this.g=-1;this.f=[0,0,0,0,0,0,0,this.Vb];this.Za=[0,0,0,0,0,0];this.sa=[0,0,0,0];this.memory=[];this.C=[];this.ha=this.Yb=0;this.Oa=2;this.Qa=255;this.V=0;this.ba=-1;this.L=0;this.gb=70;this.Xb=this.Kb=this.Jb=this.G=this.Ra=this.Ab=this.Da=this.ca=0;this.ib=[7,7,7,7];this.ka=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, function $c(a){this.Sc=+a.model||1170;this.Vb=a.resetAddr||0;zc.call(this,a,1E6);this.Ja=0;this.decode=ad.bind(this);this.B=65536;this.u=32768;this.w=65535;this.j=32768;this.f=[0,0,0,0,0,0,0,this.Vb];this.Za=[0,0,0,0,0,0];this.sa=[0,0,0,0];this.Pa=255;this.Xb=this.Kb=this.Jb=this.G=this.Ra=this.Ab=this.Da=this.ca=this.M=this.$b=0;this.ib=[7,7,7,7];this.ka=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,
0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.Sb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.fc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.A.complete=this.A.Hc=!1}w(Zc,yc);l=Zc.prototype; 65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.Sb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.fc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.g=-1;this.V=0;this.gb=70;this.ba=-1;this.C=[];this.ha=0;this.Oa=2;this.A.complete=this.A.Hc=!1}w($c,zc);l=$c.prototype;
l.reset=function(){this.A.ja&&this.ma();ad(this);Bc(this);this.A.error=!1;this.parent.reset.call(this)};function ad(a){a.Qa=255;a.L=0;a.C=[];a.Yb=0;a.ca=a.Da=a.Ab=a.Ra=a.Jb=0;a.ib[0]=a.ib[1]=a.ib[3]=7;a.Kb=0}l.uc=function(){return 0};l.save=function(){var a=new bd(this);a.set(0,[]);a.set(1,[this.Sa,this.X,this.jb]);a.set(2,Lb(this.H));return a.data()}; l.reset=function(){this.A.ja&&this.ma();bd(this);Cc(this);this.A.error=!1;this.parent.reset.call(this)};function bd(a){a.Pa=255;a.M=0;a.C=[];a.$b=0;a.ca=a.Da=a.Ab=a.Ra=a.Jb=0;a.ib[0]=a.ib[1]=a.ib[3]=7;a.Kb=0}l.uc=function(){return 0};l.save=function(){var a=new cd(this);a.set(0,[]);a.set(1,[this.Sa,this.X,this.jb]);a.set(2,Lb(this.H));return a.data()};
l.restore=function(a){var b=a[1];this.Sa=b[0];this.X=b[1];Vc(this,b[3]);a:{b=this.H;a=a[2];var d;for(d=0;d<a.length-1;d+=2){var c=a[d],f=a[d+1];if(f&&f.length<b.T){for(var e=0,h=Array(b.T),g=0;g<f.length-1;)for(var k=f[g++],m=f[g++];k--;)h[e++]=m;f=h}e=b.R[c];if(!e||!e.restore(f)){t("Unable to restore memory block "+c);b=!1;break a}}b=!0}return b}; l.restore=function(a){var b=a[1];this.Sa=b[0];this.X=b[1];Wc(this,b[3]);a:{b=this.H;a=a[2];var d;for(d=0;d<a.length-1;d+=2){var c=a[d],f=a[d+1];if(f&&f.length<b.T){for(var e=0,h=Array(b.T),g=0;g<f.length-1;)for(var k=f[g++],m=f[g++];k--;)h[e++]=m;f=h}e=b.R[c];if(!e||!e.restore(f)){t("Unable to restore memory block "+c);b=!1;break a}}b=!0}return b};
l.ua=function(a,b,d){switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":this.O[b]=d;this.Ja++;a=!0;break;default:a=this.parent.ua.call(this,a,b,d)}return a}; l.ua=function(a,b,d){switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":this.O[b]=d;this.Ja++;a=!0;break;default:a=this.parent.ua.call(this,a,b,d)}return a};
l.xa=function(a){if(this.Ja&&(a||!this.A.ja||this.A.sc)){for(a=0;a<this.f.length;a++)Uc(this,"R"+a,this.f[a]);a=$b(this);Uc(this,"PS",a);Uc(this,"NF",a&8?1:0,1);Uc(this,"ZF",a&4?1:0,1);Uc(this,"VF",a&2?1:0,1);Uc(this,"CF",a&1?1:0,1)}if(a=this.O.speed)a.textContent=this.A.ja&&this.P?this.P.toFixed(2)+"Mhz":"Stopped"}; l.xa=function(a){if(this.Ja&&(a||!this.A.ja||this.A.sc)){for(a=0;a<this.f.length;a++)Vc(this,"R"+a,this.f[a]);a=$b(this);Vc(this,"PS",a);Vc(this,"NF",a&8?1:0,1);Vc(this,"ZF",a&4?1:0,1);Vc(this,"VF",a&2?1:0,1);Vc(this,"CF",a&1?1:0,1)}if(a=this.O.speed)a.textContent=this.A.ja&&this.P?this.P.toFixed(2)+"Mhz":"Stopped"};
function I(a,b,d,c,f){for(var e=a.C.length;0<e--;)if(a.C[e].ed===c){0<e&&(a.C[e-1].Fa+=a.C[e].Fa);a.C.splice(e,1);break}if(0<=b){2===a.ha&&(b=0,a.ha=0,setTimeout(a.Eb,0));for(e=a.C.length;0<e--;){if(a.C[e].Fa>b){a.C[e].Fa-=b;break}b-=a.C[e].Fa}a.C.splice(e+1,0,{delay:b,priority:d&224,vector:c,callback:f})}a.Oa=2}function $b(a){return a.M=a.M&63728|(a.j&32768?8:0)|(a.w&65535?0:4)|(a.u&32768?2:0)|(a.B&65536?1:0)} function I(a,b,d,c,f){for(var e=a.C.length;0<e--;)if(a.C[e].ed===c){0<e&&(a.C[e-1].Fa+=a.C[e].Fa);a.C.splice(e,1);break}if(0<=b){2===a.ha&&(b=0,a.ha=0,setTimeout(a.Eb,0));for(e=a.C.length;0<e--;){if(a.C[e].Fa>b){a.C[e].Fa-=b;break}b-=a.C[e].Fa}a.C.splice(e+1,0,{delay:b,priority:d&224,vector:c,callback:f})}a.Oa=2}function $b(a){return a.L=a.L&63728|(a.j&32768?8:0)|(a.w&65535?0:4)|(a.u&32768?2:0)|(a.B&65536?1:0)}
function ac(a,b){a.j=b<<12;a.w=~b&4;a.u=b<<14;a.B=b<<16;if((b^a.M)&2048)for(var d=a.Za.length;0<=--d;){var c=a.f[d];a.f[d]=a.Za[d];a.Za[d]=c}a.G=b>>14&3;d=a.M>>14&3;a.G!=d&&(a.sa[d]=a.f[6],a.f[6]=a.sa[a.G]);a.Oa=2;a.M=b}function cd(a,b){a.V&128||(a.j=a.w=a.B=b,a.u=0)}function dd(a,b){a.V&128||(a.j=a.w=b,a.u=0)}function ed(a,b,d,c){a.V&128||(a.j=a.w=a.B=b,a.u=(d^c)&(c^b))} function ac(a,b){a.j=b<<12;a.w=~b&4;a.u=b<<14;a.B=b<<16;if((b^a.L)&2048)for(var d=a.Za.length;0<=--d;){var c=a.f[d];a.f[d]=a.Za[d];a.Za[d]=c}a.G=b>>14&3;d=a.L>>14&3;a.G!=d&&(a.sa[d]=a.f[6],a.f[6]=a.sa[a.G]);a.Oa=2;a.L=b}function dd(a,b){a.V&128||(a.j=a.w=a.B=b,a.u=0)}function ed(a,b){a.V&128||(a.j=a.w=b,a.u=0)}function fd(a,b,d,c){a.V&128||(a.j=a.w=a.B=b,a.u=(d^c)&(c^b))}
function K(a,b,d){var c,f,e=0;0>a.ba?a.ba=$b(a):a.G||(b=4,e=1);a.ca&57344||(a.Da=63222,a.Ab=b);a.G=0;0<=(c=N(a,b|65536))&&0<=(f=N(a,b+2&65535|65536))&&(ac(a,f&53247|a.ba>>2&12288),e&&(a.L|=4,a.f[6]=4),0<=fd(a,a.ba)&&0<=fd(a,a.f[7])&&(a.f[7]=c));a.V&=-113;a.ba=-1;throw b|d<<8;}function hc(a,b){var d=b>>13&31;31>d?a.Ra&32&&(b=a.Sb[d]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} function K(a,b,d){var c,f,e=0;0>a.ba?a.ba=$b(a):a.G||(b=4,e=1);a.ca&57344||(a.Da=63222,a.Ab=b);a.G=0;0<=(c=N(a,b|65536))&&0<=(f=N(a,b+2&65535|65536))&&(ac(a,f&53247|a.ba>>2&12288),e&&(a.M|=4,a.f[6]=4),0<=gd(a,a.ba)&&0<=gd(a,a.f[7])&&(a.f[7]=c));a.V&=-113;a.ba=-1;throw b|d<<8;}function hc(a,b){var d=b>>13&31;31>d?a.Ra&32&&(b=a.Sb[d]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b}
function gd(a,b,d){var c,f,e,h=0;if(d&a.Jb){c=b>>13&a.ib[a.G];f=a.ka[a.G][c];e=(a.ka[a.G][c+16]<<6)+(b&8191)&4194303;a.Ra&16?3932160<=e&&4186112>e&&(e=hc(a,e&262143)):(e&=262143,253952<=e&&(e|=4186112));3932160>e&&(3915776<=e&&(a.L|=32,K(a,4,24)),e&1&&!(d&1)&&(a.L|=64,K(a,4,26)));switch(f&7){case 1:h=4096;case 2:f|=128;d&B&&(h=8192);break;case 4:h=4096;case 5:d&B&&(h=4096);case 6:f|=d&B?192:128;break;default:h=32768}32512!==(f&32520)&&(f&8?f&32512&&(b&8128)<(f>>2&8128)&&(h|=16384):(b&8128)>(f>>2& function hd(a,b,d){var c,f,e,h=0;if(d&a.Jb){c=b>>13&a.ib[a.G];f=a.ka[a.G][c];e=(a.ka[a.G][c+16]<<6)+(b&8191)&4194303;a.Ra&16?3932160<=e&&4186112>e&&(e=hc(a,e&262143)):(e&=262143,253952<=e&&(e|=4186112));3932160>e&&(3915776<=e&&(a.M|=32,K(a,4,24)),e&1&&!(d&1)&&(a.M|=64,K(a,4,26)));switch(f&7){case 1:h=4096;case 2:f|=128;d&B&&(h=8192);break;case 4:h=4096;case 5:d&B&&(h=4096);case 6:f|=d&B?192:128;break;default:h=32768}32512!==(f&32520)&&(f&8?f&32512&&(b&8128)<(f>>2&8128)&&(h|=16384):(b&8128)>(f>>2&
8128)&&(h|=16384));a.ka[a.G][c]=f;if(4194170!==e||a.G)a.Kb=a.G,a.Xb=c;h&&(h&57344&&(0<=a.ba&&(h|=128),a.ca&57344||(a.ca=a.ca|h|a.Kb<<5|a.Xb<<1),K(a,168,28)),a.ca&61440||!(4191360>e||4194239<e)||(a.ca|=4096,a.ca&512&&(a.V|=32)))}else e=b&65535,57344<=e?e|=4186112:e&1&&!(d&1)&&(a.L|=64,K(a,4,22));return e}function M(a,b){return 4194304<=b?a.f[b-4194304]:0<=b?a.H.Ha(b):b}function L(a,b,d){d&=65535;return 4194304<=b?a.f[b-4194304]=d:0<=b?(a.H.jc(b,d),d):b} 8128)&&(h|=16384));a.ka[a.G][c]=f;if(4194170!==e||a.G)a.Kb=a.G,a.Xb=c;h&&(h&57344&&(0<=a.ba&&(h|=128),a.ca&57344||(a.ca=a.ca|h|a.Kb<<5|a.Xb<<1),K(a,168,28)),a.ca&61440||!(4191360>e||4194239<e)||(a.ca|=4096,a.ca&512&&(a.V|=32)))}else e=b&65535,57344<=e?e|=4186112:e&1&&!(d&1)&&(a.M|=64,K(a,4,22));return e}function M(a,b){return 4194304<=b?a.f[b-4194304]:0<=b?a.H.Ha(b):b}function L(a,b,d){d&=65535;return 4194304<=b?a.f[b-4194304]=d:0<=b?(a.H.jc(b,d),d):b}
function O(a,b){return 4194304<=b?a.f[b-4194304]&255:0<=b?a.H.Hb(b):b}function P(a,b,d){d&=255;return 4194304<=b?a.f[b-4194304]=a.f[b-4194304]&65280|d:0<=b?(a.H.bc(b,d),d):b}function N(a,b){return M(a,gd(a,b,ub))}function hd(a){var b=N(a,a.f[6]|65536);0<=b&&(a.f[6]=a.f[6]+2&65535);return b}function fd(a,b){var d,c;a.f[6]=c=a.f[6]-2&65535;a.ca&57344||(a.Da=a.Da<<8|246);!a.G&&c<=a.Qa&&4<c&&(c<=a.Qa-32?(a.L|=4,a.f[6]=4,K(a,4,32)):(a.L|=8,a.V|=4));return 0<=(d=gd(a,c|65536,B))?L(a,d,b):d} function O(a,b){return 4194304<=b?a.f[b-4194304]&255:0<=b?a.H.Hb(b):b}function P(a,b,d){d&=255;return 4194304<=b?a.f[b-4194304]=a.f[b-4194304]&65280|d:0<=b?(a.H.bc(b,d),d):b}function N(a,b){return M(a,hd(a,b,ub))}function id(a){var b=N(a,a.f[6]|65536);0<=b&&(a.f[6]=a.f[6]+2&65535);return b}function gd(a,b){var d,c;a.f[6]=c=a.f[6]-2&65535;a.ca&57344||(a.Da=a.Da<<8|246);!a.G&&c<=a.Pa&&4<c&&(c<=a.Pa-32?(a.M|=4,a.f[6]=4,K(a,4,32)):(a.M|=8,a.V|=4));return 0<=(d=hd(a,c|65536,B))?L(a,d,b):d}
function id(a,b,d){var c,f,e=b&7;switch(b>>3&7){case 0:K(a,4,34);break;case 1:return 6===e&&!a.G&&d&B&&(a.f[6]<=a.Qa||65534<=a.f[6])&&(a.f[6]<=a.Qa-32||65534<=a.f[6]?(a.L|=4,a.f[6]=4,K(a,4,36)):(a.L|=8,a.V|=64)),7===e?a.f[e]:a.f[e]|65536;case 2:f=2;c=a.f[e];7!==e&&(c|=65536,6>e&&d&1&&(f=1));break;case 3:f=2;c=a.f[e];7!==e&&(c|=65536);if(0>(c=N(a,c)))return c;c|=65536;break;case 4:f=-2;6>e&&d&1&&(f=-1);c=a.f[e]+f&65535;7!==e&&(c|=65536);break;case 5:f=-2;c=a.f[e]-2&65535;7!==e&&(c|=65536);if(0>(c= function jd(a,b,d){var c,f,e=b&7;switch(b>>3&7){case 0:K(a,4,34);break;case 1:return 6===e&&!a.G&&d&B&&(a.f[6]<=a.Pa||65534<=a.f[6])&&(a.f[6]<=a.Pa-32||65534<=a.f[6]?(a.M|=4,a.f[6]=4,K(a,4,36)):(a.M|=8,a.V|=64)),7===e?a.f[e]:a.f[e]|65536;case 2:f=2;c=a.f[e];7!==e&&(c|=65536,6>e&&d&1&&(f=1));break;case 3:f=2;c=a.f[e];7!==e&&(c|=65536);if(0>(c=N(a,c)))return c;c|=65536;break;case 4:f=-2;6>e&&d&1&&(f=-1);c=a.f[e]+f&65535;7!==e&&(c|=65536);break;case 5:f=-2;c=a.f[e]-2&65535;7!==e&&(c|=65536);if(0>(c=
N(a,c)))return c;c|=65536;break;case 6:if(0>(c=N(a,a.f[7])))return c;a.f[7]=a.f[7]+2&65535;c=c+a.f[e]&65535;return c|65536;case 7:if(0>(c=N(a,a.f[7])))return c;a.f[7]=a.f[7]+2&65535;c=c+a.f[e]&65535;return 0>(c=N(a,c|65536))?c:c|65536}a.f[e]=a.f[e]+f&65535;a.ca&57344||(a.Da=a.Da<<8|f<<3&248|e);6===e&&!a.G&&d&B&&0>=f&&(a.f[6]<=a.Qa||65534<=a.f[6])&&(a.f[6]<=a.Qa-32?(a.L|=4,a.f[6]=4,K(a,4,38)):(a.L|=8,a.V|=64));return c}function Q(a,b,d){b&56?(b=id(a,b,d),a=gd(a,b,d)):a=4194304+(b&7);return a} N(a,c)))return c;c|=65536;break;case 6:if(0>(c=N(a,a.f[7])))return c;a.f[7]=a.f[7]+2&65535;c=c+a.f[e]&65535;return c|65536;case 7:if(0>(c=N(a,a.f[7])))return c;a.f[7]=a.f[7]+2&65535;c=c+a.f[e]&65535;return 0>(c=N(a,c|65536))?c:c|65536}a.f[e]=a.f[e]+f&65535;a.ca&57344||(a.Da=a.Da<<8|f<<3&248|e);6===e&&!a.G&&d&B&&0>=f&&(a.f[6]<=a.Pa||65534<=a.f[6])&&(a.f[6]<=a.Pa-32?(a.M|=4,a.f[6]=4,K(a,4,38)):(a.M|=8,a.V|=64));return c}function Q(a,b,d){b&56?(b=jd(a,b,d),a=hd(a,b,d)):a=4194304+(b&7);return a}
function R(a,b){b&56?(b=Q(a,b,ub),a=M(a,b)):a=a.f[b&7];return a}function S(a,b){b&56?(b=Q(a,b,vb),a=O(a,b)):a=a.f[b&7]&255;return a}function jd(a,b,d,c){b&56?(b=Q(a,b,C),L(a,b,c.call(a,d,M(a,b)))):(b&=7,a.f[b]=c.call(a,d,a.f[b])&65535)}function kd(a,b,d,c){b&56?(b=Q(a,b,D),P(a,b,c.call(a,d,O(a,b)))):(b&=7,a.f[b]=a.f[b]&65280|c.call(a,d,a.f[b])&255)}function ld(a,b,d){b&56?L(a,Q(a,b,B),d):a.f[b&7]=d&65535;return d} function R(a,b){b&56?(b=Q(a,b,ub),a=M(a,b)):a=a.f[b&7];return a}function S(a,b){b&56?(b=Q(a,b,vb),a=O(a,b)):a=a.f[b&7]&255;return a}function kd(a,b,d,c){b&56?(b=Q(a,b,C),L(a,b,c.call(a,d,M(a,b)))):(b&=7,a.f[b]=c.call(a,d,a.f[b])&65535)}function ld(a,b,d,c){b&56?(b=Q(a,b,D),P(a,b,c.call(a,d,O(a,b)))):(b&=7,a.f[b]=a.f[b]&65280|c.call(a,d,a.f[b])&255)}function md(a,b,d){b&56?L(a,Q(a,b,B),d):a.f[b&7]=d&65535;return d}
function md(a,b,d,c){b&56?P(a,Q(a,b,wb),d):(b&=7,a.f[b]=c?c&1?a.f[b]&-256:d<<24>>24&65535:a.f[b]&-256|d&255);return d}function T(a,b){return((b&128?b|65280:b&255)<<1)+a&65535} function nd(a,b,d,c){b&56?P(a,Q(a,b,wb),d):(b&=7,a.f[b]=c?c&1?a.f[b]&-256:d<<24>>24&65535:a.f[b]&-256|d&255);return d}function T(a,b){return((b&128?b|65280:b&255)<<1)+a&65535}
l.wb=function(a){this.A.complete=!0;var b=this.A.Hc=this.I&&nd(this.I),d=a?this.A.kc?0:1:-1;this.A.kc=!1;this.W=this.b=a;this.Sa&256?(Yc(this),a=!1):a=!0;if(a){do{if(b){if(od(this.I,this.f[7],d)){this.ma();break}d=1}var c,f,e,h,g;this.V&112&&(this.V&32?K(this,168,52):this.V&64?K(this,4,54):this.V&16&&K(this,12,56),this.V&=-113);if(this.Oa)if(1===this.Oa)this.Oa=2;else{this.Oa=0;g=-1;c=this.Yb&224;if(0<(a=this.C.length))for(;0<a--;){if(0<this.C[a].Fa){this.C[a].Fa--;this.Oa=2;break}if(this.C[a].pc){if(!this.C[a].pc()){this.C.splice(a, l.wb=function(a){this.A.complete=!0;var b=this.A.Hc=this.I&&od(this.I),d=a?this.A.kc?0:1:-1;this.A.kc=!1;this.W=this.b=a;this.Sa&256?(Zc(this),a=!1):a=!0;if(a){do{if(b){if(pd(this.I,this.f[7],d)){this.ma();break}d=1}var c,f,e,h,g;this.V&112&&(this.V&32?K(this,168,52):this.V&64?K(this,4,54):this.V&16&&K(this,12,56),this.V&=-113);if(this.Oa)if(1===this.Oa)this.Oa=2;else{this.Oa=0;g=-1;c=this.$b&224;if(0<(a=this.C.length))for(;0<a--;){if(0<this.C[a].Fa){this.C[a].Fa--;this.Oa=2;break}if(this.C[a].pc){if(!this.C[a].pc()){this.C.splice(a,
1);g--;continue}this.C[a].pc=null}this.C[a].Tc>c&&(c=this.C[a].Tc,g=a)}c>(this.M&224)&&(0>g?K(this,160,42):(K(this,this.C[g].ed,44),this.C.splice(g,1)))}this.ca&57344||(this.Da=0,this.Ab=this.f[7]);this.V=this.M&16;this.g=a=N(this,this.f[7]);0<=a&&(this.f[7]=this.f[7]+2&65535);this.decode(a);if(0>this.g)switch(a&61440){case 4096:0<=(c=R(this,a>>6))&&(a&56?0<=(e=Q(this,a,B))&&0<=L(this,e,c)&&(this.j=this.w=c,this.u=0):(this.j=this.w=this.f[a&7]=c,this.u=0));break;case 8192:0<=(c=R(this,a>>6))&&0<= 1);g--;continue}this.C[a].pc=null}this.C[a].Tc>c&&(c=this.C[a].Tc,g=a)}c>(this.L&224)&&(0>g?K(this,160,42):(K(this,this.C[g].ed,44),this.C.splice(g,1)))}this.ca&57344||(this.Da=0,this.Ab=this.f[7]);this.V=this.L&16;this.g=a=N(this,this.f[7]);0<=a&&(this.f[7]=this.f[7]+2&65535);this.decode(a);if(0>this.g)switch(a&61440){case 4096:0<=(c=R(this,a>>6))&&(a&56?0<=(e=Q(this,a,B))&&0<=L(this,e,c)&&(this.j=this.w=c,this.u=0):(this.j=this.w=this.f[a&7]=c,this.u=0));break;case 8192:0<=(c=R(this,a>>6))&&0<=
(f=R(this,a))&&(this.j=this.w=this.B=a=c-f,this.u=(c^f)&(c^a));break;case 12288:0<=(c=R(this,a>>6))&&0<=(f=R(this,a))&&(this.j=this.w=c&f,this.u=0);break;case 16384:0<=(c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f&~c,0<=L(this,e,a)&&(this.j=this.w=a,this.u=0)):(this.j=this.w=a=this.f[a&7]&=~c,this.u=0));break;case 20480:0<=(c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f|c,0<=L(this,e,a)&&(this.j=this.w=a,this.u=0)):(this.j=this.w=a=this.f[a&7]|=c,this.u=0));break;case 24576:0<= (f=R(this,a))&&(this.j=this.w=this.B=a=c-f,this.u=(c^f)&(c^a));break;case 12288:0<=(c=R(this,a>>6))&&0<=(f=R(this,a))&&(this.j=this.w=c&f,this.u=0);break;case 16384:0<=(c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f&~c,0<=L(this,e,a)&&(this.j=this.w=a,this.u=0)):(this.j=this.w=a=this.f[a&7]&=~c,this.u=0));break;case 20480:0<=(c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f|c,0<=L(this,e,a)&&(this.j=this.w=a,this.u=0)):(this.j=this.w=a=this.f[a&7]|=c,this.u=0));break;case 24576:0<=
(c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=c+f,0<=L(this,e,a)&&(this.j=this.w=this.B=a,this.u=(c^a)&(f^a))):(g=a&7,f=this.f[g],this.f[g]=(a=c+f)&65535,this.j=this.w=this.B=a,this.u=(c^a)&(f^a)));break;case 36864:0<=(c=S(this,a>>6))&&(a&56?0<=(e=Q(this,a,wb))&&0<=P(this,e,c)&&(this.j=this.w=c<<8,this.u=0):(c&128&&(c|=65280),this.j=this.w=this.f[a&7]=c,this.u=0));break;case 40960:0<=(c=S(this,a>>6))&&0<=(f=S(this,a))&&(a=c-f,this.j=this.w=this.B=a<<8,this.u=((c^f)&(c^a))<<8);break;case 45056:0<= (c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=c+f,0<=L(this,e,a)&&(this.j=this.w=this.B=a,this.u=(c^a)&(f^a))):(g=a&7,f=this.f[g],this.f[g]=(a=c+f)&65535,this.j=this.w=this.B=a,this.u=(c^a)&(f^a)));break;case 36864:0<=(c=S(this,a>>6))&&(a&56?0<=(e=Q(this,a,wb))&&0<=P(this,e,c)&&(this.j=this.w=c<<8,this.u=0):(c&128&&(c|=65280),this.j=this.w=this.f[a&7]=c,this.u=0));break;case 40960:0<=(c=S(this,a>>6))&&0<=(f=S(this,a))&&(a=c-f,this.j=this.w=this.B=a<<8,this.u=((c^f)&(c^a))<<8);break;case 45056:0<=
(c=S(this,a>>6))&&0<=(f=S(this,a))&&(this.j=this.w=(c&f)<<8,this.u=0);break;case 49152:0<=(c=S(this,a>>6))&&0<=(f=O(this,e=Q(this,a,D)))&&(a=f&~c,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=0));break;case 53248:0<=(c=S(this,a>>6))&&0<=(f=O(this,e=Q(this,a,D)))&&(a=f|c,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=0));break;case 57344:0<=(c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f-c,0<=L(this,e,a)&&(this.j=this.w=this.B=a,this.u=(c^f)&(f^a))):(g=a&7,f=this.f[g],this.f[g]=(a=f-c)&65535,this.j= (c=S(this,a>>6))&&0<=(f=S(this,a))&&(this.j=this.w=(c&f)<<8,this.u=0);break;case 49152:0<=(c=S(this,a>>6))&&0<=(f=O(this,e=Q(this,a,D)))&&(a=f&~c,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=0));break;case 53248:0<=(c=S(this,a>>6))&&0<=(f=O(this,e=Q(this,a,D)))&&(a=f|c,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=0));break;case 57344:0<=(c=R(this,a>>6))&&(a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f-c,0<=L(this,e,a)&&(this.j=this.w=this.B=a,this.u=(c^f)&(f^a))):(g=a&7,f=this.f[g],this.f[g]=(a=f-c)&65535,this.j=
this.w=this.B=a,this.u=(c^f)&(f^a)));break;default:switch(a&65024){case 2048:0<=(h=id(this,a,0))&&(g=a>>6&7,0<=fd(this,this.f[g])&&(this.f[g]=this.f[7],this.f[7]=h&65535));break;case 28672:0<=(c=R(this,a))&&(g=a>>6&7,c&32768&&(c|=-65536),f=this.f[g],f&32768&&(f|=-65536),a=~~(c*f),this.f[g]=a>>16&65535,this.f[g|1]=a&65535,this.j=a>>16,this.w=this.j|a,this.B=this.u=0,-32768>a||32767<a)&&(this.B=65536);break;case 29184:0<=(c=R(this,a))&&(c?(g=a>>6&7,f=this.f[g]<<16|this.f[g|1],this.B=this.u=0,c&32768&& this.w=this.B=a,this.u=(c^f)&(f^a)));break;default:switch(a&65024){case 2048:0<=(h=jd(this,a,0))&&(g=a>>6&7,0<=gd(this,this.f[g])&&(this.f[g]=this.f[7],this.f[7]=h&65535));break;case 28672:0<=(c=R(this,a))&&(g=a>>6&7,c&32768&&(c|=-65536),f=this.f[g],f&32768&&(f|=-65536),a=~~(c*f),this.f[g]=a>>16&65535,this.f[g|1]=a&65535,this.j=a>>16,this.w=this.j|a,this.B=this.u=0,-32768>a||32767<a)&&(this.B=65536);break;case 29184:0<=(c=R(this,a))&&(c?(g=a>>6&7,f=this.f[g]<<16|this.f[g|1],this.B=this.u=0,c&32768&&
(c|=-65536),a=~~(f/c),-32768<=a&&32767>=a?(this.f[g]=a&65535,this.f[g|1]=f-a*c&65535,this.w=a>>16|a,this.j=a>>16):(this.u=32768,this.w=a>>15|a,this.j=f>>16,-1===c&&65534===this.f[g]&&(this.f[g]=this.f[g|1]=1))):(this.w=this.j=0,this.u=32768,this.B=65536));break;case 29696:0<=(c=R(this,a))&&(g=a>>6&7,a=this.f[g],a&32768&&(a|=4294901760),this.B=this.u=0,c&=63,c&32?(c=64-c,16<c&&(c=16),this.B=a<<17-c,a>>=c):c&&(16<c?(this.u=a,a=0):(this.B=a<<=c,(f=a>>15&65535)&&65535!==f&&(this.u=32768))),this.f[g]= (c|=-65536),a=~~(f/c),-32768<=a&&32767>=a?(this.f[g]=a&65535,this.f[g|1]=f-a*c&65535,this.w=a>>16|a,this.j=a>>16):(this.u=32768,this.w=a>>15|a,this.j=f>>16,-1===c&&65534===this.f[g]&&(this.f[g]=this.f[g|1]=1))):(this.w=this.j=0,this.u=32768,this.B=65536));break;case 29696:0<=(c=R(this,a))&&(g=a>>6&7,a=this.f[g],a&32768&&(a|=4294901760),this.B=this.u=0,c&=63,c&32?(c=64-c,16<c&&(c=16),this.B=a<<17-c,a>>=c):c&&(16<c?(this.u=a,a=0):(this.B=a<<=c,(f=a>>15&65535)&&65535!==f&&(this.u=32768))),this.f[g]=
a&65535,this.j=this.w=a);break;case 30208:if(0<=(c=R(this,a))){g=a>>6&7;f=this.f[g]<<16|this.f[g|1];this.B=this.u=0;c&=63;if(c&32)c=64-c,32<c&&(c=32),a=f>>c-1,this.B=a<<16,a>>=1,f&2147483648&&(a|=4294967295<<32-c);else if(c){if(a=f<<c-1,this.B=a>>15,a<<=1,32<c&&(c=32),f>>=32-c)f|=4294967295<<c&4294967295,4294967295!==f&&(this.u=32768)}else a=f;this.f[g]=a>>16&65535;this.f[g|1]=a&65535;this.j=a>>16;this.w=a>>16|a}break;case 30720:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(f^=this.f[a>>6&7],0<=L(this,e,f)&& a&65535,this.j=this.w=a);break;case 30208:if(0<=(c=R(this,a))){g=a>>6&7;f=this.f[g]<<16|this.f[g|1];this.B=this.u=0;c&=63;if(c&32)c=64-c,32<c&&(c=32),a=f>>c-1,this.B=a<<16,a>>=1,f&2147483648&&(a|=4294967295<<32-c);else if(c){if(a=f<<c-1,this.B=a>>15,a<<=1,32<c&&(c=32),f>>=32-c)f|=4294967295<<c&4294967295,4294967295!==f&&(this.u=32768)}else a=f;this.f[g]=a>>16&65535;this.f[g|1]=a&65535;this.j=a>>16;this.w=a>>16|a}break;case 30720:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(f^=this.f[a>>6&7],0<=L(this,e,f)&&
(this.j=this.w=f,this.u=0)):(this.j=this.w=f=this.f[a&7]^=this.f[a>>6&7],this.u=0);break;case 32256:g=a>>6&7;if(this.f[g]=this.f[g]-1&65535)this.f[7]=this.f[7]-((a&63)<<1)&65535;break;default:switch(a&65280){case 256:this.f[7]=T(this.f[7],a);break;case 512:this.w&65535&&(this.f[7]=T(this.f[7],a));break;case 768:this.w&65535||(this.f[7]=T(this.f[7],a));break;case 1024:(this.j&32768)===(this.u&32768)&&(this.f[7]=T(this.f[7],a));break;case 1280:(this.j&32768)!==(this.u&32768)&&(this.f[7]=T(this.f[7], (this.j=this.w=f,this.u=0)):(this.j=this.w=f=this.f[a&7]^=this.f[a>>6&7],this.u=0);break;case 32256:g=a>>6&7;if(this.f[g]=this.f[g]-1&65535)this.f[7]=this.f[7]-((a&63)<<1)&65535;break;default:switch(a&65280){case 256:this.f[7]=T(this.f[7],a);break;case 512:this.w&65535&&(this.f[7]=T(this.f[7],a));break;case 768:this.w&65535||(this.f[7]=T(this.f[7],a));break;case 1024:(this.j&32768)===(this.u&32768)&&(this.f[7]=T(this.f[7],a));break;case 1280:(this.j&32768)!==(this.u&32768)&&(this.f[7]=T(this.f[7],
a));break;case 1536:this.w&65535&&(this.j&32768)===(this.u&32768)&&(this.f[7]=T(this.f[7],a));break;case 1792:this.w&65535&&(this.j&32768)===(this.u&32768)||(this.f[7]=T(this.f[7],a));break;case 32768:this.j&32768||(this.f[7]=T(this.f[7],a));break;case 33280:!(this.B&65536)&&this.w&65535&&(this.f[7]=T(this.f[7],a));break;case 33024:this.j&32768&&(this.f[7]=T(this.f[7],a));break;case 33536:if(this.B&65536||!(this.w&65535))this.f[7]=T(this.f[7],a);break;case 33792:this.u&32768||(this.f[7]=T(this.f[7], a));break;case 1536:this.w&65535&&(this.j&32768)===(this.u&32768)&&(this.f[7]=T(this.f[7],a));break;case 1792:this.w&65535&&(this.j&32768)===(this.u&32768)||(this.f[7]=T(this.f[7],a));break;case 32768:this.j&32768||(this.f[7]=T(this.f[7],a));break;case 33280:!(this.B&65536)&&this.w&65535&&(this.f[7]=T(this.f[7],a));break;case 33024:this.j&32768&&(this.f[7]=T(this.f[7],a));break;case 33536:if(this.B&65536||!(this.w&65535))this.f[7]=T(this.f[7],a);break;case 33792:this.u&32768||(this.f[7]=T(this.f[7],
a));break;case 34048:this.u&32768&&(this.f[7]=T(this.f[7],a));break;case 34304:this.B&65536||(this.f[7]=T(this.f[7],a));break;case 34560:this.B&65536&&(this.f[7]=T(this.f[7],a));break;case 34816:K(this,24,2);break;case 35072:K(this,28,4);break;default:switch(a&65472){case 64:0<=(h=id(this,a,0))&&(this.f[7]=h&65535);break;case 192:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f<<8|f>>8,0<=L(this,e,a)&&(this.j=this.w=f&65280,this.u=this.B=0)):(g=a&7,f=this.f[g],this.f[g]=(f<<8|f>>8)&65535,this.j=this.w=f&65280, a));break;case 34048:this.u&32768&&(this.f[7]=T(this.f[7],a));break;case 34304:this.B&65536||(this.f[7]=T(this.f[7],a));break;case 34560:this.B&65536&&(this.f[7]=T(this.f[7],a));break;case 34816:K(this,24,2);break;case 35072:K(this,28,4);break;default:switch(a&65472){case 64:0<=(h=jd(this,a,0))&&(this.f[7]=h&65535);break;case 192:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f<<8|f>>8,0<=L(this,e,a)&&(this.j=this.w=f&65280,this.u=this.B=0)):(g=a&7,f=this.f[g],this.f[g]=(f<<8|f>>8)&65535,this.j=this.w=f&65280,
this.u=this.B=0);break;case 2560:a&56?0<=(e=Q(this,a,B))&&0<=L(this,e,0)&&(this.j=this.B=this.u=this.w=0):this.j=this.B=this.u=this.w=this.f[a&7]=0;break;case 2624:0<=(f=M(this,e=Q(this,a,C)))&&(a=~f,0<=L(this,e,a)&&(this.j=this.w=a,this.B=65536,this.u=0));break;case 2688:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f+1,0<=L(this,e,a)&&(this.j=this.w=a,this.u=a&(a^f))):(g=a&7,f=this.f[g],a=f+1,this.f[g]=a&65535,this.j=this.w=a,this.u=a&(a^f));break;case 2752:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f-1,0<= this.u=this.B=0);break;case 2560:a&56?0<=(e=Q(this,a,B))&&0<=L(this,e,0)&&(this.j=this.B=this.u=this.w=0):this.j=this.B=this.u=this.w=this.f[a&7]=0;break;case 2624:0<=(f=M(this,e=Q(this,a,C)))&&(a=~f,0<=L(this,e,a)&&(this.j=this.w=a,this.B=65536,this.u=0));break;case 2688:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f+1,0<=L(this,e,a)&&(this.j=this.w=a,this.u=a&(a^f))):(g=a&7,f=this.f[g],a=f+1,this.f[g]=a&65535,this.j=this.w=a,this.u=a&(a^f));break;case 2752:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f-1,0<=
L(this,e,a)&&(this.j=this.w=a,this.u=(a^f)&f)):(g=a&7,f=this.f[g],a=f-1,this.f[g]=a&65535,this.j=this.w=a,this.u=(a^f)&f);break;case 2816:0<=(f=M(this,e=Q(this,a,C)))&&(a=-f,0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a&f));break;case 2880:0<=(f=M(this,e=Q(this,a,C)))&&(a=f+(this.B>>16&1),0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a&(a^f)));break;case 2944:0<=(f=M(this,e=Q(this,a,C)))&&(a=f-(this.B>>16&1),0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=(a^f)&f));break;case 3008:0<=(f=R(this, L(this,e,a)&&(this.j=this.w=a,this.u=(a^f)&f)):(g=a&7,f=this.f[g],a=f-1,this.f[g]=a&65535,this.j=this.w=a,this.u=(a^f)&f);break;case 2816:0<=(f=M(this,e=Q(this,a,C)))&&(a=-f,0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a&f));break;case 2880:0<=(f=M(this,e=Q(this,a,C)))&&(a=f+(this.B>>16&1),0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a&(a^f)));break;case 2944:0<=(f=M(this,e=Q(this,a,C)))&&(a=f-(this.B>>16&1),0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=(a^f)&f));break;case 3008:0<=(f=R(this,
a))&&(this.j=this.w=f,this.B=this.u=0);break;case 3072:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=(this.B&65536|f)>>1,0<=L(this,e,a)&&(this.B=f<<16,this.j=this.w=a,this.u=a^this.B>>1)):(g=a&7,f=this.f[g],a=(this.B&65536|f)>>1,this.f[g]=a&65535,this.B=f<<16,this.j=this.w=a,this.u=a^this.B>>1);break;case 3136:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f<<1|this.B>>16&1,0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a^f)):(g=a&7,f=this.f[g],a=f<<1|this.B>>16&1,this.f[g]=a&65535,this.B=this.j=this.w=a,this.u=a^ a))&&(this.j=this.w=f,this.B=this.u=0);break;case 3072:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=(this.B&65536|f)>>1,0<=L(this,e,a)&&(this.B=f<<16,this.j=this.w=a,this.u=a^this.B>>1)):(g=a&7,f=this.f[g],a=(this.B&65536|f)>>1,this.f[g]=a&65535,this.B=f<<16,this.j=this.w=a,this.u=a^this.B>>1);break;case 3136:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f<<1|this.B>>16&1,0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a^f)):(g=a&7,f=this.f[g],a=f<<1|this.B>>16&1,this.f[g]=a&65535,this.B=this.j=this.w=a,this.u=a^
f);break;case 3200:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f&32768|f>>1,0<=L(this,e,a)&&(this.B=f<<16,this.j=this.w=a,this.u=this.j^this.B>>1)):(g=a&7,f=this.f[g],a=f&32768|f>>1,this.f[g]=a&65535,this.B=f<<16,this.j=this.w=a,this.u=this.j^this.B>>1);break;case 3264:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f<<1,0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a^f)):(g=a&7,f=this.f[g],a=f<<1,this.f[g]=a&65535,this.B=this.j=this.w=a,this.u=a^f);break;case 3328:h=this.f[7]+((a&63)<<1)&65535;0<=(c=N(this,h|65536))&& f);break;case 3200:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f&32768|f>>1,0<=L(this,e,a)&&(this.B=f<<16,this.j=this.w=a,this.u=this.j^this.B>>1)):(g=a&7,f=this.f[g],a=f&32768|f>>1,this.f[g]=a&65535,this.B=f<<16,this.j=this.w=a,this.u=this.j^this.B>>1);break;case 3264:a&56?0<=(f=M(this,e=Q(this,a,C)))&&(a=f<<1,0<=L(this,e,a)&&(this.B=this.j=this.w=a,this.u=a^f)):(g=a&7,f=this.f[g],a=f<<1,this.f[g]=a&65535,this.B=this.j=this.w=a,this.u=a^f);break;case 3328:h=this.f[7]+((a&63)<<1)&65535;0<=(c=N(this,h|65536))&&
(this.f[7]=this.f[5],this.f[5]=c,this.f[6]=h+2&65535);break;case 3392:a&56?0<=(h=id(this,a,0))&&(61440!==(this.M&61440)&&(h&=65535),this.G=this.M>>12&3,0<=(c=N(this,h))&&(this.G=this.M>>14&3,0<=fd(this,c)&&(this.j=this.w=c,this.u=0))):(g=a&7,c=6!==g||(this.M>>2&12288)===(this.M&12288)?this.f[g]:this.sa[this.M>>12&3],0<=fd(this,c)&&(this.j=this.w=c,this.u=0));break;case 3456:0<=(f=hd(this))&&((this.ca&57344||(this.Da=22),a&56)?0<=(h=id(this,a,0))&&(h&=65535,this.G=this.M>>12&3,0<=(e=gd(this,h,B))&& (this.f[7]=this.f[5],this.f[5]=c,this.f[6]=h+2&65535);break;case 3392:a&56?0<=(h=jd(this,a,0))&&(61440!==(this.L&61440)&&(h&=65535),this.G=this.L>>12&3,0<=(c=N(this,h))&&(this.G=this.L>>14&3,0<=gd(this,c)&&(this.j=this.w=c,this.u=0))):(g=a&7,c=6!==g||(this.L>>2&12288)===(this.L&12288)?this.f[g]:this.sa[this.L>>12&3],0<=gd(this,c)&&(this.j=this.w=c,this.u=0));break;case 3456:0<=(f=id(this))&&((this.ca&57344||(this.Da=22),a&56)?0<=(h=jd(this,a,0))&&(h&=65535,this.G=this.L>>12&3,0<=(e=hd(this,h,B))&&
(this.G=this.M>>14&3,0<=L(this,e,f)&&(this.j=this.w=f,this.u=0))):(g=a&7,6!==g||(this.M>>2&12288)===(this.M&12288)?this.f[g]=f:this.sa[this.M>>12&3]=f,this.j=this.w=f,this.u=0));break;case 3520:0<=(e=Q(this,a,B))&&(a=-(this.j>>15&1),0<=L(this,e,a)&&(this.w=a,this.u=0));break;case 35328:a&56?0<=(e=Q(this,a,wb))&&0<=P(this,e,0)&&(this.j=this.B=this.u=this.w=0):(this.f[a&7]&=65280,this.j=this.B=this.u=this.w=0);break;case 35392:0<=(f=O(this,e=Q(this,a,D)))&&(a=~f,0<=P(this,e,a)&&(this.j=this.w=a<<8, (this.G=this.L>>14&3,0<=L(this,e,f)&&(this.j=this.w=f,this.u=0))):(g=a&7,6!==g||(this.L>>2&12288)===(this.L&12288)?this.f[g]=f:this.sa[this.L>>12&3]=f,this.j=this.w=f,this.u=0));break;case 3520:0<=(e=Q(this,a,B))&&(a=-(this.j>>15&1),0<=L(this,e,a)&&(this.w=a,this.u=0));break;case 35328:a&56?0<=(e=Q(this,a,wb))&&0<=P(this,e,0)&&(this.j=this.B=this.u=this.w=0):(this.f[a&7]&=65280,this.j=this.B=this.u=this.w=0);break;case 35392:0<=(f=O(this,e=Q(this,a,D)))&&(a=~f,0<=P(this,e,a)&&(this.j=this.w=a<<8,
this.B=65536,this.u=0));break;case 35456:0<=(f=O(this,e=Q(this,a,D)))&&(a=f+1,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=(a&(a^f))<<8));break;case 35520:0<=(f=O(this,e=Q(this,a,D)))&&(a=f-1,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=((a^f)&f)<<8));break;case 35584:0<=(f=O(this,e=Q(this,a,D)))&&(a=-f,0<=P(this,e,a)&&(this.B=this.j=this.w=a<<8,this.u=(a&f)<<8));break;case 35648:0<=(f=O(this,e=Q(this,a,D)))&&(a=f+(this.B>>16&1),0<=P(this,e,a)&&(this.j=this.w=this.B=a<<8,this.u=(a&(a^f))<<8));break;case 35712:0<= this.B=65536,this.u=0));break;case 35456:0<=(f=O(this,e=Q(this,a,D)))&&(a=f+1,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=(a&(a^f))<<8));break;case 35520:0<=(f=O(this,e=Q(this,a,D)))&&(a=f-1,0<=P(this,e,a)&&(this.j=this.w=a<<8,this.u=((a^f)&f)<<8));break;case 35584:0<=(f=O(this,e=Q(this,a,D)))&&(a=-f,0<=P(this,e,a)&&(this.B=this.j=this.w=a<<8,this.u=(a&f)<<8));break;case 35648:0<=(f=O(this,e=Q(this,a,D)))&&(a=f+(this.B>>16&1),0<=P(this,e,a)&&(this.j=this.w=this.B=a<<8,this.u=(a&(a^f))<<8));break;case 35712:0<=
(f=O(this,e=Q(this,a,D)))&&(a=f-(this.B>>16&1),0<=P(this,e,a)&&(this.j=this.w=this.B=a<<8,this.u=((a^f)&f)<<8));break;case 35776:0<=(f=S(this,a))&&(this.j=this.w=f<<8,this.B=this.u=0);break;case 35840:0<=(f=O(this,e=Q(this,a,D)))&&(a=((this.B&65536)>>8|f)>>1,0<=P(this,e,a)&&(this.B=f<<16,this.j=this.w=a<<8,this.u=this.j^this.B>>1));break;case 35904:0<=(f=O(this,e=Q(this,a,D)))&&(a=f<<1|this.B>>16&1,0<=P(this,e,a)&&(this.B=this.j=this.w=a<<8,this.u=(a^f)<<8));break;case 35968:0<=(f=O(this,e=Q(this, (f=O(this,e=Q(this,a,D)))&&(a=f-(this.B>>16&1),0<=P(this,e,a)&&(this.j=this.w=this.B=a<<8,this.u=((a^f)&f)<<8));break;case 35776:0<=(f=S(this,a))&&(this.j=this.w=f<<8,this.B=this.u=0);break;case 35840:0<=(f=O(this,e=Q(this,a,D)))&&(a=((this.B&65536)>>8|f)>>1,0<=P(this,e,a)&&(this.B=f<<16,this.j=this.w=a<<8,this.u=this.j^this.B>>1));break;case 35904:0<=(f=O(this,e=Q(this,a,D)))&&(a=f<<1|this.B>>16&1,0<=P(this,e,a)&&(this.B=this.j=this.w=a<<8,this.u=(a^f)<<8));break;case 35968:0<=(f=O(this,e=Q(this,
a,D)))&&(a=f&128|f>>1,0<=P(this,e,a)&&(this.B=f<<16,this.j=this.w=a<<8,this.u=this.j^this.B>>1));break;case 36032:0<=(f=O(this,e=Q(this,a,D)))&&(a=f<<1,0<=P(this,e,a)&&(this.B=this.j=this.w=a<<8,this.u=(a^f)<<8));break;case 36160:a&56?0<=(h=id(this,a,0))&&(this.G=this.M>>12&3,0<=(c=N(this,h|65536))&&(this.G=this.M>>14&3,0<=fd(this,c)&&(this.j=this.w=c,this.u=0))):(g=a&7,c=6!==g||(this.M>>2&12288)===(this.M&12288)?this.f[g]:this.sa[this.M>>12&3],0<=fd(this,c)&&(this.j=this.w=c,this.u=0));break;case 36224:0<= a,D)))&&(a=f&128|f>>1,0<=P(this,e,a)&&(this.B=f<<16,this.j=this.w=a<<8,this.u=this.j^this.B>>1));break;case 36032:0<=(f=O(this,e=Q(this,a,D)))&&(a=f<<1,0<=P(this,e,a)&&(this.B=this.j=this.w=a<<8,this.u=(a^f)<<8));break;case 36160:a&56?0<=(h=jd(this,a,0))&&(this.G=this.L>>12&3,0<=(c=N(this,h|65536))&&(this.G=this.L>>14&3,0<=gd(this,c)&&(this.j=this.w=c,this.u=0))):(g=a&7,c=6!==g||(this.L>>2&12288)===(this.L&12288)?this.f[g]:this.sa[this.L>>12&3],0<=gd(this,c)&&(this.j=this.w=c,this.u=0));break;case 36224:0<=
(f=hd(this))&&((this.ca&57344||(this.Da=22),a&56)?0<=(h=id(this,a,0))&&(this.G=this.M>>12&3,0<=(e=gd(this,h|65536,B))&&(this.G=this.M>>14&3,0<=L(this,e,f)&&(this.j=this.w=f,this.u=0))):(g=a&7,6!==g||(this.M>>2&12288)===(this.M&12288)?this.f[g]=f:this.sa[this.M>>12&3]=f,this.j=this.w=f,this.u=0));break;default:switch(a&65528){case 128:0<=(c=hd(this))&&(g=a&7,this.f[7]=this.f[g],this.f[g]=c);break;case 152:this.M&49152||(this.M=this.M&63519|(a&7)<<5,this.Oa=1);break;case 160:case 168:a&1&&(this.B=0); (f=id(this))&&((this.ca&57344||(this.Da=22),a&56)?0<=(h=jd(this,a,0))&&(this.G=this.L>>12&3,0<=(e=hd(this,h|65536,B))&&(this.G=this.L>>14&3,0<=L(this,e,f)&&(this.j=this.w=f,this.u=0))):(g=a&7,6!==g||(this.L>>2&12288)===(this.L&12288)?this.f[g]=f:this.sa[this.L>>12&3]=f,this.j=this.w=f,this.u=0));break;default:switch(a&65528){case 128:0<=(c=id(this))&&(g=a&7,this.f[7]=this.f[g],this.f[g]=c);break;case 152:this.L&49152||(this.L=this.L&63519|(a&7)<<5,this.Oa=1);break;case 160:case 168:a&1&&(this.B=0);
a&2&&(this.u=0);a&4&&(this.w=1);a&8&&(this.j=0);break;case 176:case 184:a&1&&(this.B=65536);a&2&&(this.u=32768);a&4&&(this.w=0);a&8&&(this.j=32768);break;default:switch(a){case 0:49152&this.M?(this.L|=128,K(this,4,46)):(this.ha=3,Yc(this),console.log("HALT at "+this.f[7].toString(8)));break;case 1:g=0;if(0<(a=this.C.length))for(;0<a--;)g+=this.C[a].Fa,this.C[a].Fa=0;0===g&&0===this.ha&&(this.ha=2,Yc(this));break;case 3:K(this,12,6);break;case 4:K(this,16,8);break;case 5:this.M&49152||(ad(this),this.H.reset()); a&2&&(this.u=0);a&4&&(this.w=1);a&8&&(this.j=0);break;case 176:case 184:a&1&&(this.B=65536);a&2&&(this.u=32768);a&4&&(this.w=0);a&8&&(this.j=32768);break;default:switch(a){case 0:49152&this.L?(this.M|=128,K(this,4,46)):(this.ha=3,Zc(this),console.log("HALT at "+this.f[7].toString(8)));break;case 1:g=0;if(0<(a=this.C.length))for(;0<a--;)g+=this.C[a].Fa,this.C[a].Fa=0;0===g&&0===this.ha&&(this.ha=2,Zc(this));break;case 3:K(this,12,6);break;case 4:K(this,16,8);break;case 5:this.L&49152||(bd(this),this.H.reset());
break;case 2:case 6:e=this.f[6];0<=(h=N(this,e|65536))&&(e=e+2&65535,0<=(c=N(this,e|65536))&&(this.f[6]=e+2&65535,c&=63743,this.M&49152&&(c=c&63519|this.M&63712),this.f[7]=h,ac(this,c),this.V&=-17,2===a&&(this.V|=this.M&16)));break;default:K(this,8,48)}}}}}}}while(0<this.b)}return this.A.complete?this.W-this.b:void 0===this.A.complete?0:-1};Pa(function(){for(var a=y(document,"pdp11","cpu"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new Zc(c);cb(c,d)}}); break;case 2:case 6:e=this.f[6];0<=(h=N(this,e|65536))&&(e=e+2&65535,0<=(c=N(this,e|65536))&&(this.f[6]=e+2&65535,c&=63743,this.L&49152&&(c=c&63519|this.L&63712),this.f[7]=h,ac(this,c),this.V&=-17,2===a&&(this.V|=this.L&16)));break;default:K(this,8,48)}}}}}}}while(0<this.b)}return this.A.complete?this.W-this.b:void 0===this.A.complete?0:-1};Pa(function(){for(var a=y(document,"pdp11","cpu"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new $c(c);cb(c,d)}});
function pd(a,b){var d=a+b;this.V&128||(this.j=this.w=this.B=d,this.u=(a^d)&(b^d));return d&65535}function qd(a,b){a=~a&b;dd(this,a);return a}function rd(a,b){a=~a&b;dd(this,a<<8);return a}function sd(a,b){a|=b;dd(this,a);return a}function td(a,b){a|=b;dd(this,a<<8);return a}function ud(a,b){var d=b-a;ed(this,d,a,b);return d&65535}function vd(){this.g=-1;--this.b}function wd(){this.g=-1;--this.b}function U(a){a&1&&(this.B=0);a&2&&(this.u=0);a&4&&(this.w=1);a&8&&(this.j=0);--this.b} function qd(a,b){var d=a+b;this.V&128||(this.j=this.w=this.B=d,this.u=(a^d)&(b^d));return d&65535}function rd(a,b){a=~a&b;ed(this,a);return a}function sd(a,b){a=~a&b;ed(this,a<<8);return a}function td(a,b){a|=b;ed(this,a);return a}function ud(a,b){a|=b;ed(this,a<<8);return a}function vd(a,b){var d=b-a;fd(this,d,a,b);return d&65535}function wd(){this.g=-1;--this.b}function xd(){this.g=-1;--this.b}function U(a){a&1&&(this.B=0);a&2&&(this.u=0);a&4&&(this.w=1);a&8&&(this.j=0);--this.b}
function xd(){this.g=-1;--this.b}function yd(){this.g=-1;--this.b}function zd(){this.g=-1;--this.b}function Ad(){--this.b}function Bd(a){a&1&&(this.B=65536);a&2&&(this.u=32768);a&4&&(this.w=0);a&8&&(this.j=32768);--this.b}function Cd(){this.g=-1;--this.b}function Dd(){this.g=-1;--this.b}function V(){K(this,8,48)}function $c(a){Ed[a>>12].call(this,a)} function yd(){this.g=-1;--this.b}function zd(){this.g=-1;--this.b}function Ad(){this.g=-1;--this.b}function Bd(){--this.b}function Cd(a){a&1&&(this.B=65536);a&2&&(this.u=32768);a&4&&(this.w=0);a&8&&(this.j=32768);--this.b}function Dd(){this.g=-1;--this.b}function Ed(){this.g=-1;--this.b}function V(){K(this,8,48)}function ad(a){Fd[a>>12].call(this,a)}
var Ed=[function(a){Fd[a>>8&15].call(this,a)},function(a){dd(this,ld(this,a,R(this,a>>6)));--this.b},function(a){var b=R(this,a>>6);a=R(this,a);ed(this,b-a,a,b);--this.b},function(a){dd(this,R(this,a>>6)&R(this,a));--this.b},function(a){jd(this,a,R(this,a>>6),qd);--this.b},function(a){jd(this,a,R(this,a>>6),sd);--this.b},function(a){jd(this,a,R(this,a>>6),pd);--this.b},function(a){Gd[a>>8&15].call(this,a)},function(a){Hd[a>>8&15].call(this,a)},function(a){var b=S(this,a>>6);dd(this,md(this,a,b,2)<< var Fd=[function(a){Gd[a>>8&15].call(this,a)},function(a){ed(this,md(this,a,R(this,a>>6)));--this.b},function(a){var b=R(this,a>>6);a=R(this,a);fd(this,b-a,a,b);--this.b},function(a){ed(this,R(this,a>>6)&R(this,a));--this.b},function(a){kd(this,a,R(this,a>>6),rd);--this.b},function(a){kd(this,a,R(this,a>>6),td);--this.b},function(a){kd(this,a,R(this,a>>6),qd);--this.b},function(a){Hd[a>>8&15].call(this,a)},function(a){Id[a>>8&15].call(this,a)},function(a){var b=S(this,a>>6);ed(this,nd(this,a,b,2)<<
8);--this.b},function(a){var b=S(this,a>>6)<<8;a=S(this,a)<<8;ed(this,b-a,a,b);--this.b},function(a){dd(this,(S(this,a>>6)&S(this,a))<<8);--this.b},function(a){kd(this,a,S(this,a>>6),rd);--this.b},function(a){kd(this,a,S(this,a>>6),td);--this.b},function(a){jd(this,a,R(this,a>>6),ud);--this.b},V],Fd=[function(a){Id[a>>4&15].call(this,a)},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g= 8);--this.b},function(a){var b=S(this,a>>6)<<8;a=S(this,a)<<8;fd(this,b-a,a,b);--this.b},function(a){ed(this,(S(this,a>>6)&S(this,a))<<8);--this.b},function(a){ld(this,a,S(this,a>>6),sd);--this.b},function(a){ld(this,a,S(this,a>>6),ud);--this.b},function(a){kd(this,a,R(this,a>>6),vd);--this.b},V],Gd=[function(a){Jd[a>>4&15].call(this,a)},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=
-1;--this.b},function(){this.g=-1;--this.b},yd,yd,function(a){Jd[a>>6&3].call(this,a)},function(a){Kd[a>>6&3].call(this,a)},function(a){Ld[a>>6&3].call(this,a)},function(a){Md[a>>6&3].call(this,a)},V,V],Id=[function(a){Nd[a&15].call(this,a)},V,V,V,V,V,V,V,V,V,function(a){Od[a&15].call(this,a)},function(a){Pd[a&15].call(this,a)},V,V,V,V],Od=[Ad,function(){this.B=0;--this.b},function(){this.u=0;--this.b},U,function(){this.w=1;--this.b},U,U,U,function(){this.j=0;--this.b},U,U,U,U,U,U,U],Pd=[Ad,function(){this.B= -1;--this.b},function(){this.g=-1;--this.b},zd,zd,function(a){Kd[a>>6&3].call(this,a)},function(a){Ld[a>>6&3].call(this,a)},function(a){Md[a>>6&3].call(this,a)},function(a){Nd[a>>6&3].call(this,a)},V,V],Jd=[function(a){Od[a&15].call(this,a)},V,V,V,V,V,V,V,V,V,function(a){Pd[a&15].call(this,a)},function(a){Qd[a&15].call(this,a)},V,V,V,V],Pd=[Bd,function(){this.B=0;--this.b},function(){this.u=0;--this.b},U,function(){this.w=1;--this.b},U,U,U,function(){this.j=0;--this.b},U,U,U,U,U,U,U],Qd=[Bd,function(){this.B=
65536;--this.b},function(){this.u=32768;--this.b},Bd,function(){this.w=0;--this.b},Bd,Bd,Bd,function(){this.j=32768;--this.b},Bd,Bd,Bd,Bd,Bd,Bd,Bd],Nd=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.M&49152||(ad(this),this.H.reset());--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},V,V,V,V,V,V,V,V],Gd=[zd,zd,xd,xd,vd,vd,wd,wd,Dd,Dd,V,V,V,V,Cd,Cd],Hd=[function(){this.g= 65536;--this.b},function(){this.u=32768;--this.b},Cd,function(){this.w=0;--this.b},Cd,Cd,Cd,function(){this.j=32768;--this.b},Cd,Cd,Cd,Cd,Cd,Cd,Cd],Od=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.L&49152||(bd(this),this.H.reset());--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},V,V,V,V,V,V,V,V],Hd=[Ad,Ad,yd,yd,wd,wd,xd,xd,Ed,Ed,V,V,V,V,Dd,Dd],Id=[function(){this.g=
-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(a){Qd[a>>6&3].call(this,a)},function(a){Rd[a>>6&3].call(this,a)},function(a){Sd[a>>6&3].call(this,a)},function(a){Td[a>>6&3].call(this,a)},V,V],Jd=[function(a){cd(this,ld(this,a,0));--this.b},function(){this.g= -1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(a){Rd[a>>6&3].call(this,a)},function(a){Sd[a>>6&3].call(this,a)},function(a){Td[a>>6&3].call(this,a)},function(a){Ud[a>>6&3].call(this,a)},V,V],Kd=[function(a){dd(this,md(this,a,0));--this.b},function(){this.g=
-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Kd=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Ld=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Md=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Qd=[function(a){cd(this,md(this,a,0,1)); -1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Ld=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Md=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Nd=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Rd=[function(a){dd(this,nd(this,a,0,1));
--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Rd=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Sd=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Td=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}]; --this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Sd=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Td=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}],Ud=[function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b},function(){this.g=-1;--this.b}];
function Ud(a){u.call(this,"ROM",a,Ud);this.g=null;this.J=a.addr;this.F=a.size;this.N=a.writable;this.C=a.alias;this.G=a.file;this.P=da(this.G);if(this.G){a=this.G;var b=ea(this.P);"json"!=b&&"hex"!=b&&(a=ha()+"/api/v1/dump?file="+this.G+"&format=bytes&decimal=true");var d=this;ua(a,null,!0,function(a,b,e){Vd(d,a,b,e)})}}w(Ud);Ud.prototype.Xa=function(a,b,d,c){this.H=b;this.b=d;this.I=c;ue(this)}; function Vd(a){u.call(this,"ROM",a,Vd);this.g=null;this.J=a.addr;this.F=a.size;this.N=a.writable;this.C=a.alias;this.G=a.file;this.P=da(this.G);if(this.G){a=this.G;var b=ea(this.P);"json"!=b&&"hex"!=b&&(a=ha()+"/api/v1/dump?file="+this.G+"&format=bytes&decimal=true");var d=this;ua(a,null,!0,function(a,b,e){ue(d,a,b,e)})}}w(Vd);Vd.prototype.Xa=function(a,b,d,c){this.H=b;this.b=d;this.I=c;ve(this)};
Ud.prototype.Na=function(){if(this.Ka){if(this.I){var a=this.I,b=this.id,d=this.J,c=this.F,f=this.Ka,e=[],h;for(h in f){var g=f[h];"number"==typeof g&&(f[h]=g={o:g});var k=g.o,m=g.a;if(void 0!==k){var n=e,k=[k>>>0,h],q=qa(n,k,a.qc);0>q&&n.splice(-(q+1),0,k)}m&&(g.a=m.replace(/''/g,'"'))}a.N.push({hd:b,D:d,Pc:c,Ka:f,nc:e})}delete this.Ka}return!0};Ud.prototype.Ma=function(){return!0}; Vd.prototype.Na=function(){if(this.Ka){if(this.I){var a=this.I,b=this.id,d=this.J,c=this.F,f=this.Ka,e=[],h;for(h in f){var g=f[h];"number"==typeof g&&(f[h]=g={o:g});var k=g.o,m=g.a;if(void 0!==k){var n=e,k=[k>>>0,h],q=qa(n,k,a.qc);0>q&&n.splice(-(q+1),0,k)}m&&(g.a=m.replace(/''/g,'"'))}a.N.push({hd:b,D:d,Pc:c,Ka:f,nc:e})}delete this.Ka}return!0};Vd.prototype.Ma=function(){return!0};
function Vd(a,b,d,c){if(c)a.oa("Unable to load system ROM (error "+c+": "+b+")");else{$a(a.oc,b,d);var f;if("["==d.charAt(0)||"{"==d.charAt(0))try{var e,h,g=eval("("+d+")");if(e=g.bytes)a.g=e;else if(e=g.words)for(a.g=Array(2*e.length),h=f=0;f<e.length;f++)a.g[h++]=e[f]&255,a.g[h++]=e[f]>>8&255;else if(e=g.data)for(a.g=Array(4*e.length),h=f=0;f<e.length;f++)a.g[h++]=e[f]&255,a.g[h++]=e[f]>>8&255,a.g[h++]=e[f]>>16&255,a.g[h++]=e[f]>>24&255;else a.g=g;a.Ka=g.symbols;if(!a.g.length){t("Empty ROM: "+ function ue(a,b,d,c){if(c)a.oa("Unable to load system ROM (error "+c+": "+b+")");else{$a(a.oc,b,d);var f;if("["==d.charAt(0)||"{"==d.charAt(0))try{var e,h,g=eval("("+d+")");if(e=g.bytes)a.g=e;else if(e=g.words)for(a.g=Array(2*e.length),h=f=0;f<e.length;f++)a.g[h++]=e[f]&255,a.g[h++]=e[f]>>8&255;else if(e=g.data)for(a.g=Array(4*e.length),h=f=0;f<e.length;f++)a.g[h++]=e[f]&255,a.g[h++]=e[f]>>8&255,a.g[h++]=e[f]>>16&255,a.g[h++]=e[f]>>24&255;else a.g=g;a.Ka=g.symbols;if(!a.g.length){t("Empty ROM: "+
b);return}if(1==a.g.length){t(a.g[0]);return}}catch(k){a.oa("ROM data error: "+k.message);return}else for(b=d.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.g=Array(b.length),f=0;f<b.length;f++)a.g[f]=aa(b[f],16);ue(a)}} b);return}if(1==a.g.length){t(a.g[0]);return}}catch(k){a.oa("ROM data error: "+k.message);return}else for(b=d.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.g=Array(b.length),f=0;f<b.length;f++)a.g[f]=aa(b[f],16);ve(a)}}
function ue(a){if(!gb(a))if(!a.G)A(a);else if(a.g&&a.H){a.F||(a.F=a.g.length);if(a.g.length!=a.F)hb(a,"ROM size ("+r(a.g.length,8,!0)+") does not match specified size ("+r(a.F,8,!0)+")");else{var b;b=a.J;if(Gb(a.H,b,a.F,a.N?1:nc)){var d;for(d=0;d<a.g.length;d++){var c=a.H,f=b+d;c.R[(f&c.H)>>>c.Y].yb(f&c.g,a.g[d]&255,f)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.C?b.push(a.C):null!=a.C&&a.C.length&&(b=a.C);for(d=0;d<b.length;d++){for(var e=a,c=b[d],f=e.H,h=e.F,g=[],k=e.J>>>f.Y;0<h&&k<f.R.length;)g.push(f.R[k++]), function ve(a){if(!gb(a))if(!a.G)A(a);else if(a.g&&a.H){a.F||(a.F=a.g.length);if(a.g.length!=a.F)hb(a,"ROM size ("+r(a.g.length,8,!0)+") does not match specified size ("+r(a.F,8,!0)+")");else{var b;b=a.J;if(Gb(a.H,b,a.F,a.N?1:oc)){var d;for(d=0;d<a.g.length;d++){var c=a.H,f=b+d;c.R[(f&c.H)>>>c.Y].yb(f&c.g,a.g[d]&255,f)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.C?b.push(a.C):null!=a.C&&a.C.length&&(b=a.C);for(d=0;d<b.length;d++){for(var e=a,c=b[d],f=e.H,h=e.F,g=[],k=e.J>>>f.Y;0<h&&k<f.R.length;)g.push(f.R[k++]),
h-=f.Aa;f=e.H;e=e.F;h=0;for(c>>>=f.Y;0<e&&c<f.R.length;){k=g[h++];if(!k)break;f.R[c++]=k;e-=f.Aa}}delete a.g}}A(a)}}Pa(function(){for(var a=y(document,"pdp11","rom"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new Ud(c);cb(c,d)}});function ve(a){u.call(this,"RAM",a,ve);this.C=a.addr;this.F=a.size;this.g=!1}w(ve);l=ve.prototype;l.Xa=function(a,b,d,c){this.H=b;this.b=d;this.I=c;A(this)};l.Na=function(a,b){b||this.reset();return!0};l.Ma=function(a){return a?this.save():!0}; h-=f.Aa;f=e.H;e=e.F;h=0;for(c>>>=f.Y;0<e&&c<f.R.length;){k=g[h++];if(!k)break;f.R[c++]=k;e-=f.Aa}}delete a.g}}A(a)}}Pa(function(){for(var a=y(document,"pdp11","rom"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new Vd(c);cb(c,d)}});function we(a){u.call(this,"RAM",a,we);this.C=a.addr;this.F=a.size;this.g=!1}w(we);l=we.prototype;l.Xa=function(a,b,d,c){this.H=b;this.b=d;this.I=c;A(this)};l.Na=function(a,b){b||this.reset();return!0};l.Ma=function(a){return a?this.save():!0};
l.reset=function(){!this.g&&this.F&&Gb(this.H,this.C,this.F,1)&&(this.g=!0);this.g||t("No RAM allocated")};l.save=function(){return null};l.restore=function(){return!0};Pa(function(){for(var a=y(document,"pdp11","ram"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new ve(c);cb(c,d)}});function we(a){u.call(this,"Keyboard",a,we,65536);A(this)}w(we);we.prototype.ua=function(){return!1};we.prototype.Xa=function(a,b,d,c){this.F=a;this.b=d;this.I=c;this.ea=null}; l.reset=function(){!this.g&&this.F&&Gb(this.H,this.C,this.F,1)&&(this.g=!0);this.g||t("No RAM allocated")};l.save=function(){return null};l.restore=function(){return!0};Pa(function(){for(var a=y(document,"pdp11","ram"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new we(c);cb(c,d)}});function xe(a){u.call(this,"Keyboard",a,xe,65536);A(this)}w(xe);xe.prototype.ua=function(){return!1};xe.prototype.Xa=function(a,b,d,c){this.F=a;this.b=d;this.I=c;this.ea=null};
Pa(function(){for(var a=y(document,"pdp11","keyboard"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new we(c);cb(c,d)}});function xe(a){u.call(this,"Debugger",a,xe);this.wa=a.base||16;this.$=this.Ja=this.P=0;this.ba=!1;this.G=-1;this.C=[];this.ga={}}w(xe);var ye={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9}; Pa(function(){for(var a=y(document,"pdp11","keyboard"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new xe(c);cb(c,d)}});function ye(a){u.call(this,"Debugger",a,ye);this.wa=a.base||16;this.$=this.Ja=this.P=0;this.ba=!1;this.G=-1;this.C=[];this.ga={}}w(ye);var ze={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};
function ze(a,b,d,c){if(d)if(b){0>a.G&&a.C.length&&(a.G=0);if(0>a.G||b!=a.C[a.G])a.C.splice(0,0,b),a.G=0;a.G--}else a.ba?b="end":b=a.C[a.G+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");d=0;var f=null;c=c||";";for(var e=0;e<=b.length;e++){var h=b.charAt(e);if('"'==h||"'"==h)f?h==f&&(f=null):f=h;else if(h==c&&!f||!h)a.push(pa(b.substring(d,e))),d=e+1}}return a} function Ae(a,b,d,c){if(d)if(b){0>a.G&&a.C.length&&(a.G=0);if(0>a.G||b!=a.C[a.G])a.C.splice(0,0,b),a.G=0;a.G--}else a.ba?b="end":b=a.C[a.G+1];a=[];if(b){b=b.toLowerCase().replace(/""/g,"'");d=0;var f=null;c=c||";";for(var e=0;e<=b.length;e++){var h=b.charAt(e);if('"'==h||"'"==h)f?h==f&&(f=null):f=h;else if(h==c&&!f||!h)a.push(pa(b.substring(d,e))),d=e+1}}return a}
function Ae(a,b,d){for(d=d||-1;d--&&b.length;){var c=b.pop();if(2>a.length)return!1;var f=a.pop(),e=a.pop();switch(c){case "*":c=e*f;break;case "/":if(!f)return!1;c=e/f;break;case "%":if(!f)return!1;c=e%f;break;case "+":c=e+f;break;case "-":c=e-f;break;case "<<":c=e<<f;break;case ">>":c=e>>f;break;case ">>>":c=e>>>f;break;case "<":c=e<f?1:0;break;case "<=":c=e<=f?1:0;break;case ">":c=e>f?1:0;break;case ">=":c=e>=f?1:0;break;case "==":c=e==f?1:0;break;case "!=":c=e!=f?1:0;break;case "&":c=e&f;break; function Be(a,b,d){for(d=d||-1;d--&&b.length;){var c=b.pop();if(2>a.length)return!1;var f=a.pop(),e=a.pop();switch(c){case "*":c=e*f;break;case "/":if(!f)return!1;c=e/f;break;case "%":if(!f)return!1;c=e%f;break;case "+":c=e+f;break;case "-":c=e-f;break;case "<<":c=e<<f;break;case ">>":c=e>>f;break;case ">>>":c=e>>>f;break;case "<":c=e<f?1:0;break;case "<=":c=e<=f?1:0;break;case ">":c=e>f?1:0;break;case ">=":c=e>=f?1:0;break;case "==":c=e==f?1:0;break;case "!=":c=e!=f?1:0;break;case "&":c=e&f;break;
case "^":c=e^f;break;case "|":c=e|f;break;case "&&":c=e&&f?1:0;break;case "||":c=e||f?1:0;break;default:return!1}a.push(c|0)}return!0} case "^":c=e^f;break;case "|":c=e|f;break;case "&&":c=e&&f?1:0;break;case "||":c=e||f?1:0;break;default:return!1}a.push(c|0)}return!0}
function Be(a,b,d){var c;if(b){b=Ce(a,b);for(var f=0,e=!1,h=b,g=[],k=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);f<m.length;){var n=m[f++],q=n.length,n=pa(n);if(!n){e=!0;break}n=De(a,n,null,!1===d);if(void 0===n){e=!0;d=!1;break}g.push(n);if(f==m.length)break;var n=m[f++],p=n.length;k.length&&ye[n]<ye[k[k.length-1]]&&Ae(g,k,1);k.push(n);b=b.substr(q+p)}Ae(g,k)&&1==g.length||(e=!0);e?d&&a.i("error parsing '"+h+"' at character "+(h.length-b.length)):(c=g.pop(),d&&Ee(a,null, function Ce(a,b,d){var c;if(b){b=De(a,b);for(var f=0,e=!1,h=b,g=[],k=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);f<m.length;){var n=m[f++],q=n.length,n=pa(n);if(!n){e=!0;break}n=Ee(a,n,null,!1===d);if(void 0===n){e=!0;d=!1;break}g.push(n);if(f==m.length)break;var n=m[f++],p=n.length;k.length&&ze[n]<ze[k[k.length-1]]&&Be(g,k,1);k.push(n);b=b.substr(q+p)}Be(g,k)&&1==g.length||(e=!0);e?d&&a.i("error parsing '"+h+"' at character "+(h.length-b.length)):(c=g.pop(),d&&Fe(a,null,
c))}return c}function Ce(a,b){for(var d;(d=b.match(/\{(.*?)}/))&&!(0<=d[1].indexOf("{"));){var c=Be(a,d[1]);b=b.replace("{"+d[1]+"}",null!=c?r(c):"undefined")}for(;(d=b.match(/\[(.*?)]/))&&!(0<=d[1].indexOf("["));)b=b.replace("["+d[1]+"]","unimplemented");for(;d=b.match(/\$([a-z]+)/i);){c=null;switch(d[1].toLowerCase()){case "ops":c=a.$-a.Ja}if(null==c)break;b=b.replace(d[0],c.toString())}return b} c))}return c}function De(a,b){for(var d;(d=b.match(/\{(.*?)}/))&&!(0<=d[1].indexOf("{"));){var c=Ce(a,d[1]);b=b.replace("{"+d[1]+"}",null!=c?r(c):"undefined")}for(;(d=b.match(/\[(.*?)]/))&&!(0<=d[1].indexOf("["));)b=b.replace("["+d[1]+"]","unimplemented");for(;d=b.match(/\$([a-z]+)/i);){c=null;switch(d[1].toLowerCase()){case "ops":c=a.$-a.Ja}if(null==c)break;b=b.replace(d[0],c.toString())}return b}
function De(a,b,d,c){var f;null!=b?(f=a.ga[b],null==f&&(f=aa(b,a.wa)),null!=f||c||a.i("invalid "+(d?d:"value")+": "+b)):c||a.i("missing "+(d||"value"));return f}function Ee(a,b,d){var c,f=!1;if(void 0!==d){f=!0;c=d;var e=0,h="";if(!e||4<e)e=4;for(var g=0;g<e;g++){h&&(h=","+h);var k=c&255,m=8,n="";m?32<m&&(m=32):m=32;if(null==k||isNaN(k))for(;0<m--;)n="?"+n;else for(;0<m--;)n=(k&1?"1":"0")+n,k>>=1;h=n+h;c>>=8}c=r(d,0,!0)+" "+d+". "+ca(d,0,!0)+" "+("0b"+h)}a.i((null!=b?b+": ":"")+c);return f} function Ee(a,b,d,c){var f;null!=b?(f=a.ga[b],null==f&&(f=aa(b,a.wa)),null!=f||c||a.i("invalid "+(d?d:"value")+": "+b)):c||a.i("missing "+(d||"value"));return f}function Fe(a,b,d){var c,f=!1;if(void 0!==d){f=!0;c=d;var e=0,h="";if(!e||4<e)e=4;for(var g=0;g<e;g++){h&&(h=","+h);var k=c&255,m=8,n="";m?32<m&&(m=32):m=32;if(null==k||isNaN(k))for(;0<m--;)n="?"+n;else for(;0<m--;)n=(k&1?"1":"0")+n,k>>=1;h=n+h;c>>=8}c=r(d,0,!0)+" "+d+". "+ca(d,0,!0)+" "+("0b"+h)}a.i((null!=b?b+": ":"")+c);return f}
function Fe(a,b){if(b)return Ee(a,b,a.ga[b]);var d=0;for(b in a.ga)Ee(a,b,a.ga[b]),d++;return 0<d}function W(a,b,d){switch(a.wa){case 8:return ca(b,d);case 10:return b.toString();default:return r(b,d)}} function Ge(a,b){if(b)return Fe(a,b,a.ga[b]);var d=0;for(b in a.ga)Fe(a,b,a.ga[b]),d++;return 0<d}function W(a,b,d){switch(a.wa){case 8:return ca(b,d);case 10:return b.toString();default:return r(b,d)}}
function Ge(a){xe.call(this,a);this.W=Y();this.zb=Y();this.aa=Y();this.N=[];this.g=this.X=this.J=[];He(this);this.ya=0;Ie(this);this.Sa={};Je(this,a.messages);this.mb=a.commands;var b=this;window?void 0===window.pdp11&&(window.pdp11=function(a){return Ke(b,a)}):void 0===global.pdp11&&(global.pdp11=function(a){return Ke(b,a)})}w(Ge,xe); function He(a){ye.call(this,a);this.W=Y();this.zb=Y();this.aa=Y();this.N=[];this.g=this.X=this.J=[];Ie(this);this.ya=0;Je(this);this.Sa={};Ke(this,a.messages);this.mb=a.commands;var b=this;window?void 0===window.pdp11&&(window.pdp11=function(a){return Le(b,a)}):void 0===global.pdp11&&(global.pdp11=function(a){return Le(b,a)})}w(He,ye);
var Le={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble",v:"print version","var":"assign variable"},Me="NONE ADC ADCB ADD ASL ASLB ASR ASRB BCC BCS BEQ BGE BGT BHI BIC BICB BIS BISB BIT BITB BLE BLOS BLT BMI BNE BPL BPT BR BVC BVS CCC CLC CLCN CLCV CLCVN CLCVZ CLCZ CLCZN CLN CLR CLRB CLV CLVN CLVZ CLVZN CLZ CLZN CMP CMPB COM COMB DEC DECB INC INCB HALT JMP JSR MARK MFPD MFPI MFPS MOV MOVB MTPD MTPI MTPS NEG NEGB NOP RESET ROL ROLB ROR RORB RTI RTS SBC SBCB SCC SEC SECN SECV SECVN SECVZ SECZ SECZN SEN SEV SEVN SEVZ SEVZN SEZ SEZN SUB SWAB SXT TST TSTB WAIT MUL DIV ASH ASHC XOR SOB EMT TRAP SPL IOT RTT MFPT".split(" "), var Me={"?":"help/print","a [#]":"assemble","b [#]":"breakpoint",c:"clear output","d [#]":"dump memory","e [#]":"edit memory","g [#]":"go [to #]",h:"halt","if":"eval expression","int [#]":"request interrupt",k:"stack trace",ln:"list nearest symbol(s)",m:"messages",p:"step over",print:"print expression",r:"dump/set registers",reset:"reset machine",s:"set options","t [#]":"trace","u [#]":"unassemble",v:"print version","var":"assign variable"},Ne="NONE ADC ADCB ADD ASL ASLB ASR ASRB BCC BCS BEQ BGE BGT BHI BIC BICB BIS BISB BIT BITB BLE BLOS BLT BMI BNE BPL BPT BR BVC BVS CCC CLC CLCN CLCV CLCVN CLCVZ CLCZ CLCZN CLN CLR CLRB CLV CLVN CLVZ CLVZN CLZ CLZN CMP CMPB COM COMB DEC DECB INC INCB HALT JMP JSR MARK MFPD MFPI MFPS MOV MOVB MTPD MTPI MTPS NEG NEGB NOP RESET ROL ROLB ROR RORB RTI RTS SBC SBCB SCC SEC SECN SECV SECVN SECVZ SECZ SECZN SEN SEV SEVN SEVZ SEVZN SEZ SEZN SUB SWAB SXT TST TSTB WAIT MUL DIV ASH ASHC XOR SOB EMT TRAP SPL IOT RTT MFPT".split(" "),
Ne={61440:{4096:[62,4032,63],8192:[47,4032,63],12288:[18,4032,63],16384:[14,4032,63],20480:[16,4032,63],24576:[3,4032,63],36864:[63,4032,63],40960:[48,4032,63],45056:[19,4032,63],49152:[15,4032,63],53248:[17,4032,63],57344:[94,4032,63]},65024:{2048:[57,448,63],28672:[100,63,448],29184:[101,63,448],29696:[102,63,448],30208:[103,63,448],30720:[104,448,63],32256:[105,448,8192]},65280:{256:[27,4096],512:[24,4096],768:[10,4096],1024:[11,4096],1280:[22,4096],1536:[12,4096],1792:[20,4096],32768:[25,4096], Oe={61440:{4096:[62,4032,63],8192:[47,4032,63],12288:[18,4032,63],16384:[14,4032,63],20480:[16,4032,63],24576:[3,4032,63],36864:[63,4032,63],40960:[48,4032,63],45056:[19,4032,63],49152:[15,4032,63],53248:[17,4032,63],57344:[94,4032,63]},65024:{2048:[57,448,63],28672:[100,63,448],29184:[101,63,448],29696:[102,63,448],30208:[103,63,448],30720:[104,448,63],32256:[105,448,8192]},65280:{256:[27,4096],512:[24,4096],768:[10,4096],1024:[11,4096],1280:[22,4096],1536:[12,4096],1792:[20,4096],32768:[25,4096],
33024:[23,4096],33280:[13,4096],33536:[21,4096],33792:[28,4096],34048:[29,4096],34304:[8,4096],34560:[9,4096],34816:[106],35072:[107]},65472:{64:[56,63],192:[95,63],2560:[39,63],2624:[49,63],2688:[53,63],2752:[51,63],2816:[67,63],2880:[1,63],2944:[77,63],3008:[97,63],3072:[73,63],3136:[71,63],3200:[6,63],3264:[4,63],3328:[58,24576],3392:[60,63],3456:[65,63],3520:[96,63],35328:[40,63],35392:[50,63],35456:[54,63],35520:[52,63],35584:[68,63],35648:[2,63],35712:[78,63],35776:[98,63],35840:[74,63],35904:[72, 33024:[23,4096],33280:[13,4096],33536:[21,4096],33792:[28,4096],34048:[29,4096],34304:[8,4096],34560:[9,4096],34816:[106],35072:[107]},65472:{64:[56,63],192:[95,63],2560:[39,63],2624:[49,63],2688:[53,63],2752:[51,63],2816:[67,63],2880:[1,63],2944:[77,63],3008:[97,63],3072:[73,63],3136:[71,63],3200:[6,63],3264:[4,63],3328:[58,24576],3392:[60,63],3456:[65,63],3520:[96,63],35328:[40,63],35392:[50,63],35456:[54,63],35520:[52,63],35584:[68,63],35648:[2,63],35712:[78,63],35776:[98,63],35840:[74,63],35904:[72,
63],35968:[7,63],36032:[5,63],36096:[66,63],36160:[59,63],36224:[64,63],36288:[61,63]},65528:{128:[76,7],152:[108,12288]},65535:{0:[55],1:[99],2:[75],3:[26],4:[109],5:[70],6:[110],7:[111],160:[69],161:[31],162:[41],163:[33],164:[45],165:[36],166:[43],167:[35],168:[38],169:[32],170:[42],171:[34],172:[46],173:[37],174:[44],175:[30],176:[69],177:[80],178:[88],179:[82],180:[92],181:[85],182:[90],183:[84],184:[87],185:[81],186:[89],187:[83],188:[93],189:[86],190:[91],191:[79]}};l=Ge.prototype; 63],35968:[7,63],36032:[5,63],36096:[66,63],36160:[59,63],36224:[64,63],36288:[61,63]},65528:{128:[76,7],152:[108,12288]},65535:{0:[55],1:[99],2:[75],3:[26],4:[109],5:[70],6:[110],7:[111],160:[69],161:[31],162:[41],163:[33],164:[45],165:[36],166:[43],167:[35],168:[38],169:[32],170:[42],171:[34],172:[46],173:[37],174:[44],175:[30],176:[69],177:[80],178:[88],179:[82],180:[92],181:[85],182:[90],183:[84],184:[87],185:[81],186:[89],187:[83],188:[93],189:[86],190:[91],191:[79]}};l=He.prototype;
l.Xa=function(a,b,d,c){this.H=b;this.b=d;this.F=a;(a=Ac(a,"messages"))&&Je(this,a);this.rc=Ne;Oe(this,function(a){a:{var b=c.H.R,d=a[0],f=a=0,k=b.length;if(d){a=Z(Pe(c,d));if(-1===a){c.i("invalid address: "+d);break a}f=a>>>c.H.Y;k=1}c.i("blockid physical blockaddr used size type");c.i("-------- --------- ---------- ------ ------ ----");for(var d=-1,m=0;k--;){var n=b[f];n.type==d?m++||c.i("..."):(d=n.type,m=Jb[d],n&&c.i(r(n.id,8)+" %"+r(f<<c.H.Y,8)+" %%"+r(n.D,8)+" "+r(n.Ub,4, l.Xa=function(a,b,d,c){this.H=b;this.b=d;this.F=a;(a=Bc(a,"messages"))&&Ke(this,a);this.rc=Oe;Pe(this,function(a){a:{var b=c.H.R,d=a[0],f=a=0,k=b.length;if(d){a=Z(Qe(c,d));if(-1===a){c.i("invalid address: "+d);break a}f=a>>>c.H.Y;k=1}c.i("blockid physical blockaddr used size type");c.i("-------- --------- ---------- ------ ------ ----");for(var d=-1,m=0;k--;){var n=b[f];n.type==d?m++||c.i("..."):(d=n.type,m=Jb[d],n&&c.i(r(n.id,8)+" %"+r(f<<c.H.Y,8)+" %%"+r(n.D,8)+" "+r(n.Ub,4,
!0)+" "+r(n.size,4,!0)+" "+m),d!=mc&&(d=-1),m=0);a+=c.H.Aa;f++}}});A(this)}; !0)+" "+r(n.size,4,!0)+" "+m),d!=nc&&(d=-1),m=0);a+=c.H.Aa;f++}}});A(this)};
l.ua=function(a,b,d){var c=this;switch(b){case "debugInput":return this.va=this.O[b]=d,d.onkeydown=function(a){var b;if(13==a.keyCode)b=d.value,d.value="",Ke(c,b,!0);else if(27==a.keyCode)d.value=b="";else if(38==a.keyCode?(b=null,c.G<c.C.length-1&&(b=c.C[++c.G])):40==a.keyCode&&(0<c.G?b=c.C[--c.G]:(b="",c.G=-1)),null!=b){var f=b.length;d.value=b;d.setSelectionRange(f,f)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.O[b]=d,Fa(d,function(){if(c.va){var a=c.va.value; l.ua=function(a,b,d){var c=this;switch(b){case "debugInput":return this.va=this.O[b]=d,d.onkeydown=function(a){var b;if(13==a.keyCode)b=d.value,d.value="",Le(c,b,!0);else if(27==a.keyCode)d.value=b="";else if(38==a.keyCode?(b=null,c.G<c.C.length-1&&(b=c.C[++c.G])):40==a.keyCode&&(0<c.G?b=c.C[--c.G]:(b="",c.G=-1)),null!=b){var f=b.length;d.value=b;d.setSelectionRange(f,f)}null!=b&&a.preventDefault&&a.preventDefault()},!0;case "debugEnter":return this.O[b]=d,Fa(d,function(){if(c.va){var a=c.va.value;
c.va.value="";Ke(c,a,!0);return!0}return!1}),!0;case "step":return this.O[b]=d,Fa(d,function(a){var b=!1;fb(c,!0)||(eb(c,!0),b=c.wb(a?1:0),eb(c,!1));return b}),!0}return!1};l.Tb=function(){this.va&&this.va.focus()};function Z(a){a=a&&a.D;null==a&&(a=-1);return a}l.Hb=function(a,b){var d=255,c=Z(a);-1!==c&&(d=this.H,d=d.R[(c&d.H)>>>d.Y].Ob(c&d.g,c),b&&Qe(a,b));return d};l.Ha=function(a,b){var d=65535,c=Z(a);-1!==c&&(d=Kb(this.H,c),b&&Qe(a,b));return d}; c.va.value="";Le(c,a,!0);return!0}return!1}),!0;case "step":return this.O[b]=d,Fa(d,function(a){var b=!1;fb(c,!0)||(eb(c,!0),b=c.wb(a?1:0),eb(c,!1));return b}),!0}return!1};l.Tb=function(){this.va&&this.va.focus()};function Z(a){a=a&&a.D;null==a&&(a=-1);return a}l.Hb=function(a,b){var d=255,c=Z(a);-1!==c&&(d=this.H,d=d.R[(c&d.H)>>>d.Y].Ob(c&d.g,c),b&&Re(a,b));return d};l.Ha=function(a,b){var d=65535,c=Z(a);-1!==c&&(d=Kb(this.H,c),b&&Re(a,b));return d};
l.bc=function(a,b,d){var c=Z(a);if(-1!==c){var f=this.H;f.R[(c&f.H)>>>f.Y].yb(c&f.g,b&255,c);d&&Qe(a,d);Dc(this.b,!0)}};l.jc=function(a,b,d){var c=Z(a);if(-1!==c){var f=this.H,e=c&f.g,h=(c&f.H)>>>f.Y;e!=f.g?f.R[h].lc(e,b&65535,c):(f.R[h++].yb(e,b&255,c),f.R[h&f.F].yb(0,b>>8&255,c+1));d&&Qe(a,d);Dc(this.b,!0)}};function Y(a){return{D:a,Ga:!1}}function Re(a){return[a.D,a.Ga]}function Se(a){return{D:a[0],Ga:a[1]}} l.bc=function(a,b,d){var c=Z(a);if(-1!==c){var f=this.H;f.R[(c&f.H)>>>f.Y].yb(c&f.g,b&255,c);d&&Re(a,d);Ec(this.b,!0)}};l.jc=function(a,b,d){var c=Z(a);if(-1!==c){var f=this.H,e=c&f.g,h=(c&f.H)>>>f.Y;e!=f.g?f.R[h].lc(e,b&65535,c):(f.R[h++].yb(e,b&255,c),f.R[h&f.F].yb(0,b>>8&255,c+1));d&&Re(a,d);Ec(this.b,!0)}};function Y(a){return{D:a,Ga:!1}}function Se(a){return[a.D,a.Ga]}function Te(a){return{D:a[0],Ga:a[1]}}
function Pe(a,b,d){var c;d=(d?a.W:a.zb).D;if(void 0!==b){c=b=Ce(a,b);var f;if(c.match(/^[a-z_][a-z0-9_]*$/i))for(c=c.toUpperCase(),d=0;d<a.N.length;d++){var e=a.N[d].Ka[c];if(void 0!==e){c=e.o;void 0!==c&&(f=Y(c));break}}if(c=f)return c;d=Be(a,b,void 0)}null!=d&&(c=Y(d));return c}function Te(a,b,d){d&&(d=d.match(/(['"])(.*?)\1/))&&(b.Fc=ze(a,b.Ac=d[2]))}function Qe(a,b){null!=a.D&&(a.D+=b||1)} function Qe(a,b,d){var c;d=(d?a.W:a.zb).D;if(void 0!==b){c=b=De(a,b);var f;if(c.match(/^[a-z_][a-z0-9_]*$/i))for(c=c.toUpperCase(),d=0;d<a.N.length;d++){var e=a.N[d].Ka[c];if(void 0!==e){c=e.o;void 0!==c&&(f=Y(c));break}}if(c=f)return c;d=Ce(a,b,void 0)}null!=d&&(c=Y(d));return c}function Ue(a,b,d){d&&(d=d.match(/(['"])(.*?)\1/))&&(b.Fc=Ae(a,b.Ac=d[2]))}function Re(a,b){null!=a.D&&(a.D+=b||1)}
function Je(a,b){a.I=a;a.ia=a.Gc=536870912;a.za=null;a.Ea=[];b=ze(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var d in xb){var c;a:if(c=void 0,Array.prototype.indexOf)c=b.indexOf(d,c);else{c=c||0;0>c&&(c+=b.length);0>c&&(c=0);for(var f=b.length;c<f;c++)if(c in b&&b[c]===d)break a;c=-1}0<=c&&(a.ia|=xb[d],a.i(d+" messages enabled"))}}function Oe(a,b){for(var d in xb)if(64==xb[d]){a.Sa[d]=b;break}} function Ke(a,b){a.I=a;a.ia=a.Gc=536870912;a.za=null;a.Ea=[];b=Ae(a,b.replace("keys","key").replace("kbd","keyboard"),!1,"|");if(b.length)for(var d in xb){var c;a:if(c=void 0,Array.prototype.indexOf)c=b.indexOf(d,c);else{c=c||0;0>c&&(c+=b.length);0>c&&(c=0);for(var f=b.length;c<f;c++)if(c in b&&b[c]===d)break a;c=-1}0<=c&&(a.ia|=xb[d],a.i(d+" messages enabled"))}}function Pe(a,b){for(var d in xb)if(64==xb[d]){a.Sa[d]=b;break}}
l.message=function(a,b){b&&(a+=" at "+W(this,Y(this.b.f[7]).D));this.ia&1073741824?this.Ea.push(a):this.za&&a==this.za||(this.za=a,this.ia&-2147483648&&(this.ma(),a+=" (cpu halted)"),this.i(a),this.b&&(a=this.b,Yc(a),a.aa=0,Dc(a)))};l.Ib=function(){this.i("Type ? for help with PDP11 Debugger commands");this.xa();if(this.mb){var a=this.mb;this.mb=null;Ke(this,a)}}; l.message=function(a,b){b&&(a+=" at "+W(this,Y(this.b.f[7]).D));this.ia&1073741824?this.Ea.push(a):this.za&&a==this.za||(this.za=a,this.ia&-2147483648&&(this.ma(),a+=" (cpu halted)"),this.i(a),this.b&&(a=this.b,Zc(a),a.aa=0,Ec(a)))};l.Ib=function(){this.i("Type ? for help with PDP11 Debugger commands");this.xa();if(this.mb){var a=this.mb;this.mb=null;Le(this,a)}};
function Ie(a){var b;if(nd(a)){if(!a.T||!a.T.length){a.T=Array(1E3);for(b=0;b<a.T.length;b++)a.T[b]=Y();a.ra=0;a.i("instruction history buffer allocated")}if(!a.ha||!a.ha.length)for(a.ha=Array(256),b=0;b<a.ha.length;b++)a.ha[b]=[b,0]}else a.T&&a.T.length&&a.i("instruction history buffer freed"),a.ra=0,a.T=[],a.ha=[]}l.lb=function(a){if(!Ue(this))return!1;this.b.lb(a);return!0}; function Je(a){var b;if(od(a)){if(!a.T||!a.T.length){a.T=Array(1E3);for(b=0;b<a.T.length;b++)a.T[b]=Y();a.ra=0;a.i("instruction history buffer allocated")}if(!a.ha||!a.ha.length)for(a.ha=Array(256),b=0;b<a.ha.length;b++)a.ha[b]=[b,0]}else a.T&&a.T.length&&a.i("instruction history buffer freed"),a.ra=0,a.T=[],a.ha=[]}l.lb=function(a){if(!Ve(this))return!1;this.b.lb(a);return!0};
l.wb=function(a,b,d){if(!Ue(this))return!1;this.P=0;a||nd(this)&&od(this,this.b.f[7],0);try{var c=this.b.wb(a);0<c&&(this.P+=c,Wc(this.b,c,!0),Ec(this.b,c),this.$++)}catch(f){"number"!=typeof f&&(this.P=0,hb(this.b,f.stack||f.message))}!1!==d&&Dc(this.b);this.xa(b||!1);return 0<this.P};l.ma=function(a){this.b&&this.b.ma(a)};l.xa=function(a){void 0===a&&(a=!0);this.W=Y(this.b.f[7]);a&&1!=this.ea?Ve(this):We(this)}; l.wb=function(a,b,d){if(!Ve(this))return!1;this.P=0;a||od(this)&&pd(this,this.b.f[7],0);try{var c=this.b.wb(a);0<c&&(this.P+=c,Xc(this.b,c,!0),Tc(this.b,c),this.$++)}catch(f){"number"!=typeof f&&(this.P=0,hb(this.b,f.stack||f.message))}!1!==d&&Ec(this.b);this.xa(b||!1);return 0<this.P};l.ma=function(a){this.b&&this.b.ma(a)};l.xa=function(a){void 0===a&&(a=!0);this.W=Y(this.b.f[7]);a&&1!=this.ea?We(this):Xe(this)};
function Ue(a){var b;if(b=a.b&&gb(a.b))b=a.b,b.A.fa?b=!0:(b.i(b.toString()+" not powered"),b=!1);b&&!fb(a.b)?(a=a.b,a.A.error?(a.i(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.Na=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.Ma=function(a,b){b&&this.i(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){Ie(this);this.$=this.Ja=0;this.za=null;this.P=0;this.W=Y(this.b.f[7]);this.A.ja=!1;Xe(this);a||this.xa()}; function Ve(a){var b;if(b=a.b&&gb(a.b))b=a.b,b.A.fa?b=!0:(b.i(b.toString()+" not powered"),b=!1);b&&!fb(a.b)?(a=a.b,a.A.error?(a.i(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}l.Na=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};l.Ma=function(a,b){b&&this.i(a?"suspending":"shutting down");return a?this.save():!0};l.reset=function(a){Je(this);this.$=this.Ja=0;this.za=null;this.P=0;this.W=Y(this.b.f[7]);this.A.ja=!1;Ye(this);a||this.xa()};
l.save=function(){var a=new bd(this);a.set(0,Re(this.W));a.set(1,Re(this.aa));a.set(2,[this.C,this.ba,this.ia]);a.set(3,this.N);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.W=Se(a[b++]),this.aa=Se(a[b++]),this.C=a[b][0],"string"==typeof this.C&&(this.C=[this.C]),this.ba=a[b][1],this.ia|=a[b][2]);a[3]&&(this.N=a[3]);return!0};l.start=function(a,b){this.ea||this.i("running");this.A.ja=!0;this.Jc=a;this.Lc=b}; l.save=function(){var a=new cd(this);a.set(0,Se(this.W));a.set(1,Se(this.aa));a.set(2,[this.C,this.ba,this.ia]);a.set(3,this.N);return a.data()};l.restore=function(a){var b=0;void 0!==a[2]&&(this.W=Te(a[b++]),this.aa=Te(a[b++]),this.C=a[b][0],"string"==typeof this.C&&(this.C=[this.C]),this.ba=a[b][1],this.ia|=a[b][2]);a[3]&&(this.N=a[3]);return!0};l.start=function(a,b){this.ea||this.i("running");this.A.ja=!0;this.Jc=a;this.Lc=b};
l.stop=function(a,b){if(this.A.ja){this.A.ja=!1;this.P=b-this.Lc;if(!this.ea){b="stopped";if(this.P){a-=this.Jc;var d=0<a?Math.round(1E3*this.P/a):0;b+=" (";nd(this)&&(b+=this.$+" opcodes, ",this.Ja-=this.$,this.$=0);b+=this.P+" cycles, "+a+" ms, "+d+" hz)"}else db(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.i(b)}this.xa(!0);this.Tb();Xe(this,this.b.f[7])}};function nd(a){return 1<a.g.length||!!a.ya} l.stop=function(a,b){if(this.A.ja){this.A.ja=!1;this.P=b-this.Lc;if(!this.ea){b="stopped";if(this.P){a-=this.Jc;var d=0<a?Math.round(1E3*this.P/a):0;b+=" (";od(this)&&(b+=this.$+" opcodes, ",this.Ja-=this.$,this.$=0);b+=this.P+" cycles, "+a+" ms, "+d+" hz)"}else db(this,-2147483648)&&(b+=" (use the 't' command to execute blocked faults)");this.i(b)}this.xa(!0);this.Tb();Ye(this,this.b.f[7])}};function od(a){return 1<a.g.length||!!a.ya}
function od(a,b,d){var c=a.b;if(0<d&&(a.ya&&!--a.ya||vc(a,b,1,a.g)))return!0;0<=d&&a.ha.length&&(a.$++,null!=Kb(a.H,b)&&(b=a.T[a.ra],b.D=c.f[7],b.Ga=!1,++a.ra==a.T.length&&(a.ra=0)));return!1}function He(a){var b,d;a.g=["bp"];if(a.X)for(b=1;b<a.X.length;b++){d=a.X[b];var c=a.H;wc(c.R[Z(d)>>>c.Y],!1)}a.X=["br"];if(a.J)for(b=1;b<a.J.length;b++)d=a.J[b],c=a.H,wc(c.R[Z(d)>>>c.Y],!0);a.J=["bw"];a.Eb=0} function pd(a,b,d){var c=a.b;if(0<d&&(a.ya&&!--a.ya||wc(a,b,1,a.g)))return!0;0<=d&&a.ha.length&&(a.$++,null!=Kb(a.H,b)&&(b=a.T[a.ra],b.D=c.f[7],b.Ga=!1,++a.ra==a.T.length&&(a.ra=0)));return!1}function Ie(a){var b,d;a.g=["bp"];if(a.X)for(b=1;b<a.X.length;b++){d=a.X[b];var c=a.H;xc(c.R[Z(d)>>>c.Y],!1)}a.X=["br"];if(a.J)for(b=1;b<a.J.length;b++)d=a.J[b],c=a.H,xc(c.R[Z(d)>>>c.Y],!0);a.J=["bw"];a.Eb=0}
l.eb=function(a,b,d){var c=!0;d||Ye(this,a,b,!1,!0);if(a!=this.g){var f=Z(b);if(-1===f)this.i("invalid address: "+W(this,b.D)),c=!1;else{var e=this.H;e.R[f>>>e.Y].eb(f&e.g,a==this.J)}}c&&(a.push(b),d?b.Ga=!0:(Ze(this,a,a.length-1,"set"),Ie(this)));return c};function Ye(a,b,d,c,f){var e=!1;d=Z(d);for(var h=1;h<b.length;h++){var g=b[h];if(d==Z(g)&&(!c||g.Ga)){e=!0;g.Ga||f||Ze(a,b,h,"cleared");b.splice(h,1);b!=a.g&&(c=a.H,wc(c.R[d>>>c.Y],b==a.J));g.Ga||Ie(a);break}}return e} l.eb=function(a,b,d){var c=!0;d||Ze(this,a,b,!1,!0);if(a!=this.g){var f=Z(b);if(-1===f)this.i("invalid address: "+W(this,b.D)),c=!1;else{var e=this.H;e.R[f>>>e.Y].eb(f&e.g,a==this.J)}}c&&(a.push(b),d?b.Ga=!0:($e(this,a,a.length-1,"set"),Je(this)));return c};function Ze(a,b,d,c,f){var e=!1;d=Z(d);for(var h=1;h<b.length;h++){var g=b[h];if(d==Z(g)&&(!c||g.Ga)){e=!0;g.Ga||f||$e(a,b,h,"cleared");b.splice(h,1);b!=a.g&&(c=a.H,xc(c.R[d>>>c.Y],b==a.J));g.Ga||Je(a);break}}return e}
function $e(a,b){for(var d=1;d<b.length;d++)Ze(a,b,d);return b.length-1}function Ze(a,b,d,c){d=b[d];a.i(b[0]+" "+W(a,d.D)+(c?" "+c:d.Ac?' "'+d.Ac+'"':""))}function Xe(a,b){if(void 0!==b)vc(a,b,1,a.g,!0),a.ea=0;else for(b=1;b<a.g.length;b++){var d=a.g[b];if(d.Ga){if(!Ye(a,a.g,d,!0))break;b=0}}} function af(a,b){for(var d=1;d<b.length;d++)$e(a,b,d);return b.length-1}function $e(a,b,d,c){d=b[d];a.i(b[0]+" "+W(a,d.D)+(c?" "+c:d.Ac?' "'+d.Ac+'"':""))}function Ye(a,b){if(void 0!==b)wc(a,b,1,a.g,!0),a.ea=0;else for(b=1;b<a.g.length;b++){var d=a.g[b];if(d.Ga){if(!Ze(a,a.g,d,!0))break;b=0}}}
function vc(a,b,d,c,f){var e=!1;if(!a.Eb++)for(var h=1;!e&&h<c.length;h++){var g=c[h];if(!f||g.Ga)for(var k=Z(g),m=0;m<d;m++)if(b+m==k){var n,e=!0;g.Ga&&(Ye(a,c,g,!0),f=!0);if(n=g.Fc){for(var e=!1,q=0;q<n.length;q++)if(!af(a,n[q],!0)){if(n[q].indexOf("if")){e=!0;break}for(var p=q+1;p<n.length&&n[p].indexOf("else");p++)q++;if(p==n.length){e=!0;break}}a.b.A.ja||(e=!0)}if(e){f||Ze(a,c,h,"hit");break}}}a.Eb--;return e} function wc(a,b,d,c,f){var e=!1;if(!a.Eb++)for(var h=1;!e&&h<c.length;h++){var g=c[h];if(!f||g.Ga)for(var k=Z(g),m=0;m<d;m++)if(b+m==k){var n,e=!0;g.Ga&&(Ze(a,c,g,!0),f=!0);if(n=g.Fc){for(var e=!1,q=0;q<n.length;q++)if(!bf(a,n[q],!0)){if(n[q].indexOf("if")){e=!0;break}for(var p=q+1;p<n.length&&n[p].indexOf("else");p++)q++;if(p==n.length){e=!0;break}}a.b.A.ja||(e=!0)}if(e){f||$e(a,c,h,"hit");break}}}a.Eb--;return e}
function bf(a,b,d,c){var f=Y(b.D),e=a.Ha(b,2),h,g;for(g in a.rc)if(h=a.rc[g][e&g])break;h||(h=[0]);g="";for(var k=Me[h[0]],m=h.length-1,n=1;n<=m;n++){var q=h[n];if(void 0!==q){var p;p=a;var E=q,q=b,z="",F=E&61440;if(4096==F)q=q.D+((e&255)<<24>>23)&65535,z=W(p,q);else if(8192==F)q=q.D-((e&63)<<1)&65535,z=W(p,q);else if(12288==F)z=W(p,e&7,2);else if(24576==F)z=W(p,e&63);else if(F=e&E,E&4032&&(F>>=6,E>>=6),E&63)switch(E=F&7,F&56){case 0:z=cf(E);break;case 8:z="@"+cf(E);break;case 16:7>E?z="("+cf(E)+ function cf(a,b,d,c){var f=Y(b.D),e=a.Ha(b,2),h,g;for(g in a.rc)if(h=a.rc[g][e&g])break;h||(h=[0]);g="";for(var k=Ne[h[0]],m=h.length-1,n=1;n<=m;n++){var q=h[n];if(void 0!==q){var p;p=a;var E=q,q=b,z="",F=E&61440;if(4096==F)q=q.D+((e&255)<<24>>23)&65535,z=W(p,q);else if(8192==F)q=q.D-((e&63)<<1)&65535,z=W(p,q);else if(12288==F)z=W(p,e&7,2);else if(24576==F)z=W(p,e&63);else if(F=e&E,E&4032&&(F>>=6,E>>=6),E&63)switch(E=F&7,F&56){case 0:z=df(E);break;case 8:z="@"+df(E);break;case 16:7>E?z="("+df(E)+
")+":(F=p.Ha(q,2),z="#"+W(p,F));break;case 24:7>E?z="@("+cf(E)+")+":(F=p.Ha(q,2),z="@#"+W(p,F));break;case 32:z="-("+cf(E)+")";break;case 40:z="@-("+cf(E)+")";break;case 48:F=p.Ha(q,2);z=W(p,F)+"("+cf(E)+")";7==E&&(z=[z,W(p,F+q.D&65535)]);break;case 56:F=p.Ha(q,2),z="@"+W(p,F)+"("+cf(E)+")",7==E&&(z=[z,W(p,F+q.D&65535)])}p=z;if(!p||!p.length){g="INVALID";break}"string"!=typeof p&&(d||(d=p[1]),p=p[0]);0<g.length&&(g+=",");g+=p||"???"}}e="";h=W(a,f.D)+":";if(-1!==f.D&&-1!==b.D){do if(e+=" "+W(a,a.Ha(f, ")+":(F=p.Ha(q,2),z="#"+W(p,F));break;case 24:7>E?z="@("+df(E)+")+":(F=p.Ha(q,2),z="@#"+W(p,F));break;case 32:z="-("+df(E)+")";break;case 40:z="@-("+df(E)+")";break;case 48:F=p.Ha(q,2);z=W(p,F)+"("+df(E)+")";7==E&&(z=[z,W(p,F+q.D&65535)]);break;case 56:F=p.Ha(q,2),z="@"+W(p,F)+"("+df(E)+")",7==E&&(z=[z,W(p,F+q.D&65535)])}p=z;if(!p||!p.length){g="INVALID";break}"string"!=typeof p&&(d||(d=p[1]),p=p[0]);0<g.length&&(g+=",");g+=p||"???"}}e="";h=W(a,f.D)+":";if(-1!==f.D&&-1!==b.D){do if(e+=" "+W(a,a.Ha(f,
2)),null==f.D)break;while(f.D!=b.D)}h+=oa(e,24);h+=oa(k,5);g&&(h+=" "+g);d&&(h=oa(h,60)+";"+d,h=a.b.A.ob?h+("cycles="+Tc(a.b).toString()+" cs="+r(a.b.Lb)):h+(null!=c?"="+c.toString():""));return h}function df(a,b){switch(b){case "N":a=a.b.j&32768?8:0;break;case "Z":a=a.b.w&65535?0:4;break;case "V":a=a.b.u&32768?2:0;break;case "C":a=a.b.B&65536?1:0;break;default:a=0}return b.charAt(0)+(a?"1":"0")+" "}function cf(a){return 6>a?"R"+a:6==a?"SP":"PC"} 2)),null==f.D)break;while(f.D!=b.D)}h+=oa(e,24);h+=oa(k,5);g&&(h+=" "+g);d&&(h=oa(h,60)+";"+d,h=a.b.A.ob?h+("cycles="+Uc(a.b).toString()+" cs="+r(a.b.Lb)):h+(null!=c?"="+c.toString():""));return h}function ef(a,b){switch(b){case "N":a=a.b.j&32768?8:0;break;case "Z":a=a.b.w&65535?0:4;break;case "V":a=a.b.u&32768?2:0;break;case "C":a=a.b.B&65536?1:0;break;default:a=0}return b.charAt(0)+(a?"1":"0")+" "}function df(a){return 6>a?"R"+a:6==a?"SP":"PC"}
function ef(a,b){var d="",c=a.b;8>b?(d=cf(b),d+="="+W(a,c.f[b])):13>b?d="A"+(b-8)+"="+W(a,c.Za[b-8]):16<=b&&20>b?d="S"+(b-16)+"="+W(a,c.sa[b-16]):20==b&&(d="PS="+W(a,$b(c)));d&&(d+=" ");return d}function ff(a){var b,d="";for(b=0;6>b;b++)d+=ef(a,b);d=d+"\n"+(ef(a,6)+ef(a,7)+ef(a,20));return d+=df(a,"T")+df(a,"N")+df(a,"Z")+df(a,"V")+df(a,"C")}l.qc=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0}; function ff(a,b){var d="",c=a.b;8>b?(d=df(b),d+="="+W(a,c.f[b])):13>b?d="A"+(b-8)+"="+W(a,c.Za[b-8]):16<=b&&20>b?d="S"+(b-16)+"="+W(a,c.sa[b-16]):20==b&&(d="PS="+W(a,$b(c)));d&&(d+=" ");return d}function gf(a){var b,d="";for(b=0;6>b;b++)d+=ff(a,b);d=d+"\n"+(ff(a,6)+ff(a,7)+ff(a,20));return d+=ef(a,"T")+ef(a,"N")+ef(a,"Z")+ef(a,"V")+ef(a,"C")}l.qc=function(a,b){return a[0]>b[0]?1:a[0]<b[0]?-1:0};
function gf(a,b,d){var c=[],f=Z(b)>>>0;for(b=0;b<a.N.length;b++){var e=a.N[b],h=e.D>>>0,g=e.Pc;if(f>=h&&f<h+g){f=qa(e.nc,[f-h],a.qc);0<=f?hf(a,b,f,c):d&&(f=~f,hf(a,b,f-1,c),hf(a,b,f,c));break}}return c}function hf(a,b,d,c){var f={},e=a.N[b].nc,h=0,g=null;0<=d&&d<e.length&&(h=e[d][0],g=e[d][1]);g&&(f=a.N[b].Ka[g],g="."==g.charAt(0)?null:f.l||g);c.push(g);c.push(h);c.push(f.a);c.push(f.c)} function hf(a,b,d){var c=[],f=Z(b)>>>0;for(b=0;b<a.N.length;b++){var e=a.N[b],h=e.D>>>0,g=e.Pc;if(f>=h&&f<h+g){f=qa(e.nc,[f-h],a.qc);0<=f?jf(a,b,f,c):d&&(f=~f,jf(a,b,f-1,c),jf(a,b,f,c));break}}return c}function jf(a,b,d,c){var f={},e=a.N[b].nc,h=0,g=null;0<=d&&d<e.length&&(h=e[d][0],g=e[d][1]);g&&(f=a.N[b].Ka[g],g="."==g.charAt(0)?null:f.l||g);c.push(g);c.push(h);c.push(f.a);c.push(f.c)}
function jf(a,b){var d=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(d){if(!d[1])return Fe(a)||a.i("no variables"),!0;if(!d[2])return Fe(a,d[1]);if(!d[3])return delete a.ga[d[1]],!0;b=Be(a,d[3]);return void 0!==b?(a.ga[d[1]]=b,!0):!1}a.i("invalid assignment:"+b);return!1} function kf(a,b){var d=b.match(/^\s*([A-Z_]?[A-Z0-9_]*)\s*(=?)\s*(.*)$/i);if(d){if(!d[1])return Ge(a)||a.i("no variables"),!0;if(!d[2])return Ge(a,d[1]);if(!d[3])return delete a.ga[d[1]],!0;b=Ce(a,d[3]);return void 0!==b?(a.ga[d[1]]=b,!0):!1}a.i("invalid assignment:"+b);return!1}
function kf(a,b,d){var c=null;if(b=Pe(a,b,!0)){var f=gf(a,b,!0);if(f.length){var e,h;f[0]&&(h="",(e=b.D-f[1])&&(h=" + "+r(e,4,!0)),e=f[0]+" ("+W(a,f[1])+")"+h,d&&a.i(e),c=e);4<f.length&&f[4]&&(h="",(e=f[5]-b.D)&&(h=" - "+r(e,4,!0)),e=f[4]+" ("+W(a,f[5])+")"+h,d&&a.i(e),c||(c=e))}else d&&a.i("no symbols")}return c} function lf(a,b,d){var c=null;if(b=Qe(a,b,!0)){var f=hf(a,b,!0);if(f.length){var e,h;f[0]&&(h="",(e=b.D-f[1])&&(h=" + "+r(e,4,!0)),e=f[0]+" ("+W(a,f[1])+")"+h,d&&a.i(e),c=e);4<f.length&&f[4]&&(h="",(e=f[5]-b.D)&&(h=" - "+r(e,4,!0)),e=f[4]+" ("+W(a,f[5])+")"+h,d&&a.i(e),c||(c=e))}else d&&a.i("no symbols")}return c}
function Ve(a,b){var d;if(b&&"?"==b[1])a.i("register commands:"),a.i("\tr\tdump registers"),a.i("\trx [#]\tset flag or register x to [#]");else{var c=a.b;null==d&&(d=!0);if(b&&1<b.length){var f=b[1],e=f.indexOf("=");if(0<e)b=f.substr(e+1),f=f.substr(0,e);else if(2<b.length)b=b[2];else{a.i("missing value for "+b[1]);return}var e=!1,h=Be(a,b);if(void 0!==h)switch(e=!0,f.toUpperCase()){case "PC":c.f[7]=h;a.W=Y(c.f[7]);break;case "NF":c.j=h?32768:0;break;case "ZF":c.w=h?0:1;break;case "VF":c.u=h?32768: function We(a,b){var d;if(b&&"?"==b[1])a.i("register commands:"),a.i("\tr\tdump registers"),a.i("\trx [#]\tset flag or register x to [#]");else{var c=a.b;null==d&&(d=!0);if(b&&1<b.length){var f=b[1],e=f.indexOf("=");if(0<e)b=f.substr(e+1),f=f.substr(0,e);else if(2<b.length)b=b[2];else{a.i("missing value for "+b[1]);return}var e=!1,h=Ce(a,b);if(void 0!==h)switch(e=!0,f.toUpperCase()){case "PC":c.f[7]=h;a.W=Y(c.f[7]);break;case "NF":c.j=h?32768:0;break;case "ZF":c.w=h?0:1;break;case "VF":c.u=h?32768:
0;break;case "CF":c.B=h?65536:0;break;default:a.i("unknown register: "+f);return}if(!e){a.i("invalid value: "+b);return}Dc(c);a.i("updated registers:")}a.i(ff(a));d&&(a.W=Y(c.f[7]),We(a,W(a,a.W.D)))}}function lf(a,b){b=pa(b);var d=b.match(/^(['"])(.*?)\1$/);d?a.i(d[2]):Be(a,b,!0)}function mf(a,b,d){var c="t"!=b;d=De(a,d,null,!0)||1;var f=1==d?0:1;"tc"==b&&(f=d,d=1);Ea(d,function(){return eb(a,!0)&&a.wb(f,c,!1)},function(){Dc(a.b);eb(a,!1)})} 0;break;case "CF":c.B=h?65536:0;break;default:a.i("unknown register: "+f);return}if(!e){a.i("invalid value: "+b);return}Ec(c);a.i("updated registers:")}a.i(gf(a));d&&(a.W=Y(c.f[7]),Xe(a,W(a,a.W.D)))}}function mf(a,b){b=pa(b);var d=b.match(/^(['"])(.*?)\1$/);d?a.i(d[2]):Ce(a,b,!0)}function nf(a,b,d){var c="t"!=b;d=Ee(a,d,null,!0)||1;var f=1==d?0:1;"tc"==b&&(f=d,d=1);Ea(d,function(){return eb(a,!0)&&a.wb(f,c,!1)},function(){Ec(a.b);eb(a,!1)})}
function We(a,b,d,c){if(b=Pe(a,b,!0)){void 0===c&&(c=1);var f=256;if(void 0!==d){c=Pe(a,d,!0);if(!c||c.D<b.D)return;f=c.D-b.D;if(256<f){a.i("range too large");return}c=-1}d=0;for(var e;0<f&&c--;){e=fb(a,!1)||a.ea?a.P:null;var h=null!=e?"cycles":null,g=gf(a,b),k=b.D;if(g[0]&&c&&(!d&&c||0>g[0].indexOf("+"))){var m=g[0]+":";g[2]&&(m+=" "+g[2]);a.i(m)}g[3]&&(h=g[3],e=null);e=bf(a,b,h,e);a.i(e);a.W=b;f-=b.D-k;d++}}} function Xe(a,b,d,c){if(b=Qe(a,b,!0)){void 0===c&&(c=1);var f=256;if(void 0!==d){c=Qe(a,d,!0);if(!c||c.D<b.D)return;f=c.D-b.D;if(256<f){a.i("range too large");return}c=-1}d=0;for(var e;0<f&&c--;){e=fb(a,!1)||a.ea?a.P:null;var h=null!=e?"cycles":null,g=hf(a,b),k=b.D;if(g[0]&&c&&(!d&&c||0>g[0].indexOf("+"))){var m=g[0]+":";g[2]&&(m+=" "+g[2]);a.i(m)}g[3]&&(h=g[3],e=null);e=cf(a,b,h,e);a.i(e);a.W=b;f-=b.D-k;d++}}}
function af(a,b,d){var c=!0;try{b.length&&"end"!=b?d||a.i(">> "+b):(a.ba&&(a.i("ended assemble at "+W(a,a.aa.D)),a.W=a.aa,a.ba=!1),b="");var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.za=null;if(gb(a)&&0<b.length){a.ba&&(b="a "+W(a,a.aa.D)+" "+b);var e=b.replace(/ +/g," ").split(" ");if(e&&e.length)for(var h=e[0],g=h.charAt(0),k=1;k<h.length;k++){var m=h.charAt(k);if("?"==g||"r"==g||"a">m||"z"<m){e[0]=h.substr(k);e.unshift(h.substr(0,k));break}}switch(e[0].charAt(0)){case "a":var n=Pe(a,e[1],!0); function bf(a,b,d){var c=!0;try{b.length&&"end"!=b?d||a.i(">> "+b):(a.ba&&(a.i("ended assemble at "+W(a,a.aa.D)),a.W=a.aa,a.ba=!1),b="");var f=b.charAt(0);if('"'==f||"'"==f)return!0;a.za=null;if(gb(a)&&0<b.length){a.ba&&(b="a "+W(a,a.aa.D)+" "+b);var e=b.replace(/ +/g," ").split(" ");if(e&&e.length)for(var h=e[0],g=h.charAt(0),k=1;k<h.length;k++){var m=h.charAt(k);if("?"==g||"r"==g||"a">m||"z"<m){e[0]=h.substr(k);e.unshift(h.substr(0,k));break}}switch(e[0].charAt(0)){case "a":var n=Qe(a,e[1],!0);
if(n)if(a.aa=n,void 0===e[2])a.i("begin assemble at "+W(a,n.D)),a.ba=!0,Dc(a.b);else{var q;a.i("not supported yet");q=[];if(q.length){for(var p=0;p<q.length;p++)a.bc(n,q[p],1);a.i(bf(a,a.aa))}}break;case "b":a:{var E=e[0],z=e[1],F=b;if("?"==z)a.i("breakpoint commands:"),a.i("\tbp [a]\tset exec breakpoint at addr [a]"),a.i("\tbr [a]\tset read breakpoint at addr [a]"),a.i("\tbw [a]\tset write breakpoint at addr [a]"),a.i("\tbc [a]\tclear breakpoint at addr [a]"),a.i("\tbl\tlist all breakpoints"),a.i("\tbn [n]\tbreak after [n] instruction(s)"); if(n)if(a.aa=n,void 0===e[2])a.i("begin assemble at "+W(a,n.D)),a.ba=!0,Ec(a.b);else{var q;a.i("not supported yet");q=[];if(q.length){for(var p=0;p<q.length;p++)a.bc(n,q[p],1);a.i(cf(a,a.aa))}}break;case "b":a:{var E=e[0],z=e[1],F=b;if("?"==z)a.i("breakpoint commands:"),a.i("\tbp [a]\tset exec breakpoint at addr [a]"),a.i("\tbr [a]\tset read breakpoint at addr [a]"),a.i("\tbw [a]\tset write breakpoint at addr [a]"),a.i("\tbc [a]\tclear breakpoint at addr [a]"),a.i("\tbl\tlist all breakpoints"),a.i("\tbn [n]\tbreak after [n] instruction(s)");
else{var wa=E.charAt(1);if("l"==wa){var Fc;Fc=0+$e(a,a.g);Fc+=$e(a,a.X);(Fc+=$e(a,a.J))||a.i("no breakpoints")}else if("n"==wa)a.ya=De(a,z),a.i("break after "+a.ya+" instruction(s)");else if(void 0===z)a.i("missing breakpoint address");else{var X=Y();if("*"!=z&&(X=Pe(a,z,!0),!X))break a;"c"==wa?null==X.D?(He(a),a.i("all breakpoints cleared")):Ye(a,a.g,X)||Ye(a,a.X,X)||Ye(a,a.J,X)||a.i("breakpoint missing: "+W(a,X.D)):null!=X.D&&(Te(a,X,F),"p"==wa?a.eb(a.g,X):"r"==wa?a.eb(a.X,X):"w"==wa?a.eb(a.J,X): else{var wa=E.charAt(1);if("l"==wa){var Fc;Fc=0+af(a,a.g);Fc+=af(a,a.X);(Fc+=af(a,a.J))||a.i("no breakpoints")}else if("n"==wa)a.ya=Ee(a,z),a.i("break after "+a.ya+" instruction(s)");else if(void 0===z)a.i("missing breakpoint address");else{var X=Y();if("*"!=z&&(X=Qe(a,z,!0),!X))break a;"c"==wa?null==X.D?(Ie(a),a.i("all breakpoints cleared")):Ze(a,a.g,X)||Ze(a,a.X,X)||Ze(a,a.J,X)||a.i("breakpoint missing: "+W(a,X.D)):null!=X.D&&(Ue(a,X,F),"p"==wa?a.eb(a.g,X):"r"==wa?a.eb(a.X,X):"w"==wa?a.eb(a.J,X):
a.i("unknown breakpoint command: "+wa))}}}break;case "c":a.fb&&(a.fb.value="");break;case "d":a:{var Ja,Ka=e[0],ia=e[1],xa=e[2],Ff=e[3];if("?"==ia){var La="";for(Ja in xb)a.Sa[Ja]&&(La&&(La+=","),La+=Ja);La+=",state,symbols";a.i("dump memory commands:");a.i("\tdb [a] [#] dump # bytes at address a");a.i("\tdw [a] [#] dump # words at address a");a.i("\tdd [a] [#] dump # dwords at address a");a.i("\tdh [#] [#] dump # instructions from history");La.length&&a.i("dump extension commands:\n\t"+ a.i("unknown breakpoint command: "+wa))}}}break;case "c":a.fb&&(a.fb.value="");break;case "d":a:{var Ja,Ka=e[0],ia=e[1],xa=e[2],Gf=e[3];if("?"==ia){var La="";for(Ja in xb)a.Sa[Ja]&&(La&&(La+=","),La+=Ja);La+=",state,symbols";a.i("dump memory commands:");a.i("\tdb [a] [#] dump # bytes at address a");a.i("\tdw [a] [#] dump # words at address a");a.i("\tdd [a] [#] dump # dwords at address a");a.i("\tdh [#] [#] dump # instructions from history");La.length&&a.i("dump extension commands:\n\t"+
La)}else if("state"==ia){var Wd=nf(a.F,!0);"console"==xa?console.log(Wd):(a.fb&&(a.fb.value=""),a.i(Wd))}else if("symbols"==ia)for(var Gc=0;Gc<a.N.length;Gc++){var Hc=a.N[Gc],Ma;for(Ma in Hc.Ka)if("."!=Ma.charAt(0)){var Xd=Hc.Ka[Ma].o;if(void 0!==Xd){var Yd=Hc.Ka[Ma].l;Yd&&(Ma=Yd);a.i(W(a,Xd)+" "+Ma)}}}else{if("d"==Ka){for(Ja in xb)if(e[1]==Ja){var Zd=a.Sa[Ja];Zd?(e.shift(),e.shift(),Zd(e)):a.i("no dump registered for "+ia);break a}ia||(Ka=a.Nc||"db")}else a.Nc=Ka;if("dh"==Ka){var $d=ia,ae=xa,be= La)}else if("state"==ia){var Wd=of(a.F,!0);"console"==xa?console.log(Wd):(a.fb&&(a.fb.value=""),a.i(Wd))}else if("symbols"==ia)for(var Gc=0;Gc<a.N.length;Gc++){var Hc=a.N[Gc],Ma;for(Ma in Hc.Ka)if("."!=Ma.charAt(0)){var Xd=Hc.Ka[Ma].o;if(void 0!==Xd){var Yd=Hc.Ka[Ma].l;Yd&&(Ma=Yd);a.i(W(a,Xd)+" "+Ma)}}}else{if("d"==Ka){for(Ja in xb)if(e[1]==Ja){var Zd=a.Sa[Ja];Zd?(e.shift(),e.shift(),Zd(e)):a.i("no dump registered for "+ia);break a}ia||(Ka=a.Nc||"db")}else a.Nc=Ka;if("dh"==Ka){var $d=ia,ae=xa,be=
"",ce=0,fa=a.ra,ja=a.T;if(ja.length){var ba=+$d||a.Vb,ib=+ae||10;isNaN(ba)?ba=ib:be="more ";ba>ja.length&&(a.i("note: only "+ja.length+" available"),ba=ja.length);fa-=ba;0>fa&&(null==ja[ja.length-1].D?(ba=fa+ba,fa=0):fa+=ja.length);var Ic=[];"call"==ae&&(ib=1E5,Ic=["CALL"]);for(void 0!==$d&&a.i(ba+" instructions earlier:");0<ib&&fa!=a.ra;){var de=ja[fa++];if(null==de.D)break;var jb=Y(de.D),Gf=ba--,ee=bf(a,jb,"history",Gf);(!Ic.length||0<=ee.indexOf(Ic[0]))&&a.i(ee);jb.ec&&(fa+=jb.ec,ib-=jb.ec,ba-= "",ce=0,fa=a.ra,ja=a.T;if(ja.length){var ba=+$d||a.Vb,ib=+ae||10;isNaN(ba)?ba=ib:be="more ";ba>ja.length&&(a.i("note: only "+ja.length+" available"),ba=ja.length);fa-=ba;0>fa&&(null==ja[ja.length-1].D?(ba=fa+ba,fa=0):fa+=ja.length);var Ic=[];"call"==ae&&(ib=1E5,Ic=["CALL"]);for(void 0!==$d&&a.i(ba+" instructions earlier:");0<ib&&fa!=a.ra;){var de=ja[fa++];if(null==de.D)break;var jb=Y(de.D),Hf=ba--,ee=cf(a,jb,"history",Hf);(!Ic.length||0<=ee.indexOf(Ic[0]))&&a.i(ee);jb.ec&&(fa+=jb.ec,ib-=jb.ec,ba-=
jb.ec);fa>=ja.length&&(fa=0);a.Vb=ba;ce++;ib--}}ce||(a.i("no "+be+"history available"),a.Vb=void 0)}else{var Nb=Pe(a,ia);if(Nb){var Ob=0;xa&&("l"==xa.charAt(0)&&(xa=xa.substr(1)||Ff),Ob=De(a,xa)>>>0,65536<Ob&&(Ob=65536));for(var kb="",Pb="dd"==Ka?4:"dw"==Ka?2:1,Qb=Pb*Ob||128,Hf=Qb+15>>4||1;Hf--&&0<Qb;){var Rb=0,Jc=0,lb,Kc="",fe="",ia=W(a,Nb.D);for(lb=16;0<lb&&0<Qb;lb--){var Sb=a.Hb(Nb,1),Rb=Rb|Sb<<(Jc++<<3);Jc==Pb&&(Kc+=r(Rb,2*Pb),Kc+=1==Pb?9==lb?"-":" ":" ",Rb=Jc=0);fe+=32<=Sb&&128>Sb?String.fromCharCode(Sb): jb.ec);fa>=ja.length&&(fa=0);a.Vb=ba;ce++;ib--}}ce||(a.i("no "+be+"history available"),a.Vb=void 0)}else{var Nb=Qe(a,ia);if(Nb){var Ob=0;xa&&("l"==xa.charAt(0)&&(xa=xa.substr(1)||Gf),Ob=Ee(a,xa)>>>0,65536<Ob&&(Ob=65536));for(var kb="",Pb="dd"==Ka?4:"dw"==Ka?2:1,Qb=Pb*Ob||128,If=Qb+15>>4||1;If--&&0<Qb;){var Rb=0,Jc=0,lb,Kc="",fe="",ia=W(a,Nb.D);for(lb=16;0<lb&&0<Qb;lb--){var Sb=a.Hb(Nb,1),Rb=Rb|Sb<<(Jc++<<3);Jc==Pb&&(Kc+=r(Rb,2*Pb),Kc+=1==Pb?9==lb?"-":" ":" ",Rb=Jc=0);fe+=32<=Sb&&128>Sb?String.fromCharCode(Sb):
".";Qb--}kb&&(kb+="\n");kb+=ia+" "+Kc+(lb?"":" "+fe)}kb&&a.i(kb);a.zb=Nb}}}}break;case "e":if("else"==e[0])break;var Tb=1,ge=255,he=a.Hb,ie=a.bc;"ew"==e[0]&&(Tb=2,ge=65535,he=a.Ha,ie=a.jc);var je=Tb<<1,ke=e[1];if(null==ke)a.i("edit memory commands:"),a.i("\teb [a] [...] edit bytes at address a"),a.i("\tew [a] [...] edit words at address a");else{var Ub=Pe(a,ke);if(Ub)for(var Vb=2;Vb<e.length;Vb++){var mb=Be(a,e[Vb]);if(void 0===mb){a.i("unrecognized value: "+e[Vb]);break}mb&~ge&&a.i("warning: "+ ".";Qb--}kb&&(kb+="\n");kb+=ia+" "+Kc+(lb?"":" "+fe)}kb&&a.i(kb);a.zb=Nb}}}}break;case "e":if("else"==e[0])break;var Tb=1,ge=255,he=a.Hb,ie=a.bc;"ew"==e[0]&&(Tb=2,ge=65535,he=a.Ha,ie=a.jc);var je=Tb<<1,ke=e[1];if(null==ke)a.i("edit memory commands:"),a.i("\teb [a] [...] edit bytes at address a"),a.i("\tew [a] [...] edit words at address a");else{var Ub=Qe(a,ke);if(Ub)for(var Vb=2;Vb<e.length;Vb++){var mb=Ce(a,e[Vb]);if(void 0===mb){a.i("unrecognized value: "+e[Vb]);break}mb&~ge&&a.i("warning: "+
r(mb)+" exceeds "+Tb+"-byte value");var If=he.call(a,Ub);a.i("changing "+W(a,Ub.D)+" from "+r(If,je,!0)+" to "+r(mb,je,!0));ie.call(a,Ub,mb,Tb)}}break;case "g":a:{var le=e[1],Jf=b;if(void 0!==le){var Lc=Pe(a,le,!0);if(!Lc)break a;Te(a,Lc,Jf);a.eb(a.g,Lc,!0)}a.lb(!0)||d||a.i("cpu busy or unavailable, run command ignored")}break;case "h":a:{var Mc;if(a.A.ja)Mc="halting",a.ma();else{if(fb(a,!0))break a;Mc="already halted"}d||a.i(Mc)}break;case "i":if("if"==e[0]){var Nc;var nb=b.substr(2),nb=pa(nb);Be(a, r(mb)+" exceeds "+Tb+"-byte value");var Jf=he.call(a,Ub);a.i("changing "+W(a,Ub.D)+" from "+r(Jf,je,!0)+" to "+r(mb,je,!0));ie.call(a,Ub,mb,Tb)}}break;case "g":a:{var le=e[1],Kf=b;if(void 0!==le){var Lc=Qe(a,le,!0);if(!Lc)break a;Ue(a,Lc,Kf);a.eb(a.g,Lc,!0)}a.lb(!0)||d||a.i("cpu busy or unavailable, run command ignored")}break;case "h":a:{var Mc;if(a.A.ja)Mc="halting",a.ma();else{if(fb(a,!0))break a;Mc="already halted"}d||a.i(Mc)}break;case "i":if("if"==e[0]){var Nc;var nb=b.substr(2),nb=pa(nb);Ce(a,
nb)?(d||a.i("true: "+nb),Nc=!0):(d||a.i("false: "+nb),Nc=!1);Nc||(c=!1)}break;case "k":var Kf=e[0];if("?"==e[1])a.i("stack trace commands:"),a.i("\tk\tshow frame addresses"),a.i("\tks\tshow symbol information");else{var Oc=0,me=Y(),ob=Y(a.b.f[6]);for(a.i("stack trace for "+W(a,ob.D));10>Oc;){for(var ya=null,Lf=256;65536>ob.D>>>0;){me.D=a.Ha(ob,2);if(null==ob.D||!Lf--)break;for(var Mf=a,Wb=me,ne=null,pb=Wb.D,oe=pb,Pc=1;6>=Pc&&pb;Pc++){if(2<Pc){Wb.D=pb;var Xb=bf(Mf,Wb);if(0<=Xb.indexOf("JSR")){var pe= nb)?(d||a.i("true: "+nb),Nc=!0):(d||a.i("false: "+nb),Nc=!1);Nc||(c=!1)}break;case "k":var Lf=e[0];if("?"==e[1])a.i("stack trace commands:"),a.i("\tk\tshow frame addresses"),a.i("\tks\tshow symbol information");else{var Oc=0,me=Y(),ob=Y(a.b.f[6]);for(a.i("stack trace for "+W(a,ob.D));10>Oc;){for(var ya=null,Mf=256;65536>ob.D>>>0;){me.D=a.Ha(ob,2);if(null==ob.D||!Mf--)break;for(var Nf=a,Wb=me,ne=null,pb=Wb.D,oe=pb,Pc=1;6>=Pc&&pb;Pc++){if(2<Pc){Wb.D=pb;var Xb=cf(Nf,Wb);if(0<=Xb.indexOf("JSR")){var pe=
Xb.indexOf(" ");if(pb+(Xb.indexOf(" ",pe+1)-pe-1)/2==oe){ne=Xb;break}}}pb--}Wb.D=oe;if(ya=ne)break}if(!ya||null==ya)break;var qe=null;if("ks"==Kf){var re=ya.match(/[0-9A-F]+$/);re&&(qe=kf(a,re[0]))}ya=oa(ya,50)+" ;"+(qe||"stack="+W(a,ob.D));a.i(ya);Oc++}Oc||a.i("no return addresses found")}break;case "l":"ln"==e[0]&&kf(a,e[1],!0);break;case "m":a:{var ka,la=null,G=e[1];"?"==G&&(G=void 0);if(void 0!==G){var ra=0;if("all"==G)ra=1878917119,G=null;else if("on"==G)la=!0,G=null;else if("off"==G)la=!1, Xb.indexOf(" ");if(pb+(Xb.indexOf(" ",pe+1)-pe-1)/2==oe){ne=Xb;break}}}pb--}Wb.D=oe;if(ya=ne)break}if(!ya||null==ya)break;var qe=null;if("ks"==Lf){var re=ya.match(/[0-9A-F]+$/);re&&(qe=lf(a,re[0]))}ya=oa(ya,50)+" ;"+(qe||"stack="+W(a,ob.D));a.i(ya);Oc++}Oc||a.i("no return addresses found")}break;case "l":"ln"==e[0]&&lf(a,e[1],!0);break;case "m":a:{var ka,la=null,G=e[1];"?"==G&&(G=void 0);if(void 0!==G){var ra=0;if("all"==G)ra=1878917119,G=null;else if("on"==G)la=!0,G=null;else if("off"==G)la=!1,
G=null;else{"keys"==G&&(G="key");"kbd"==G&&(G="keyboard");for(ka in xb)if(G==ka){ra=xb[ka];la=!!(a.ia&ra);break}if(!ra){a.i("unknown message category: "+G);break a}}if(ra)if("on"==e[2])a.ia|=ra,la=!0;else if("off"==e[2]&&(a.ia&=~ra,la=!1,1073741824==ra)){for(var Qc=0;Qc<a.Ea.length;Qc++)a.i(a.Ea[Qc]);a.Ea=[]}}var Nf=0,qb="";for(ka in xb)if(!G||G==ka){var Of=!!(a.ia&xb[ka]);if(null===la||la==Of)qb&&(qb+=","),++Nf%10||(qb+="\n\t"),"key"==ka&&(ka="keys"),qb+=ka}void 0===G&&a.i("message commands:\n\tm [category] [on|off]\tturn categories on/off"); G=null;else{"keys"==G&&(G="key");"kbd"==G&&(G="keyboard");for(ka in xb)if(G==ka){ra=xb[ka];la=!!(a.ia&ra);break}if(!ra){a.i("unknown message category: "+G);break a}}if(ra)if("on"==e[2])a.ia|=ra,la=!0;else if("off"==e[2]&&(a.ia&=~ra,la=!1,1073741824==ra)){for(var Qc=0;Qc<a.Ea.length;Qc++)a.i(a.Ea[Qc]);a.Ea=[]}}var Of=0,qb="";for(ka in xb)if(!G||G==ka){var Pf=!!(a.ia&xb[ka]);if(null===la||la==Pf)qb&&(qb+=","),++Of%10||(qb+="\n\t"),"key"==ka&&(ka="keys"),qb+=ka}void 0===G&&a.i("message commands:\n\tm [category] [on|off]\tturn categories on/off");
a.i((null!==la?la?"messages on: ":"messages off: ":"message categories:\n\t")+(qb||"none"));Ie(a)}break;case "p":if("print"==e[0]){lf(a,b.substr(5));break}var Pf="pr"==e[0]?1:0;if(a.ea)a.i("step in progress");else{var se=Y(a.b.f[7]);a.Hb(se);a.ea?(a.eb(a.g,se,!0),a.lb()||(a.F&&a.F.Tb(),a.ea=0)):mf(a,Pf?"tr":"t")}break;case "r":if("reset"==b){a.F&&a.F.reset();break}Ve(a,e);break;case "s":a:switch(e[1]){case "base":if(e[2]){var rb=+e[2];if(8==rb||10==rb||16==rb)a.wa=rb;else{a.i("invalid base: "+rb); a.i((null!==la?la?"messages on: ":"messages off: ":"message categories:\n\t")+(qb||"none"));Je(a)}break;case "p":if("print"==e[0]){mf(a,b.substr(5));break}var Qf="pr"==e[0]?1:0;if(a.ea)a.i("step in progress");else{var se=Y(a.b.f[7]);a.Hb(se);a.ea?(a.eb(a.g,se,!0),a.lb()||(a.F&&a.F.Tb(),a.ea=0)):nf(a,Qf?"tr":"t")}break;case "r":if("reset"==b){a.F&&a.F.reset();break}We(a,e);break;case "s":a:switch(e[1]){case "base":if(e[2]){var rb=+e[2];if(8==rb||10==rb||16==rb)a.wa=rb;else{a.i("invalid base: "+rb);
break}}a.i("default base: "+a.wa);break;case "cs":var sb;void 0!==e[3]&&(sb=+e[3]);switch(e[2]){case "int":a.b.qb=sb;break;case "start":a.b.Mb=sb;break;case "stop":a.b.rb=sb;break;default:a.i("unknown cs option");break a}void 0!==sb&&Cc(a.b);a.i("checksums "+(a.b.A.ob?"enabled":"disabled"));break;case "sp":void 0!==e[2]&&(Vc(a.b,+e[2])||a.i("warning: using 1x multiplier, previous target not reached"));a.i("target speed: "+(a.b.hb.toFixed(2)+"Mhz")+" ("+a.b.jb+"x)");break;case "?":a.i("debugger options:"); break}}a.i("default base: "+a.wa);break;case "cs":var sb;void 0!==e[3]&&(sb=+e[3]);switch(e[2]){case "int":a.b.qb=sb;break;case "start":a.b.Mb=sb;break;case "stop":a.b.rb=sb;break;default:a.i("unknown cs option");break a}void 0!==sb&&Dc(a.b);a.i("checksums "+(a.b.A.ob?"enabled":"disabled"));break;case "sp":void 0!==e[2]&&(Wc(a.b,+e[2])||a.i("warning: using 1x multiplier, previous target not reached"));a.i("target speed: "+(a.b.hb.toFixed(2)+"Mhz")+" ("+a.b.jb+"x)");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;default:e[1]&&a.i("unknown option: "+e[1])}break;case "t":mf(a,e[0],e[1]);break;case "u":We(a,e[1],e[2],8);break;case "v":if("var"==e[0]){jf(a,b.substr(3))||(c=!1);break}a.i("PDP11js version 1.30.0 ("+a.b.Sc+",RELEASE"+(tb?",TYPEDARRAYS":",LONGARRAYS")+ 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;default:e[1]&&a.i("unknown option: "+e[1])}break;case "t":nf(a,e[0],e[1]);break;case "u":Xe(a,e[1],e[2],8);break;case "v":if("var"==e[0]){kf(a,b.substr(3))||(c=!1);break}a.i("PDP11js version 1.30.0 ("+a.b.Sc+",RELEASE"+(tb?",TYPEDARRAYS":",LONGARRAYS")+
")");a.i(window?window.navigator.userAgent:"");break;case "?":if(e[1]){lf(a,b.substr(1));break}var Rc="commands:",Sc;for(Sc in Le)Rc+="\n"+oa(Sc,9)+Le[Sc];nd(a)||(Rc+="\nnote: history disabled if no exec breakpoints");a.i(Rc);break;default:a.i("unknown command: "+b),c=!1}}}catch(te){a.i("debugger error: "+(te.stack||te.message)),c=!1}return c}function Ke(a,b,d){b=ze(a,b,d);for(var c in b)if(!af(a,b[+c]))return!1;return!0} ")");a.i(window?window.navigator.userAgent:"");break;case "?":if(e[1]){mf(a,b.substr(1));break}var Rc="commands:",Sc;for(Sc in Me)Rc+="\n"+oa(Sc,9)+Me[Sc];od(a)||(Rc+="\nnote: history disabled if no exec breakpoints");a.i(Rc);break;default:a.i("unknown command: "+b),c=!1}}}catch(te){a.i("debugger error: "+(te.stack||te.message)),c=!1}return c}function Le(a,b,d){b=Ae(a,b,d);for(var c in b)if(!bf(a,b[+c]))return!1;return!0}
Pa(function(){for(var a=y(document,"pdp11","debugger"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new Ge(c);cb(c,d)}}); Pa(function(){for(var a=y(document,"pdp11","debugger"),b=0;b<a.length;b++){var d=a[b],c=x(d),c=new He(c);cb(c,d)}});
function of(a,b,d){u.call(this,"Computer",a,of,67108864);this.A.fa=!1;pf(this,b);this.X=Ac(this,"autoPower",a);this.C=0;this.ga=a.busWidth||a.buswidth;this.g=qf;this.T=null;this.N=this.ba=!1;this.url=Ac(this,"url")||"";(Math.random()+.1).toString(36);this.F=rf(this);if(this.b=bb("CPU",this.id)){this.I=bb("Debugger",this.id);this.H=new Ab({id:this.oc+".bus",busWidth:this.ga},this.b,this.I);var c,f=ab(this.id);if((this.G=bb("Panel",this.id))&&this.G.fb)for(b=0;b<f.length;b++)c=f[b],c.oa=this.G.oa,c.i= function pf(a,b,d){u.call(this,"Computer",a,pf,67108864);this.A.fa=!1;qf(this,b);this.X=Bc(this,"autoPower",a);this.C=0;this.ga=a.busWidth||a.buswidth;this.g=rf;this.T=null;this.N=this.ba=!1;this.url=Bc(this,"url")||"";(Math.random()+.1).toString(36);this.F=sf(this);if(this.b=bb("CPU",this.id)){this.I=bb("Debugger",this.id);this.H=new Ab({id:this.oc+".bus",busWidth:this.ga},this.b,this.I);var c,f=ab(this.id);if((this.G=bb("Panel",this.id))&&this.G.fb)for(b=0;b<f.length;b++)c=f[b],c.oa=this.G.oa,c.i=
this.G.i,c.fb=this.G.fb;this.i("PDP11js v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.i("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<f.length;b++)c=f[b],c.Xa&&c.Xa(this,this.H,this.b,this.I);b=null;c=a.resume;void 0!==c&&(1<c.length?b=this.P=c:this.g=parseInt(c,10));var e;if(a=Ac(this,"state")||(e=!0,a.state))b=this.$=a,e||(this.N=!0,this.g=qf),this.g&& this.G.i,c.fb=this.G.fb;this.i("PDP11js v1.30.0\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>");this.i("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis <paulnank@hotmail.com>");for(b=0;b<f.length;b++)c=f[b],c.Xa&&c.Xa(this,this.H,this.b,this.I);b=null;c=a.resume;void 0!==c&&(1<c.length?b=this.P=c:this.g=parseInt(c,10));var e;if(a=Bc(this,"state")||(e=!0,a.state))b=this.$=a,e||(this.N=!0,this.g=rf),this.g&&
(this.W=new bd(this,"1.30.0"),sf(this.W)?b=null:delete this.W);!b&&this.g&&(b=tf(this))&&(this.N=!0);if(b){var h=this;ua(b,null,!0,function(a,b,c){c?(h.P=null,h.N=!1,h.oa("Unable to load machine state from server (error "+c+(b?": "+pa(b):"")+")")):(h.T=b,h.ba=!0);A(h)})}else A(this);this.O.power||(this.X=!0);!d&&this.X&&uf(this,this.Nb)}else t("Unable to find CPU component")}w(of);var qf=0; (this.W=new cd(this,"1.30.0"),tf(this.W)?b=null:delete this.W);!b&&this.g&&(b=uf(this))&&(this.N=!0);if(b){var h=this;ua(b,null,!0,function(a,b,c){c?(h.P=null,h.N=!1,h.oa("Unable to load machine state from server (error "+c+(b?": "+pa(b):"")+")")):(h.T=b,h.ba=!0);A(h)})}else A(this);this.O.power||(this.X=!0);!d&&this.X&&vf(this,this.Nb)}else t("Unable to find CPU component")}w(pf);var rf=0;
function pf(a,b){if(!b){var d;if("object"==typeof resources&&(d=resources.parms))try{b=eval("("+d+")")}catch(c){t(c.message+" ("+d+")")}}a.ea=b}function Ac(a,b,d){var c=b.toLowerCase(),c=Ua[b]||Ua[c];void 0===c&&a.ea&&(c=a.ea[b]);void 0===c&&d&&(c=d[b]);void 0===c&&"object"==typeof resources&&resources[b]&&(c=b);return c}function uf(a,b,d){for(var c=ab(a.id),f=0;f<=c.length;f++){var e=f<c.length?c[f]:a;if(!gb(e)){gb(e,function(){uf(a,b,d)});return}}b.call(a,d)} function qf(a,b){if(!b){var d;if("object"==typeof resources&&(d=resources.parms))try{b=eval("("+d+")")}catch(c){t(c.message+" ("+d+")")}}a.ea=b}function Bc(a,b,d){var c=b.toLowerCase(),c=Ua[b]||Ua[c];void 0===c&&a.ea&&(c=a.ea[b]);void 0===c&&d&&(c=d[b]);void 0===c&&"object"==typeof resources&&resources[b]&&(c=b);return c}function vf(a,b,d){for(var c=ab(a.id),f=0;f<=c.length;f++){var e=f<c.length?c[f]:a;if(!gb(e)){gb(e,function(){vf(a,b,d)});return}}b.call(a,d)}
function vf(a,b){var d=new bd(a,"1.30.0","validate");if(sf(d)&&wf(d)){var c=d.get("timestamp"),f=b?b.get("timestamp"):"unknown";c!=f&&(a.oa("Machine state may be out-of-date\n("+c+" vs. "+f+")\nCheck your browser's local storage limits"),b||d.clear())}}l=of.prototype; function wf(a,b){var d=new cd(a,"1.30.0","validate");if(tf(d)&&xf(d)){var c=d.get("timestamp"),f=b?b.get("timestamp"):"unknown";c!=f&&(a.oa("Machine state may be out-of-date\n("+c+" vs. "+f+")\nCheck your browser's local storage limits"),b||d.clear())}}l=pf.prototype;
l.Nb=function(a){void 0===a&&(a=this.g||(this.T?1:qf));if(!this.C){this.C++;var b=!1,d=!1;this.aa=!1;var c=this.W||new bd(this,"1.30.0");if(-1==a)b=!0;else if(a>qf){if(sf(c,this.T)){this.J=new bd(this,"1.30.0","failsafe");sf(this.J)&&(xf(this,c),a=2,yf(this.J));this.J.set("timestamp",ta());zf(this.J);var f=this.g&&!this.N;if(1==a||va("Click OK to restore the previous PDP11js machine state, or CANCEL to reset the machine.")){if(d=wf(c)){var e=c.get("code"),h=c.get("data");e&&("ok"==e?sf(c,h):("error"== l.Nb=function(a){void 0===a&&(a=this.g||(this.T?1:rf));if(!this.C){this.C++;var b=!1,d=!1;this.aa=!1;var c=this.W||new cd(this,"1.30.0");if(-1==a)b=!0;else if(a>rf){if(tf(c,this.T)){this.J=new cd(this,"1.30.0","failsafe");tf(this.J)&&(yf(this,c),a=2,zf(this.J));this.J.set("timestamp",ta());Af(this.J);var f=this.g&&!this.N;if(1==a||va("Click OK to restore the previous PDP11js machine state, or CANCEL to reset the machine.")){if(d=xf(c)){var e=c.get("code"),h=c.get("data");e&&("ok"==e?tf(c,h):("error"==
e&&"no machine state"!=h?(this.oa("Error: "+h),"unable to verify user"==h&&(Ca("user",""),this.F=null)):this.i(e+": "+h),yf(c),sf(c)?(d=wf(c),f=!0):d=!1))}f&&vf(this,d?c:null)}else 2==a&&c.clear()}else vf(this);delete this.T;delete this.W}f=ab(this.id);for(e=0;e<f.length;e++)h=f[e],h!==this&&h!=this.b&&(d=Af(this,h,c,b,d));b=[c,a,d];-1!=a?uf(this,this.tc,b):this.tc(b)}}; e&&"no machine state"!=h?(this.oa("Error: "+h),"unable to verify user"==h&&(Ca("user",""),this.F=null)):this.i(e+": "+h),zf(c),tf(c)?(d=xf(c),f=!0):d=!1))}f&&wf(this,d?c:null)}else 2==a&&c.clear()}else wf(this);delete this.T;delete this.W}f=ab(this.id);for(e=0;e<f.length;e++)h=f[e],h!==this&&h!=this.b&&(d=Bf(this,h,c,b,d));b=[c,a,d];-1!=a?vf(this,this.tc,b):this.tc(b)}};
function Af(a,b,d,c,f){if(!b.A.fa){b.A.fa=!0;if(b.Na){var e=null;f&&((e=d.get(b.id))||(e=d.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof e&&(e=null);!b.Na(e,c)&&e&&(t("Unable to restore state for "+b.type),a.$&&!a.ba?(d.clear(),a.g=qf,window&&window.location.reload()):a.aa=!0,b.Na(null),f=!1)}if(!c&&b.mc)for(a=b.mc.split("|"),d=0;d<a.length;d++)b.status(a[d])}return f} function Bf(a,b,d,c,f){if(!b.A.fa){b.A.fa=!0;if(b.Na){var e=null;f&&((e=d.get(b.id))||(e=d.get(b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof e&&(e=null);!b.Na(e,c)&&e&&(t("Unable to restore state for "+b.type),a.$&&!a.ba?(d.clear(),a.g=rf,window&&window.location.reload()):a.aa=!0,b.Na(null),f=!1)}if(!c&&b.mc)for(a=b.mc.split("|"),d=0;d<a.length;d++)b.status(a[d])}return f}
l.tc=function(a){var b=a[0],d=0>a[1];a=a[2];this.ha=!0;this.A.fa=!0;var c=this.O.power;c&&(c.textContent="Shutdown");this.b&&(Af(this,this.b,b,d,a),this.b.Db());this.aa&&(xf(this,b),b.clear());!d&&this.J&&(this.J.clear(),delete this.J);this.C=0}; l.tc=function(a){var b=a[0],d=0>a[1];a=a[2];this.ha=!0;this.A.fa=!0;var c=this.O.power;c&&(c.textContent="Shutdown");this.b&&(Bf(this,this.b,b,d,a),this.b.Db());this.aa&&(yf(this,b),b.clear());!d&&this.J&&(this.J.clear(),delete this.J);this.C=0};
function xf(a,b){if(va("There may be a problem with your PDP11js machine.\n\nTo help us diagnose it, click OK to send this PDP11js machine state to http://www.pcjs.org.")){var d=a.F||"";b=b.toString();var c={app:"PDP11js",ver:"1.30.0"};c.url=a.url;c.user=d;c.type="bug";c.data=b;ua("http://www.pcjs.org/api/v1/report",c,!0)}} function yf(a,b){if(va("There may be a problem with your PDP11js machine.\n\nTo help us diagnose it, click OK to send this PDP11js machine state to http://www.pcjs.org.")){var d=a.F||"";b=b.toString();var c={app:"PDP11js",ver:"1.30.0"};c.url=a.url;c.user=d;c.type="bug";c.data=b;ua("http://www.pcjs.org/api/v1/report",c,!0)}}
function nf(a,b,d){var c,f="none";if(a.C)return null;a.C--;var e=new bd(a,"1.30.0"),h=new bd(a,"1.30.0","validate"),g=ta();h.set("timestamp",g);e.set("timestamp",g);e.set("version","1.30.0");e.set("url",window?window.location.href:null);e.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.Ma&&(d&&a.b.ma(),c=a.b.Ma(b,d),"object"===typeof c&&e.set(a.b.id,c),d&&(a.b.A.fa=!1,!1===c&&(f=null)));for(var g=ab(a.id),k=0;k<g.length;k++){var m=g[k];m.A.fa&&(m.Ma&&(c=m.Ma(b,d),"object"===typeof c&& function of(a,b,d){var c,f="none";if(a.C)return null;a.C--;var e=new cd(a,"1.30.0"),h=new cd(a,"1.30.0","validate"),g=ta();h.set("timestamp",g);e.set("timestamp",g);e.set("version","1.30.0");e.set("url",window?window.location.href:null);e.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.Ma&&(d&&a.b.ma(),c=a.b.Ma(b,d),"object"===typeof c&&e.set(a.b.id,c),d&&(a.b.A.fa=!1,!1===c&&(f=null)));for(var g=ab(a.id),k=0;k<g.length;k++){var m=g[k];m.A.fa&&(m.Ma&&(c=m.Ma(b,d),"object"===typeof c&&
e.set(m.id,c)),d&&(m.A.fa=!1,!1===c&&(f=null)))}f&&(d?(g=c=!1,b?(a.F&&Bf(a,a.F,e.toString()),zf(h)&&zf(e)||(f=null,c=g=!0)):a.g&&(c=!0,g=3==a.g),c&&e.clear(g)):f=e.toString());d&&(a.A.fa=!1,b=a.O.power)&&(b.textContent="Power");a.C=0;return f} e.set(m.id,c)),d&&(m.A.fa=!1,!1===c&&(f=null)))}f&&(d?(g=c=!1,b?(a.F&&Cf(a,a.F,e.toString()),Af(h)&&Af(e)||(f=null,c=g=!0)):a.g&&(c=!0,g=3==a.g),c&&e.clear(g)):f=e.toString());d&&(a.A.fa=!1,b=a.O.power)&&(b.textContent="Power");a.C=0;return f}
l.reset=function(){this.H&&this.H.reset&&(this.I&&db(this,0)&&this.I.message("Resetting "+this.H.type,void 0),this.H.reset());for(var a=ab(this.id),b=0;b<a.length;b++){var d=a[b];d!==this&&d!==this.H&&d.reset&&(this.I&&db(this,0)&&this.I.message("Resetting "+d.type,void 0),d.reset())}};l.start=function(a,b){for(var d=ab(this.id),c=0;c<d.length;c++){var f=d[c];"CPU"!=f.type&&f!==this&&f.start&&f.start(a,b)}}; l.reset=function(){this.H&&this.H.reset&&(this.I&&db(this,0)&&this.I.message("Resetting "+this.H.type,void 0),this.H.reset());for(var a=ab(this.id),b=0;b<a.length;b++){var d=a[b];d!==this&&d!==this.H&&d.reset&&(this.I&&db(this,0)&&this.I.message("Resetting "+d.type,void 0),d.reset())}};l.start=function(a,b){for(var d=ab(this.id),c=0;c<d.length;c++){var f=d[c];"CPU"!=f.type&&f!==this&&f.start&&f.start(a,b)}};
l.stop=function(a,b){for(var d=ab(this.id),c=0;c<d.length;c++){var f=d[c];"CPU"!=f.type&&f!==this&&f.stop&&f.stop(a,b)}}; l.stop=function(a,b){for(var d=ab(this.id),c=0;c<d.length;c++){var f=d[c];"CPU"!=f.type&&f!==this&&f.stop&&f.stop(a,b)}};
l.ua=function(a,b,d){var c=this;switch(b){case "power":return this.O[b]=d,d.onclick=function(){c.C||(c.A.fa?nf(c,!1,!0):uf(c,c.Nb))},!0;case "reset":return this.O[b]=d,d.onclick=function(){if(c.A.fa&&!c.C)if(c.g&&!c.P){var a=va("Click OK to save changes to this PDP11js machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");nf(c,a,!0);!a&&c.$?window&&window.location.reload():c.Nb(qf)}else c.reset(),c.b&&c.b.Db()},!0;case "save":if(ga())d.parentNode.removeChild(d);else return this.O[b]= l.ua=function(a,b,d){var c=this;switch(b){case "power":return this.O[b]=d,d.onclick=function(){c.C||(c.A.fa?of(c,!1,!0):vf(c,c.Nb))},!0;case "reset":return this.O[b]=d,d.onclick=function(){if(c.A.fa&&!c.C)if(c.g&&!c.P){var a=va("Click OK to save changes to this PDP11js machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");of(c,a,!0);!a&&c.$?window&&window.location.reload():c.Nb(rf)}else c.reset(),c.b&&c.b.Db()},!0;case "save":if(ga())d.parentNode.removeChild(d);else return this.O[b]=
d,d.onclick=function(){var a=rf(c,!0);if(a){var b=!!(c.g&&!c.P||c.$),d=nf(c,b);b?Bf(c,a,d):c.oa("Resume disabled, machine state not saved")}},!0}return!1}; d,d.onclick=function(){var a=sf(c,!0);if(a){var b=!!(c.g&&!c.P||c.$),d=of(c,b);b?Cf(c,a,d):c.oa("Resume disabled, machine state not saved")}},!0}return!1};
function rf(a,b){var d=a.F;d||((d=Ba("user"),void 0!==d)?!d&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),d=b)&&((d=Cf(a,d))||a.oa("The user ID is invalid.")):b&&a.oa("Browser local storage is not available"));return d} function sf(a,b){var d=a.F;d||((d=Ba("user"),void 0!==d)?!d&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),d=b)&&((d=Df(a,d))||a.oa("The user ID is invalid.")):b&&a.oa("Browser local storage is not available"));return d}
function Cf(a,b){a.F=null;b=ua(ha()+"/api/v1/user?req=verify&user="+b);var d=b[1];if(!b[0]&&d)try{b=eval("("+d+")"),b.code&&"ok"==b.code&&(Ca("user",b.data),a.F=b.data)}catch(c){t(c.message+" ("+d+")")}return a.F}function tf(a){var b=null;a.F&&(b=ha()+"/api/v1/user?req=load&user="+a.F+"&state="+Df(a,"1.30.0"));return b} function Df(a,b){a.F=null;b=ua(ha()+"/api/v1/user?req=verify&user="+b);var d=b[1];if(!b[0]&&d)try{b=eval("("+d+")"),b.code&&"ok"==b.code&&(Ca("user",b.data),a.F=b.data)}catch(c){t(c.message+" ("+d+")")}return a.F}function uf(a){var b=null;a.F&&(b=ha()+"/api/v1/user?req=load&user="+a.F+"&state="+Ef(a,"1.30.0"));return b}
function Bf(a,b,d){if(d){var c={req:"store"};c.user=b;c.state=Df(a,"1.30.0");c.data=d;b=ua(ha()+"/api/v1/user",c);c=b[0];if(b[1]){if(c){var f=c.indexOf("\n");0<f&&(c=c.substr(0,f));c.indexOf("Error: ")||(c=c.substr(7))}c='{"code":'+b[1]+',"data":"'+c+'"}'}b=JSON.parse(c);b&&"ok"==b.code?a.oa("Machine state saved to server"):d&&(d=b&&b.data||"unable to save machine state",d="error"==b.code?"Error: "+d:"Error "+b.code+": "+d,a.oa(d),Ca("user",""),a.F=null)}}l.Tb=function(){}; function Cf(a,b,d){if(d){var c={req:"store"};c.user=b;c.state=Ef(a,"1.30.0");c.data=d;b=ua(ha()+"/api/v1/user",c);c=b[0];if(b[1]){if(c){var f=c.indexOf("\n");0<f&&(c=c.substr(0,f));c.indexOf("Error: ")||(c=c.substr(7))}c='{"code":'+b[1]+',"data":"'+c+'"}'}b=JSON.parse(c);b&&"ok"==b.code?a.oa("Machine state saved to server"):d&&(d=b&&b.data||"unable to save machine state",d="error"==b.code?"Error: "+d:"Error "+b.code+": "+d,a.oa(d),Ca("user",""),a.F=null)}}l.Tb=function(){};
l.xa=function(a){this.b&&this.b.xa(a);this.G&&this.G.xa(a)};Pa(function(){for(var a=y(document,"pdp11-machine"),b=0;b<a.length;b++)for(var d=a[b],c=x(d),d=y(d,"pdp11","computer"),f=0;f<d.length;f++){var e=d[f],h=x(e),h=new of(h,c,!0);cb(h,e);h.X&&uf(h,h.Nb)}});Ga.show.push(function(){for(var a=y(document,"pdp11","computer"),b=0;b<a.length;b++){var d=x(a[b]);(d=bb("Computer",d.id))&&d.ha&&!d.A.fa&&d.Nb(-1)}}); l.xa=function(a){this.b&&this.b.xa(a);this.G&&this.G.xa(a)};Pa(function(){for(var a=y(document,"pdp11-machine"),b=0;b<a.length;b++)for(var d=a[b],c=x(d),d=y(d,"pdp11","computer"),f=0;f<d.length;f++){var e=d[f],h=x(e),h=new pf(h,c,!0);cb(h,e);h.X&&vf(h,h.Nb)}});Ga.show.push(function(){for(var a=y(document,"pdp11","computer"),b=0;b<a.length;b++){var d=x(a[b]);(d=bb("Computer",d.id))&&d.ha&&!d.A.fa&&d.Nb(-1)}});
Ga.exit.push(function(){for(var a=y(document,"pdp11","computer"),b=0;b<a.length;b++){var d=x(a[b]);(d=bb("Computer",d.id))&&d.A.fa&&nf(d,!(!d.g||d.P),!0)}});function bd(a,b,d){this.id=a.id;this.key=Df(a,b,d);this.I=a.I;yf(this,a.Mc)}function Df(a,b,d){a=a.id;if(b){var c=b.indexOf(".");0<c&&(a+=".v"+b.substr(0,c))}d&&(a+="."+d);return a} Ga.exit.push(function(){for(var a=y(document,"pdp11","computer"),b=0;b<a.length;b++){var d=x(a[b]);(d=bb("Computer",d.id))&&d.A.fa&&of(d,!(!d.g||d.P),!0)}});function cd(a,b,d){this.id=a.id;this.key=Ef(a,b,d);this.I=a.I;zf(this,a.Mc)}function Ef(a,b,d){a=a.id;if(b){var c=b.indexOf(".");0<c&&(a+=".v"+b.substr(0,c))}d&&(a+="."+d);return a}
bd.prototype={constructor:bd,set:function(a,b){try{this[this.id][a]=b}catch(d){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){yf(this);var b=[];try{for(var d=0,c=window.localStorage.length;d<c;d++)b.push(window.localStorage.key(d))}catch(f){}for(d=0;d<b.length;d++)if((c=b[d])&&(a||c.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(c)}catch(f){}b.splice(d, cd.prototype={constructor:cd,set:function(a,b){try{this[this.id][a]=b}catch(d){}},get:function(a){return this[this.id][a]||null},value:function(){return this[this.id]},data:function(){return this[this.id]},toString:function(){var a=this[this.id];return"string"==typeof a?a:JSON.stringify(a)},clear:function(a){zf(this);var b=[];try{for(var d=0,c=window.localStorage.length;d<c;d++)b.push(window.localStorage.key(d))}catch(f){}for(d=0;d<b.length;d++)if((c=b[d])&&(a||c.substr(0,this.key.length)==this.key)){try{window.localStorage.removeItem(c)}catch(f){}b.splice(d,
1);d=0}}};function yf(a,b){a[a.id]={};b&&a.set("parms",b);a.b=!1}function zf(a){var b=!0;if(Aa()){var d=JSON.stringify(a[a.id]);Ca(a.key,d)||(t("Unable to store "+d.length+" bytes in browser local storage"),b=!1)}return b}function wf(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(d){t(d.message||d),b=!1}return b}function sf(a,b){return b?(a[a.id]=b,a.b=!0):a.b?!0:Aa()&&(b=Ba(a.key))?(a[a.id]=b,a.b=!0):!1}var Ef=0; 1);d=0}}};function zf(a,b){a[a.id]={};b&&a.set("parms",b);a.b=!1}function Af(a){var b=!0;if(Aa()){var d=JSON.stringify(a[a.id]);Ca(a.key,d)||(t("Unable to store "+d.length+" bytes in browser local storage"),b=!1)}return b}function xf(a){var b=!0;try{a[a.id]=JSON.parse(a[a.id])}catch(d){t(d.message||d),b=!1}return b}function tf(a,b){return b?(a[a.id]=b,a.b=!0):a.b?!0:Aa()&&(b=Ba(a.key))?(a[a.id]=b,a.b=!0):!1}var Ff=0;
function Qf(a,b,d,c,f,e){f("Loading "+a+"...");ua(a,null,!0,function(h,g,k){k?(g||(g="unable to load "+a+" ("+k+")"),e(g,null)):Rf(g,a,b,d,c,f,e)})} function Rf(a,b,d,c,f,e){f("Loading "+a+"...");ua(a,null,!0,function(h,g,k){k?(g||(g="unable to load "+a+" ("+k+")"),e(g,null)):Sf(g,a,b,d,c,f,e)})}
function Rf(a,b,d,c,f,e,h){function g(a,e){if(e)h(e,null);else{d&&($a(d,b,a),(e=b)&&0>e.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(e=window.location.pathname+e),c?"}"==c.slice(-1)?(c=c.slice(0,-1),1<c.length&&(c+=",")):c='{state:"'+c+'",':c="{",c+='url:"'+e+'"}',"object"==typeof resources&&(e=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+d+"$2"+(c?" parms='"+c+"'":"")+(e?' url="'+e+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDP11js$2"), function Sf(a,b,d,c,f,e,h){function g(a,e){if(e)h(e,null);else{d&&($a(d,b,a),(e=b)&&0>e.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(e=window.location.pathname+e),c?"}"==c.slice(-1)?(c=c.slice(0,-1),1<c.length&&(c+=",")):c='{state:"'+c+'",':c="{",c+='url:"'+e+'"}',"object"==typeof resources&&(e=null),a=a.replace(/(<machine[^>]*\sid=)(['"]).*?\2/,"$1$2"+d+"$2"+(c?" parms='"+c+"'":"")+(e?' url="'+e+'"':"")));f||(a=a.replace(/(<xsl:variable name="APPNAME">).*?(<\/xsl:variable>)/,"$1PDP11js$2"),
a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pdp11$2"));e=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(e=new window.ActiveXObject("Microsoft.XMLDOM"),e.async=!1,e.loadXML(a)):e=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){e=null,a=n.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);h(a,e)}}a?f?Sf(a,e,g):g(a,null):h("no data"+(b?" for file: "+b:""),null)} a=a.replace(/(<xsl:variable name="APPCLASS">).*?(<\/xsl:variable>)/,"$1pdp11$2"));e=null;if("<"==a.charAt(0))try{f||(a=a.replace(/<!DOCTYPE(.|[\r\n])*]>\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(e=new window.ActiveXObject("Microsoft.XMLDOM"),e.async=!1,e.loadXML(a)):e=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){e=null,a=n.message}else a="unrecognized XML: "+(255<a.length?a.substr(0,255)+"...":a);h(a,e)}}a?f?Tf(a,e,g):g(a,null):h("no data"+(b?" for file: "+b:""),null)}
function Sf(a,b,d){var c;if(c=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var f=c[2];b("Loading "+f+"...");ua(f,null,!0,function(e,h,g){if(g||!h)d(a,"unable to resolve XML reference: "+c[0]+" ("+g+")");else{if(e=c[3])if(g=h.match(new RegExp("<"+c[1]+"[^>]*>"))){for(var k=g[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(e);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);g[0]!=k&&(h=h.replace(g[0],k))}else{d(a,"missing <"+c[1]+"> in "+f);return}h=h.replace(/<\?xml[^>]*>[\r\n]*/, function Tf(a,b,d){var c;if(c=/<([a-z]+)\s+ref="(.*?)"(.*?)\/>/g.exec(a)){var f=c[2];b("Loading "+f+"...");ua(f,null,!0,function(e,h,g){if(g||!h)d(a,"unable to resolve XML reference: "+c[0]+" ("+g+")");else{if(e=c[3])if(g=h.match(new RegExp("<"+c[1]+"[^>]*>"))){for(var k=g[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(e);)k=0>k.indexOf(m[1])?k.replace(">",m[0]+">"):k.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);g[0]!=k&&(h=h.replace(g[0],k))}else{d(a,"missing <"+c[1]+"> in "+f);return}h=h.replace(/<\?xml[^>]*>[\r\n]*/,
"");a=a.replace(c[0],h);Sf(a,b,d)}})}else d(a,null)} "");a=a.replace(c[0],h);Tf(a,b,d)}})}else d(a,null)}
function Tf(a,b,d,c){function f(a){if(void 0===g){var b=h&&y(h,"machine-warning");g=b&&b[0]||h}g&&(g.innerHTML=na(a))}function e(a){f("Error: "+a);k&&(--Ef||Ra(!0));k=!1}var h,g,k=!0;Ef++;Za[a]={};try{if(h=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],q=document.createElement("style");q.type="text/css";q.styleSheet?q.styleSheet.cssText=m:q.appendChild(document.createTextNode(m));n.appendChild(q)}d|| function Uf(a,b,d,c){function f(a){if(void 0===g){var b=h&&y(h,"machine-warning");g=b&&b[0]||h}g&&(g.innerHTML=na(a))}function e(a){f("Error: "+a);k&&(--Ff||Ra(!0));k=!1}var h,g,k=!0;Ff++;Za[a]={};try{if(h=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],q=document.createElement("style");q.type="text/css";q.styleSheet?q.styleSheet.cssText=m:q.appendChild(document.createTextNode(m));n.appendChild(q)}d||
(d="/versions/pdp11/1.30.0/components.xsl");m=function(c,g){g?Qf(d,null,null,!1,f,function(c,k){k?($a(a,d,c),f("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=g.transformNode(k))?(h.outerHTML=k,--Ef||Ra(!0)):e("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(c=new XSLTProcessor,c.importStylesheet(k),(k=c.transformToFragment(g,document))?h.parentNode?(h.parentNode.replaceChild(k,h),--Ef||Ra(!0)):e("invalid machine element: "+ (d="/versions/pdp11/1.30.0/components.xsl");m=function(c,g){g?Rf(d,null,null,!1,f,function(c,k){k?($a(a,d,c),f("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(k=g.transformNode(k))?(h.outerHTML=k,--Ff||Ra(!0)):e("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(c=new XSLTProcessor,c.importStylesheet(k),(k=c.transformToFragment(g,document))?h.parentNode?(h.parentNode.replaceChild(k,h),--Ff||Ra(!0)):e("invalid machine element: "+
a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser")):e(c)}):e(c)};"<"!=b.charAt(0)?Qf(b,a,c,!0,f,m):Rf(b,null,a,c,!1,f,m)}else e("missing machine element: "+a)}catch(p){e(p.message)}return k}window.embedPDP11=function(a,b,d,c){Ra(!1);return Tf(a,b,d,c)};window.enableEvents=Ra;window.sendEvent=Sa;})(); a):e("transformToFragment failed")):e("unable to transform XML: unsupported browser")):e(c)}):e(c)};"<"!=b.charAt(0)?Rf(b,a,c,!0,f,m):Sf(b,null,a,c,!1,f,m)}else e("missing machine element: "+a)}catch(p){e(p.message)}return k}window.embedPDP11=function(a,b,d,c){Ra(!1);return Uf(a,b,d,c)};window.enableEvents=Ra;window.sendEvent=Sa;})();

View file

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