diff --git a/my_modules/pcjs-client/lib/chipset.js b/my_modules/pcjs-client/lib/chipset.js index 385161745..c60ca8659 100644 --- a/my_modules/pcjs-client/lib/chipset.js +++ b/my_modules/pcjs-client/lib/chipset.js @@ -872,13 +872,6 @@ ChipSet.COPROC = { // TODO: Define a variable for this PORT_RESET: 0xF1 // reset the coprocessor }; -/* - * ChipSet-related BIOS interrupts, functions, and other parameters - */ -ChipSet.BIOS = { - INT_RTC: 0x1A -}; - /** * @this {ChipSet} * @param {string|null} sHTMLClass is the class of the HTML control (eg, "input", "output") @@ -952,17 +945,17 @@ ChipSet.prototype.initBus = function(cmp, bus, cpu, dbg) if (DEBUGGER) { if (dbg) { var chipset = this; - dbg.messageDump(Debugger.MESSAGE_PIC, function onDumpPIC() { + dbg.messageDump(Debugger.MESSAGE.PIC, function onDumpPIC() { chipset.dumpPIC(); }); - dbg.messageDump(Debugger.MESSAGE_TIMER, function onDumpTimer() { + dbg.messageDump(Debugger.MESSAGE.TIMER, function onDumpTimer() { chipset.dumpTimer(); }); - dbg.messageDump(Debugger.MESSAGE_CMOS, function onDumpCMOS() { + dbg.messageDump(Debugger.MESSAGE.CMOS, function onDumpCMOS() { chipset.dumpCMOS(); }); } - cpu.addIntNotify(ChipSet.BIOS.INT_RTC, this, this.intBIOSRTC); + cpu.addIntNotify(Debugger.INT.RTC, this, this.intBIOSRTC); } }; @@ -2097,7 +2090,7 @@ ChipSet.prototype.inDMAChannelAddr = function(iDMAC, iChannel, port, addrFrom) var channel = controller.aChannels[iChannel]; var b = channel.addrCurrent[controller.bIndex]; controller.bIndex ^= 0x1; - this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".ADDR[" + controller.bIndex + "]", Debugger.MESSAGE_DMA, b); + this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".ADDR[" + controller.bIndex + "]", Debugger.MESSAGE.DMA, b); return b; }; @@ -2114,7 +2107,7 @@ ChipSet.prototype.inDMAChannelAddr = function(iDMAC, iChannel, port, addrFrom) ChipSet.prototype.outDMAChannelAddr = function outDMAChannelAddr(iDMAC, iChannel, port, bOut, addrFrom) { var controller = this.aDMACs[iDMAC]; - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".ADDR[" + controller.bIndex + "]", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".ADDR[" + controller.bIndex + "]", Debugger.MESSAGE.DMA); var channel = controller.aChannels[iChannel]; channel.addrCurrent[controller.bIndex] = channel.addrInit[controller.bIndex] = bOut; controller.bIndex ^= 0x1; @@ -2136,7 +2129,7 @@ ChipSet.prototype.inDMAChannelCount = function(iDMAC, iChannel, port, addrFrom) var channel = controller.aChannels[iChannel]; var b = channel.countCurrent[controller.bIndex]; controller.bIndex ^= 0x1; - this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".COUNT[" + controller.bIndex + "]", Debugger.MESSAGE_DMA, b); + this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".COUNT[" + controller.bIndex + "]", Debugger.MESSAGE.DMA, b); return b; }; @@ -2153,7 +2146,7 @@ ChipSet.prototype.inDMAChannelCount = function(iDMAC, iChannel, port, addrFrom) ChipSet.prototype.outDMAChannelCount = function(iDMAC, iChannel, port, bOut, addrFrom) { var controller = this.aDMACs[iDMAC]; - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".COUNT[" + controller.bIndex + "]", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".COUNT[" + controller.bIndex + "]", Debugger.MESSAGE.DMA); var channel = controller.aChannels[iChannel]; channel.countCurrent[controller.bIndex] = channel.countInit[controller.bIndex] = bOut; controller.bIndex ^= 0x1; @@ -2194,7 +2187,7 @@ ChipSet.prototype.inDMAStatus = function(iDMAC, port, addrFrom) var controller = this.aDMACs[iDMAC]; var b = controller.bStatus | 0x1; controller.bStatus &= ~0xf; - this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".STATUS", Debugger.MESSAGE_DMA, b); + this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".STATUS", Debugger.MESSAGE.DMA, b); return b; }; @@ -2209,7 +2202,7 @@ ChipSet.prototype.inDMAStatus = function(iDMAC, port, addrFrom) */ ChipSet.prototype.outDMACmd = function(iDMAC, port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CMD", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CMD", Debugger.MESSAGE.DMA); this.aDMACs[iDMAC].bCmd = bOut; }; @@ -2235,7 +2228,7 @@ ChipSet.prototype.outDMACmd = function(iDMAC, port, bOut, addrFrom) ChipSet.prototype.outDMAReq = function(iDMAC, port, bOut, addrFrom) { var controller = this.aDMACs[iDMAC]; - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".REQ", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".REQ", Debugger.MESSAGE.DMA); /* * Bits 0-1 contain the channel number */ @@ -2260,7 +2253,7 @@ ChipSet.prototype.outDMAReq = function(iDMAC, port, bOut, addrFrom) ChipSet.prototype.outDMAMask = function(iDMAC, port, bOut, addrFrom) { var controller = this.aDMACs[iDMAC]; - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".MASK", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".MASK", Debugger.MESSAGE.DMA); var iChannel = bOut & ChipSet.DMA_MASK.CHANNEL; var channel = controller.aChannels[iChannel]; channel.masked = (bOut & ChipSet.DMA_MASK.CHANNEL_SET? true : false); @@ -2278,7 +2271,7 @@ ChipSet.prototype.outDMAMask = function(iDMAC, port, bOut, addrFrom) */ ChipSet.prototype.outDMAMode = function(iDMAC, port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".MODE", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".MODE", Debugger.MESSAGE.DMA); var iChannel = bOut & ChipSet.DMA_MODE.CHANNEL; this.aDMACs[iDMAC].aChannels[iChannel].mode = bOut; }; @@ -2297,7 +2290,7 @@ ChipSet.prototype.outDMAMode = function(iDMAC, port, bOut, addrFrom) */ ChipSet.prototype.outDMAIndex = function(iDMAC, port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".INDEX", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".INDEX", Debugger.MESSAGE.DMA); this.aDMACs[iDMAC].bIndex = 0; }; @@ -2312,7 +2305,7 @@ ChipSet.prototype.outDMAIndex = function(iDMAC, port, bOut, addrFrom) */ ChipSet.prototype.outDMAClear = function(iDMAC, port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CLEAR", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CLEAR", Debugger.MESSAGE.DMA); /* * The value written to this port doesn't matter; any write triggers a "master clear" operation */ @@ -2335,7 +2328,7 @@ ChipSet.prototype.outDMAClear = function(iDMAC, port, bOut, addrFrom) ChipSet.prototype.inDMAPageReg = function(iDMAC, iChannel, port, addrFrom) { var bIn = this.aDMACs[iDMAC].aChannels[iChannel].bPage; - this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".PAGE", Debugger.MESSAGE_DMA, bIn); + this.messagePort(port, null, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".PAGE", Debugger.MESSAGE.DMA, bIn); return bIn; }; @@ -2351,7 +2344,7 @@ ChipSet.prototype.inDMAPageReg = function(iDMAC, iChannel, port, addrFrom) */ ChipSet.prototype.outDMAPageReg = function(iDMAC, iChannel, port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".PAGE", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA" + iDMAC + ".CHANNEL" + iChannel + ".PAGE", Debugger.MESSAGE.DMA); this.aDMACs[iDMAC].aChannels[iChannel].bPage = bOut; }; @@ -2367,7 +2360,7 @@ ChipSet.prototype.outDMAPageReg = function(iDMAC, iChannel, port, bOut, addrFrom ChipSet.prototype.inDMAPageSpare = function(iSpare, port, addrFrom) { var bIn = this.abDMAPageSpare[iSpare]; - this.messagePort(port, null, addrFrom, "DMA.SPARE" + iSpare + ".PAGE", Debugger.MESSAGE_DMA, bIn); + this.messagePort(port, null, addrFrom, "DMA.SPARE" + iSpare + ".PAGE", Debugger.MESSAGE.DMA, bIn); return bIn; }; @@ -2382,7 +2375,7 @@ ChipSet.prototype.inDMAPageSpare = function(iSpare, port, addrFrom) */ ChipSet.prototype.outDMAPageSpare = function(iSpare, port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "DMA.SPARE" + iSpare + ".PAGE", Debugger.MESSAGE_DMA); + this.messagePort(port, bOut, addrFrom, "DMA.SPARE" + iSpare + ".PAGE", Debugger.MESSAGE.DMA); this.abDMAPageSpare[iSpare] = bOut; }; @@ -2450,7 +2443,7 @@ ChipSet.prototype.requestDMA = function(iDMAChannel, done) var channel = controller.aChannels[iChannel]; if (!channel.component || !channel.fnTransfer || !channel.obj) { - if (DEBUG) this.messageDebugger("requestDMA(" + iDMAChannel + "): not connected to a component", Debugger.MESSAGE_DMA); + if (DEBUG) this.messageDebugger("requestDMA(" + iDMAChannel + "): not connected to a component", Debugger.MESSAGE.DMA); if (done) done(true); return; } @@ -2465,7 +2458,7 @@ ChipSet.prototype.requestDMA = function(iDMAChannel, done) if (done) channel.done = done; if (channel.masked) { - if (DEBUG) this.messageDebugger("requestDMA(" + iDMAChannel + "): channel masked, request queued", Debugger.MESSAGE_DMA); + if (DEBUG) this.messageDebugger("requestDMA(" + iDMAChannel + "): channel masked, request queued", Debugger.MESSAGE.DMA); return; } @@ -2516,7 +2509,7 @@ ChipSet.prototype.advanceDMA = function(channel, fInit) var addr = (channel.bPage << 16) | (channel.addrCurrent[1] << 8) | channel.addrCurrent[0]; if (DEBUG && DEBUGGER && channel.sAddrDebug === null) { channel.sAddrDebug = str.toHex(addr >> 4, 4) + ":" + str.toHex(addr & 0xf, 4); - if (this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_DMA | (iDMAChannel == ChipSet.DMA_FDC? Debugger.MESSAGE_FDC : (iDMAChannel == ChipSet.DMA_HDC? Debugger.MESSAGE_HDC : Debugger.MESSAGE_LOG))) && channel.xfer != ChipSet.DMA_MODE.XFER_WRITE) { + if (this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.DMA | (iDMAChannel == ChipSet.DMA_FDC? Debugger.MESSAGE.FDC : (iDMAChannel == ChipSet.DMA_HDC? Debugger.MESSAGE.HDC : Debugger.MESSAGE.LOG))) && channel.xfer != ChipSet.DMA_MODE.XFER_WRITE) { this.dbg.message("advanceDMA(" + iDMAChannel + ") transferring " + channel.cbDebug + " bytes from " + channel.sAddrDebug); this.dbg.doDump("db", channel.sAddrDebug, "l" + Math.floor((channel.cbDebug + 15) / 16)); } @@ -2527,7 +2520,7 @@ ChipSet.prototype.advanceDMA = function(channel, fInit) channel.fnTransfer.call(channel.component, channel.obj, -1, function onTransferDMA(b, fAsync) { if (b < 0) { if (!channel.fWarning) { - if (DEBUG) obj.messageDebugger("advanceDMA(" + iDMAChannel + ") ran out of data, assuming 0xff", Debugger.MESSAGE_DMA); + if (DEBUG) obj.messageDebugger("advanceDMA(" + iDMAChannel + ") ran out of data, assuming 0xff", Debugger.MESSAGE.DMA); channel.fWarning = true; } /* @@ -2574,7 +2567,7 @@ ChipSet.prototype.advanceDMA = function(channel, fInit) } } else { - if (DEBUG) this.messageDebugger("advanceDMA(" + iDMAChannel + ") unsupported xfer mode: " + str.toHexWord(channel.xfer), Debugger.MESSAGE_DMA); + if (DEBUG) this.messageDebugger("advanceDMA(" + iDMAChannel + ") unsupported xfer mode: " + str.toHexWord(channel.xfer), Debugger.MESSAGE.DMA); channel.fError = true; } } @@ -2626,7 +2619,7 @@ ChipSet.prototype.updateDMA = function(channel) channel.component = channel.obj = null; } - if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_DMA | (iDMAChannel == ChipSet.DMA_FDC? Debugger.MESSAGE_FDC : (iDMAChannel == ChipSet.DMA_HDC? Debugger.MESSAGE_HDC : Debugger.MESSAGE_LOG))) && channel.xfer == ChipSet.DMA_MODE.XFER_WRITE && channel.sAddrDebug) { + if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.DMA | (iDMAChannel == ChipSet.DMA_FDC? Debugger.MESSAGE.FDC : (iDMAChannel == ChipSet.DMA_HDC? Debugger.MESSAGE.HDC : Debugger.MESSAGE.LOG))) && channel.xfer == ChipSet.DMA_MODE.XFER_WRITE && channel.sAddrDebug) { this.dbg.message("updateDMA(" + iDMAChannel + ") transferred " + channel.cbDebug + " bytes to " + channel.sAddrDebug); this.dbg.doDump("db", channel.sAddrDebug, "l" + Math.floor((channel.cbDebug + 15) / 16)); } @@ -2668,7 +2661,7 @@ ChipSet.prototype.inPICLo = function(iPIC, addrFrom) break; } } - this.messagePort(pic.port, null, addrFrom, "PIC" + iPIC, Debugger.MESSAGE_PIC, b); + this.messagePort(pic.port, null, addrFrom, "PIC" + iPIC, Debugger.MESSAGE.PIC, b); return b; }; @@ -2683,7 +2676,7 @@ ChipSet.prototype.inPICLo = function(iPIC, addrFrom) ChipSet.prototype.outPICLo = function(iPIC, bOut, addrFrom) { var pic = this.aPICs[iPIC]; - this.messagePort(pic.port, bOut, addrFrom, "PIC" + iPIC, Debugger.MESSAGE_PIC); + this.messagePort(pic.port, bOut, addrFrom, "PIC" + iPIC, Debugger.MESSAGE.PIC); if (bOut & ChipSet.PIC_LO.ICW1) { /* * This must be an ICW1... @@ -2765,11 +2758,11 @@ ChipSet.prototype.outPICLo = function(iPIC, bOut, addrFrom) } var nIRQ = (nIRL == null? undefined : pic.nIRQBase + nIRL); if (pic.bISR & bIREnd) { - if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): IRQ " + nIRQ + " going out of service", Debugger.MESSAGE_PIC, nIRQ); + if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): IRQ " + nIRQ + " going out of service", Debugger.MESSAGE.PIC, nIRQ); pic.bISR &= ~bIREnd; this.checkIRR(iPIC); } else { - if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): unexpected EOI command, IRQ " + nIRQ + " not in service", Debugger.MESSAGE_PIC); + if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): unexpected EOI command, IRQ " + nIRQ + " not in service", Debugger.MESSAGE.PIC); } /* * TODO: Support EOI commands with automatic rotation (eg, ChipSet.PIC_LO.OCW2_EOI_ROT and ChipSet.PIC_LO.OCW2_EOI_ROTSPEC) @@ -2785,7 +2778,7 @@ ChipSet.prototype.outPICLo = function(iPIC, bOut, addrFrom) /* * TODO: Remaining commands to support: ChipSet.PIC_LO.OCW2_SET_ROTAUTO and ChipSet.PIC_LO.OCW2_CLR_ROTAUTO */ - if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): unsupported OCW2 command: " + str.toHexByte(bOut), Debugger.MESSAGE_PIC); + if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): unsupported OCW2 command: " + str.toHexByte(bOut), Debugger.MESSAGE.PIC); } } else { /* @@ -2795,7 +2788,7 @@ ChipSet.prototype.outPICLo = function(iPIC, bOut, addrFrom) * that's unfortunate, because I don't support them yet. */ if (bOut & (ChipSet.PIC_LO.OCW3_POLL_CMD | ChipSet.PIC_LO.OCW3_SMM_CMD)) { - if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): unsupported OCW3 command: " + str.toHexByte(bOut), Debugger.MESSAGE_PIC); + if (DEBUG) this.messageDebugger("outPIC" + iPIC + "(" + str.toHexByte(pic.port) + "): unsupported OCW3 command: " + str.toHexByte(bOut), Debugger.MESSAGE.PIC); } pic.bOCW3 = bOut; } @@ -2813,7 +2806,7 @@ ChipSet.prototype.inPICHi = function(iPIC, addrFrom) { var pic = this.aPICs[iPIC]; var b = pic.bIMR; - this.messagePort(pic.port+1, null, addrFrom, "PIC" + iPIC, Debugger.MESSAGE_PIC, b); + this.messagePort(pic.port+1, null, addrFrom, "PIC" + iPIC, Debugger.MESSAGE.PIC, b); return b; }; @@ -2828,7 +2821,7 @@ ChipSet.prototype.inPICHi = function(iPIC, addrFrom) ChipSet.prototype.outPICHi = function(iPIC, bOut, addrFrom) { var pic = this.aPICs[iPIC]; - this.messagePort(pic.port+1, bOut, addrFrom, "PIC" + iPIC, Debugger.MESSAGE_PIC); + this.messagePort(pic.port+1, bOut, addrFrom, "PIC" + iPIC, Debugger.MESSAGE.PIC); if (pic.nICW < pic.aICW.length) { pic.aICW[pic.nICW++] = bOut; if (pic.nICW == 2 && (pic.aICW[0] & ChipSet.PIC_LO.ICW1_SNGL)) @@ -2886,7 +2879,7 @@ ChipSet.prototype.setIRR = function(nIRQ, nDelay) var nIRL = nIRQ & 0x7; var pic = this.aPICs[iPIC]; pic.bIRR |= 1 << nIRL; - if (DEBUG) this.messageDebugger("setIRR(" + nIRQ + ")", Debugger.MESSAGE_PIC, nIRQ); + if (DEBUG) this.messageDebugger("setIRR(" + nIRQ + ")", Debugger.MESSAGE.PIC, nIRQ); pic.nDelay = nDelay || 0; /* * When any slave IRR goes high, I'm assuming that the master's slave IRR line should go high as well @@ -2909,7 +2902,7 @@ ChipSet.prototype.clearIRR = function(nIRQ) var bIRR = (1 << nIRL); if (pic.bIRR & bIRR) { pic.bIRR &= ~bIRR; - if (DEBUG) this.messageDebugger("clearIRR(" + nIRQ + ")", Debugger.MESSAGE_PIC, nIRQ); + if (DEBUG) this.messageDebugger("clearIRR(" + nIRQ + ")", Debugger.MESSAGE.PIC, nIRQ); /* * When all slave IRRs go low, I'm assuming that the master's slave IRR line should go low as well */ @@ -3041,7 +3034,7 @@ ChipSet.prototype.inTimer = function(iTimer, addrFrom) } this.updateTimer(iTimer); b = timer.countCurrent[timer.countIndex++]; - this.messagePort(ChipSet.TIMER0.PORT + iTimer, null, addrFrom, "TIMER" + iTimer, Debugger.MESSAGE_TIMER, b); + this.messagePort(ChipSet.TIMER0.PORT + iTimer, null, addrFrom, "TIMER" + iTimer, Debugger.MESSAGE.TIMER, b); return b; }; @@ -3055,7 +3048,7 @@ ChipSet.prototype.inTimer = function(iTimer, addrFrom) */ ChipSet.prototype.outTimer = function(iTimer, bOut, addrFrom) { - this.messagePort(ChipSet.TIMER0.PORT + iTimer, bOut, addrFrom, "TIMER" + iTimer, Debugger.MESSAGE_TIMER); + this.messagePort(ChipSet.TIMER0.PORT + iTimer, bOut, addrFrom, "TIMER" + iTimer, Debugger.MESSAGE.TIMER); var timer = this.aTimers[iTimer]; if (timer.countIndex == timer.countBytes) this.resetTimerIndex(iTimer); @@ -3138,8 +3131,8 @@ ChipSet.prototype.outTimer = function(iTimer, bOut, addrFrom) */ ChipSet.prototype.inTimerCtrl = function(port, addrFrom) { - this.messagePort(port, null, addrFrom, "TIMER_CTRL", Debugger.MESSAGE_TIMER); - if (DEBUG) this.messageDebugger("TIMER_CTRL: Read-Back command not supported (yet)", Debugger.MESSAGE_TIMER); + this.messagePort(port, null, addrFrom, "TIMER_CTRL", Debugger.MESSAGE.TIMER); + if (DEBUG) this.messageDebugger("TIMER_CTRL: Read-Back command not supported (yet)", Debugger.MESSAGE.TIMER); return null; }; @@ -3153,14 +3146,14 @@ ChipSet.prototype.inTimerCtrl = function(port, addrFrom) */ ChipSet.prototype.outTimerCtrl = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "TIMER_CTRL", Debugger.MESSAGE_TIMER); + this.messagePort(port, bOut, addrFrom, "TIMER_CTRL", Debugger.MESSAGE.TIMER); this.bTimerCtrl = bOut; /* * Extract the SC (Select Counter) bits */ var iTimer = (bOut & ChipSet.TIMER_CTRL.SC) >> 6; if (iTimer == 0x3) { - if (DEBUG) this.messageDebugger("TIMER_CTRL: Read-Back command not supported (yet)", Debugger.MESSAGE_TIMER); + if (DEBUG) this.messageDebugger("TIMER_CTRL: Read-Back command not supported (yet)", Debugger.MESSAGE.TIMER); return; } /* @@ -3211,7 +3204,7 @@ ChipSet.prototype.outTimerCtrl = function(port, bOut, addrFrom) timer.countStart[0] = timer.countInit[0]; timer.countStart[1] = timer.countInit[1]; timer.nStartCycles = this.cpu.getCycles(this.fScaleTimers); - if (DEBUG) this.messageDebugger("TIMER0 count reset @" + timer.nStartCycles + " cycles", Debugger.MESSAGE_TIMER); + if (DEBUG) this.messageDebugger("TIMER0 count reset @" + timer.nStartCycles + " cycles", Debugger.MESSAGE.TIMER); } } } @@ -3397,7 +3390,7 @@ ChipSet.prototype.updateTimer = function(iTimer, fCycleReset) var ticks = ((nCycles - timer.nStartCycles) / this.nTicksDivisor) | 0; if (ticks < 0) { - if (DEBUG) this.messageDebugger("updateTimer(" + iTimer + "): negative tick count (" + ticks + ")", Debugger.MESSAGE_TIMER); + if (DEBUG) this.messageDebugger("updateTimer(" + iTimer + "): negative tick count (" + ticks + ")", Debugger.MESSAGE.TIMER); timer.nStartCycles = nCycles; ticks = 0; } @@ -3415,7 +3408,7 @@ ChipSet.prototype.updateTimer = function(iTimer, fCycleReset) */ if (timer.mode == ChipSet.TIMER_CTRL.MODE0) { if (count <= 0) count = 0; - if (DEBUG) this.messageDebugger("updateTimer(" + iTimer + "): MODE0 timer count=" + count, Debugger.MESSAGE_TIMER); + if (DEBUG) this.messageDebugger("updateTimer(" + iTimer + "): MODE0 timer count=" + count, Debugger.MESSAGE.TIMER); if (!count) { timer.fOUT = true; timer.fCounting = false; @@ -3448,7 +3441,7 @@ ChipSet.prototype.updateTimer = function(iTimer, fCycleReset) if (count <= 0) { count = countInit + count; if (count <= 0) { - // this.messageDebugger("updateTimer(" + iTimer + "): underflow=" + count, Debugger.MESSAGE_TIMER); + // this.messageDebugger("updateTimer(" + iTimer + "): underflow=" + count, Debugger.MESSAGE.TIMER); count = countInit; } timer.countStart[0] = count & 0xff; @@ -3478,7 +3471,7 @@ ChipSet.prototype.updateTimer = function(iTimer, fCycleReset) timer.fOUT = !timer.fOUT; count = countInit + count; if (count <= 0) { - // this.messageDebugger("updateTimer(" + iTimer + "): underflow=" + count, Debugger.MESSAGE_TIMER); + // this.messageDebugger("updateTimer(" + iTimer + "): underflow=" + count, Debugger.MESSAGE.TIMER); count = countInit; } if (MAXDEBUG && DEBUGGER && !iTimer) { @@ -3498,7 +3491,7 @@ ChipSet.prototype.updateTimer = function(iTimer, fCycleReset) } } - if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_TIMER)) { + if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.TIMER)) { this.log("TIMER" + iTimer + " count: " + count + ", ticks: " + ticks + ", fired: " + (fFired? "true" : "false")); } @@ -3542,7 +3535,7 @@ ChipSet.prototype.inPPIA = function(port, addrFrom) b = this.kbd.readScanCode(); } } - this.messagePort(port, null, addrFrom, "PPI_A", Debugger.MESSAGE_CHIPSET, b); + this.messagePort(port, null, addrFrom, "PPI_A", Debugger.MESSAGE.CHIPSET, b); return b; }; @@ -3556,7 +3549,7 @@ ChipSet.prototype.inPPIA = function(port, addrFrom) */ ChipSet.prototype.outPPIA = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "PPI_A", Debugger.MESSAGE_CHIPSET); + this.messagePort(port, bOut, addrFrom, "PPI_A", Debugger.MESSAGE.CHIPSET); this.bPPIA = bOut; }; @@ -3571,7 +3564,7 @@ ChipSet.prototype.outPPIA = function(port, bOut, addrFrom) ChipSet.prototype.inPPIB = function(port, addrFrom) { var b = this.bPPIB; - this.messagePort(port, null, addrFrom, "PPI_B", Debugger.MESSAGE_CHIPSET, b); + this.messagePort(port, null, addrFrom, "PPI_B", Debugger.MESSAGE.CHIPSET, b); return b; }; @@ -3585,7 +3578,7 @@ ChipSet.prototype.inPPIB = function(port, addrFrom) */ ChipSet.prototype.outPPIB = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "PPI_B", Debugger.MESSAGE_CHIPSET); + this.messagePort(port, bOut, addrFrom, "PPI_B", Debugger.MESSAGE.CHIPSET); this.updatePPIB(bOut); if (this.kbd) this.kbd.setEnable((bOut & ChipSet.PPI_B.CLEAR_KBD)? false : true, (bOut & ChipSet.PPI_B.CLK_KBD)? true : false); }; @@ -3662,7 +3655,7 @@ ChipSet.prototype.inPPIC = function(port, addrFrom) * The ROM BIOS polls this port incessantly during its memory tests, checking for memory parity errors * (which of course we never report), so we further restrict these port messages to MESSAGE_MEM. */ - this.messagePort(port, null, addrFrom, "PPI_C", Debugger.MESSAGE_CHIPSET | Debugger.MESSAGE_MEM, b); + this.messagePort(port, null, addrFrom, "PPI_C", Debugger.MESSAGE.CHIPSET | Debugger.MESSAGE.MEM, b); return b; }; @@ -3676,7 +3669,7 @@ ChipSet.prototype.inPPIC = function(port, addrFrom) */ ChipSet.prototype.outPPIC = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "PPI_C", Debugger.MESSAGE_CHIPSET); + this.messagePort(port, bOut, addrFrom, "PPI_C", Debugger.MESSAGE.CHIPSET); this.bPPIC = bOut; }; @@ -3691,7 +3684,7 @@ ChipSet.prototype.outPPIC = function(port, bOut, addrFrom) ChipSet.prototype.inPPICtrl = function(port, addrFrom) { var b = this.bPPICtrl; - this.messagePort(port, null, addrFrom, "PPI_CTRL", Debugger.MESSAGE_CHIPSET, b); + this.messagePort(port, null, addrFrom, "PPI_CTRL", Debugger.MESSAGE.CHIPSET, b); return b; }; @@ -3705,7 +3698,7 @@ ChipSet.prototype.inPPICtrl = function(port, addrFrom) */ ChipSet.prototype.outPPICtrl = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "PPI_CTRL", Debugger.MESSAGE_CHIPSET); + this.messagePort(port, bOut, addrFrom, "PPI_CTRL", Debugger.MESSAGE.CHIPSET); this.bPPICtrl = bOut; }; @@ -3720,7 +3713,7 @@ ChipSet.prototype.outPPICtrl = function(port, bOut, addrFrom) ChipSet.prototype.in8042OutBuff = function(port, addrFrom) { var b = this.b8042OutBuff; - this.messagePort(port, null, addrFrom, "8042_OUTBUFF", Debugger.MESSAGE_8042, b); + this.messagePort(port, null, addrFrom, "8042_OUTBUFF", Debugger.MESSAGE.C8042, b); this.b8042Status &= ~(ChipSet.KBC.STATUS.OUTBUFF_FULL | ChipSet.KBC.STATUS.OUTBUFF_DELAY); var bNext = this.kbd && this.kbd.readScanCode(true); if (bNext) this.set8042OutBuff(bNext); @@ -3741,7 +3734,7 @@ ChipSet.prototype.in8042OutBuff = function(port, addrFrom) */ ChipSet.prototype.out8042InBuffData = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "8042_INBUF.DATA", Debugger.MESSAGE_8042); + this.messagePort(port, bOut, addrFrom, "8042_INBUF.DATA", Debugger.MESSAGE.C8042); if (this.b8042Status & ChipSet.KBC.STATUS.CMD_FLAG) { switch (this.b8042InBuff) { @@ -3867,7 +3860,7 @@ ChipSet.prototype.in8042RWReg = function(port, addrFrom) * Thanks to the WAITF function, this has become a very "busy" port, so let's not generate messages * unless both MESSAGE_8042 *and* MESSAGE_LOG are set. */ - this.messagePort(port, null, addrFrom, "8042_RWREG", Debugger.MESSAGE_8042 | Debugger.MESSAGE_LOG, b); + this.messagePort(port, null, addrFrom, "8042_RWREG", Debugger.MESSAGE.C8042 | Debugger.MESSAGE.LOG, b); return b; }; @@ -3881,7 +3874,7 @@ ChipSet.prototype.in8042RWReg = function(port, addrFrom) */ ChipSet.prototype.out8042RWReg = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "8042_RWREG", Debugger.MESSAGE_8042); + this.messagePort(port, bOut, addrFrom, "8042_RWREG", Debugger.MESSAGE.C8042); this.updatePPIB(bOut); }; @@ -3895,7 +3888,7 @@ ChipSet.prototype.out8042RWReg = function(port, bOut, addrFrom) */ ChipSet.prototype.in8042Status = function(port, addrFrom) { - this.messagePort(port, null, addrFrom, "8042_STATUS", Debugger.MESSAGE_8042, this.b8042Status); + this.messagePort(port, null, addrFrom, "8042_STATUS", Debugger.MESSAGE.C8042, this.b8042Status); var b = this.b8042Status & 0xff; /* * There's code in the 5170 BIOS (F000:03BF) that writes an 8042 command (0xAA), waits for @@ -3933,7 +3926,7 @@ ChipSet.prototype.in8042Status = function(port, addrFrom) */ ChipSet.prototype.out8042InBuffCmd = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "8042_INBUFF.CMD", Debugger.MESSAGE_8042); + this.messagePort(port, bOut, addrFrom, "8042_INBUFF.CMD", Debugger.MESSAGE.C8042); Component.assert(!(this.b8042Status & ChipSet.KBC.STATUS.INBUFF_FULL)); this.b8042InBuff = bOut; @@ -3962,7 +3955,7 @@ ChipSet.prototype.out8042InBuffCmd = function(port, bOut, addrFrom) case ChipSet.KBC.CMD.DISABLE_KBD: // 0xAD this.set8042CmdData(this.b8042CmdData | ChipSet.KBC.DATA.CMD.NO_CLOCK); - if (DEBUG) this.messageDebugger("keyboard disabled", Debugger.MESSAGE_KBD | Debugger.MESSAGE_PORT); + if (DEBUG) this.messageDebugger("keyboard disabled", Debugger.MESSAGE.KBD | Debugger.MESSAGE.PORT); /* * NOTE: The MODEL_5170 BIOS calls "KBD_RESET" (F000:17D2) while the keyboard interface is disabled, * yet we must still deliver the Keyboard's CMDRES.BAT_SUCC response code? Seems like an odd thing for @@ -3972,13 +3965,13 @@ ChipSet.prototype.out8042InBuffCmd = function(port, bOut, addrFrom) case ChipSet.KBC.CMD.ENABLE_KBD: // 0xAE this.set8042CmdData(this.b8042CmdData & ~ChipSet.KBC.DATA.CMD.NO_CLOCK); - if (DEBUG) this.messageDebugger("keyboard re-enabled", Debugger.MESSAGE_KBD | Debugger.MESSAGE_PORT); + if (DEBUG) this.messageDebugger("keyboard re-enabled", Debugger.MESSAGE.KBD | Debugger.MESSAGE.PORT); break; case ChipSet.KBC.CMD.SELF_TEST: // 0xAA if (this.kbd) this.kbd.shiftScanCode(true); this.set8042CmdData(this.b8042CmdData | ChipSet.KBC.DATA.CMD.NO_CLOCK); - if (DEBUG) this.messageDebugger("keyboard disabled on reset", Debugger.MESSAGE_KBD | Debugger.MESSAGE_PORT); + if (DEBUG) this.messageDebugger("keyboard disabled on reset", Debugger.MESSAGE.KBD | Debugger.MESSAGE.PORT); this.set8042OutBuff(ChipSet.KBC.DATA.SELF_TEST.OK); this.set8042OutPort(ChipSet.KBC.OUTPORT.NO_RESET | ChipSet.KBC.OUTPORT.A20_ON); break; @@ -4191,7 +4184,7 @@ ChipSet.prototype.notifyKbdData = function(fAvail) */ ChipSet.prototype.inCMOSAddr = function(port, addrFrom) { - this.messagePort(port, null, addrFrom, "CMOS_ADDR", Debugger.MESSAGE_CMOS, this.bCMOSAddr); + this.messagePort(port, null, addrFrom, "CMOS_ADDR", Debugger.MESSAGE.CMOS, this.bCMOSAddr); return this.bCMOSAddr; }; @@ -4205,7 +4198,7 @@ ChipSet.prototype.inCMOSAddr = function(port, addrFrom) */ ChipSet.prototype.outCMOSAddr = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "CMOS_ADDR", Debugger.MESSAGE_CMOS); + this.messagePort(port, bOut, addrFrom, "CMOS_ADDR", Debugger.MESSAGE.CMOS); this.bCMOSAddr = bOut; this.bNMI = (bOut & ChipSet.CMOS.ADDR.NMI_DISABLE)? ChipSet.NMI.DISABLE : ChipSet.NMI.ENABLE; }; @@ -4222,7 +4215,7 @@ ChipSet.prototype.inCMOSData = function(port, addrFrom) { var bAddr = this.bCMOSAddr & ChipSet.CMOS.ADDR.MASK; var bIn = (bAddr <= ChipSet.CMOS.ADDR.RTC_STATUSD? this.getRTCByte(bAddr) : this.abCMOSData[bAddr]); - this.messagePort(port, null, addrFrom, "CMOS_DATA[" + str.toHexByte(bAddr) + "]", Debugger.MESSAGE_CMOS, bIn); + this.messagePort(port, null, addrFrom, "CMOS_DATA[" + str.toHexByte(bAddr) + "]", Debugger.MESSAGE.CMOS, bIn); return bIn; }; @@ -4237,7 +4230,7 @@ ChipSet.prototype.inCMOSData = function(port, addrFrom) ChipSet.prototype.outCMOSData = function(port, bOut, addrFrom) { var bAddr = this.bCMOSAddr & ChipSet.CMOS.ADDR.MASK; - this.messagePort(port, bOut, addrFrom, "CMOS_DATA[" + str.toHexByte(bAddr) + "]", Debugger.MESSAGE_CMOS); + this.messagePort(port, bOut, addrFrom, "CMOS_DATA[" + str.toHexByte(bAddr) + "]", Debugger.MESSAGE.CMOS); this.abCMOSData[bAddr] = (bAddr <= ChipSet.CMOS.ADDR.RTC_STATUSD? this.setRTCByte(bAddr, bOut) : bOut); }; @@ -4251,7 +4244,7 @@ ChipSet.prototype.outCMOSData = function(port, bOut, addrFrom) */ ChipSet.prototype.inMFGData = function(port, addrFrom) { - this.messagePort(port, null, addrFrom, "MFG_DATA", Debugger.MESSAGE_CHIPSET, this.bMFGData); + this.messagePort(port, null, addrFrom, "MFG_DATA", Debugger.MESSAGE.CHIPSET, this.bMFGData); return this.bMFGData; }; @@ -4265,7 +4258,7 @@ ChipSet.prototype.inMFGData = function(port, addrFrom) */ ChipSet.prototype.outMFGData = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "MFG_DATA", Debugger.MESSAGE_CHIPSET); + this.messagePort(port, bOut, addrFrom, "MFG_DATA", Debugger.MESSAGE.CHIPSET); this.bMFGData = bOut; }; @@ -4281,7 +4274,7 @@ ChipSet.prototype.outMFGData = function(port, bOut, addrFrom) */ ChipSet.prototype.outNMI = function(port, bOut, addrFrom) { - this.messagePort(port, bOut, addrFrom, "NMI", Debugger.MESSAGE_CHIPSET); + this.messagePort(port, bOut, addrFrom, "NMI", Debugger.MESSAGE.CHIPSET); this.bNMI = bOut; }; @@ -4309,8 +4302,8 @@ ChipSet.prototype.intBIOSRTC = function(addr) { if (DEBUGGER) { var AH = this.cpu.regAX >> 8; - if (this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_RTC)) { - this.dbg.messageInt(ChipSet.BIOS.INT_RTC, addr); + if (this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.RTC)) { + this.dbg.messageInt(Debugger.INT.RTC, addr); this.cpu.addIntReturn(addr, function(chipset, nCycles) { return function onBIOSRTCReturn(nLevel) { nCycles = chipset.cpu.getCycles() - nCycles; @@ -4324,7 +4317,7 @@ ChipSet.prototype.intBIOSRTC = function(addr) } else if (AH == 0x04 || AH == 0x05) { sResult = " CX(year)=" + str.toHexWord(chipset.cpu.regCX) + " DH(month)=" + str.toHexByte(DH) + " DL(day)=" + str.toHexByte(DL); } - chipset.dbg.messageIntReturn(ChipSet.BIOS.INT_RTC, nLevel, nCycles, sResult); + chipset.dbg.messageIntReturn(Debugger.INT.RTC, nLevel, nCycles, sResult); }; }(this, this.cpu.getCycles())); } @@ -4375,13 +4368,13 @@ ChipSet.prototype.setSpeaker = function(fOn) if (fOn) { if (this.sourceAudio) { this.sourceAudio['frequency']['value'] = freq; - this.messageDebugger("speaker set to " + freq + "hz", Debugger.MESSAGE_SPEAKER); + this.messageDebugger("speaker set to " + freq + "hz", Debugger.MESSAGE.SPEAKER); } else { this.sourceAudio = this.contextAudio['createOscillator'](); this.sourceAudio['type'] = 1; // 0: sine wave, 1: square wave, 2: sawtooth wave, 3: triangle wave this.sourceAudio['connect'](this.contextAudio['destination']); this.sourceAudio['frequency']['value'] = freq; - this.messageDebugger("speaker on at " + freq + "hz", Debugger.MESSAGE_SPEAKER); + this.messageDebugger("speaker on at " + freq + "hz", Debugger.MESSAGE.SPEAKER); this.sourceAudio['noteOn'](0); // aka start() } } else { @@ -4389,11 +4382,11 @@ ChipSet.prototype.setSpeaker = function(fOn) this.sourceAudio['noteOff'](0); // aka stop() this.sourceAudio['disconnect'](); // QUESTION: is this automatic following a stop(), since this particular source cannot be started again? delete this.sourceAudio; // QUESTION: ditto? - this.messageDebugger("speaker off at " + freq + "hz", Debugger.MESSAGE_SPEAKER); + this.messageDebugger("speaker off at " + freq + "hz", Debugger.MESSAGE.SPEAKER); } } } else if (fOn) { - this.messageDebugger("BEEP", Debugger.MESSAGE_SPEAKER); + this.messageDebugger("BEEP", Debugger.MESSAGE.SPEAKER); } }; @@ -4413,9 +4406,9 @@ ChipSet.prototype.setSpeaker = function(fOn) ChipSet.prototype.messageDebugger = function(sMessage, bitsMessage, nIRQ) { if (DEBUGGER && this.dbg) { - if (bitsMessage == null) bitsMessage = Debugger.MESSAGE_CHIPSET; + if (bitsMessage == null) bitsMessage = Debugger.MESSAGE.CHIPSET; if (nIRQ !== undefined) { - bitsMessage |= (nIRQ == ChipSet.IRQ.TIMER0? Debugger.MESSAGE_TIMER : (nIRQ == ChipSet.IRQ.KBD? Debugger.MESSAGE_KBD : (nIRQ == ChipSet.IRQ.FDC? Debugger.MESSAGE_FDC : Debugger.MESSAGE_PIC))); + bitsMessage |= (nIRQ == ChipSet.IRQ.TIMER0? Debugger.MESSAGE.TIMER : (nIRQ == ChipSet.IRQ.KBD? Debugger.MESSAGE.KBD : (nIRQ == ChipSet.IRQ.FDC? Debugger.MESSAGE.FDC : Debugger.MESSAGE.PIC))); } if (this.dbg.messageEnabled(bitsMessage)) this.dbg.message(sMessage); } @@ -4440,7 +4433,7 @@ ChipSet.prototype.messageDebugger = function(sMessage, bitsMessage, nIRQ) ChipSet.prototype.messagePort = function(port, bOut, addrFrom, name, bitsMessage, bIn) { if (DEBUGGER && this.dbg) { - if (bitsMessage == null) bitsMessage = Debugger.MESSAGE_CHIPSET; + if (bitsMessage == null) bitsMessage = Debugger.MESSAGE.CHIPSET; this.dbg.messagePort(this, port, bOut, addrFrom, name, bitsMessage, bIn); } }; diff --git a/my_modules/pcjs-client/lib/computer.js b/my_modules/pcjs-client/lib/computer.js index d6ba536c0..148247f96 100644 --- a/my_modules/pcjs-client/lib/computer.js +++ b/my_modules/pcjs-client/lib/computer.js @@ -1186,7 +1186,7 @@ Computer.prototype.getComponentByType = function(sType, componentPrev) Computer.prototype.messageDebugger = function(sMessage, fForce) { if (DEBUGGER && this.dbg) { - if (fForce || this.dbg.messageEnabled(Debugger.MESSAGE_COMPUTER)) this.dbg.message(sMessage); + if (fForce || this.dbg.messageEnabled(Debugger.MESSAGE.COMPUTER)) this.dbg.message(sMessage); } }; diff --git a/my_modules/pcjs-client/lib/cpu.js b/my_modules/pcjs-client/lib/cpu.js index e7587f7d1..0b1f8ae61 100644 --- a/my_modules/pcjs-client/lib/cpu.js +++ b/my_modules/pcjs-client/lib/cpu.js @@ -915,7 +915,7 @@ CPU.prototype.calcRemainingTime = function() */ this.aCounts.nCyclesRecalc += this.aCounts.nCyclesThisRun; - if (DEBUG && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_LOG) && msRemainsThisRun) { + if (DEBUG && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.LOG) && msRemainsThisRun) { this.dbg.message("at " + this.aCounts.msEndThisRun + "ms, calcRemainingTime returned " + msRemainsThisRun + "ms to sleep"); } diff --git a/my_modules/pcjs-client/lib/debugger.js b/my_modules/pcjs-client/lib/debugger.js index 24e81e4ea..a22c3231e 100644 --- a/my_modules/pcjs-client/lib/debugger.js +++ b/my_modules/pcjs-client/lib/debugger.js @@ -169,36 +169,63 @@ function Debugger(parmsDbg) } // endif DEBUGGER } -Debugger.MESSAGE_MEM = 0x00000001; -Debugger.MESSAGE_PORT = 0x00000002; -Debugger.MESSAGE_DMA = 0x00000004; -Debugger.MESSAGE_PIC = 0x00000008; -Debugger.MESSAGE_TIMER = 0x00000010; -Debugger.MESSAGE_CMOS = 0x00000020; -Debugger.MESSAGE_RTC = 0x00000040; -Debugger.MESSAGE_8042 = 0x00000080; -Debugger.MESSAGE_CHIPSET = 0x00000100; -Debugger.MESSAGE_KBD = 0x00000200; -Debugger.MESSAGE_KEYS = 0x00000400; -Debugger.MESSAGE_VIDEO = 0x00000800; -Debugger.MESSAGE_FDC = 0x00001000; -Debugger.MESSAGE_HDC = 0x00002000; -Debugger.MESSAGE_DISK = 0x00004000; -Debugger.MESSAGE_SERIAL = 0x00008000; -Debugger.MESSAGE_SPEAKER = 0x00010000; -Debugger.MESSAGE_STATE = 0x00020000; -Debugger.MESSAGE_MOUSE = 0x00040000; -Debugger.MESSAGE_COMPUTER = 0x00080000; -Debugger.MESSAGE_CPU = 0x00100000; -Debugger.MESSAGE_DOS = 0x00200000; -Debugger.MESSAGE_INT = 0x00400000; -Debugger.MESSAGE_LOG = 0x01000000; -Debugger.MESSAGE_HALT = 0x10000000; +/* + * Debugger message constants must always be defined, even when DEBUGGER is false, lest the Closure Compiler complain + */ +Debugger.MESSAGE = { + MEM: 0x00000001, + PORT: 0x00000002, + DMA: 0x00000004, + PIC: 0x00000008, + TIMER: 0x00000010, + CMOS: 0x00000020, + RTC: 0x00000040, + C8042: 0x00000080, + CHIPSET: 0x00000100, + KBD: 0x00000200, + KEYS: 0x00000400, + VIDEO: 0x00000800, + FDC: 0x00001000, + HDC: 0x00002000, + DISK: 0x00004000, + SERIAL: 0x00008000, + SPEAKER: 0x00010000, + STATE: 0x00020000, + MOUSE: 0x00040000, + COMPUTER: 0x00080000, + CPU: 0x00100000, + DOS: 0x00200000, + INT: 0x00400000, + LOG: 0x01000000, + HALT: 0x10000000 +}; if (DEBUGGER) { Component.subclass(Component, Debugger); + /* + * Information regarding interrupts of interest (used by messageInt() and others) + */ + Debugger.INT = { + VIDEO: 0x10, + CASSETTE: 0x15, + KBD: 0x16, + RTC: 0x1a, + TIMER_TICK: 0x1c, + DOS: 0x21, + MOUSE: 0x33 + }; + + Debugger.INT_MESSAGE = { + 0x10: Debugger.MESSAGE.VIDEO, + 0x16: Debugger.MESSAGE.KBD, +// 0x1a: Debugger.MESSAGE.RTC, // ChipSet contains its own specialized messageInt() handler for the RTC + 0x1c: Debugger.MESSAGE.TIMER, + 0x21: Debugger.MESSAGE.DOS, + 0x33: Debugger.MESSAGE.MOUSE + }; + Debugger.aCommands = { '?': "help", 'a [#]': "assemble", @@ -456,35 +483,35 @@ if (DEBUGGER) { * something to be aware of). */ Debugger.MESSAGES = { - "mem": Debugger.MESSAGE_MEM, - "port": Debugger.MESSAGE_PORT, - "dma": Debugger.MESSAGE_DMA, - "pic": Debugger.MESSAGE_PIC, - "timer": Debugger.MESSAGE_TIMER, - "cmos": Debugger.MESSAGE_CMOS, - "rtc": Debugger.MESSAGE_RTC, - "8042": Debugger.MESSAGE_8042, - "chipset": Debugger.MESSAGE_CHIPSET, // ie, anything else in ChipSet besides DMA, PIC, TIMER, CMOS, RTC and 8042 - "kbd": Debugger.MESSAGE_KBD, - "keys": Debugger.MESSAGE_KEYS, - "video": Debugger.MESSAGE_VIDEO, - "fdc": Debugger.MESSAGE_FDC, - "hdc": Debugger.MESSAGE_HDC, - "disk": Debugger.MESSAGE_DISK, - "serial": Debugger.MESSAGE_SERIAL, - "speaker": Debugger.MESSAGE_SPEAKER, - "state": Debugger.MESSAGE_STATE, - "mouse": Debugger.MESSAGE_MOUSE, - "computer": Debugger.MESSAGE_COMPUTER, - "cpu": Debugger.MESSAGE_CPU, - "dos": Debugger.MESSAGE_DOS, - "int": Debugger.MESSAGE_INT, - "log": Debugger.MESSAGE_LOG, + "mem": Debugger.MESSAGE.MEM, + "port": Debugger.MESSAGE.PORT, + "dma": Debugger.MESSAGE.DMA, + "pic": Debugger.MESSAGE.PIC, + "timer": Debugger.MESSAGE.TIMER, + "cmos": Debugger.MESSAGE.CMOS, + "rtc": Debugger.MESSAGE.RTC, + "8042": Debugger.MESSAGE.C8042, + "chipset": Debugger.MESSAGE.CHIPSET, // ie, anything else in ChipSet besides DMA, PIC, TIMER, CMOS, RTC and 8042 + "kbd": Debugger.MESSAGE.KBD, + "keys": Debugger.MESSAGE.KEYS, + "video": Debugger.MESSAGE.VIDEO, + "fdc": Debugger.MESSAGE.FDC, + "hdc": Debugger.MESSAGE.HDC, + "disk": Debugger.MESSAGE.DISK, + "serial": Debugger.MESSAGE.SERIAL, + "speaker": Debugger.MESSAGE.SPEAKER, + "state": Debugger.MESSAGE.STATE, + "mouse": Debugger.MESSAGE.MOUSE, + "computer": Debugger.MESSAGE.COMPUTER, + "cpu": Debugger.MESSAGE.CPU, + "dos": Debugger.MESSAGE.DOS, + "int": Debugger.MESSAGE.INT, + "log": Debugger.MESSAGE.LOG, /* * Now we turn to message actions rather than message types; for example, setting "halt" * on or off doesn't enable "halt" messages, but rather halts the CPU on any message above. */ - "halt": Debugger.MESSAGE_HALT + "halt": Debugger.MESSAGE.HALT }; /* @@ -678,23 +705,23 @@ if (DEBUGGER) { /* 0x6E */ [Debugger.INS.OUTS, Debugger.TYPE_DX | Debugger.TYPE_IN | Debugger.TYPE_286, Debugger.TYPE_DSSI | Debugger.TYPE_BYTE | Debugger.TYPE_IN], /* 0x6F */ [Debugger.INS.OUTS, Debugger.TYPE_DX | Debugger.TYPE_IN | Debugger.TYPE_286, Debugger.TYPE_DSSI | Debugger.TYPE_VWORD | Debugger.TYPE_IN], - /* 0x70 */ [Debugger.INS.JO, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x71 */ [Debugger.INS.JNO, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x72 */ [Debugger.INS.JC, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x73 */ [Debugger.INS.JNC, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x74 */ [Debugger.INS.JZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x75 */ [Debugger.INS.JNZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x76 */ [Debugger.INS.JBE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x77 */ [Debugger.INS.JNBE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x70 */ [Debugger.INS.JO, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x71 */ [Debugger.INS.JNO, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x72 */ [Debugger.INS.JC, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x73 */ [Debugger.INS.JNC, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x74 */ [Debugger.INS.JZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x75 */ [Debugger.INS.JNZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x76 */ [Debugger.INS.JBE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x77 */ [Debugger.INS.JNBE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x78 */ [Debugger.INS.JS, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x79 */ [Debugger.INS.JNS, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x7A */ [Debugger.INS.JP, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x7B */ [Debugger.INS.JNP, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x7C */ [Debugger.INS.JL, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x7D */ [Debugger.INS.JGE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x7E */ [Debugger.INS.JLE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0x7F */ [Debugger.INS.JG, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x78 */ [Debugger.INS.JS, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x79 */ [Debugger.INS.JNS, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x7A */ [Debugger.INS.JP, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x7B */ [Debugger.INS.JNP, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x7C */ [Debugger.INS.JL, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x7D */ [Debugger.INS.JGE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x7E */ [Debugger.INS.JLE, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0x7F */ [Debugger.INS.JG, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], /* 0x80 */ [Debugger.INS.GRP1B, Debugger.TYPE_MODRM | Debugger.TYPE_BYTE | Debugger.TYPE_BOTH, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN], /* 0x81 */ [Debugger.INS.GRP1W, Debugger.TYPE_MODRM | Debugger.TYPE_VWORD | Debugger.TYPE_BOTH, Debugger.TYPE_IMM | Debugger.TYPE_VWORD | Debugger.TYPE_IN], @@ -804,14 +831,14 @@ if (DEBUGGER) { /* 0xDE */ [Debugger.INS.ESC, Debugger.TYPE_MODRM | Debugger.TYPE_VWORD | Debugger.TYPE_IN], /* 0xDF */ [Debugger.INS.ESC, Debugger.TYPE_MODRM | Debugger.TYPE_VWORD | Debugger.TYPE_IN], - /* 0xE0 */ [Debugger.INS.LOOPNZ,Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0xE1 */ [Debugger.INS.LOOPZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0xE2 */ [Debugger.INS.LOOP, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0xE3 */ [Debugger.INS.JCXZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0xE4 */ [Debugger.INS.IN, Debugger.TYPE_AL | Debugger.TYPE_OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0xE5 */ [Debugger.INS.IN, Debugger.TYPE_AX | Debugger.TYPE_OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN], - /* 0xE6 */ [Debugger.INS.OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN, Debugger.TYPE_AL | Debugger.TYPE_IN], - /* 0xE7 */ [Debugger.INS.OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN, Debugger.TYPE_AX | Debugger.TYPE_IN], + /* 0xE0 */ [Debugger.INS.LOOPNZ,Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0xE1 */ [Debugger.INS.LOOPZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0xE2 */ [Debugger.INS.LOOP, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0xE3 */ [Debugger.INS.JCXZ, Debugger.TYPE_IMMREL | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0xE4 */ [Debugger.INS.IN, Debugger.TYPE_AL | Debugger.TYPE_OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0xE5 */ [Debugger.INS.IN, Debugger.TYPE_AX | Debugger.TYPE_OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN], + /* 0xE6 */ [Debugger.INS.OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN, Debugger.TYPE_AL | Debugger.TYPE_IN], + /* 0xE7 */ [Debugger.INS.OUT, Debugger.TYPE_IMM | Debugger.TYPE_BYTE | Debugger.TYPE_IN, Debugger.TYPE_AX | Debugger.TYPE_IN], /* 0xE8 */ [Debugger.INS.CALL, Debugger.TYPE_IMMREL | Debugger.TYPE_VWORD | Debugger.TYPE_IN], /* 0xE9 */ [Debugger.INS.JMP, Debugger.TYPE_IMMREL | Debugger.TYPE_VWORD | Debugger.TYPE_IN], @@ -828,7 +855,7 @@ if (DEBUGGER) { /* 0xF3 */ [Debugger.INS.REPZ, Debugger.TYPE_PREFIX], /* 0xF4 */ [Debugger.INS.HLT], /* 0xF5 */ [Debugger.INS.CMC], - /* 0xF6 */ [Debugger.INS.GRP3B, Debugger.TYPE_MODRM | Debugger.TYPE_BYTE | Debugger.TYPE_BOTH], + /* 0xF6 */ [Debugger.INS.GRP3B, Debugger.TYPE_MODRM | Debugger.TYPE_BYTE | Debugger.TYPE_BOTH], /* 0xF7 */ [Debugger.INS.GRP3W, Debugger.TYPE_MODRM | Debugger.TYPE_VWORD | Debugger.TYPE_BOTH], /* 0xF8 */ [Debugger.INS.CLC], @@ -837,15 +864,15 @@ if (DEBUGGER) { /* 0xFB */ [Debugger.INS.STI], /* 0xFC */ [Debugger.INS.CLD], /* 0xFD */ [Debugger.INS.STD], - /* 0xFE */ [Debugger.INS.GRP4B, Debugger.TYPE_MODRM | Debugger.TYPE_BYTE | Debugger.TYPE_BOTH], + /* 0xFE */ [Debugger.INS.GRP4B, Debugger.TYPE_MODRM | Debugger.TYPE_BYTE | Debugger.TYPE_BOTH], /* 0xFF */ [Debugger.INS.GRP4W, Debugger.TYPE_MODRM | Debugger.TYPE_VWORD | Debugger.TYPE_BOTH] ]; Debugger.aaOp0FDescs = { - 0x00: [Debugger.INS.GRP6, Debugger.TYPE_MODRM | Debugger.TYPE_WORD | Debugger.TYPE_BOTH], - 0x01: [Debugger.INS.GRP7, Debugger.TYPE_MODRM | Debugger.TYPE_WORD | Debugger.TYPE_BOTH], - 0x02: [Debugger.INS.LAR, Debugger.TYPE_REG | Debugger.TYPE_WORD | Debugger.TYPE_IN | Debugger.TYPE_286, Debugger.TYPE_MEM | Debugger.TYPE_WORD | Debugger.TYPE_IN], - 0x03: [Debugger.INS.LSL, Debugger.TYPE_REG | Debugger.TYPE_WORD | Debugger.TYPE_IN | Debugger.TYPE_286, Debugger.TYPE_MEM | Debugger.TYPE_WORD | Debugger.TYPE_IN], + 0x00: [Debugger.INS.GRP6, Debugger.TYPE_MODRM | Debugger.TYPE_WORD | Debugger.TYPE_BOTH], + 0x01: [Debugger.INS.GRP7, Debugger.TYPE_MODRM | Debugger.TYPE_WORD | Debugger.TYPE_BOTH], + 0x02: [Debugger.INS.LAR, Debugger.TYPE_REG | Debugger.TYPE_WORD | Debugger.TYPE_IN | Debugger.TYPE_286, Debugger.TYPE_MEM | Debugger.TYPE_WORD | Debugger.TYPE_IN], + 0x03: [Debugger.INS.LSL, Debugger.TYPE_REG | Debugger.TYPE_WORD | Debugger.TYPE_IN | Debugger.TYPE_286, Debugger.TYPE_MEM | Debugger.TYPE_WORD | Debugger.TYPE_IN], 0x05: [Debugger.INS.LOADALL,Debugger.TYPE_286] }; @@ -1018,11 +1045,6 @@ if (DEBUGGER) { ] ]; - /* - * Information regarding interrupts of interest - */ - Debugger.INT_DOS = 0x21; - Debugger.INT_FUNCS = { 0x13: { 0x00: "disk reset", @@ -1171,7 +1193,7 @@ if (DEBUGGER) { } } - this.messageDump(Debugger.MESSAGE_DOS, function onDumpDOS(s) { + this.messageDump(Debugger.MESSAGE.DOS, function onDumpDOS(s) { dbg.dumpDOS(s); }); @@ -1396,16 +1418,16 @@ if (DEBUGGER) { Debugger.prototype.updateRegValues = function() { var cpu = this.cpu; var asRegs = Debugger.asRegs; - this.aRegValues[asRegs[0]] = str.toHexByte(cpu.regAX & 0xff); - this.aRegValues[asRegs[1]] = str.toHexByte(cpu.regCX & 0xff); - this.aRegValues[asRegs[2]] = str.toHexByte(cpu.regDX & 0xff); - this.aRegValues[asRegs[3]] = str.toHexByte(cpu.regBX & 0xff); - this.aRegValues[asRegs[4]] = str.toHexByte(cpu.regAX >> 8); - this.aRegValues[asRegs[5]] = str.toHexByte(cpu.regCX >> 8); - this.aRegValues[asRegs[6]] = str.toHexByte(cpu.regDX >> 8); - this.aRegValues[asRegs[7]] = str.toHexByte(cpu.regBX >> 8); - this.aRegValues[asRegs[8]] = str.toHexWord(cpu.regAX); - this.aRegValues[asRegs[9]] = str.toHexWord(cpu.regCX); + this.aRegValues[asRegs[0]] = str.toHexByte(cpu.regAX & 0xff); + this.aRegValues[asRegs[1]] = str.toHexByte(cpu.regCX & 0xff); + this.aRegValues[asRegs[2]] = str.toHexByte(cpu.regDX & 0xff); + this.aRegValues[asRegs[3]] = str.toHexByte(cpu.regBX & 0xff); + this.aRegValues[asRegs[4]] = str.toHexByte(cpu.regAX >> 8); + this.aRegValues[asRegs[5]] = str.toHexByte(cpu.regCX >> 8); + this.aRegValues[asRegs[6]] = str.toHexByte(cpu.regDX >> 8); + this.aRegValues[asRegs[7]] = str.toHexByte(cpu.regBX >> 8); + this.aRegValues[asRegs[8]] = str.toHexWord(cpu.regAX); + this.aRegValues[asRegs[9]] = str.toHexWord(cpu.regCX); this.aRegValues[asRegs[10]] = str.toHexWord(cpu.regDX); this.aRegValues[asRegs[11]] = str.toHexWord(cpu.regBX); this.aRegValues[asRegs[12]] = str.toHexWord(cpu.regSP); @@ -1429,15 +1451,15 @@ if (DEBUGGER) { */ Debugger.prototype.messageInt = function(nInt, addr) { - /* - * TODO: Filtering of interrupt numbers below should be user-definable; this is very quick-and-dirty. - */ - var fMessage = false; - var AH = this.cpu.regAX >> 8; - if (this.messageEnabled(Debugger.MESSAGE_DOS)) { - fMessage = (nInt == 0x21 && AH != 0x0b); - } else { - fMessage = (nInt != 0x10 && nInt != 0x15 && nInt != 0x16 && nInt != 0x1A && nInt != 0x1C); + var nCategory = Debugger.INT_MESSAGE[nInt]; + var fMessage = nCategory && this.messageEnabled(nCategory); + if (fMessage) { + var AH = this.cpu.regAX >> 8; + var DL = this.cpu.regDX & 0xff; + if (nInt == Debugger.INT.DOS && AH == 0x0b || + nCategory == Debugger.MESSAGE.FDC && DL >= 0x80 || nCategory == Debugger.MESSAGE.HDC && DL < 0x80) { + fMessage = false; + } } if (fMessage) { var aFuncs = Debugger.INT_FUNCS[nInt]; @@ -1504,7 +1526,7 @@ if (DEBUGGER) { Debugger.prototype.messagePort = function(component, port, bOut, addrFrom, name, bitsMessage, bIn) { if (!bitsMessage) bitsMessage = 0; - bitsMessage |= Debugger.MESSAGE_PORT; + bitsMessage |= Debugger.MESSAGE.PORT; if (addrFrom == null || (this.bitsMessageEnabled & bitsMessage) == bitsMessage) { var segFrom = null; if (addrFrom != null) { @@ -1526,7 +1548,7 @@ if (DEBUGGER) { this.println(sMessage); // + " (" + this.cpu.getCycles() + " cycles)" if (this.cpu) { - if (this.bitsMessageEnabled & Debugger.MESSAGE_HALT) { + if (this.bitsMessageEnabled & Debugger.MESSAGE.HALT) { this.cpu.haltCPU(); } /* @@ -1629,7 +1651,7 @@ if (DEBUGGER) { for (i = 0; i < this.aOpcodeHistory.length; i++) { /* * Preallocate dummy Addr (Array) objects in every history slot, so that checkInstruction() - * doesn't need to call newAddr() on every instruction check. + * doesn't need to call newAddr() on every slot update. */ this.aOpcodeHistory[i] = [0, null, 0]; } @@ -1965,7 +1987,7 @@ if (DEBUGGER) { */ Debugger.prototype.checksEnabled = function(fBreak) { - return ((DEBUG && !fBreak)? true : (this.aBreakExec.length > 1 || this.messageEnabled(Debugger.MESSAGE_INT) /* || this.aBreakRead.length > 1 || this.aBreakWrite.length > 1 */)); + return ((DEBUG && !fBreak)? true : (this.aBreakExec.length > 1 || this.messageEnabled(Debugger.MESSAGE.INT) /* || this.aBreakRead.length > 1 || this.aBreakWrite.length > 1 */)); }; /** @@ -2005,7 +2027,7 @@ if (DEBUGGER) { /* * This is a good example of what NOT to do in a high-frequency function, and defeats - * the entire purpose of preallocating and preinitializing the history array in initHistory(): + * the purpose of preallocating and preinitializing the history array in initHistory(): * * this.aOpcodeHistory[this.iOpcodeHistory] = this.newAddr(this.cpu.regIP, this.cpu.segCS.sel, addr); * @@ -2725,43 +2747,6 @@ if (DEBUGGER) { /** * parseInstruction(sOp, sOperand, addr) * - * This generally requires an exact match of both the operation code (sOp) and mode operand - * (sOperand) against the aOps[] and aOpMods[] arrays, respectively; however, the regular - * expression built from aOpMods and stored in regexOpModes does relax the matching criteria - * slightly; ie, a 4-digit hex value ("nnnn") will be satisfied with either 3 or 4 digits, and - * similarly, a 2-digit hex address (nn) will be satisfied with either 1 or 2 digits. - * - * Note that this function does not actually store the instruction into memory, even though it requires - * a target address (addr); that parameter is currently needed ONLY for "branch" instructions, because in - * order to calculate the branch displacement, it needs to know where the instruction will ultimately be - * stored, relative to its target address. - * - * Another handy feature of this function is its ability to display all available modes for a particular - * operation. For example, while in "assemble mode", if one types: - * - * ldy? - * - * the Debugger will display: - * - * supported opcodes: - * A0: LDY nn - * A4: LDY [nn] - * AC: LDY [nnnn] - * B4: LDY [nn+X] - * BC: LDY [nnnn+X] - * - * Use of a trailing "?" on any opcode will display all variations of that opcode; no instruction will be - * assembled, and the operand parameter, if any, will be ignored. - * - * Although this function is capable of reporting numerous errors, roughly half of them indicate internal - * consistency errors, not user errors; the former should really be asserts, but I'm not comfortable bombing - * out because of my error as opposed to their error. The only errors a user should expect to see: - * - * "unknown operation": sOp is not a valid operation (per aOps) - * "unknown operand": sOperand is not a valid operand (per aOpMods) - * "unknown instruction": the combination of sOp + sOperand does not exist (per aaOpDescs) - * "branch out of range": the branch address, relative to addr, is too far away - * * @this {Debugger} * @param {string} sOp * @param {string|undefined} sOperand @@ -3656,7 +3641,7 @@ if (DEBUGGER) { /** * doHalt(sCount) * - * If the CPU is running and no count is provided, then we simply haltCPU(); otherwise we treat this as a history command. + * If the CPU is running and no count is provided, we halt the CPU; otherwise we treat this as a history command. * * @this {Debugger} * @param {string|undefined} sCount is the number of instructions to rewind to (default is 10) diff --git a/my_modules/pcjs-client/lib/disk.js b/my_modules/pcjs-client/lib/disk.js index a2a5475b4..e7955d113 100644 --- a/my_modules/pcjs-client/lib/disk.js +++ b/my_modules/pcjs-client/lib/disk.js @@ -691,7 +691,7 @@ Disk.prototype.doneLoad = function(sDiskFile, sDiskData, nErrorCode, sDiskPath) * conversion to a forward-compatible 'data' array. */ else { - if (MAXDEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_DISK)) { + if (MAXDEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.DISK)) { var sCylinders = aDiskData.length + " track" + (aDiskData.length > 1 ? "s" : ""); var nHeads = aDiskData[0].length; var sHeads = nHeads + " head" + (nHeads > 1 ? "s" : ""); @@ -1534,7 +1534,7 @@ Disk.prototype.restore = function(deltas) Disk.prototype.messageDebugger = function(sMessage) { if (DEBUGGER && this.dbg) { - if (this.dbg.messageEnabled(Debugger.MESSAGE_DISK)) { + if (this.dbg.messageEnabled(Debugger.MESSAGE.DISK)) { this.dbg.message(sMessage); } } diff --git a/my_modules/pcjs-client/lib/fdc.js b/my_modules/pcjs-client/lib/fdc.js index d9817df14..19cc0aed4 100644 --- a/my_modules/pcjs-client/lib/fdc.js +++ b/my_modules/pcjs-client/lib/fdc.js @@ -400,13 +400,6 @@ FDC.aCmdInfo = { 0x0F: {cbReq: 3, cbRes: 0, name: FDC.CMDS.SEEK} }; -/* - * FDC BIOS interrupts, functions, and other parameters - */ -FDC.BIOS = { - INT_DISKETTE: 0x13 -}; - /** * setBinding(sHTMLClass, sHTMLType, sBinding, control) * @@ -561,9 +554,6 @@ FDC.prototype.initBus = function(cmp, bus, cpu, dbg) bus.addPortInputTable(this, FDC.aPortInput); bus.addPortOutputTable(this, FDC.aPortOutput); - if (DEBUGGER) { - cpu.addIntNotify(FDC.BIOS.INT_DISKETTE, this, this.intBIOSDiskette); - } if (!this.autoMount()) this.setReady(); }; @@ -1879,7 +1869,7 @@ FDC.prototype.popCmd = function(name) { Component.assert((!this.regDataIndex || name !== undefined) && this.regDataIndex < this.regDataTotal); var bCmd = this.regDataArray[this.regDataIndex]; - if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_FDC)) { + if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.FDC)) { var bCmdMasked = bCmd & FDC.REG_DATA.CMD.MASK; if (!name && !this.regDataIndex && FDC.aCmdInfo[bCmdMasked]) name = FDC.aCmdInfo[bCmdMasked].name; this.dbg.message("FDC.CMD[" + (name || this.regDataIndex) + "]: 0x" + str.toHexByte(bCmd)); @@ -1933,7 +1923,7 @@ FDC.prototype.beginResult = function() */ FDC.prototype.pushResult = function(bResult, name) { - if (DEBUG) this.messageDebugger("FDC.RES[" + (name || this.regDataTotal) + "]: 0x" + str.toHexByte(bResult), Debugger.MESSAGE_FDC); + if (DEBUG) this.messageDebugger("FDC.RES[" + (name || this.regDataTotal) + "]: 0x" + str.toHexByte(bResult), Debugger.MESSAGE.FDC); this.regDataArray[this.regDataTotal++] = bResult; }; @@ -2287,52 +2277,6 @@ FDC.prototype.writeFormat = function(drive, b) return b; }; -/** - * intBIOSDiskette(addr) - * - * NOTE: This function tries to differentiate FDC requests from HDC requests, by whether the INT 0x13 drive number - * in DL is < 0x80; however, not all INT 0x13 functions required a drive number in DL, and not all callers supplied one. - * - * INT 0x13 Quick Reference: - * - * AH - * ---- - * 0x00 Reset - * 0x01 Get status (from last operation) - * 0x02 Read sectors - * 0x03 Write sectors - * 0x04 Verify sectors - * 0x05 Format track - * - * For Read, Write, Verify and Format commands: - * - * DL drive number (0-3 allowed, value checked) - * DH head number (0-1 allowed, not value checked) - * CH track number (0-39 allowed, not value checked [which is good, because high-density diskettes go up to 80 tracks]) - * CL sector number (1-8 allowed, not value checked [which is good, because support for 9-sector tracks was later added]) - * AL number of sectors (max of 8, not value checked) - * ES:BX sector buffer - * - * @this {FDC} - * @param {number} addr - * @return {boolean} true to proceed with the INT 0x13 software interrupt, false to skip - */ -FDC.prototype.intBIOSDiskette = function(addr) -{ - if (DEBUGGER) { - var DL = this.cpu.regDX & 0xff; - if (this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_FDC | Debugger.MESSAGE_INT) && DL < 0x80) { - this.dbg.messageInt(FDC.BIOS.INT_DISKETTE, addr); - this.cpu.addIntReturn(addr, function(fdc, nCycles) { - return function onBIOSDisketteReturn(nLevel) { - fdc.dbg.messageIntReturn(FDC.BIOS.INT_DISKETTE, nLevel, fdc.cpu.getCycles() - nCycles); - }; - }(this, this.cpu.getCycles())); - } - } - return true; -}; - /** * messageDebugger(sMessage, bitsMessage) * @@ -2345,7 +2289,7 @@ FDC.prototype.intBIOSDiskette = function(addr) FDC.prototype.messageDebugger = function(sMessage, bitsMessage) { if (DEBUGGER && this.dbg) { - if (bitsMessage == null) bitsMessage = Debugger.MESSAGE_FDC; + if (bitsMessage == null) bitsMessage = Debugger.MESSAGE.FDC; if (this.dbg.messageEnabled(bitsMessage)) this.dbg.message(sMessage); } }; @@ -2364,7 +2308,7 @@ FDC.prototype.messageDebugger = function(sMessage, bitsMessage) */ FDC.prototype.messagePort = function(port, bOut, addrFrom, name, bIn) { - if (DEBUGGER && this.dbg) this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE_FDC, bIn); + if (DEBUGGER && this.dbg) this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE.FDC, bIn); }; /* diff --git a/my_modules/pcjs-client/lib/hdc.js b/my_modules/pcjs-client/lib/hdc.js index d7c2bc937..a1ce1305e 100644 --- a/my_modules/pcjs-client/lib/hdc.js +++ b/my_modules/pcjs-client/lib/hdc.js @@ -535,10 +535,8 @@ HDC.prototype.initBus = function(cmp, bus, cpu, dbg) bus.addPortInputTable(this, this.fATC? HDC.aATCPortInput : HDC.aXTCPortInput); bus.addPortOutputTable(this, this.fATC? HDC.aATCPortOutput : HDC.aXTCPortOutput); - if (DEBUGGER) { - cpu.addIntNotify(HDC.BIOS.INT_DISK, this, this.intBIOSDisk); - cpu.addIntNotify(HDC.BIOS.INT_DISKETTE, this, this.intBIOSDiskette); - } + cpu.addIntNotify(HDC.BIOS.INT_DISK, this, this.intBIOSDisk); + cpu.addIntNotify(HDC.BIOS.INT_DISKETTE, this, this.intBIOSDiskette); /* * The following code used to be performed in the HDC constructor, but now we need to wait for information @@ -1794,7 +1792,7 @@ HDC.prototype.doATCommand = function() this.drive = drive; } - if (DEBUG) this.messageDebugger("HDC.doATCommand(" + str.toHexByte(bCmd) + "): " + HDC.aATCCommands[bCmd], Debugger.MESSAGE_PORT | Debugger.MESSAGE_HDC); + if (DEBUG) this.messageDebugger("HDC.doATCommand(" + str.toHexByte(bCmd) + "): " + HDC.aATCCommands[bCmd], Debugger.MESSAGE.PORT | Debugger.MESSAGE.HDC); switch (bCmd & HDC.ATC.COMMAND.MASK) { @@ -1880,7 +1878,7 @@ HDC.prototype.doATCommand = function() default: if (DEBUG) this.messageDebugger("HDC.doATCommand(" + str.toHexByte(this.regCommand) + "): " + (bCmd < 0? ("invalid drive (" + iDrive + ")") : "unsupported operation")); - if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_HDC) && bCmd >= 0) this.cpu.haltCPU(); + if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.HDC) && bCmd >= 0) this.cpu.haltCPU(); break; } @@ -2049,7 +2047,7 @@ HDC.prototype.doXTCommand = function() default: if (DEBUG) this.messageDebugger("HDC.doXTCommand(" + str.toHexByte(bCmdOrig) + "): " + (bCmd < 0? ("invalid drive (" + iDrive + ")") : "unsupported operation")); this.beginResult(HDC.XTC.DATA.STATUS_ERROR | bDrive); - if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_HDC) && bCmd >= 0) this.cpu.haltCPU(); + if (DEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.HDC) && bCmd >= 0) this.cpu.haltCPU(); break; } } @@ -2067,7 +2065,7 @@ HDC.prototype.popCmd = function() var bCmdIndex = this.regDataIndex; if (bCmdIndex < this.regDataTotal) { bCmd = this.regDataArray[this.regDataIndex++]; - if (DEBUG) this.messageDebugger("HDC.CMD[" + bCmdIndex + "]: 0x" + str.toHexByte(bCmd) + (!bCmdIndex && HDC.aXTCCommands[bCmd]? (" (" + HDC.aXTCCommands[bCmd] + ")") : ""), (bCmdIndex > 0? Debugger.MESSAGE_PORT : 0) | Debugger.MESSAGE_HDC); + if (DEBUG) this.messageDebugger("HDC.CMD[" + bCmdIndex + "]: 0x" + str.toHexByte(bCmd) + (!bCmdIndex && HDC.aXTCCommands[bCmd]? (" (" + HDC.aXTCCommands[bCmd] + ")") : ""), (bCmdIndex > 0? Debugger.MESSAGE.PORT : 0) | Debugger.MESSAGE.HDC); } return bCmd; }; @@ -2103,7 +2101,7 @@ HDC.prototype.beginResult = function(bResult) */ HDC.prototype.pushResult = function(bResult) { - if (DEBUG) this.messageDebugger("HDC.RES[" + this.regDataTotal + "]: 0x" + str.toHexByte(bResult), (this.regDataTotal > 0? Debugger.MESSAGE_PORT : 0) | Debugger.MESSAGE_HDC); + if (DEBUG) this.messageDebugger("HDC.RES[" + this.regDataTotal + "]: 0x" + str.toHexByte(bResult), (this.regDataTotal > 0? Debugger.MESSAGE.PORT : 0) | Debugger.MESSAGE.HDC); this.regDataArray[this.regDataTotal++] = bResult; }; @@ -2638,16 +2636,6 @@ HDC.prototype.intBIOSDisk = function(addr) var AH = this.cpu.regAX >> 8; var DL = this.cpu.regDX & 0xff; if (!AH && DL > 0x80) this.iDriveAllowFail = DL - 0x80; - if (DEBUGGER) { - if (this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_HDC | Debugger.MESSAGE_INT) && DL >= 0x80) { - this.dbg.messageInt(HDC.BIOS.INT_DISK, addr); - this.cpu.addIntReturn(addr, function (hdc, nCycles) { - return function onBIOSDiskReturn(nLevel) { - hdc.dbg.messageIntReturn(HDC.BIOS.INT_DISK, nLevel, hdc.cpu.getCycles() - nCycles); - }; - }(this, this.cpu.getCycles())); - } - } return true; }; @@ -2702,7 +2690,7 @@ HDC.prototype.intBIOSDiskette = function(addr) HDC.prototype.messageDebugger = function(sMessage, bitsMessage) { if (DEBUGGER && this.dbg) { - if (bitsMessage == null) bitsMessage = Debugger.MESSAGE_HDC; + if (bitsMessage == null) bitsMessage = Debugger.MESSAGE.HDC; if (this.dbg.messageEnabled(bitsMessage)) this.dbg.message(sMessage); } }; @@ -2721,7 +2709,7 @@ HDC.prototype.messageDebugger = function(sMessage, bitsMessage) */ HDC.prototype.messagePort = function(port, bOut, addrFrom, name, bIn) { - if (DEBUGGER && this.dbg) this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE_HDC, bIn); + if (DEBUGGER && this.dbg) this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE.HDC, bIn); }; /* diff --git a/my_modules/pcjs-client/lib/keyboard.js b/my_modules/pcjs-client/lib/keyboard.js index dbbcdfdbf..6d829e7ce 100644 --- a/my_modules/pcjs-client/lib/keyboard.js +++ b/my_modules/pcjs-client/lib/keyboard.js @@ -917,7 +917,7 @@ Keyboard.prototype.resetDevice = function() /* * TODO: There's more to reset, like LED indicators, default type rate, and emptying the scan code buffer. */ - this.messageDebugger("keyboard reset", Debugger.MESSAGE_PORT); + this.messageDebugger("keyboard reset", Debugger.MESSAGE.PORT); this.abScanBuffer = [Keyboard.CMDRES.BAT_SUCC]; if (this.chipset) this.chipset.notifyKbdData(true); }; @@ -939,7 +939,7 @@ Keyboard.prototype.setEnable = function(fData, fClock) { var fReset = false; if (this.fClock !== fClock) { - if (DEBUG) this.messageDebugger("keyboard clock line changing to " + fClock, Debugger.MESSAGE_PORT); + if (DEBUG) this.messageDebugger("keyboard clock line changing to " + fClock, Debugger.MESSAGE.PORT); /* * Toggling the clock line low and then high signals a "reset", which we acknowledge once the * data line is high as well. @@ -947,7 +947,7 @@ Keyboard.prototype.setEnable = function(fData, fClock) this.fClock = this.fResetOnEnable = fClock; } if (this.fData !== fData) { - if (DEBUG) this.messageDebugger("keyboard data line changing to " + fData, Debugger.MESSAGE_PORT); + if (DEBUG) this.messageDebugger("keyboard data line changing to " + fData, Debugger.MESSAGE.PORT); this.fData = fData; /* * TODO: Review this code; it was added during the early days of MODEL_5150 testing and may not be @@ -1480,7 +1480,7 @@ Keyboard.prototype.keyUpDown = function(event, fDown) fPass = !this.keySimulateUpDown(keyCodeSim, fDown, Keyboard.SIMCODE.KEYUPDOWN); } - if (DEBUG) this.messageDebugger(/*(fDown?"\n":"") +*/ "key" + (fDown? "Down" : "Up") + "(" + keyCode + "): " + (fPass? "pass" : "consume"), Debugger.MESSAGE_KEYS); + if (DEBUG) this.messageDebugger(/*(fDown?"\n":"") +*/ "key" + (fDown? "Down" : "Up") + "(" + keyCode + "): " + (fPass? "pass" : "consume"), Debugger.MESSAGE.KEYS); return fPass; }; @@ -1518,7 +1518,7 @@ Keyboard.prototype.keyPress = function(event) if (this.bitsShift & Keyboard.STATE.COMMAND) this.bitsShift &= ~Keyboard.STATE.COMMAND; else { - // if (DEBUG && event.altKey) this.messageDebugger("ALT press: keyCode " + keyCode, Debugger.MESSAGE_KEYS); + // if (DEBUG && event.altKey) this.messageDebugger("ALT press: keyCode " + keyCode, Debugger.MESSAGE.KEYS); if (this.bitsShift & (Keyboard.STATE.CTRL | Keyboard.STATE.ALT)) fPass = false; else @@ -1526,7 +1526,7 @@ Keyboard.prototype.keyPress = function(event) } } - if (DEBUG) this.messageDebugger("keyPress(" + keyCode + "): " + (fPass? "pass" : "consume"), Debugger.MESSAGE_KEYS); + if (DEBUG) this.messageDebugger("keyPress(" + keyCode + "): " + (fPass? "pass" : "consume"), Debugger.MESSAGE.KEYS); return fPass; }; @@ -1581,7 +1581,7 @@ Keyboard.prototype.keySimulatePress = function(keyCode, fQuickRelease) } fSimulated = true; } - if (DEBUG) this.messageDebugger("keySimulatePress(" + keyCode + "): " + (fSimulated? "true" : "false"), Debugger.MESSAGE_KEYS); + if (DEBUG) this.messageDebugger("keySimulatePress(" + keyCode + "): " + (fSimulated? "true" : "false"), Debugger.MESSAGE.KEYS); return fSimulated; }; @@ -1666,7 +1666,7 @@ Keyboard.prototype.keySimulateUpDown = function(keyCode, fDown, simCode) fSimulated = true; } - if (DEBUG && DEBUGGER) this.messageDebugger("keySimulateUpDown(" + keyCode + "," + (fDown? "down" : "up") + "," + Keyboard.aSimCodeDescs[simCode] + "): " + (fSimulated? "true" : "false"), Debugger.MESSAGE_KEYS); + if (DEBUG && DEBUGGER) this.messageDebugger("keySimulateUpDown(" + keyCode + "," + (fDown? "down" : "up") + "," + Keyboard.aSimCodeDescs[simCode] + "): " + (fSimulated? "true" : "false"), Debugger.MESSAGE.KEYS); return fSimulated; }; @@ -1682,8 +1682,8 @@ Keyboard.prototype.keySimulateUpDown = function(keyCode, fDown, simCode) Keyboard.prototype.messageDebugger = function(sMessage, bitsMessage) { if (DEBUGGER && this.dbg) { - if (bitsMessage == null) bitsMessage = Debugger.MESSAGE_KBD; - if (bitsMessage == Debugger.MESSAGE_PORT) bitsMessage |= Debugger.MESSAGE_KBD; + if (bitsMessage == null) bitsMessage = Debugger.MESSAGE.KBD; + if (bitsMessage == Debugger.MESSAGE.PORT) bitsMessage |= Debugger.MESSAGE.KBD; if (this.dbg.messageEnabled(bitsMessage)) this.dbg.message(sMessage); } }; diff --git a/my_modules/pcjs-client/lib/mem.js b/my_modules/pcjs-client/lib/mem.js index 3e52c6015..35ea206d4 100644 --- a/my_modules/pcjs-client/lib/mem.js +++ b/my_modules/pcjs-client/lib/mem.js @@ -168,7 +168,7 @@ Memory.prototype = { * @return {number} */ readNone: function(off) { - if (DEBUGGER && this.dbg.messageEnabled(Debugger.MESSAGE_MEM) && !off) { + if (DEBUGGER && this.dbg.messageEnabled(Debugger.MESSAGE.MEM) && !off) { this.dbg.message("attempt to read invalid block %" + str.toHex(this.addr) + " from " + str.toHexAddr(this.cpu.regIP, this.cpu.segCS.sel)); } return 0; @@ -181,7 +181,7 @@ Memory.prototype = { * @param {number} v (could be either a byte or word value, since we use the same handler for both kinds of accesses) */ writeNone: function(off, v) { - if (DEBUGGER && this.dbg.messageEnabled(Debugger.MESSAGE_MEM) && !off) { + if (DEBUGGER && this.dbg.messageEnabled(Debugger.MESSAGE.MEM) && !off) { this.dbg.message("attempt to write 0x" + str.toHexWord(v) + " to invalid block %" + str.toHex(this.addr) + " from " + str.toHexAddr(this.cpu.regIP, this.cpu.segCS.sel)); } }, diff --git a/my_modules/pcjs-client/lib/mouse.js b/my_modules/pcjs-client/lib/mouse.js index 68a5249d0..601d5894b 100644 --- a/my_modules/pcjs-client/lib/mouse.js +++ b/my_modules/pcjs-client/lib/mouse.js @@ -159,6 +159,8 @@ function Mouse(parmsMouse) { Component.subclass(Component, Mouse); +Mouse.ID_SERIAL = 0x4D; + /** * initBus(cmp, bus, cpu, dbg) * @@ -182,7 +184,7 @@ Mouse.prototype.initBus = function(cmp, bus, cpu, dbg) { * @return {boolean} true if active, false if not */ Mouse.prototype.isActive = function() { - return this.fActive && (this.cpu ? this.cpu.isRunning() : false); + return this.fActive && (this.cpu? this.cpu.isRunning() : false); }; /** @@ -245,7 +247,7 @@ Mouse.prototype.powerUp = function(data, fRepower) { * @return {Object|boolean} */ Mouse.prototype.powerDown = function(fSave) { - return fSave && this.save ? this.save() : true; + return fSave && this.save? this.save() : true; }; /** @@ -439,14 +441,14 @@ Mouse.prototype.clickMouse = function(iButton, fDown) { case 0: if (this.fButton1 != fDown) { this.fButton1 = fDown; - sDiag = DEBUGGER ? ("mouse button1 " + (fDown ? "dn" : "up")) : null; + sDiag = DEBUGGER? ("mouse button1 " + (fDown? "dn" : "up")) : null; this.sendPacket(sDiag); } break; case 2: if (this.fButton2 != fDown) { this.fButton2 = fDown; - sDiag = DEBUGGER ? ("mouse button2 " + (fDown ? "dn" : "up")) : null; + sDiag = DEBUGGER? ("mouse button2 " + (fDown? "dn" : "up")) : null; this.sendPacket(sDiag); } break; @@ -474,10 +476,10 @@ Mouse.prototype.clickMouse = function(iButton, fDown) { * @param {number} [yDiag] original y-coordinate (optional; for diagnostic use only) */ Mouse.prototype.sendPacket = function(sDiag, xDiag, yDiag) { - var b1 = 0x40 | (this.fButton1 ? 0x20 : 0) | (this.fButton2 ? 0x10 : 0) | ((this.yDelta & 0xC0) >> 4) | ((this.xDelta & 0xC0) >> 6); + var b1 = 0x40 | (this.fButton1? 0x20 : 0) | (this.fButton2? 0x10 : 0) | ((this.yDelta & 0xC0) >> 4) | ((this.xDelta & 0xC0) >> 6); var b2 = this.xDelta & 0x3F; var b3 = this.yDelta & 0x3F; - this.messageDebugger((sDiag ? (sDiag + ": ") : "") + (yDiag !== undefined ? ("mouse (" + xDiag + "," + yDiag + "): ") : "") + "serial packet [" + str.toHexByte(b1) + "," + str.toHexByte(b2) + "," + str.toHexByte(b3) + "]"); + this.messageDebugger((sDiag? (sDiag + ": ") : "") + (yDiag !== undefined? ("mouse (" + xDiag + "," + yDiag + "): ") : "") + "serial packet [" + str.toHexByte(b1) + "," + str.toHexByte(b2) + "," + str.toHexByte(b3) + "]"); this.componentAdapter.sendRBR([b1, b2, b3]); this.xDelta = this.yDelta = 0; }; @@ -489,7 +491,7 @@ Mouse.prototype.sendPacket = function(sDiag, xDiag, yDiag) { * * During normal serial mouse operation, both RTS and DTR must be "positive". * - * Setting RTS "negative" for 100ms resets the mouse. Toggling DTR requests an identification byte (0x4D). + * Setting RTS "negative" for 100ms resets the mouse. Toggling DTR requests an identification byte (ID_SERIAL). * * NOTES: The above 3rd-party information notwithstanding, I've observed that Windows v1.01 initially writes 0x01 * to the MCR (DTR on, RTS off), spins in a loop that reads the RBR (probably to avoid a bogus identification byte @@ -515,7 +517,27 @@ Mouse.prototype.notifyMCR = function(bMCR) { fIdentify = true; } if (fIdentify) { - this.componentAdapter.sendRBR([0x4D]); + /* + * HEADS UP: Everything I'd read about the (original) Microsoft Serial Mouse "reset" protocol says + * that the device sends a single byte (0x4D aka 'M'). It's not surprising to think that newer mice + * might send additional bytes, but you would think that newer mouse drivers (eg, MOUSE.COM v8.20) + * would always be able to deal with mice that sent only one byte. + * + * You would be wrong. On an INT 0x33 reset, the v8.20 driver looks for an 'M', then it waits for + * another byte (0x42 aka 'B'). If it doesn't receive a 'B', it will accept another 'M'. But if it + * receives something else (or nothing at all), it will spend a long time waiting for it, and then + * return an error. + * + * It's entirely possible that I've done something wrong and inadvertently "tricked" MOUSE.COM into + * using the wrong detection logic. But given the other problems I've seen in MOUSE.COM v8.20, including + * its failure to properly terminate-and-stay-resident when its initial INT 0x33 reset returns an error, + * I'm not in the mood to give it the benefit of the doubt. + * + * So, anyway, I solve the terminate-and-stay-resident bug in MOUSE.COM v8.20 by feeding it *two* ID_SERIAL + * bytes on a reset. This doesn't seem to adversely affect serial mouse emulation for Windows 1.01, so + * I'm calling this good enough for now. + */ + this.componentAdapter.sendRBR([Mouse.ID_SERIAL, Mouse.ID_SERIAL]); this.messageDebugger("serial mouse ID sent"); } this.captureMouse(this.canvasScreen); @@ -553,8 +575,8 @@ Mouse.prototype.notifyMCR = function(bMCR) { */ Mouse.prototype.messageDebugger = function(sMessage) { if (DEBUGGER && this.dbg) { - if (this.dbg.messageEnabled(Debugger.MESSAGE_MOUSE)) { - this.dbg.message(sMessage); + if (this.dbg.messageEnabled(Debugger.MESSAGE.MOUSE)) { + this.dbg.message(sMessage + " @" + str.toHexAddr(this.cpu.regIP, this.cpu.segCS.sel)); } } }; diff --git a/my_modules/pcjs-client/lib/nodebugger.js b/my_modules/pcjs-client/lib/nodebugger.js index 1d02794bc..f878ab598 100644 --- a/my_modules/pcjs-client/lib/nodebugger.js +++ b/my_modules/pcjs-client/lib/nodebugger.js @@ -46,6 +46,8 @@ DEBUGGER = false; /* - * We still need a Debugger "stub" object, so that attempts to reference Debugger constants won't trigger exceptions. + * We still need some Debugger "stub" objects, so that attempts to reference Debugger constants won't trigger exceptions. */ -var Debugger = {}; +var Debugger = { + MESSAGE: {} +}; diff --git a/my_modules/pcjs-client/lib/serial.js b/my_modules/pcjs-client/lib/serial.js index 59978ec44..c7d4b3bb6 100644 --- a/my_modules/pcjs-client/lib/serial.js +++ b/my_modules/pcjs-client/lib/serial.js @@ -152,16 +152,17 @@ SerialPort.sIOBuffer = "buffer"; * 0x0002 56000 2.86% * 0x0001 128000 */ -SerialPort.RBR = {REG: 0}; // Receiver Buffer Register (read) SerialPort.DLL = {REG: 0}; // Divisor Latch LSB (only when SerialPort.LCR.DLAB is set) SerialPort.THR = {REG: 0}; // Transmitter Holding Register (write) -SerialPort.DLM = {REG: 1}; // Divisor Latch MSB (only when SerialPort.LCR.DLAB is set) -SerialPort.SCR = {REG: 7}; // Scratch Register - SerialPort.DL_DEFAULT = 0x180; // we select an arbitrary default Divisor Latch equivalent to 300 baud /* - * Interrupt Enable Register (IER.REG, offset 1) + * Receiver Buffer Register (RBR.REG, offset 0; eg, 0x3F8 or 0x2F8) + */ +SerialPort.RBR = {REG: 0}; // (read) + +/* + * Interrupt Enable Register (IER.REG, offset 1; eg, 0x3F9 or 0x2F9) */ SerialPort.IER = {}; SerialPort.IER.REG = 1; // Interrupt Enable Register @@ -171,8 +172,10 @@ SerialPort.IER.LSR_DELTA = 0x04; SerialPort.IER.MSR_DELTA = 0x08; SerialPort.IER.UNUSED = 0xF0; // always zero +SerialPort.DLM = {REG: 1}; // Divisor Latch MSB (only when SerialPort.LCR.DLAB is set) + /* - * Interrupt ID Register (IIR.REG, offset 2) + * Interrupt ID Register (IIR.REG, offset 2; eg, 0x3FA or 0x2FA) * * All interrupt conditions cleared by reading the corresponding register (or, in the case of IRR_INT_THR, writing a new value to THR.REG) */ @@ -187,7 +190,7 @@ SerialPort.IIR.INT_BITS = 0x06; SerialPort.IIR.UNUSED = 0xF8; // always zero (the ROM BIOS relies on these bits "floating to 1" when no SerialPort is present) /* - * Line Control Register (LCR.REG, offset 3) + * Line Control Register (LCR.REG, offset 3; eg, 0x3FB or 0x2FB) */ SerialPort.LCR = {}; SerialPort.LCR.REG = 3; // Line Control Register @@ -203,7 +206,7 @@ SerialPort.LCR.BREAK = 0x40; // if set, serial output (SOUT) signal i SerialPort.LCR.DLAB = 0x80; // Divisor Latch Access Bit; if set, DLL.REG and DLM.REG can be read or written /* - * Modem Control Register (MCR.REG, offset 4) + * Modem Control Register (MCR.REG, offset 4; eg, 0x3FC or 0x2FC) */ SerialPort.MCR = {}; SerialPort.MCR.REG = 4; // Modem Control Register @@ -215,7 +218,7 @@ SerialPort.MCR.LOOPBACK = 0x10; // when set, enables loop-back mode SerialPort.MCR.UNUSED = 0xE0; // always zero /* - * Line Status Register (LSR.REG, offset 5) + * Line Status Register (LSR.REG, offset 5; eg, 0x3FD or 0x2FD) * * NOTE: I've seen different specs for the LSR_TSRE. I'm following the IBM Tech Ref's lead here, but the data sheet I have calls it TEMT * instead of TSRE, and claims that it is set whenever BOTH the THR and TSR are empty, and clear whenever EITHER the THR or TSR contain data. @@ -232,7 +235,7 @@ SerialPort.LSR.TSRE = 0x40; // Transmitter Shift Register Empty (set SerialPort.LSR.UNUSED = 0x80; // always zero /* - * Modem Status Register (MSR.REG, offset 6) + * Modem Status Register (MSR.REG, offset 6; eg, 0x3FE or 0x2FE) */ SerialPort.MSR = {}; SerialPort.MSR.REG = 6; // Modem Status Register @@ -245,6 +248,11 @@ SerialPort.MSR.DSR = 0x20; // when set, the modem or data set is re SerialPort.MSR.RI = 0x40; // complement of the RI (Ring Indicator) input SerialPort.MSR.RLSD = 0x80; // complement of the RLSD (Received Line Signal Detect) input +/* + * Scratch Register (SCR.REG, offset 7; eg, 0x3FF or 0x2FF) + */ +SerialPort.SCR = {REG: 7}; + /** * attachMouse(id, mouse) * @@ -718,7 +726,7 @@ SerialPort.prototype.echoByte = function(b) { */ SerialPort.prototype.messageDebugger = function(sMessage) { if (DEBUGGER && this.dbg) { - if (this.dbg.messageEnabled(Debugger.MESSAGE_SERIAL)) { + if (this.dbg.messageEnabled(Debugger.MESSAGE.SERIAL)) { this.dbg.message(sMessage); } } @@ -738,7 +746,7 @@ SerialPort.prototype.messageDebugger = function(sMessage) { */ SerialPort.prototype.messagePort = function(port, bOut, addrFrom, name, bIn) { if (DEBUGGER && this.dbg) { - this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE_SERIAL, bIn); + this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE.SERIAL, bIn); } }; diff --git a/my_modules/pcjs-client/lib/state.js b/my_modules/pcjs-client/lib/state.js index ba8b43d41..e2e424a71 100644 --- a/my_modules/pcjs-client/lib/state.js +++ b/my_modules/pcjs-client/lib/state.js @@ -381,7 +381,7 @@ State.prototype = { */ messageDebugger: function(sMessage) { if (DEBUGGER && this.dbg) { - if (this.dbg.messageEnabled(Debugger.MESSAGE_STATE)) this.dbg.message(sMessage); + if (this.dbg.messageEnabled(Debugger.MESSAGE.STATE)) this.dbg.message(sMessage); } } }; diff --git a/my_modules/pcjs-client/lib/video.js b/my_modules/pcjs-client/lib/video.js index 8ccd0d63b..99547c73c 100644 --- a/my_modules/pcjs-client/lib/video.js +++ b/my_modules/pcjs-client/lib/video.js @@ -1920,13 +1920,6 @@ Video.cardSpecs[Video.CARDS.MDA] = ["MDA", Card.MDA.CRTC.INDX.PORT, 0xB0000, 0x0 Video.cardSpecs[Video.CARDS.CGA] = ["CGA", Card.CGA.CRTC.INDX.PORT, 0xB8000, 0x04000, 0, ChipSet.MONITOR.COLOR]; Video.cardSpecs[Video.CARDS.EGA] = ["EGA", Card.CGA.CRTC.INDX.PORT, 0xB8000, 0x04000, 0x10000, ChipSet.MONITOR.EGACOLOR]; -/* - * BIOS video interrupts, modes, and other parameters - */ -Video.BIOS = { - INT_VIDEO: 0x10 -}; - /** * initBus(cmp, bus, cpu, dbg) * @@ -1955,8 +1948,7 @@ Video.prototype.initBus = function(cmp, bus, cpu, dbg) if (DEBUGGER && dbg) { var video = this; - this.cpu.addIntNotify(Video.BIOS.INT_VIDEO, this, this.intBIOSVideo); - dbg.messageDump(Debugger.MESSAGE_VIDEO, function onDumpVideo(sParm) { + dbg.messageDump(Debugger.MESSAGE.VIDEO, function onDumpVideo(sParm) { video.dumpVideo(sParm); }); } @@ -1979,28 +1971,6 @@ Video.prototype.initBus = function(cmp, bus, cpu, dbg) if (this.kbd && this.fTouchScreen) this.captureTouch(); }; -/** - * intBIOSVideo(addr) - * - * @this {Video} - * @param {number} addr - * @return {boolean} true to proceed with the INT 0x10 software interrupt, false to skip - */ -Video.prototype.intBIOSVideo = function(addr) -{ - if (DEBUGGER) { - if (this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_VIDEO | Debugger.MESSAGE_INT)) { - this.dbg.messageInt(Video.BIOS.INT_VIDEO, addr); - this.cpu.addIntReturn(addr, function (video, nCycles) { - return function onBIOSVideoReturn(nLevel) { - video.dbg.messageIntReturn(Video.BIOS.INT_VIDEO, nLevel, video.cpu.getCycles() - nCycles); - }; - }(this, this.cpu.getCycles())); - } - } - return true; -}; - /** * setBinding(sHTMLClass, sHTMLType, sBinding, control) * @@ -3742,7 +3712,7 @@ Video.prototype.updateChar = function(col, row, data, context) this.contextScreen.fillRect(xDst, yDst, this.cxScreenCell, this.cyScreenCell); } - if (MAXDEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_VIDEO | Debugger.MESSAGE_LOG)) { + if (MAXDEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.VIDEO | Debugger.MESSAGE.LOG)) { this.log("updateCharBgnd(" + col + "," + row + "," + bChar + "): filled " + xDst + "," + yDst); } @@ -3753,7 +3723,7 @@ Video.prototype.updateChar = function(col, row, data, context) var xSrcFgnd = (bChar & 0xf) * font.cxCell; var ySrcFgnd = (bChar >> 4) * font.cyCell; - if (MAXDEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE_VIDEO | Debugger.MESSAGE_LOG)) { + if (MAXDEBUG && DEBUGGER && this.dbg && this.dbg.messageEnabled(Debugger.MESSAGE.VIDEO | Debugger.MESSAGE.LOG)) { this.log("updateCharFgnd(" + col + "," + row + "," + bChar + "): draw from " + xSrcFgnd + "," + ySrcFgnd + " (" + font.cxCell + "," + font.cyCell + ") to " + xDst + "," + yDst); } @@ -4926,7 +4896,7 @@ Video.prototype.dumpVideo = function(sParm) Video.prototype.messageDebugger = function(sMessage, fForce) { if (DEBUGGER && this.dbg) { - if (fForce || this.dbg.messageEnabled(Debugger.MESSAGE_VIDEO)) { + if (fForce || this.dbg.messageEnabled(Debugger.MESSAGE.VIDEO)) { this.dbg.message(sMessage); } } @@ -4947,7 +4917,7 @@ Video.prototype.messageDebugger = function(sMessage, fForce) Video.prototype.messagePort = function(port, bOut, addrFrom, name, bIn) { if (DEBUGGER && this.dbg) { - this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE_VIDEO, bIn); + this.dbg.messagePort(this, port, bOut, addrFrom, name, Debugger.MESSAGE.VIDEO, bIn); } }; diff --git a/my_modules/pcjs-client/lib/x86cpu.js b/my_modules/pcjs-client/lib/x86cpu.js index fa69165d8..60a83f823 100644 --- a/my_modules/pcjs-client/lib/x86cpu.js +++ b/my_modules/pcjs-client/lib/x86cpu.js @@ -922,12 +922,12 @@ X86CPU.prototype.checkIntNotify = function(nInt) } } } - else if (DEBUGGER && this.aFlags.fDebugCheck) { - /* - * Enabling MESSAGE_INT messages is one of the criteria that's also included in fDebugCheck, - * so for maximum speed, we check fDebugCheck first. - */ - if (this.dbg.messageEnabled(Debugger.MESSAGE_INT) && this.dbg.messageInt(nInt, this.regEIP)) { + /* + * The enabling of MESSAGE_INT messages is one of the criteria that's also included in the Debugger's + * checksEnabled() function, and therefore in fDebugCheck, so for maximum speed, we check fDebugCheck first. + */ + if (DEBUGGER && this.aFlags.fDebugCheck) { + if (this.dbg.messageEnabled(Debugger.MESSAGE.INT) && this.dbg.messageInt(nInt, this.regEIP)) { this.addIntReturn(this.regEIP, function(cpu, nCycles) { return function onIntReturn(nLevel) { cpu.dbg.messageIntReturn(nInt, nLevel, cpu.getCycles() - nCycles); @@ -2490,7 +2490,7 @@ X86CPU.prototype.stepCPU = function(nMinCycles) * One exception I make here is when you've asked the Debugger to display PIC messages, the idea being that * if you're watching the PIC that closely, then you want to hardware interrupts to occur regardless. */ - if (!nMinCycles && this.dbg && !this.dbg.messageEnabled(Debugger.MESSAGE_PIC)) this.opFlags |= X86.OPFLAG.NOINTR; + if (!nMinCycles && this.dbg && !this.dbg.messageEnabled(Debugger.MESSAGE.PIC)) this.opFlags |= X86.OPFLAG.NOINTR; do { var opPrefixes = this.opFlags & X86.OPFLAG.PREFIXES; @@ -2597,7 +2597,7 @@ X86CPU.prototype.stepCPU = function(nMinCycles) X86CPU.prototype.messageDebugger = function(sMessage) { if (DEBUGGER && this.dbg) { - if (this.dbg.messageEnabled(Debugger.MESSAGE_CPU)) { + if (this.dbg.messageEnabled(Debugger.MESSAGE.CPU)) { this.dbg.message(sMessage); } } diff --git a/my_modules/pcjs-client/lib/x86help.js b/my_modules/pcjs-client/lib/x86help.js index 39cb00ce8..363b1647a 100644 --- a/my_modules/pcjs-client/lib/x86help.js +++ b/my_modules/pcjs-client/lib/x86help.js @@ -475,7 +475,7 @@ var X86Help = { /* * NOTE: By using Debugger.message(), we have the option of setting "m halt on" and halting on messages like this. */ - if (this.dbg.messageEnabled(Debugger.MESSAGE_CPU)) { + if (this.dbg.messageEnabled(Debugger.MESSAGE.CPU)) { this.dbg.message("Fault 0x" + str.toHexByte(nFault) + (nError != null? " (0x" + str.toHexWord(nError) + ")" : "") + " on opcode 0x" + str.toHexByte(this.bus.getByteDirect(this.regEIP)) + " at " + str.toHexAddr(this.regIP, this.segCS.sel)); } if (fHalt) this.haltCPU(); diff --git a/versions/pcjs/1.15.9/pc-dbg.js b/versions/pcjs/1.15.9/pc-dbg.js index 7f3447a68..a70806c57 100644 --- a/versions/pcjs/1.15.9/pc-dbg.js +++ b/versions/pcjs/1.15.9/pc-dbg.js @@ -1,122 +1,122 @@ (function(){var k,aa,m;function ba(a,b){return b&&10!=b?16==b?null!==a.match(/^[0-9a-f]+$/i):!0:null!==a.match(/^[0-9]+$/)}function ca(a){var b,c;if(a){b||(b=16);if("$"==a.charAt(0))b=16,a=a.substr(1);else if("0x"==a.substr(0,2))b=16,a=a.substr(2);else{var d=a.charAt(a.length-1).toLowerCase();"h"==d?(b=16,d=null):"."==d&&(b=10,d=null);null===d&&(a=a.substr(0,a.length-1))}var e;ba(a,b)&&!isNaN(e=parseInt(a,b))&&(c=e)}return c} -function p(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function q(a){return p(a,2)}function u(a){return p(a,4)}function da(a,b){return void 0!==b?u(b)+":"+u(a):p(a)}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0":">",'"':""","'":"'"};function ia(a){return a.replace(/[&<>"']/g,function(a){return ha[a]})}function ka(a,b){var c="",d;for(d in a)d=d.replace(/([\\[\]*{}().+?])/g,"\\$1"),c+=(c?"|":"")+d;return b.replace(new RegExp("("+c+")","g"),function(b){return a[b]})}function la(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")} +function p(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function t(a){return p(a,2)}function v(a){return p(a,4)}function da(a,b){return void 0!==b?v(b)+":"+v(a):p(a)}function ea(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0":">",'"':""","'":"'"};function ja(a){return a.replace(/[&<>"']/g,function(a){return ha[a]})}function ka(a,b){var c="",d;for(d in a)d=d.replace(/([\\[\]*{}().+?])/g,"\\$1"),c+=(c?"|":"")+d;return b.replace(new RegExp("("+c+")","g"),function(b){return a[b]})}function la(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")} function ma(a,b,c){var d=0,e=a.length,f=0;for(void 0===c&&(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0c&&a.splice(-(c+1),0,b)}function oa(){return Date.now()||+new Date}function pa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} var qa=[31,28,31,30,31,30,31,31,30,31,30,31],ra; -function sa(a,b,c,d,e,f){b=!!b;var g=0,h=null,l=ea(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(h=n.responseText,200==n.status||!n.status&&h.length&&"file:"==(window?window.location.protocol:"file:")||(g=n.status||-1),e&&(d?e.call(d,l,h,g,f):e(l,h,g,f)))});if(c){var r="",s;for(s in c)c.hasOwnProperty(s)&&(r&&(r+="&"),r+=s+"="+encodeURIComponent(c[s]));r=r.replace(/%20/g,"+");n.open("POST", -a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(r)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.status&&(g=n.status||-1),e&&(d?e.call(d,l,h,g,f):e(l,h,g,f)),a=[g,h]);return a}function ta(){return"http://"+(window?window.location.host:"www.pcjs.org")}function w(a){window&&window.alert(a)}function ua(a){var b=!1;window&&(b=window.confirm(a));return b} +function sa(a,b,c,d,e,f){b=!!b;var g=0,h=null,l=ea(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(h=n.responseText,200==n.status||!n.status&&h.length&&"file:"==(window?window.location.protocol:"file:")||(g=n.status||-1),e&&(d?e.call(d,l,h,g,f):e(l,h,g,f)))});if(c){var q="",r;for(r in c)c.hasOwnProperty(r)&&(q&&(q+="&"),q+=r+"="+encodeURIComponent(c[r]));q=q.replace(/%20/g,"+");n.open("POST", +a,b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(h=n.responseText,200!=n.status&&(g=n.status||-1),e&&(d?e.call(d,l,h,g,f):e(l,h,g,f)),a=[g,h]);return a}function ta(){return"http://"+(window?window.location.host:"www.pcjs.org")}function x(a){window&&window.alert(a)}function ua(a){var b=!1;window&&(b=window.confirm(a));return b} function va(){if(void 0===ra){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ra=a}return ra}function wa(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function xa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1} function ya(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function za(a,b,c){function d(){a-=1;0<=a&&(b()||(a=0));0=this.eg?12:14;this.fc=1<>2;this.gb=this.fc-1;this.Xg=(this.Jf+this.fc)/this.fc|0;this.De=this.Xg-1;this.td=[];this.ud=[];this.ag=this.bg=!1;this.Gi();this.Ta()}Ua(y,gb); -gb.prototype.Gi=function(){this.Fa=Array(this.Xg);for(var a=0;a>a.rb;0>this.rb;0>a.rb;0>a.rb].xg(b&a.gb)} -function ob(a,b){var c=b&a.gb,d=(b&a.ed)>>a.rb;return c!=a.gb?a.Fa[d].Jj(c):a.Fa[d++].xg(c)|a.Fa[d&a.De].xg(0)<<8}function pb(a,b,c){a.Fa[(b&a.ed)>>a.rb].Eg(b&a.gb,c&255)}function qb(a,b,c){var d=b&a.gb;b=(b&a.ed)>>a.rb;d!=a.gb?a.Fa[b].Sj(d,c&65535):(a.Fa[b++].Eg(d,c&255),a.Fa[b&a.De].Eg(0,c>>8&255))} -function rb(a){for(var b=0,c=[],d=0;d>2);for(d=0;d>2]>>>((a&3)<<3)&255},$o:function(a){var b=a>>2;a=(a&3)<<3;var c=this.wa[b]>>>a;return 24>a?c&65535:c&255|(this.wa[b+1]&255)<<8},hp:function(a,b){var c=a>>2,d=(a&3)<< -3;this.wa[c]=this.wa[c]&~(255<>2,d=(a&3)<<3;24>d?this.wa[c]=this.wa[c]&~(65535<>8);this.lb=!0},Xo:function(a){Eb(this.da,this.Zd+a);return this.xg(a)},Zo:function(a){Eb(this.da,this.Zd+a)||Eb(this.da,this.Zd+a+1);return this.Jj(a)},gp:function(a,b){Fb(this.da,this.Zd+a);this.Eg(a,b)},ip:function(a,b){Fb(this.da,this.Zd+a)||Fb(this.da,this.Zd+a+1);this.Sj(a,b)},save:function(){return this.ia? -null:this.wa},restore:function(a){return this.ia?null==a:a&&this.nm==a.length<<2?(this.wa=a,this.lb=!0):!1},Ve:function(a,b){a||(a=[]);void 0===b&&(b=!0);Gb(this,a,b);Hb(this,a,b)},Yd:function(a,b){b?0===this.kk++&&Hb(this,Ib):0===this.jk++&&Gb(this,Ib)}};function Jb(a,b){b?0===--a.kk&&(a.Dc=a.lh?a.zf:a.Eg,a.em=a.lh?a.zf:a.Sj):0===--a.jk&&(a.sc=a.xg,a.Sl=a.Jj)}function hb(a,b,c,d,e){a.T=b;a.da=c;a.Zd=d;a.jk=a.kk=0;a.da&&Kb(a.da,d,e)} -function Hb(a,b,c){a.Dc=b[2]&&!a.lh?b[2]:a.zf;a.em=b[3]&&!a.lh?b[3]:a.zf;c&&(a.Eg=b[2]?b[2]:a.zf,a.Sj=b[3]?b[3]:a.zf)}function Gb(a,b,c){a.sc=b[0]?b[0]:a.Ih;a.Sl=b[1]?b[1]:a.Ih;c&&(a.xg=b[0]?b[0]:a.Ih,a.Jj=b[1]?b[1]:a.Ih)}var Cb=[ib.prototype.Yo,ib.prototype.$o,ib.prototype.hp,ib.prototype.jp],Ib=[ib.prototype.Xo,ib.prototype.Zo,ib.prototype.gp,ib.prototype.ip]; -function Lb(a,b){y.call(this,"CPU",a,Lb);var c=a.cycles||b,d=a.multiplier||1;this.ca={};this.ca.Jd=c;this.ca.Id=d;this.ca.vh=Math.round(this.ca.Jd/1E4)/100;this.ca.Le=this.ca.vh*this.ca.Id;this.qa.Lb=!1;this.qa.Mb=!1;this.qa.ri=a.autoStart;c=Na.autostart;void 0!==c&&(this.qa.ri="true"==c?!0:"false"==c?!1:null);this.qa.ff=!1;this.ca.fg=this.ca.pf=0;this.ca.hg=a.csStart;this.ca.of=a.csInterval;this.ca.qf=a.csStop;var e=this;this.Yn=function(){e.Se()};this.Ta()}Ua(y,Lb);k=Lb.prototype; -k.pc=function(a,b,c,d){this.ra=b;this.da=d;this.Ka=a;var e=eb(a,"Video");e&&(this.mi=function(){Mb(e)},this.Pd=function(){e.Pd()});this.oa=eb(a,"ChipSet");this.Ta()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Yb=function(a,b){if(!b){if(a&&this.restore){Nb(this);if(!this.restore(a))return!1;Ob(this)}else this.reset();this.da?this.da.En():this.fa("No debugger detected")}this.qa.Lb=!0;!Pb(this)&&this.da&&Qb(this.da);Sb(this);return!0}; -k.Xb=function(a){this.qa.Lb=!1;return a&&this.save?this.save():!0};function Pb(a){return!0===a.qa.ri||null===a.qa.ri&&!a.da&&void 0===a.za.run?(a.Se(),!0):!1}k.Pd=function(){};k.zk=function(){return 0};function Ob(a){void 0===a.ca.hg&&(a.ca.hg=0);void 0===a.ca.of&&(a.ca.of=-1);void 0===a.ca.qf&&(a.ca.qf=-1);a.qa.ff=0<=a.ca.hg&&0=a.ca.pf&&(a.ca.pf+=a.ca.of,c=!0);0<=a.ca.qf&&a.ca.qf<=E(a)&&(a.ca.of=a.ca.qf=-1,Ob(a),a.xb(),c=!0);c&&a.fa(E(a)+" cycles: checksum="+p(a.ca.fg))}}function F(a,b,c,d){void 0!==a.za[b]&&(void 0===d&&(d=4),void 0===c&&(cb(a,"Register "+b+" is invalid"),a.xb()),c=p(c,d),a.za[b].innerHTML!=c&&(a.za[b].innerHTML=c))}k.bh=function(){};k.mi=function(){}; -k.Ab=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.za[c]=d;d.onclick=function(){e.qa.Mb?e.xb(!0):e.Se(!0)};a=!0;break;case "reset":this.za[c]=d;d.onclick=function(){e.Ka&&Ub(e.Ka)};a=!0;break;case "speed":this.za[c]=d;a=!0;break;case "setSpeed":this.za[c]=d,d.onclick=function(){Vb(e,e.ca.Id<<1,!0)},d.innerHTML=this.ca.Le.toFixed(2)+"Mhz",a=!0}return a};function Wb(a,b,c){a.Pe+=b;c&&(a.Pc=a.A=0)} -function Xb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1a.ca.vh&&(c=Math.round(c/a.ca.Id));return c}function Nb(a){a.ca.nd=0;a.yh=1;a.Pe=a.pe=a.Pc=a.A=0;Ob(a);Vb(a,1)} -function Vb(a,b,c){void 0!==b&&(0.8>a.ca.nd/a.ca.Le&&(b=1),a.ca.Id=b,b=a.ca.vh*a.ca.Id,a.ca.Le!=b&&(a.ca.Le=b,b=a.ca.Le.toFixed(2)+"Mhz",a.za.setSpeed&&(a.za.setSpeed.innerHTML=b),a.fa("target speed: "+b)),c&&a.Pd());Wb(a,a.pe);a.pe=0;a.ca.nf=oa();a.ca.Me=0;Xb(a)} -k.Se=function(a){if($a(this,!0)){this.qa.Mb||(Vb(this),this.Ka&&this.Ka.start(this.ca.nf,E(this)),this.qa.Mb=!0,this.oa&&Yb(this.oa),this.za.run&&(this.za.run.innerHTML="Halt"),a&&this.Pd());this.ca.Oi>=this.ca.Jd&&Xb(this,!0);this.ca.kg=0;this.ca.wh=oa();this.ca.Me&&(a=this.ca.wh-this.ca.Me,a>this.ca.Hk&&(this.ca.nf+=a,this.ca.nf>this.ca.wh&&(this.ca.nf=this.ca.wh)));try{do{this.yf(this.qa.ff?1:Math.round(this.ca.Rn/this.yh));var b=this.Pc-this.A;this.pe+=b;this.ca.kg+=b;Wb(this,0,!0);Tb(this,b); -this.ca.jg-=b;0>=this.ca.jg&&(this.ca.jg+=this.ca.Lk,this.mi());this.ca.ig-=b;0>=this.ca.ig&&(this.ca.ig+=this.ca.Kk,this.bh());this.ca.rf-=b;if(0>=this.ca.rf){this.ca.rf+=this.ca.Ni;break}}while(this.qa.Mb)}catch(c){this.xb();Sb(this);this.Ka&&this.Ka.stop(oa(),E(this));$a(this,!1);cb(this,c.message);return}b=setTimeout;a=this.Yn;this.ca.Me=oa();var d=this.ca.Hk;this.ca.kg&&(d=Math.round(d*this.ca.kg/this.ca.Ni));var d=d-(this.ca.Me-this.ca.wh),e=this.ca.Me-this.ca.nf;e&&(this.ca.nd=Math.round(this.pe/ -(10*e))/100,864E5<=e&&(this.Pe=0,this.oa&&Zb(this.oa,!0),Vb(this)));if(0>d||this.ca.nd=e?(this.ta=a,this.Xa=b,this.Oc=c,this.Oa=d&65280,this.type=d&7936,bc(this)):b=-1;return b}return-1}function ec(a){return this.Xa+a}function fc(a){return this.Xa+a}function gc(a,b,c){return a+b<=this.Oc?this.Xa+a:hc.call(this,0,0,c)} -function hc(a,b,c){c||ic.call(this.T,13,0);return-1}function jc(a,b,c){return a+b<=this.Oc?this.Xa+a:kc.call(this,0,0,c)}function kc(a,b,c){c||ic.call(this.T,13,0);return-1}function nc(a,b,c){var d=a.T.ua(c+2),e=a.T.ua(c+0)|(d&255)<<16;c=a.T.ua(c+4);a.ta=b;a.Xa=e;a.Oc=c;a.Oa=d&65280;bc(a)}ac.prototype.save=function(){return[this.ta,this.Xa,this.Oc,this.Oa,this.rk,this.Bg,this.Kc,this.Ac]}; -ac.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.ta=a[0],this.Xa=a[1],this.Oc=a[2],this.Oa=a[3],this.rk=a[4],this.Bg=a[5],this.Kc=a[6],this.Ac=a[7])};function bc(a,b){void 0===b&&(b=!!(a.T.Cc&1));b?(a.load=dc,a.jd=gc,a.gc=jc,a.Oa&4096&&(6144==(a.Oa&6656)&&(a.gc=hc),a.Oa&2048||!(a.Oa&512))&&(a.gc=kc),a.Kc=a.ta&3,a.Ac=(a.Oa&24576)>>13):(a.load=cc,a.jd=ec,a.gc=fc,a.Kc=a.Ac=0)} -function oc(a){this.Ia=a.model||8088;var b=0;switch(this.Ia){default:case 8088:b=4772727;break;case 80286:b=6E6}Lb.call(this,a,b);this.Xj=61442;this.Hg=4;this.sf=255;this.B=80286<=this.Ia?qc:rc;this.Va=sc.slice();80186<=this.Ia&&(this.sf=31,this.Va[15]=tc,this.Va[96]=uc,this.Va[97]=vc,this.Va[98]=wc,this.Va[99]=tc,this.Va[100]=tc,this.Va[101]=tc,this.Va[102]=tc,this.Va[103]=tc,this.Va[104]=xc,this.Va[105]=yc,this.Va[106]=zc,this.Va[107]=Ac,this.Va[108]=Bc,this.Va[109]=Cc,this.Va[110]=Dc,this.Va[111]= -Ec,this.Va[192]=Fc,this.Va[193]=Gc,this.Va[200]=Hc,this.Va[201]=Ic,this.Va[241]=Jc,Lc[7]=Mc,Oc[7]=Mc,80286<=this.Ia&&(this.Xj=2,this.Hg=0,this.Va[15]=Pc,this.Va[99]=Qc,this.Va[84]=Rc));this.Jg=[];this.Kg=[];this.Pc=this.Zg=0;this.qa.ih=this.qa.sk=!1;this.Fa=[];this.ze=this.rb=this.gb=this.De=0;this.U=this.Cm;this.V=this.Dm;this.O=this.Kn;this.P=this.Ln;this.R=this.ep;this.S=this.fp;Sc(this)}Ua(Lb,oc); -var rc={Dj:4,ba:5,Aa:6,ja:7,ka:8,Q:9,W:11,X:12,Ne:4,Nk:60,Ok:83,Ub:3,sb:9,hc:16,Ch:1,Sk:19,Uk:28,Wk:16,Vk:21,Tk:37,Qk:2,Xi:9,Rk:5,Pk:33,Zi:10,Yi:8,qg:3,pg:15,jl:51,kl:1,ll:2,ml:4,il:32,$i:15,ol:15,Vb:16,Wb:4,ql:11,pl:18,nl:24,Eb:4,rl:2,aj:16,sl:17,fj:18,tl:19,ej:5,gj:6,yl:2,xl:8,vl:9,wl:10,ul:10,hj:10,ij:10,Yk:80,$k:144,Xk:86,Zk:154,bl:101,dl:165,al:107,cl:171,Al:70,Cl:113,zl:76,Bl:124,fl:80,hl:128,el:86,gl:134,sg:3,rg:16,nj:10,mj:8,Dl:51,ic:8,El:17,Fl:36,qc:11,Gl:16,tg:10,oe:2,Ui:18,Vi:7,Wi:15,bj:12, -cj:7,dj:11,jj:18,kj:7,lj:15,oj:15,pj:7,qj:13,uj:11,vj:7,wj:8,Hl:8,Kl:12,Il:18,Jl:17,Ll:15,sj:8,rj:20,tj:2,zj:3,ug:9,yj:5,xj:11,Bj:4,Aj:17,Ml:11},qc={Dj:0,ba:0,Aa:0,ja:0,ka:0,Q:0,W:1,X:1,Ne:3,Nk:14,Ok:16,Ub:2,sb:7,hc:7,Ch:0,Sk:7,Uk:13,Wk:7,Vk:11,Tk:16,Qk:3,Xi:6,Rk:2,Pk:13,Zi:5,Yi:5,qg:2,pg:7,jl:23,kl:0,ll:1,ml:3,il:17,$i:7,ol:11,Vb:7,Wb:3,ql:7,pl:11,nl:15,Eb:2,rl:3,aj:7,sl:8,fj:8,tl:8,ej:4,gj:4,yl:2,xl:3,vl:5,wl:2,ul:3,hj:5,ij:3,Yk:14,$k:22,Xk:17,Zk:25,bl:17,dl:25,al:20,cl:28,Al:13,Cl:21,zl:16,Bl:24, -fl:13,hl:21,el:16,gl:24,sg:2,rg:7,nj:5,mj:5,Dl:19,ic:5,El:5,Fl:17,qc:3,Gl:5,tg:3,oe:0,Ui:8,Vi:5,Wi:9,bj:5,cj:5,dj:4,jj:5,kj:5,lj:4,oj:7,pj:5,qj:8,uj:3,vj:4,wj:3,Hl:11,Kl:11,Il:15,Jl:15,Ll:7,sj:5,rj:8,tj:0,zj:2,ug:6,yj:3,xj:6,Bj:3,Aj:5,Ml:5};k=oc.prototype;k.Gi=function(a,b,c,d,e){this.Fa=a;this.ze=b;this.rb=c;this.gb=d;this.De=e};k.reset=function(){this.qa.Mb&&this.xb();Sc(this);Nb(this);this.qa.Zc=!1}; -function Sc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Cc=65520;a.Fc=0;a.$d=1023;a.Lc={Ej:0,ta:0,Oa:0,uh:-1};a.me=0;a.xa=new ac(a,"CS");a.zb=new ac(a,"DS");a.tb=new ac(a,"SS");a.Za=new ac(a,"ES");a.bm=new ac(a,"ZERO");Tc(a,0,65535);80286<=a.Ia&&(a.yc=0,a.ye=65535,a.bd=new ac(a,"LDT",!0),a.Ue=new ac(a,"TSS",!0),a.Nb=new ac(a,"VER",!0),Tc(a,65520,61440),a.xa.Xa=16711680);Uc(a,0);Vc(a);a.mb=0;a.Fb=a.yg=-1;a.Sg=0;a.la=a.Ma=-1;a.D=a.zb;a.N=a.tb;a.aa=a.Ba=0} -k.zk=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.xa.ta+this.zb.ta+this.tb.ta+this.Za.ta+Wc(this)|0};function Xc(a,b,c,d){void 0!==d&&(void 0===a.Jg[b]&&(a.Jg[b]=[]),a.Jg[b].push([c,d]))}function Yc(a,b){var c=a.Jg[b];if(void 0!==c)for(var d=0;d>1?128:0}function td(a){return(a.ma^a.pa^a.ma>>1)&a.ga>>1?2048:0}function ud(a){a.Z&=~a.ga}function vd(a){a.pa=a.ma&16|a.pa&-17}function wd(a){a.Z|=a.ga-1}function xd(a){sd(a)&&(a.ma^=a.ga>>1|a.ga>>2,a.pa^=32896)}function yd(a){a.ma&=~a.ga;a.pa=a.ma&32896|a.pa&-32897}function zd(a){a.Z|=a.ga}function Ad(a){a.pa=~(a.ma&16)&16|a.pa&-17}function Bd(a){a.Z&=~(a.ga-1)}function Cd(a){sd(a)||(a.ma^=a.ga>>1|a.ga>>2,a.pa^=32896)} -function Dd(a){a.ma|=a.ga;a.pa=a.ma&32896|a.pa&-32897}function Wc(a){return a.Ca&-2262|od(a)|pd(a)|qd(a)|rd(a)|sd(a)|td(a)}function Uc(a,b){a.ga=256;a.Z=a.ma=a.pa=0;b&1&&zd(a);b&4||(a.ma|=1);b&16&&(a.pa|=16);b&64||wd(a);b&128&&Cd(a);b&2048&&Dd(a);a.xa.Kc?b=b&-12289|a.Ca&12288:(a.me=(b&12288)>>12,!a.me||a.Cc&1||(a.me=0));a.xa.Kc>a.me&&(b=b&-513|a.Ca&512);a.Ca=a.Ca&-1793|b&1792|a.Xj;a.Ca&256&&(a.mb|=2,a.aa|=4)} -k.Ab=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.za[c]=d;e=!0;break;default:e=Lb.prototype.Ab.call(this,a,b,c,d)}return e};k.wb=function(a){return this.Fa[(a&this.ze)>>this.rb].sc(a&this.gb)}; -k.ua=function(a){var b=a&this.gb;a=(a&this.ze)>>this.rb;this.A-=this.B.Dj;return b!=this.gb?this.Fa[a].Sl(b):this.Fa[a++].sc(b)|this.Fa[a&this.De].sc(0)<<8};k.Od=function(a,b){this.Fa[(a&this.ze)>>this.rb].Dc(a&this.gb,b&255)};k.cd=function(a,b){var c=a&this.gb,d=(a&this.ze)>>this.rb;this.A-=this.B.Dj;c!=this.gb?this.Fa[d].em(c,b&65535):(this.Fa[d++].Dc(c,b&255),this.Fa[d&this.De].Dc(0,b>>8&255))};k.Cm=function(a,b){this.Dg=a;this.la=a.jd(this.vg=b,0);return this.aa&1?0:this.wb(this.la)}; -k.Dm=function(a,b){this.Dg=a;this.la=a.jd(this.vg=b,1);return this.aa&1?0:this.ua(this.la)};k.Kn=function(a,b){this.Dg=a;this.Ma=this.la=a.jd(this.vg=b,0);return this.aa&1?0:this.wb(this.la)};k.Ln=function(a,b){this.Dg=a;this.Ma=this.la=a.jd(this.vg=b,1);return this.aa&1?0:this.ua(this.la)};k.ep=function(a){this.aa&2||this.Od(this.Dg.gc(this.vg,1),a)};k.fp=function(a){this.aa&2||this.cd(this.Dg.gc(this.vg,2),a)};k.ha=function(){var a=this.wb(this.Ga);this.Ga=this.xa.Xa+(this.va=this.va+1&65535);return a}; -k.M=function(){var a=this.wb(this.Ga)<<24>>24;this.Ga=this.xa.Xa+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=this.ua(this.Ga);this.Ga=this.xa.Xa+(this.va=this.va+2&65535);return a};k.La=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.ua(this.tb.jd(a,1))};function H(a,b){var c=a.Y=a.Y-2&65535;a.cd(a.tb.gc(c,1),b)} -k.bh=function(){F(this,"AX",this.H);F(this,"BX",this.C);F(this,"CX",this.J);F(this,"DX",this.K);F(this,"SP",this.Y);F(this,"BP",this.I);F(this,"SI",this.G);F(this,"DI",this.F);F(this,"CS",this.xa.ta);F(this,"DS",this.zb.ta);F(this,"SS",this.tb.ta);F(this,"ES",this.Za.ta);F(this,"IP",this.va);var a=Wc(this);F(this,"PS",a);F(this,"C",a&1?1:0,1);F(this,"P",a&4?1:0,1);F(this,"A",a&16?1:0,1);F(this,"Z",a&64?1:0,1);F(this,"S",a&128?1:0,1);F(this,"T",a&256?1:0,1);F(this,"I",a&512?1:0,1);F(this,"D",a&1024? -1:0,1);F(this,"O",a&2048?1:0,1);this.za.speed&&(this.za.speed.innerHTML=this.qa.Mb&&this.ca.nd?this.ca.nd.toFixed(2)+"Mhz":"Stopped")}; -k.yf=function(a){this.qa.ih=!0;var b=this.qa.sk=a&&this.da&&Ed(this.da);this.Pc=this.A=a;this.oa&&Zb(this.oa);a||!this.da||C(this.da,Fd)||(this.aa|=4);do{var c=this.aa&240;if(c)this.Ba|=c;else if(this.Fh=this.Ga,this.la=this.Ma=-1,this.D=this.zb,this.N=this.tb,this.Ba=this.aa&256,this.mb){a:{if(!(this.aa&4))if(this.mb&1&&this.Ca&512){if(c=Gd(this.oa),-1<=c&&(this.mb&=-2,0<=c)){this.mb&=-5;Hd.call(this,c,null,11);c=!0;break a}}else if(this.mb&2){this.mb&=-3;Hd.call(this,1,null,11);c=!0;break a}if(c= -this.mb&8){for(var c=this.oa,d=!1,e=0;ethis.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=a+b)&255}function Md(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=this.pa=a|b)&255} -function Nd(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return this.Z&255}function Qd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return this.Z&255}function Rd(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=this.pa=a&b)&255} -function Sd(a,b){this.pa=a^b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=a-b)&255}function Td(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=this.pa=a^b)&255}function Ud(a,b){this.pa=a^b;this.ga=256;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.Xi:this.B.sb;this.aa|=2;return a} -function Vd(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=a+b)&65535}function Wd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=this.pa=a|b)&65535}function Xd(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return this.Z&65535} -function Yd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return this.Z&65535}function Zd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=this.pa=a&b)&65535}function $d(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=a-b)&65535} -function ae(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.sb:this.B.hc;return(this.Z=this.ma=this.pa=a^b)&65535}function be(a,b){this.pa=a^b;this.ga=65536;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.Xi:this.B.sb;this.aa|=2;return a}function ce(a,b){this.Z=this.Z&this.ga-1|(a&b?this.ga:0);(a^a>>1)&b>>1?Dd(this):yd(this)}function de(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;ce.call(this,d,256)}return c} -function ee(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;ce.call(this,d,65536)}return c}function fe(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);ce.call(this,d,256)}return c}function ge(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);ce.call(this,d,65536)}return c} -function he(a,b){var c=a;if(b){var d;(d=(b&this.sf)%9)?(d=a<>9-d,c=d&255):d=a|(this.Z&this.ga?1:0)<<8;ce.call(this,d,256)}return c}function ie(a,b){var c=a;if(b){var d;(d=(b&this.sf)%17)?(d=a<>17-d,c=d&65535):d=a|(this.Z&this.ga?1:0)<<16;ce.call(this,d,65536)}return c}function je(a,b){var c=a;b&&(c=(b&this.sf)%9,c=a>>c|(this.Z&this.ga?1:0)<<8-c|a<<9-c,ce.call(this,c,256),c&=255);return c} -function ke(a,b){var c=a;b&&(c=(b&this.sf)%17,c=a>>c|(this.Z&this.ga?1:0)<<16-c|a<<17-c,ce.call(this,c,65536),c&=65535);return c}function le(a,b){var c=a;b&&(c=8>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.pa=a^this.Z;this.ga=256;a=this.Z}return a&255}function oe(a,b){if(b){var c=16>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.pa=a^this.Z;this.ga=65536;a=this.Z}return a&65535}function pe(a,b){if(b){8>24>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.pa=a^this.Z;this.ga=256;a=this.Z}return a&255} -function qe(a,b){if(b){16>16>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.pa=a^this.Z;this.ga=65536;a=this.Z}return a&65535}function re(){this.A-=0>this.la?2:this.B.Ll;return 1}function se(){var a=this.J&this.sf;this.A-=(0>this.la?this.B.sj:this.B.rj)+(a<this.la?this.B.sj:this.B.rj)+(a<this.Ma?this.B.ic:this.B.El;return b},ve,ve,ve,ve,ve,ve,ve],ze=[function(a,b){this.A-=0>this.Ma?this.B.wl:this.B.ul;return b},I,I,I,I,I,I,I],Ae=[de,fe,he,je,le,ne,I,pe],Be=[ee,ge,ie,ke,me,oe,I,qe],De=[function(a,b){b=this.ha();this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.la?this.B.yj:this.B.xj;this.aa|=2;return a},I,function(a){this.A-=0>this.la?this.B.sg:this.B.rg;return a^255},function(a,b){b=0;this.pa= -a^b;this.ga=256;this.A-=0>this.la?this.B.sg:this.B.rg;return(this.Z=this.ma=b-a)&255},function(a){this.H=this.Fb=(this.Z=(this.H&255)*a)&65535;this.pa=this.ma=this.Z;this.ga=256;this.H&65280?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.Al:this.B.zl;this.aa|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Fb=b&65535;this.Z=this.pa=this.ma=b;this.ga=256;127b?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.fl:this.B.el;this.aa|=2;return a}, -function(a){if(!a)return Ce.call(this),a;var b=this.H/a;if(255this.la?this.B.Yk:this.B.Xk;this.aa|=2;return a},function(a){if(!a)return Ce.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Ce.call(this),a;this.Fb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ma=this.pa=this.Z=b|256;this.ga=256;this.A-=0>this.la?this.B.bl:this.B.al;this.aa|=2;return a}], -Ee=[function(a,b){b=this.L();this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.la?this.B.yj:this.B.xj;this.aa|=2;return a},I,function(a){this.A-=0>this.la?this.B.sg:this.B.rg;return a^65535},function(a,b){b=0;this.pa=a^b;this.ga=65536;this.A-=0>this.la?this.B.sg:this.B.rg;return(this.Z=this.ma=b-a)&65535},function(a){this.Fb=this.H=(this.Z=this.H*a)&65535;this.yg=this.K=this.Z>>16&65535;this.pa=this.ma=this.Z;this.ga=65536;this.K?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.Cl: -this.B.Bl;this.aa|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Fb=b&65535;this.K=this.yg=b>>16&65535;this.Z=this.pa=this.ma=b;this.ga=65536;32767b?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?this.B.hl:this.B.gl;this.aa|=2;return a},function(a,b){if(!a)return Ce.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Ce.call(this),a;this.Fb=this.H=c&65535;this.yg=this.K=b%a&65535;this.ma=this.pa=this.Z=c|65536;this.ga=65536;this.A-= -0>this.la?this.B.$k:this.B.Zk;this.aa|=2;return a},function(a,b){if(!a)return Ce.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Ce.call(this),a;this.Fb=this.H=d&65535;this.yg=this.K=b%c&65535;this.ma=this.pa=this.Z=d|65536;this.ga=65536;this.A-=0>this.la?this.B.dl:this.B.cl;this.aa|=2;return a}],Lc=[function(a){this.pa=a;a=(this.ma=a+1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.qg:this.B.pg;return a},function(a){this.pa= -a;a=(this.ma=a-1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.qg:this.B.pg;return a},I,I,I,I,I,I],Oc=[function(a){this.pa=a;a=(this.ma=a+1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.qg:this.B.pg;return a},function(a){this.pa=a;a=(this.ma=a-1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.qg:this.B.pg;return a},function(a){H(this,this.va);G(this,a);this.A-=0>this.la?this.B.Wk:this.B.Vk;this.aa|=2;return a}, -function(a){if(0>this.la)return I.call(this,a);H(this,this.xa.ta);H(this,this.va);Tc(this,a,this.ua(this.la+2));this.A-=this.B.Tk;this.aa|=2;return a},function(a){G(this,a);this.A-=0>this.la?this.B.ql:this.B.pl;this.aa|=2;return a},function(a){if(0>this.la)return I.call(this,a);Tc(this,a,this.ua(this.la+2));this.A-=this.B.nl;this.aa|=2;return a},function(a){var b=a;this.aa&512&&(a=a-2&65535,80286>this.Ia&&(b=a));H(this,b);this.A-=0>this.la?this.B.qc:this.B.Gl;this.aa|=2;return a},ve],Fe=[de,fe,he, -je,le,ne,I,pe],Ge=[ee,ge,ie,ke,me,oe,I,qe];function He(a,b){this.A-=0>this.Ma?0>this.la?this.B.yl:this.B.xl:this.B.vl;return b}function Ie(){return He.call(this,0,this.Fb)}function Je(a,b){this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.zj:this.B.ug:this.B.ug;this.aa|=2;return a}function Ke(a,b){this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.zj:this.B.ug:this.B.ug;this.aa|=2;return a} -function Le(a,b){var c=(b<<16>>16)*(this.ha()<<24>>24);this.Z=this.pa=this.ma=c;this.ga=256;32767c?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?21:24;return c&65535}function Me(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.Z=this.pa=this.ma=c;this.ga=65536;32767c?(zd(this),Dd(this)):(ud(this),yd(this));this.A-=0>this.la?21:24;return c&65535}function Ne(a){return a}function Oe(a){if(0>this.la)return K.call(this),a;this.A-=this.B.rl;return this.la} -function Pe(a,b){if(0>this.la)return K.call(this),a;kd(this,this.ua(this.la+2));this.A-=this.B.aj;return b}function Qe(a,b){if(0>this.la)return K.call(this),a;md(this,this.ua(this.la+2));this.A-=this.B.aj;return b}function Re(a){if(0>this.la)return tc.call(this),a;var b=a<<16>>16,c=this.ua(this.la)<<16>>16,d=this.ua(this.la+2)<<16>>16;this.A-=this.B.Pk;if(bd)G(this,this.Fh-this.xa.Xa),Hd.call(this,5,null,0);this.aa|=2;return a} -function Se(a,b){this.A-=10+(0>this.la?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Bd(this),a;wd(this);return a}function Te(a,b){this.A-=14+(0>this.la?0:2);if(0<=this.Nb.load(b,!0)&&this.Nb.Ac>=this.xa.Kc&&this.Nb.Ac>=(b&3))return Bd(this),this.Nb.Oa&65280;wd(this);return a}function Xe(a,b){this.A-=14+(0>this.la?0:2);if(b&65528&&0<=this.Nb.load(b,!0)&&(7168==(this.Nb.Oa&7168)||this.Nb.Ac>=this.xa.Kc)&&this.Nb.Ac>=(b&3))return Bd(this),this.Nb.Oc;wd(this);return a} -function Ye(a,b){if(0>this.la){switch(this.Sg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Bj}else this.Ma=this.la,this.R(a),this.A-=this.B.Aj;return b} -function Ze(a,b){if(0>this.la){switch(this.Sg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Bj}else this.Ma=this.la,this.S(a),this.A-=this.B.Aj;return b}function Hd(a,b,c){id(this,a)&&(H(this,Wc(this)),this.Ca&=this.Lc.uh,H(this,this.xa.ta),H(this,this.va),null!=b&&H(this,b),Tc(this,this.Lc.Ej,this.Lc.ta),this.A-=this.B.jl+c)} -function $e(a){a|=this.Cc&1;this.Cc=this.Cc&65520|a&-65521;this.Cc&1&&Vc(this,!0)}function Ce(){G(this,this.Fh-this.xa.Xa);Hd.call(this,0,null,2)}function ic(a,b,c){this.da&&(C(this.da,Kd)&&this.da.message("Fault 0x"+q(a)+(null!=b?" (0x"+u(b)+")":"")+" on opcode 0x"+q(nb(this.ra,this.Ga))+" at "+da(this.va,this.xa.ta)),c&&this.xb());80186<=this.Ia&&(G(this,this.Fh-this.xa.Xa),Hd.call(this,a,b,0))}function tc(){ic.call(this,6);this.xb()} -function K(){G(this,this.Fh-this.xa.Xa);cb(this,"Undefined opcode 0x"+q(nb(this.ra,this.Ga))+" at "+da(this.va,this.xa.ta));this.xb()}function af(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function bf(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function cf(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function df(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function ef(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a} -function ff(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a}function gf(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function hf(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}function jf(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function kf(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function lf(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a} -function mf(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a}function nf(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function of(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function pf(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function qf(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function rf(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a} -function sf(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a}function tf(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}function uf(a){a=a.call(this,this.K&255,this.C&255);this.K=this.K&-256|a}function vf(a){a=a.call(this,this.K&255,this.H>>8);this.K=this.K&-256|a}function wf(a){a=a.call(this,this.K&255,this.J>>8);this.K=this.K&-256|a}function xf(a){a=a.call(this,this.K&255,this.K>>8);this.K=this.K&-256|a} -function yf(a){a=a.call(this,this.K&255,this.C>>8);this.K=this.K&-256|a}function zf(a){a=a.call(this,this.C&255,this.H&255);this.C=this.C&-256|a}function Af(a){a=a.call(this,this.C&255,this.J&255);this.C=this.C&-256|a}function Bf(a){a=a.call(this,this.C&255,this.K&255);this.C=this.C&-256|a}function Cf(a){a=a.call(this,this.C&255,this.C&255);this.C=this.C&-256|a}function Df(a){a=a.call(this,this.C&255,this.H>>8);this.C=this.C&-256|a} -function Ef(a){a=a.call(this,this.C&255,this.J>>8);this.C=this.C&-256|a}function Ff(a){a=a.call(this,this.C&255,this.K>>8);this.C=this.C&-256|a}function Gf(a){a=a.call(this,this.C&255,this.C>>8);this.C=this.C&-256|a}function Hf(a){a=a.call(this,this.H>>8,this.H&255);this.H=this.H&255|a<<8}function If(a){a=a.call(this,this.H>>8,this.J&255);this.H=this.H&255|a<<8}function Jf(a){a=a.call(this,this.H>>8,this.K&255);this.H=this.H&255|a<<8} -function Kf(a){a=a.call(this,this.H>>8,this.C&255);this.H=this.H&255|a<<8}function Lf(a){a=a.call(this,this.H>>8,this.H>>8);this.H=this.H&255|a<<8}function Mf(a){a=a.call(this,this.H>>8,this.J>>8);this.H=this.H&255|a<<8}function Nf(a){a=a.call(this,this.H>>8,this.K>>8);this.H=this.H&255|a<<8}function Of(a){a=a.call(this,this.H>>8,this.C>>8);this.H=this.H&255|a<<8}function Pf(a){a=a.call(this,this.J>>8,this.H&255);this.J=this.J&255|a<<8} -function Qf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function Rf(a){a=a.call(this,this.J>>8,this.K&255);this.J=this.J&255|a<<8}function Sf(a){a=a.call(this,this.J>>8,this.C&255);this.J=this.J&255|a<<8}function Tf(a){a=a.call(this,this.J>>8,this.H>>8);this.J=this.J&255|a<<8}function Uf(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function Vf(a){a=a.call(this,this.J>>8,this.K>>8);this.J=this.J&255|a<<8} -function Wf(a){a=a.call(this,this.J>>8,this.C>>8);this.J=this.J&255|a<<8}function Xf(a){a=a.call(this,this.K>>8,this.H&255);this.K=this.K&255|a<<8}function Yf(a){a=a.call(this,this.K>>8,this.J&255);this.K=this.K&255|a<<8}function Zf(a){a=a.call(this,this.K>>8,this.K&255);this.K=this.K&255|a<<8}function $f(a){a=a.call(this,this.K>>8,this.C&255);this.K=this.K&255|a<<8}function ag(a){a=a.call(this,this.K>>8,this.H>>8);this.K=this.K&255|a<<8} -function bg(a){a=a.call(this,this.K>>8,this.J>>8);this.K=this.K&255|a<<8}function cg(a){a=a.call(this,this.K>>8,this.K>>8);this.K=this.K&255|a<<8}function dg(a){a=a.call(this,this.K>>8,this.C>>8);this.K=this.K&255|a<<8}function eg(a){a=a.call(this,this.C>>8,this.H&255);this.C=this.C&255|a<<8}function fg(a){a=a.call(this,this.C>>8,this.J&255);this.C=this.C&255|a<<8}function gg(a){a=a.call(this,this.C>>8,this.K&255);this.C=this.C&255|a<<8} -function hg(a){a=a.call(this,this.C>>8,this.C&255);this.C=this.C&255|a<<8}function ig(a){a=a.call(this,this.C>>8,this.H>>8);this.C=this.C&255|a<<8}function jg(a){a=a.call(this,this.C>>8,this.J>>8);this.C=this.C&255|a<<8}function kg(a){a=a.call(this,this.C>>8,this.K>>8);this.C=this.C&255|a<<8}function lg(a){a=a.call(this,this.C>>8,this.C>>8);this.C=this.C&255|a<<8}function mg(a){this.H=a.call(this,this.H,this.H)}function ng(a){this.H=a.call(this,this.H,this.J)} -function og(a){this.H=a.call(this,this.H,this.K)}function pg(a){this.H=a.call(this,this.H,this.C)}function qg(a){this.H=a.call(this,this.H,this.Y)}function rg(a){this.H=a.call(this,this.H,this.I)}function sg(a){this.H=a.call(this,this.H,this.G)}function tg(a){this.H=a.call(this,this.H,this.F)}function ug(a){this.J=a.call(this,this.J,this.H)}function vg(a){this.J=a.call(this,this.J,this.J)}function wg(a){this.J=a.call(this,this.J,this.K)}function xg(a){this.J=a.call(this,this.J,this.C)} -function yg(a){this.J=a.call(this,this.J,this.Y)}function zg(a){this.J=a.call(this,this.J,this.I)}function Ag(a){this.J=a.call(this,this.J,this.G)}function Bg(a){this.J=a.call(this,this.J,this.F)}function Cg(a){this.K=a.call(this,this.K,this.H)}function Dg(a){this.K=a.call(this,this.K,this.J)}function Eg(a){this.K=a.call(this,this.K,this.K)}function Fg(a){this.K=a.call(this,this.K,this.C)}function Gg(a){this.K=a.call(this,this.K,this.Y)}function Hg(a){this.K=a.call(this,this.K,this.I)} -function Ig(a){this.K=a.call(this,this.K,this.G)}function Jg(a){this.K=a.call(this,this.K,this.F)}function Kg(a){this.C=a.call(this,this.C,this.H)}function Lg(a){this.C=a.call(this,this.C,this.J)}function Mg(a){this.C=a.call(this,this.C,this.K)}function Ng(a){this.C=a.call(this,this.C,this.C)}function Og(a){this.C=a.call(this,this.C,this.Y)}function Pg(a){this.C=a.call(this,this.C,this.I)}function Qg(a){this.C=a.call(this,this.C,this.G)}function Rg(a){this.C=a.call(this,this.C,this.F)} -function Sg(a){this.Y=a.call(this,this.Y,this.H)}function Tg(a){this.Y=a.call(this,this.Y,this.J)}function Ug(a){this.Y=a.call(this,this.Y,this.K)}function Vg(a){this.Y=a.call(this,this.Y,this.C)}function Wg(a){this.Y=a.call(this,this.Y,this.Y)}function Xg(a){this.Y=a.call(this,this.Y,this.I)}function Yg(a){this.Y=a.call(this,this.Y,this.G)}function Zg(a){this.Y=a.call(this,this.Y,this.F)}function $g(a){this.I=a.call(this,this.I,this.H)}function ah(a){this.I=a.call(this,this.I,this.J)} -function bh(a){this.I=a.call(this,this.I,this.K)}function ch(a){this.I=a.call(this,this.I,this.C)}function dh(a){this.I=a.call(this,this.I,this.Y)}function eh(a){this.I=a.call(this,this.I,this.I)}function fh(a){this.I=a.call(this,this.I,this.G)}function gh(a){this.I=a.call(this,this.I,this.F)}function hh(a){this.G=a.call(this,this.G,this.H)}function ih(a){this.G=a.call(this,this.G,this.J)}function jh(a){this.G=a.call(this,this.G,this.K)}function kh(a){this.G=a.call(this,this.G,this.C)} -function lh(a){this.G=a.call(this,this.G,this.Y)}function mh(a){this.G=a.call(this,this.G,this.I)}function nh(a){this.G=a.call(this,this.G,this.G)}function oh(a){this.G=a.call(this,this.G,this.F)}function ph(a){this.F=a.call(this,this.F,this.H)}function qh(a){this.F=a.call(this,this.F,this.J)}function rh(a){this.F=a.call(this,this.F,this.K)}function sh(a){this.F=a.call(this,this.F,this.C)}function th(a){this.F=a.call(this,this.F,this.Y)}function uh(a){this.F=a.call(this,this.F,this.I)} -function vh(a){this.F=a.call(this,this.F,this.G)}function wh(a){this.F=a.call(this,this.F,this.F)} -var xh=[function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.G),this.H&255);this.R(a);this.A-=this.B.ba}, +function Ga(a){if(Da)try{for(var b=0;b=this.eg?12:14;this.fc=1<>2;this.gb=this.fc-1;this.Xg=(this.Jf+this.fc)/this.fc|0;this.De=this.Xg-1;this.td=[];this.ud=[];this.ag=this.bg=!1;this.Gi();this.Ta()}z(y,fb); +fb.prototype.Gi=function(){this.Fa=Array(this.Xg);for(var a=0;a>a.sb;0>this.sb;0>a.sb;0>a.sb].xg(b&a.gb)} +function nb(a,b){var c=b&a.gb,d=(b&a.ed)>>a.sb;return c!=a.gb?a.Fa[d].Ij(c):a.Fa[d++].xg(c)|a.Fa[d&a.De].xg(0)<<8}function ob(a,b,c){a.Fa[(b&a.ed)>>a.sb].Eg(b&a.gb,c&255)}function pb(a,b,c){var d=b&a.gb;b=(b&a.ed)>>a.sb;d!=a.gb?a.Fa[b].Rj(d,c&65535):(a.Fa[b++].Eg(d,c&255),a.Fa[b&a.De].Eg(0,c>>8&255))} +function qb(a){for(var b=0,c=[],d=0;d>2);for(d=0;d>2]>>>((a&3)<<3)&255},Yo:function(a){var b=a>>2;a=(a&3)<<3;var c=this.wa[b]>>>a;return 24>a?c&65535:c&255|(this.wa[b+1]&255)<<8},fp:function(a,b){var c=a>>2,d=(a&3)<< +3;this.wa[c]=this.wa[c]&~(255<>2,d=(a&3)<<3;24>d?this.wa[c]=this.wa[c]&~(65535<>8);this.lb=!0},Vo:function(a){Db(this.fa,this.Zd+a);return this.xg(a)},Xo:function(a){Db(this.fa,this.Zd+a)||Db(this.fa,this.Zd+a+1);return this.Ij(a)},ep:function(a,b){Eb(this.fa,this.Zd+a);this.Eg(a,b)},gp:function(a,b){Eb(this.fa,this.Zd+a)||Eb(this.fa,this.Zd+a+1);this.Rj(a,b)},save:function(){return this.ia? +null:this.wa},restore:function(a){return this.ia?null==a:a&&this.mm==a.length<<2?(this.wa=a,this.lb=!0):!1},Ve:function(a,b){a||(a=[]);void 0===b&&(b=!0);Fb(this,a,b);Gb(this,a,b)},Yd:function(a,b){b?0===this.jk++&&Gb(this,Hb):0===this.ik++&&Fb(this,Hb)}};function Ib(a,b){b?0===--a.jk&&(a.Dc=a.lh?a.zf:a.Eg,a.dm=a.lh?a.zf:a.Rj):0===--a.ik&&(a.sc=a.xg,a.Rl=a.Ij)}function gb(a,b,c,d,e){a.T=b;a.fa=c;a.Zd=d;a.ik=a.jk=0;a.fa&&Jb(a.fa,d,e)} +function Gb(a,b,c){a.Dc=b[2]&&!a.lh?b[2]:a.zf;a.dm=b[3]&&!a.lh?b[3]:a.zf;c&&(a.Eg=b[2]?b[2]:a.zf,a.Rj=b[3]?b[3]:a.zf)}function Fb(a,b,c){a.sc=b[0]?b[0]:a.Ih;a.Rl=b[1]?b[1]:a.Ih;c&&(a.xg=b[0]?b[0]:a.Ih,a.Ij=b[1]?b[1]:a.Ih)}var Bb=[hb.prototype.Wo,hb.prototype.Yo,hb.prototype.fp,hb.prototype.hp],Hb=[hb.prototype.Vo,hb.prototype.Xo,hb.prototype.ep,hb.prototype.gp]; +function Kb(a,b){y.call(this,"CPU",a,Kb);var c=a.cycles||b,d=a.multiplier||1;this.ca={};this.ca.Jd=c;this.ca.Id=d;this.ca.vh=Math.round(this.ca.Jd/1E4)/100;this.ca.Le=this.ca.vh*this.ca.Id;this.qa.Lb=!1;this.qa.Mb=!1;this.qa.ri=a.autoStart;c=Na.autostart;void 0!==c&&(this.qa.ri="true"==c?!0:"false"==c?!1:null);this.qa.ff=!1;this.ca.fg=this.ca.pf=0;this.ca.hg=a.csStart;this.ca.of=a.csInterval;this.ca.qf=a.csStop;var e=this;this.Wn=function(){e.Se()};this.Ta()}z(y,Kb);k=Kb.prototype; +k.pc=function(a,b,c,d){this.ra=b;this.fa=d;this.Ka=a;var e=db(a,"Video");e&&(this.mi=function(){Lb(e)},this.Pd=function(){e.Pd()});this.oa=db(a,"ChipSet");this.Ta()};k.reset=function(){};k.save=function(){return null};k.restore=function(){return!1};k.Yb=function(a,b){if(!b){if(a&&this.restore){Mb(this);if(!this.restore(a))return!1;Nb(this)}else this.reset();this.fa?this.fa.Dn():this.da("No debugger detected")}this.qa.Lb=!0;!Ob(this)&&this.fa&&Qb(this.fa);Rb(this);return!0}; +k.Xb=function(a){this.qa.Lb=!1;return a&&this.save?this.save():!0};function Ob(a){return!0===a.qa.ri||null===a.qa.ri&&!a.fa&&void 0===a.za.run?(a.Se(),!0):!1}k.Pd=function(){};k.yk=function(){return 0};function Nb(a){void 0===a.ca.hg&&(a.ca.hg=0);void 0===a.ca.of&&(a.ca.of=-1);void 0===a.ca.qf&&(a.ca.qf=-1);a.qa.ff=0<=a.ca.hg&&0=a.ca.pf&&(a.ca.pf+=a.ca.of,c=!0);0<=a.ca.qf&&a.ca.qf<=F(a)&&(a.ca.of=a.ca.qf=-1,Nb(a),a.xb(),c=!0);c&&a.da(F(a)+" cycles: checksum="+p(a.ca.fg))}}function G(a,b,c,d){void 0!==a.za[b]&&(void 0===d&&(d=4),void 0===c&&(bb(a,"Register "+b+" is invalid"),a.xb()),c=p(c,d),a.za[b].innerHTML!=c&&(a.za[b].innerHTML=c))}k.bh=function(){};k.mi=function(){}; +k.Ab=function(a,b,c,d){var e=this;a=!1;switch(c){case "run":this.za[c]=d;d.onclick=function(){e.qa.Mb?e.xb(!0):e.Se(!0)};a=!0;break;case "reset":this.za[c]=d;d.onclick=function(){e.Ka&&Tb(e.Ka)};a=!0;break;case "speed":this.za[c]=d;a=!0;break;case "setSpeed":this.za[c]=d,d.onclick=function(){Ub(e,e.ca.Id<<1,!0)},d.innerHTML=this.ca.Le.toFixed(2)+"Mhz",a=!0}return a};function Vb(a,b,c){a.Pe+=b;c&&(a.Pc=a.A=0)} +function Wb(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1a.ca.vh&&(c=Math.round(c/a.ca.Id));return c}function Mb(a){a.ca.nd=0;a.yh=1;a.Pe=a.pe=a.Pc=a.A=0;Nb(a);Ub(a,1)} +function Ub(a,b,c){void 0!==b&&(0.8>a.ca.nd/a.ca.Le&&(b=1),a.ca.Id=b,b=a.ca.vh*a.ca.Id,a.ca.Le!=b&&(a.ca.Le=b,b=a.ca.Le.toFixed(2)+"Mhz",a.za.setSpeed&&(a.za.setSpeed.innerHTML=b),a.da("target speed: "+b)),c&&a.Pd());Vb(a,a.pe);a.pe=0;a.ca.nf=oa();a.ca.Me=0;Wb(a)} +k.Se=function(a){if(Za(this,!0)){this.qa.Mb||(Ub(this),this.Ka&&this.Ka.start(this.ca.nf,F(this)),this.qa.Mb=!0,this.oa&&Xb(this.oa),this.za.run&&(this.za.run.innerHTML="Halt"),a&&this.Pd());this.ca.Ni>=this.ca.Jd&&Wb(this,!0);this.ca.kg=0;this.ca.wh=oa();this.ca.Me&&(a=this.ca.wh-this.ca.Me,a>this.ca.Gk&&(this.ca.nf+=a,this.ca.nf>this.ca.wh&&(this.ca.nf=this.ca.wh)));try{do{this.yf(this.qa.ff?1:Math.round(this.ca.Pn/this.yh));var b=this.Pc-this.A;this.pe+=b;this.ca.kg+=b;Vb(this,0,!0);Sb(this,b); +this.ca.jg-=b;0>=this.ca.jg&&(this.ca.jg+=this.ca.Kk,this.mi());this.ca.ig-=b;0>=this.ca.ig&&(this.ca.ig+=this.ca.Jk,this.bh());this.ca.rf-=b;if(0>=this.ca.rf){this.ca.rf+=this.ca.Mi;break}}while(this.qa.Mb)}catch(c){this.xb();Rb(this);this.Ka&&this.Ka.stop(oa(),F(this));Za(this,!1);bb(this,c.message);return}b=setTimeout;a=this.Wn;this.ca.Me=oa();var d=this.ca.Gk;this.ca.kg&&(d=Math.round(d*this.ca.kg/this.ca.Mi));var d=d-(this.ca.Me-this.ca.wh),e=this.ca.Me-this.ca.nf;e&&(this.ca.nd=Math.round(this.pe/ +(10*e))/100,864E5<=e&&(this.Pe=0,this.oa&&Yb(this.oa,!0),Ub(this)));if(0>d||this.ca.nd=e?(this.sa=a,this.Xa=b,this.Oc=c,this.Oa=d&65280,this.type=d&7936,ac(this)):b=-1;return b}return-1}function dc(a){return this.Xa+a}function ec(a){return this.Xa+a}function fc(a,b,c){return a+b<=this.Oc?this.Xa+a:gc.call(this,0,0,c)} +function gc(a,b,c){c||jc.call(this.T,13,0);return-1}function kc(a,b,c){return a+b<=this.Oc?this.Xa+a:mc.call(this,0,0,c)}function mc(a,b,c){c||jc.call(this.T,13,0);return-1}function nc(a,b,c){var d=a.T.ua(c+2),e=a.T.ua(c+0)|(d&255)<<16;c=a.T.ua(c+4);a.sa=b;a.Xa=e;a.Oc=c;a.Oa=d&65280;ac(a)}$b.prototype.save=function(){return[this.sa,this.Xa,this.Oc,this.Oa,this.qk,this.Bg,this.Kc,this.Ac]}; +$b.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.sa=a[0],this.Xa=a[1],this.Oc=a[2],this.Oa=a[3],this.qk=a[4],this.Bg=a[5],this.Kc=a[6],this.Ac=a[7])};function ac(a,b){void 0===b&&(b=!!(a.T.Cc&1));b?(a.load=cc,a.jd=fc,a.gc=kc,a.Oa&4096&&(6144==(a.Oa&6656)&&(a.gc=gc),a.Oa&2048||!(a.Oa&512))&&(a.gc=mc),a.Kc=a.sa&3,a.Ac=(a.Oa&24576)>>13):(a.load=bc,a.jd=dc,a.gc=ec,a.Kc=a.Ac=0)} +function oc(a){this.Ia=a.model||8088;var b=0;switch(this.Ia){default:case 8088:b=4772727;break;case 80286:b=6E6}Kb.call(this,a,b);this.Wj=61442;this.Hg=4;this.sf=255;this.B=80286<=this.Ia?pc:qc;this.Va=rc.slice();80186<=this.Ia&&(this.sf=31,this.Va[15]=sc,this.Va[96]=tc,this.Va[97]=uc,this.Va[98]=vc,this.Va[99]=sc,this.Va[100]=sc,this.Va[101]=sc,this.Va[102]=sc,this.Va[103]=sc,this.Va[104]=wc,this.Va[105]=xc,this.Va[106]=yc,this.Va[107]=zc,this.Va[108]=Ac,this.Va[109]=Bc,this.Va[110]=Cc,this.Va[111]= +Dc,this.Va[192]=Ec,this.Va[193]=Fc,this.Va[200]=Gc,this.Va[201]=Ic,this.Va[241]=Jc,Lc[7]=Mc,Nc[7]=Mc,80286<=this.Ia&&(this.Wj=2,this.Hg=0,this.Va[15]=Oc,this.Va[99]=Pc,this.Va[84]=Qc));this.Jg=[];this.Kg=[];this.Pc=this.Zg=0;this.qa.ih=this.qa.rk=!1;this.Fa=[];this.ze=this.sb=this.gb=this.De=0;this.U=this.Bm;this.V=this.Cm;this.O=this.In;this.P=this.Jn;this.R=this.cp;this.S=this.dp;Rc(this)}z(Kb,oc); +var qc={Cj:4,ba:5,Aa:6,ja:7,ka:8,Q:9,W:11,X:12,Ne:4,Mk:60,Nk:83,Ub:3,tb:9,hc:16,Ch:1,Rk:19,Tk:28,Vk:16,Uk:21,Sk:37,Pk:2,Wi:9,Qk:5,Ok:33,Yi:10,Xi:8,qg:3,pg:15,il:51,jl:1,kl:2,ll:4,hl:32,Zi:15,nl:15,Vb:16,Wb:4,pl:11,ol:18,ml:24,Eb:4,ql:2,$i:16,rl:17,ej:18,sl:19,dj:5,fj:6,xl:2,wl:8,ul:9,vl:10,tl:10,gj:10,hj:10,Xk:80,Zk:144,Wk:86,Yk:154,al:101,cl:165,$k:107,bl:171,zl:70,Bl:113,yl:76,Al:124,el:80,gl:128,dl:86,fl:134,sg:3,rg:16,mj:10,lj:8,Cl:51,ic:8,Dl:17,El:36,qc:11,Fl:16,tg:10,oe:2,Ti:18,Ui:7,Vi:15,aj:12, +bj:7,cj:11,ij:18,jj:7,kj:15,nj:15,oj:7,pj:13,tj:11,uj:7,vj:8,Gl:8,Jl:12,Hl:18,Il:17,Kl:15,rj:8,qj:20,sj:2,yj:3,ug:9,xj:5,wj:11,Aj:4,zj:17,Ll:11},pc={Cj:0,ba:0,Aa:0,ja:0,ka:0,Q:0,W:1,X:1,Ne:3,Mk:14,Nk:16,Ub:2,tb:7,hc:7,Ch:0,Rk:7,Tk:13,Vk:7,Uk:11,Sk:16,Pk:3,Wi:6,Qk:2,Ok:13,Yi:5,Xi:5,qg:2,pg:7,il:23,jl:0,kl:1,ll:3,hl:17,Zi:7,nl:11,Vb:7,Wb:3,pl:7,ol:11,ml:15,Eb:2,ql:3,$i:7,rl:8,ej:8,sl:8,dj:4,fj:4,xl:2,wl:3,ul:5,vl:2,tl:3,gj:5,hj:3,Xk:14,Zk:22,Wk:17,Yk:25,al:17,cl:25,$k:20,bl:28,zl:13,Bl:21,yl:16,Al:24, +el:13,gl:21,dl:16,fl:24,sg:2,rg:7,mj:5,lj:5,Cl:19,ic:5,Dl:5,El:17,qc:3,Fl:5,tg:3,oe:0,Ti:8,Ui:5,Vi:9,aj:5,bj:5,cj:4,ij:5,jj:5,kj:4,nj:7,oj:5,pj:8,tj:3,uj:4,vj:3,Gl:11,Jl:11,Hl:15,Il:15,Kl:7,rj:5,qj:8,sj:0,yj:2,ug:6,xj:3,wj:6,Aj:3,zj:5,Ll:5};k=oc.prototype;k.Gi=function(a,b,c,d,e){this.Fa=a;this.ze=b;this.sb=c;this.gb=d;this.De=e};k.reset=function(){this.qa.Mb&&this.xb();Rc(this);Mb(this);this.qa.Zc=!1}; +function Rc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Cc=65520;a.Fc=0;a.$d=1023;a.Lc={Dj:0,sa:0,Oa:0,uh:-1};a.me=0;a.xa=new $b(a,"CS");a.zb=new $b(a,"DS");a.ub=new $b(a,"SS");a.Za=new $b(a,"ES");a.am=new $b(a,"ZERO");Sc(a,0,65535);80286<=a.Ia&&(a.yc=0,a.ye=65535,a.bd=new $b(a,"LDT",!0),a.Ue=new $b(a,"TSS",!0),a.Nb=new $b(a,"VER",!0),Sc(a,65520,61440),a.xa.Xa=16711680);Tc(a,0);Uc(a);a.nb=0;a.Fb=a.yg=-1;a.Sg=0;a.la=a.Ma=-1;a.D=a.zb;a.N=a.ub;a.aa=a.Ba=0} +k.yk=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.xa.sa+this.zb.sa+this.ub.sa+this.Za.sa+Vc(this)|0};function Wc(a,b,c,d){void 0!==d&&(void 0===a.Jg[b]&&(a.Jg[b]=[]),a.Jg[b].push([c,d]))}function Xc(a,b){var c=a.Jg[b];if(void 0!==c)for(var d=0;d>1?128:0}function sd(a){return(a.ma^a.pa^a.ma>>1)&a.ga>>1?2048:0}function td(a){a.Z&=~a.ga}function ud(a){a.pa=a.ma&16|a.pa&-17}function vd(a){a.Z|=a.ga-1}function wd(a){rd(a)&&(a.ma^=a.ga>>1|a.ga>>2,a.pa^=32896)}function xd(a){a.ma&=~a.ga;a.pa=a.ma&32896|a.pa&-32897}function yd(a){a.Z|=a.ga}function zd(a){a.pa=~(a.ma&16)&16|a.pa&-17}function Ad(a){a.Z&=~(a.ga-1)}function Bd(a){rd(a)||(a.ma^=a.ga>>1|a.ga>>2,a.pa^=32896)} +function Cd(a){a.ma|=a.ga;a.pa=a.ma&32896|a.pa&-32897}function Vc(a){return a.Ca&-2262|nd(a)|od(a)|pd(a)|qd(a)|rd(a)|sd(a)}function Tc(a,b){a.ga=256;a.Z=a.ma=a.pa=0;b&1&&yd(a);b&4||(a.ma|=1);b&16&&(a.pa|=16);b&64||vd(a);b&128&&Bd(a);b&2048&&Cd(a);a.xa.Kc?b=b&-12289|a.Ca&12288:(a.me=(b&12288)>>12,!a.me||a.Cc&1||(a.me=0));a.xa.Kc>a.me&&(b=b&-513|a.Ca&512);a.Ca=a.Ca&-1793|b&1792|a.Wj;a.Ca&256&&(a.nb|=2,a.aa|=4)} +k.Ab=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.za[c]=d;e=!0;break;default:e=Kb.prototype.Ab.call(this,a,b,c,d)}return e};k.mb=function(a){return this.Fa[(a&this.ze)>>this.sb].sc(a&this.gb)}; +k.ua=function(a){var b=a&this.gb;a=(a&this.ze)>>this.sb;this.A-=this.B.Cj;return b!=this.gb?this.Fa[a].Rl(b):this.Fa[a++].sc(b)|this.Fa[a&this.De].sc(0)<<8};k.Od=function(a,b){this.Fa[(a&this.ze)>>this.sb].Dc(a&this.gb,b&255)};k.cd=function(a,b){var c=a&this.gb,d=(a&this.ze)>>this.sb;this.A-=this.B.Cj;c!=this.gb?this.Fa[d].dm(c,b&65535):(this.Fa[d++].Dc(c,b&255),this.Fa[d&this.De].Dc(0,b>>8&255))};k.Bm=function(a,b){this.Dg=a;this.la=a.jd(this.vg=b,0);return this.aa&1?0:this.mb(this.la)}; +k.Cm=function(a,b){this.Dg=a;this.la=a.jd(this.vg=b,1);return this.aa&1?0:this.ua(this.la)};k.In=function(a,b){this.Dg=a;this.Ma=this.la=a.jd(this.vg=b,0);return this.aa&1?0:this.mb(this.la)};k.Jn=function(a,b){this.Dg=a;this.Ma=this.la=a.jd(this.vg=b,1);return this.aa&1?0:this.ua(this.la)};k.cp=function(a){this.aa&2||this.Od(this.Dg.gc(this.vg,1),a)};k.dp=function(a){this.aa&2||this.cd(this.Dg.gc(this.vg,2),a)};k.ha=function(){var a=this.mb(this.Ga);this.Ga=this.xa.Xa+(this.va=this.va+1&65535);return a}; +k.M=function(){var a=this.mb(this.Ga)<<24>>24;this.Ga=this.xa.Xa+(this.va=this.va+1&65535);return a&65535};k.L=function(){var a=this.ua(this.Ga);this.Ga=this.xa.Xa+(this.va=this.va+2&65535);return a};k.La=function(){var a=this.Y;this.Y=this.Y+2&65535;return this.ua(this.ub.jd(a,1))};function J(a,b){var c=a.Y=a.Y-2&65535;a.cd(a.ub.gc(c,1),b)} +k.bh=function(){G(this,"AX",this.H);G(this,"BX",this.C);G(this,"CX",this.J);G(this,"DX",this.K);G(this,"SP",this.Y);G(this,"BP",this.I);G(this,"SI",this.G);G(this,"DI",this.F);G(this,"CS",this.xa.sa);G(this,"DS",this.zb.sa);G(this,"SS",this.ub.sa);G(this,"ES",this.Za.sa);G(this,"IP",this.va);var a=Vc(this);G(this,"PS",a);G(this,"C",a&1?1:0,1);G(this,"P",a&4?1:0,1);G(this,"A",a&16?1:0,1);G(this,"Z",a&64?1:0,1);G(this,"S",a&128?1:0,1);G(this,"T",a&256?1:0,1);G(this,"I",a&512?1:0,1);G(this,"D",a&1024? +1:0,1);G(this,"O",a&2048?1:0,1);this.za.speed&&(this.za.speed.innerHTML=this.qa.Mb&&this.ca.nd?this.ca.nd.toFixed(2)+"Mhz":"Stopped")}; +k.yf=function(a){this.qa.ih=!0;var b=this.qa.rk=a&&this.fa&&Dd(this.fa);this.Pc=this.A=a;this.oa&&Yb(this.oa);a||!this.fa||E(this.fa,Ed)||(this.aa|=4);do{var c=this.aa&240;if(c)this.Ba|=c;else if(this.Fh=this.Ga,this.la=this.Ma=-1,this.D=this.zb,this.N=this.ub,this.Ba=this.aa&256,this.nb){a:{if(!(this.aa&4))if(this.nb&1&&this.Ca&512){if(c=Fd(this.oa),-1<=c&&(this.nb&=-2,0<=c)){this.nb&=-5;Gd.call(this,c,null,11);c=!0;break a}}else if(this.nb&2){this.nb&=-3;Gd.call(this,1,null,11);c=!0;break a}if(c= +this.nb&8){for(var c=this.oa,d=!1,e=0;ethis.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=a+b)&255}function Nd(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=this.pa=a|b)&255} +function Od(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return this.Z&255}function Pd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return this.Z&255}function Qd(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=this.pa=a&b)&255} +function Rd(a,b){this.pa=a^b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=a-b)&255}function Sd(a,b){this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=this.pa=a^b)&255}function Td(a,b){this.pa=a^b;this.ga=256;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.Wi:this.B.tb;this.aa|=2;return a} +function Ud(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=a+b)&65535}function Vd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=this.pa=a|b)&65535}function Wd(a,b){this.pa=a^b;this.Z=this.ma=a+b+(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return this.Z&65535} +function Xd(a,b){this.pa=a^b;this.Z=this.ma=a-b-(this.Z&this.ga?1:0);this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return this.Z&65535}function Yd(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=this.pa=a&b)&65535}function Zd(a,b){this.pa=a^b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=a-b)&65535} +function $d(a,b){this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.tb:this.B.hc;return(this.Z=this.ma=this.pa=a^b)&65535}function ae(a,b){this.pa=a^b;this.ga=65536;this.Z=this.ma=a-b;this.A-=0>this.Ma?0>this.la?this.B.Ub:this.B.Wi:this.B.tb;this.aa|=2;return a}function be(a,b){this.Z=this.Z&this.ga-1|(a&b?this.ga:0);(a^a>>1)&b>>1?Cd(this):xd(this)}function ce(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;be.call(this,d,256)}return c} +function de(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;be.call(this,d,65536)}return c}function ee(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);be.call(this,d,256)}return c}function fe(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);be.call(this,d,65536)}return c} +function ge(a,b){var c=a;if(b){var d;(d=(b&this.sf)%9)?(d=a<>9-d,c=d&255):d=a|(this.Z&this.ga?1:0)<<8;be.call(this,d,256)}return c}function he(a,b){var c=a;if(b){var d;(d=(b&this.sf)%17)?(d=a<>17-d,c=d&65535):d=a|(this.Z&this.ga?1:0)<<16;be.call(this,d,65536)}return c}function ie(a,b){var c=a;b&&(c=(b&this.sf)%9,c=a>>c|(this.Z&this.ga?1:0)<<8-c|a<<9-c,be.call(this,c,256),c&=255);return c} +function je(a,b){var c=a;b&&(c=(b&this.sf)%17,c=a>>c|(this.Z&this.ga?1:0)<<16-c|a<<17-c,be.call(this,c,65536),c&=65535);return c}function ke(a,b){var c=a;b&&(c=8>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.pa=a^this.Z;this.ga=256;a=this.Z}return a&255}function ne(a,b){if(b){var c=16>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.pa=a^this.Z;this.ga=65536;a=this.Z}return a&65535}function oe(a,b){if(b){8>24>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|256:this.Z&-257;this.pa=a^this.Z;this.ga=256;a=this.Z}return a&255} +function pe(a,b){if(b){16>16>>b-1;this.Z=this.ma=c>>1;this.Z=c&1?this.Z|65536:this.Z&-65537;this.pa=a^this.Z;this.ga=65536;a=this.Z}return a&65535}function qe(){this.A-=0>this.la?2:this.B.Kl;return 1}function re(){var a=this.J&this.sf;this.A-=(0>this.la?this.B.rj:this.B.qj)+(a<this.la?this.B.rj:this.B.qj)+(a<this.Ma?this.B.ic:this.B.Dl;return b},ue,ue,ue,ue,ue,ue,ue],ye=[function(a,b){this.A-=0>this.Ma?this.B.vl:this.B.tl;return b},L,L,L,L,L,L,L],ze=[ce,ee,ge,ie,ke,me,L,oe],Ae=[de,fe,he,je,le,ne,L,pe],Ce=[function(a,b){b=this.ha();this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.la?this.B.xj:this.B.wj;this.aa|=2;return a},L,function(a){this.A-=0>this.la?this.B.sg:this.B.rg;return a^255},function(a,b){b=0;this.pa= +a^b;this.ga=256;this.A-=0>this.la?this.B.sg:this.B.rg;return(this.Z=this.ma=b-a)&255},function(a){this.H=this.Fb=(this.Z=(this.H&255)*a)&65535;this.pa=this.ma=this.Z;this.ga=256;this.H&65280?(yd(this),Cd(this)):(td(this),xd(this));this.A-=0>this.la?this.B.zl:this.B.yl;this.aa|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.Fb=b&65535;this.Z=this.pa=this.ma=b;this.ga=256;127b?(yd(this),Cd(this)):(td(this),xd(this));this.A-=0>this.la?this.B.el:this.B.dl;this.aa|=2;return a}, +function(a){if(!a)return Be.call(this),a;var b=this.H/a;if(255this.la?this.B.Xk:this.B.Wk;this.aa|=2;return a},function(a){if(!a)return Be.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Be.call(this),a;this.Fb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ma=this.pa=this.Z=b|256;this.ga=256;this.A-=0>this.la?this.B.al:this.B.$k;this.aa|=2;return a}], +De=[function(a,b){b=this.L();this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.la?this.B.xj:this.B.wj;this.aa|=2;return a},L,function(a){this.A-=0>this.la?this.B.sg:this.B.rg;return a^65535},function(a,b){b=0;this.pa=a^b;this.ga=65536;this.A-=0>this.la?this.B.sg:this.B.rg;return(this.Z=this.ma=b-a)&65535},function(a){this.Fb=this.H=(this.Z=this.H*a)&65535;this.yg=this.K=this.Z>>16&65535;this.pa=this.ma=this.Z;this.ga=65536;this.K?(yd(this),Cd(this)):(td(this),xd(this));this.A-=0>this.la?this.B.Bl: +this.B.Al;this.aa|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.Fb=b&65535;this.K=this.yg=b>>16&65535;this.Z=this.pa=this.ma=b;this.ga=65536;32767b?(yd(this),Cd(this)):(td(this),xd(this));this.A-=0>this.la?this.B.gl:this.B.fl;this.aa|=2;return a},function(a,b){if(!a)return Be.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Be.call(this),a;this.Fb=this.H=c&65535;this.yg=this.K=b%a&65535;this.ma=this.pa=this.Z=c|65536;this.ga=65536;this.A-= +0>this.la?this.B.Zk:this.B.Yk;this.aa|=2;return a},function(a,b){if(!a)return Be.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Be.call(this),a;this.Fb=this.H=d&65535;this.yg=this.K=b%c&65535;this.ma=this.pa=this.Z=d|65536;this.ga=65536;this.A-=0>this.la?this.B.cl:this.B.bl;this.aa|=2;return a}],Lc=[function(a){this.pa=a;a=(this.ma=a+1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.qg:this.B.pg;return a},function(a){this.pa= +a;a=(this.ma=a-1)&255;this.Z=a|(this.Z&this.ga?1:0)<<8;this.ga=256;this.A-=0>this.la?this.B.qg:this.B.pg;return a},L,L,L,L,L,L],Nc=[function(a){this.pa=a;a=(this.ma=a+1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.qg:this.B.pg;return a},function(a){this.pa=a;a=(this.ma=a-1)&65535;this.Z=a|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=0>this.la?this.B.qg:this.B.pg;return a},function(a){J(this,this.va);H(this,a);this.A-=0>this.la?this.B.Vk:this.B.Uk;this.aa|=2;return a}, +function(a){if(0>this.la)return L.call(this,a);J(this,this.xa.sa);J(this,this.va);Sc(this,a,this.ua(this.la+2));this.A-=this.B.Sk;this.aa|=2;return a},function(a){H(this,a);this.A-=0>this.la?this.B.pl:this.B.ol;this.aa|=2;return a},function(a){if(0>this.la)return L.call(this,a);Sc(this,a,this.ua(this.la+2));this.A-=this.B.ml;this.aa|=2;return a},function(a){var b=a;this.aa&512&&(a=a-2&65535,80286>this.Ia&&(b=a));J(this,b);this.A-=0>this.la?this.B.qc:this.B.Fl;this.aa|=2;return a},ue],Ee=[ce,ee,ge, +ie,ke,me,L,oe],Fe=[de,fe,he,je,le,ne,L,pe];function Ge(a,b){this.A-=0>this.Ma?0>this.la?this.B.xl:this.B.wl:this.B.ul;return b}function He(){return Ge.call(this,0,this.Fb)}function Ie(a,b){this.Z=this.ma=this.pa=a&b;this.ga=256;this.A-=0>this.Ma?0>this.la?this.B.yj:this.B.ug:this.B.ug;this.aa|=2;return a}function Je(a,b){this.Z=this.ma=this.pa=a&b;this.ga=65536;this.A-=0>this.Ma?0>this.la?this.B.yj:this.B.ug:this.B.ug;this.aa|=2;return a} +function Ke(a,b){var c=(b<<16>>16)*(this.ha()<<24>>24);this.Z=this.pa=this.ma=c;this.ga=256;32767c?(yd(this),Cd(this)):(td(this),xd(this));this.A-=0>this.la?21:24;return c&65535}function Le(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.Z=this.pa=this.ma=c;this.ga=65536;32767c?(yd(this),Cd(this)):(td(this),xd(this));this.A-=0>this.la?21:24;return c&65535}function Me(a){return a}function Ne(a){if(0>this.la)return M.call(this),a;this.A-=this.B.ql;return this.la} +function Oe(a,b){if(0>this.la)return M.call(this),a;jd(this,this.ua(this.la+2));this.A-=this.B.$i;return b}function Pe(a,b){if(0>this.la)return M.call(this),a;ld(this,this.ua(this.la+2));this.A-=this.B.$i;return b}function Qe(a){if(0>this.la)return sc.call(this),a;var b=a<<16>>16,c=this.ua(this.la)<<16>>16,d=this.ua(this.la+2)<<16>>16;this.A-=this.B.Ok;if(bd)H(this,this.Fh-this.xa.Xa),Gd.call(this,5,null,0);this.aa|=2;return a} +function Re(a,b){this.A-=10+(0>this.la?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Ad(this),a;vd(this);return a}function Se(a,b){this.A-=14+(0>this.la?0:2);if(0<=this.Nb.load(b,!0)&&this.Nb.Ac>=this.xa.Kc&&this.Nb.Ac>=(b&3))return Ad(this),this.Nb.Oa&65280;vd(this);return a}function Te(a,b){this.A-=14+(0>this.la?0:2);if(b&65528&&0<=this.Nb.load(b,!0)&&(7168==(this.Nb.Oa&7168)||this.Nb.Ac>=this.xa.Kc)&&this.Nb.Ac>=(b&3))return Ad(this),this.Nb.Oc;vd(this);return a} +function Xe(a,b){if(0>this.la){switch(this.Sg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Aj}else this.Ma=this.la,this.R(a),this.A-=this.B.zj;return b} +function Ye(a,b){if(0>this.la){switch(this.Sg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Aj}else this.Ma=this.la,this.S(a),this.A-=this.B.zj;return b}function Gd(a,b,c){hd(this,a)&&(J(this,Vc(this)),this.Ca&=this.Lc.uh,J(this,this.xa.sa),J(this,this.va),null!=b&&J(this,b),Sc(this,this.Lc.Dj,this.Lc.sa),this.A-=this.B.il+c)} +function Ze(a){a|=this.Cc&1;this.Cc=this.Cc&65520|a&-65521;this.Cc&1&&Uc(this,!0)}function Be(){H(this,this.Fh-this.xa.Xa);Gd.call(this,0,null,2)}function jc(a,b,c){this.fa&&(E(this.fa,Ld)&&this.fa.message("Fault 0x"+t(a)+(null!=b?" (0x"+v(b)+")":"")+" on opcode 0x"+t(mb(this.ra,this.Ga))+" at "+da(this.va,this.xa.sa)),c&&this.xb());80186<=this.Ia&&(H(this,this.Fh-this.xa.Xa),Gd.call(this,a,b,0))}function sc(){jc.call(this,6);this.xb()} +function M(){H(this,this.Fh-this.xa.Xa);bb(this,"Undefined opcode 0x"+t(mb(this.ra,this.Ga))+" at "+da(this.va,this.xa.sa));this.xb()}function $e(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function af(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function bf(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function cf(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function df(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a} +function ef(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a}function ff(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function gf(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}function hf(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function jf(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function kf(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a} +function lf(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a}function mf(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function nf(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function of(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function pf(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function qf(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a} +function rf(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a}function sf(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}function tf(a){a=a.call(this,this.K&255,this.C&255);this.K=this.K&-256|a}function uf(a){a=a.call(this,this.K&255,this.H>>8);this.K=this.K&-256|a}function vf(a){a=a.call(this,this.K&255,this.J>>8);this.K=this.K&-256|a}function wf(a){a=a.call(this,this.K&255,this.K>>8);this.K=this.K&-256|a} +function xf(a){a=a.call(this,this.K&255,this.C>>8);this.K=this.K&-256|a}function yf(a){a=a.call(this,this.C&255,this.H&255);this.C=this.C&-256|a}function zf(a){a=a.call(this,this.C&255,this.J&255);this.C=this.C&-256|a}function Af(a){a=a.call(this,this.C&255,this.K&255);this.C=this.C&-256|a}function Bf(a){a=a.call(this,this.C&255,this.C&255);this.C=this.C&-256|a}function Cf(a){a=a.call(this,this.C&255,this.H>>8);this.C=this.C&-256|a} +function Df(a){a=a.call(this,this.C&255,this.J>>8);this.C=this.C&-256|a}function Ef(a){a=a.call(this,this.C&255,this.K>>8);this.C=this.C&-256|a}function Ff(a){a=a.call(this,this.C&255,this.C>>8);this.C=this.C&-256|a}function Gf(a){a=a.call(this,this.H>>8,this.H&255);this.H=this.H&255|a<<8}function Hf(a){a=a.call(this,this.H>>8,this.J&255);this.H=this.H&255|a<<8}function If(a){a=a.call(this,this.H>>8,this.K&255);this.H=this.H&255|a<<8} +function Jf(a){a=a.call(this,this.H>>8,this.C&255);this.H=this.H&255|a<<8}function Kf(a){a=a.call(this,this.H>>8,this.H>>8);this.H=this.H&255|a<<8}function Lf(a){a=a.call(this,this.H>>8,this.J>>8);this.H=this.H&255|a<<8}function Mf(a){a=a.call(this,this.H>>8,this.K>>8);this.H=this.H&255|a<<8}function Nf(a){a=a.call(this,this.H>>8,this.C>>8);this.H=this.H&255|a<<8}function Of(a){a=a.call(this,this.J>>8,this.H&255);this.J=this.J&255|a<<8} +function Pf(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8}function Qf(a){a=a.call(this,this.J>>8,this.K&255);this.J=this.J&255|a<<8}function Rf(a){a=a.call(this,this.J>>8,this.C&255);this.J=this.J&255|a<<8}function Sf(a){a=a.call(this,this.J>>8,this.H>>8);this.J=this.J&255|a<<8}function Tf(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function Uf(a){a=a.call(this,this.J>>8,this.K>>8);this.J=this.J&255|a<<8} +function Vf(a){a=a.call(this,this.J>>8,this.C>>8);this.J=this.J&255|a<<8}function Wf(a){a=a.call(this,this.K>>8,this.H&255);this.K=this.K&255|a<<8}function Xf(a){a=a.call(this,this.K>>8,this.J&255);this.K=this.K&255|a<<8}function Yf(a){a=a.call(this,this.K>>8,this.K&255);this.K=this.K&255|a<<8}function Zf(a){a=a.call(this,this.K>>8,this.C&255);this.K=this.K&255|a<<8}function $f(a){a=a.call(this,this.K>>8,this.H>>8);this.K=this.K&255|a<<8} +function ag(a){a=a.call(this,this.K>>8,this.J>>8);this.K=this.K&255|a<<8}function bg(a){a=a.call(this,this.K>>8,this.K>>8);this.K=this.K&255|a<<8}function cg(a){a=a.call(this,this.K>>8,this.C>>8);this.K=this.K&255|a<<8}function dg(a){a=a.call(this,this.C>>8,this.H&255);this.C=this.C&255|a<<8}function eg(a){a=a.call(this,this.C>>8,this.J&255);this.C=this.C&255|a<<8}function fg(a){a=a.call(this,this.C>>8,this.K&255);this.C=this.C&255|a<<8} +function gg(a){a=a.call(this,this.C>>8,this.C&255);this.C=this.C&255|a<<8}function hg(a){a=a.call(this,this.C>>8,this.H>>8);this.C=this.C&255|a<<8}function ig(a){a=a.call(this,this.C>>8,this.J>>8);this.C=this.C&255|a<<8}function jg(a){a=a.call(this,this.C>>8,this.K>>8);this.C=this.C&255|a<<8}function kg(a){a=a.call(this,this.C>>8,this.C>>8);this.C=this.C&255|a<<8}function lg(a){this.H=a.call(this,this.H,this.H)}function mg(a){this.H=a.call(this,this.H,this.J)} +function ng(a){this.H=a.call(this,this.H,this.K)}function og(a){this.H=a.call(this,this.H,this.C)}function pg(a){this.H=a.call(this,this.H,this.Y)}function qg(a){this.H=a.call(this,this.H,this.I)}function rg(a){this.H=a.call(this,this.H,this.G)}function sg(a){this.H=a.call(this,this.H,this.F)}function tg(a){this.J=a.call(this,this.J,this.H)}function ug(a){this.J=a.call(this,this.J,this.J)}function vg(a){this.J=a.call(this,this.J,this.K)}function wg(a){this.J=a.call(this,this.J,this.C)} +function xg(a){this.J=a.call(this,this.J,this.Y)}function yg(a){this.J=a.call(this,this.J,this.I)}function zg(a){this.J=a.call(this,this.J,this.G)}function Ag(a){this.J=a.call(this,this.J,this.F)}function Bg(a){this.K=a.call(this,this.K,this.H)}function Cg(a){this.K=a.call(this,this.K,this.J)}function Dg(a){this.K=a.call(this,this.K,this.K)}function Eg(a){this.K=a.call(this,this.K,this.C)}function Fg(a){this.K=a.call(this,this.K,this.Y)}function Gg(a){this.K=a.call(this,this.K,this.I)} +function Hg(a){this.K=a.call(this,this.K,this.G)}function Ig(a){this.K=a.call(this,this.K,this.F)}function Jg(a){this.C=a.call(this,this.C,this.H)}function Kg(a){this.C=a.call(this,this.C,this.J)}function Lg(a){this.C=a.call(this,this.C,this.K)}function Mg(a){this.C=a.call(this,this.C,this.C)}function Ng(a){this.C=a.call(this,this.C,this.Y)}function Og(a){this.C=a.call(this,this.C,this.I)}function Pg(a){this.C=a.call(this,this.C,this.G)}function Qg(a){this.C=a.call(this,this.C,this.F)} +function Rg(a){this.Y=a.call(this,this.Y,this.H)}function Sg(a){this.Y=a.call(this,this.Y,this.J)}function Tg(a){this.Y=a.call(this,this.Y,this.K)}function Ug(a){this.Y=a.call(this,this.Y,this.C)}function Vg(a){this.Y=a.call(this,this.Y,this.Y)}function Wg(a){this.Y=a.call(this,this.Y,this.I)}function Xg(a){this.Y=a.call(this,this.Y,this.G)}function Yg(a){this.Y=a.call(this,this.Y,this.F)}function Zg(a){this.I=a.call(this,this.I,this.H)}function $g(a){this.I=a.call(this,this.I,this.J)} +function ah(a){this.I=a.call(this,this.I,this.K)}function bh(a){this.I=a.call(this,this.I,this.C)}function ch(a){this.I=a.call(this,this.I,this.Y)}function dh(a){this.I=a.call(this,this.I,this.I)}function eh(a){this.I=a.call(this,this.I,this.G)}function fh(a){this.I=a.call(this,this.I,this.F)}function gh(a){this.G=a.call(this,this.G,this.H)}function hh(a){this.G=a.call(this,this.G,this.J)}function ih(a){this.G=a.call(this,this.G,this.K)}function jh(a){this.G=a.call(this,this.G,this.C)} +function kh(a){this.G=a.call(this,this.G,this.Y)}function lh(a){this.G=a.call(this,this.G,this.I)}function mh(a){this.G=a.call(this,this.G,this.G)}function nh(a){this.G=a.call(this,this.G,this.F)}function oh(a){this.F=a.call(this,this.F,this.H)}function ph(a){this.F=a.call(this,this.F,this.J)}function qh(a){this.F=a.call(this,this.F,this.K)}function rh(a){this.F=a.call(this,this.F,this.C)}function sh(a){this.F=a.call(this,this.F,this.Y)}function th(a){this.F=a.call(this,this.F,this.I)} +function uh(a){this.F=a.call(this,this.F,this.G)}function vh(a){this.F=a.call(this,this.F,this.F)} +var wh=[function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.G),this.H&255);this.R(a);this.A-=this.B.ba}, function(a){a=a.call(this,this.O(this.D,this.F),this.H&255);this.R(a);this.A-=this.B.ba},function(a){a=a.call(this,this.O(this.D,this.L()),this.H&255);this.R(a);this.A-=this.B.Aa},function(a){a=a.call(this,this.O(this.D,this.C),this.H&255);this.R(a);this.A-=this.B.ba},function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.J&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.J&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N, this.I+this.G&65535),this.J&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.J&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.G),this.J&255);this.R(a);this.A-=this.B.ba},function(a){a=a.call(this,this.O(this.D,this.F),this.J&255);this.R(a);this.A-=this.B.ba},function(a){a=a.call(this,this.O(this.D,this.L()),this.J&255);this.R(a);this.A-=this.B.Aa},function(a){a=a.call(this,this.O(this.D,this.C),this.J&255);this.R(a); this.A-=this.B.ba},function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.K&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.K&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.K&255);this.R(a);this.A-=this.B.ka},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.K&255);this.R(a);this.A-=this.B.ja},function(a){a=a.call(this,this.O(this.D,this.G),this.K&255);this.R(a);this.A-= @@ -154,8 +154,8 @@ this.C+this.G+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.W},function(a) a.call(this,this.O(this.D,this.F+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.D,this.C+this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.X}, function(a){a=a.call(this,this.O(this.N,this.I+this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.X},function(a){a=a.call(this,this.O(this.N,this.I+this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.K>>8);this.R(a); this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.D,this.C+this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.X},function(a){a=a.call(this,this.O(this.N,this.I+this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.X},function(a){a=a.call(this,this.O(this.N,this.I+this.F+ -this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},af,jf,rf,zf,Hf,Pf,Xf,eg,bf,kf,sf,Af,If, -Qf,Yf,fg,cf,lf,tf,Bf,Jf,Rf,Zf,gg,df,mf,uf,Cf,Kf,Sf,$f,hg,ef,nf,vf,Df,Lf,Tf,ag,ig,ff,of,wf,Ef,Mf,Uf,bg,jg,gf,pf,xf,Ff,Nf,Vf,cg,kg,hf,qf,yf,Gf,Of,Wf,dg,lg],yh=[function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.H);this.S(a);this.A-=this.B.ja},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.H);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.H);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.F& +this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},$e,hf,qf,yf,Gf,Of,Wf,dg,af,jf,rf,zf,Hf, +Pf,Xf,eg,bf,kf,sf,Af,If,Qf,Yf,fg,cf,lf,tf,Bf,Jf,Rf,Zf,gg,df,mf,uf,Cf,Kf,Sf,$f,hg,ef,nf,vf,Df,Lf,Tf,ag,ig,ff,of,wf,Ef,Mf,Uf,bg,jg,gf,pf,xf,Ff,Nf,Vf,cg,kg],xh=[function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.H);this.S(a);this.A-=this.B.ja},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.H);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.H);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.F& 65535),this.H);this.S(a);this.A-=this.B.ja},function(a){a=a.call(this,this.P(this.D,this.G),this.H);this.S(a);this.A-=this.B.ba},function(a){a=a.call(this,this.P(this.D,this.F),this.H);this.S(a);this.A-=this.B.ba},function(a){a=a.call(this,this.P(this.D,this.L()),this.H);this.S(a);this.A-=this.B.Aa},function(a){a=a.call(this,this.P(this.D,this.C),this.H);this.S(a);this.A-=this.B.ba},function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.J);this.S(a);this.A-=this.B.ja},function(a){a=a.call(this, this.P(this.D,this.C+this.F&65535),this.J);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.J);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.F&65535),this.J);this.S(a);this.A-=this.B.ja},function(a){a=a.call(this,this.P(this.D,this.G),this.J);this.S(a);this.A-=this.B.ba},function(a){a=a.call(this,this.P(this.D,this.F),this.J);this.S(a);this.A-=this.B.ba},function(a){a=a.call(this,this.P(this.D,this.L()),this.J);this.S(a); this.A-=this.B.Aa},function(a){a=a.call(this,this.P(this.D,this.C),this.J);this.S(a);this.A-=this.B.ba},function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.K);this.S(a);this.A-=this.B.ja},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.K);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.K);this.S(a);this.A-=this.B.ka},function(a){a=a.call(this,this.P(this.N,this.I+this.F&65535),this.K);this.S(a);this.A-=this.B.ja},function(a){a= @@ -192,8 +192,8 @@ function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.I);th this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.D,this.C+this.F+this.L()&65535),this.G);this.S(a); this.A-=this.B.X},function(a){a=a.call(this,this.P(this.N,this.I+this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.X},function(a){a=a.call(this,this.P(this.N,this.I+this.F+this.L()&65535),this.G);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.G);this.S(a); this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.D,this.C+this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.X},function(a){a=a.call(this,this.P(this.N,this.I+this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.X},function(a){a=a.call(this,this.P(this.N,this.I+this.F+this.L()&65535), -this.F);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},mg,ug,Cg,Kg,Sg,$g,hh,ph,ng,vg,Dg,Lg,Tg,ah,ih,qh,og,wg,Eg,Mg,Ug,bh,jh, -rh,pg,xg,Fg,Ng,Vg,ch,kh,sh,qg,yg,Gg,Og,Wg,dh,lh,th,rg,zg,Hg,Pg,Xg,eh,mh,uh,sg,Ag,Ig,Qg,Yg,fh,nh,vh,tg,Bg,Jg,Rg,Zg,gh,oh,wh],zh=[function(a){a=a.call(this,this.H&255,this.U(this.D,this.C+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ja},function(a){a=a.call(this,this.H&255,this.U(this.D,this.C+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.ka},function(a){a=a.call(this,this.H&255,this.U(this.N,this.I+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ka},function(a){a=a.call(this,this.H&255, +this.F);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},lg,tg,Bg,Jg,Rg,Zg,gh,oh,mg,ug,Cg,Kg,Sg,$g,hh,ph,ng,vg,Dg,Lg,Tg,ah,ih, +qh,og,wg,Eg,Mg,Ug,bh,jh,rh,pg,xg,Fg,Ng,Vg,ch,kh,sh,qg,yg,Gg,Og,Wg,dh,lh,th,rg,zg,Hg,Pg,Xg,eh,mh,uh,sg,Ag,Ig,Qg,Yg,fh,nh,vh],yh=[function(a){a=a.call(this,this.H&255,this.U(this.D,this.C+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ja},function(a){a=a.call(this,this.H&255,this.U(this.D,this.C+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.ka},function(a){a=a.call(this,this.H&255,this.U(this.N,this.I+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ka},function(a){a=a.call(this,this.H&255, this.U(this.N,this.I+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.ja},function(a){a=a.call(this,this.H&255,this.U(this.D,this.G));this.H=this.H&-256|a;this.A-=this.B.ba},function(a){a=a.call(this,this.H&255,this.U(this.D,this.F));this.H=this.H&-256|a;this.A-=this.B.ba},function(a){a=a.call(this,this.H&255,this.U(this.D,this.L()));this.H=this.H&-256|a;this.A-=this.B.Aa},function(a){a=a.call(this,this.H&255,this.U(this.D,this.C));this.H=this.H&-256|a;this.A-=this.B.ba},function(a){a=a.call(this, this.J&255,this.U(this.D,this.C+this.G&65535));this.J=this.J&-256|a;this.A-=this.B.ja},function(a){a=a.call(this,this.J&255,this.U(this.D,this.C+this.F&65535));this.J=this.J&-256|a;this.A-=this.B.ka},function(a){a=a.call(this,this.J&255,this.U(this.N,this.I+this.G&65535));this.J=this.J&-256|a;this.A-=this.B.ka},function(a){a=a.call(this,this.J&255,this.U(this.N,this.I+this.F&65535));this.J=this.J&-256|a;this.A-=this.B.ja},function(a){a=a.call(this,this.J&255,this.U(this.D,this.G));this.J=this.J&-256| a;this.A-=this.B.ba},function(a){a=a.call(this,this.J&255,this.U(this.D,this.F));this.J=this.J&-256|a;this.A-=this.B.ba},function(a){a=a.call(this,this.J&255,this.U(this.D,this.L()));this.J=this.J&-256|a;this.A-=this.B.Aa},function(a){a=a.call(this,this.J&255,this.U(this.D,this.C));this.J=this.J&-256|a;this.A-=this.B.ba},function(a){a=a.call(this,this.K&255,this.U(this.D,this.C+this.G&65535));this.K=this.K&-256|a;this.A-=this.B.ja},function(a){a=a.call(this,this.K&255,this.U(this.D,this.C+this.F& @@ -236,8 +236,8 @@ this.I+this.F+this.L()&65535));this.J=this.J&255|a<<8;this.A-=this.B.W},function 255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.U(this.D,this.C+this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.K>>8,this.U(this.D,this.C+this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.X},function(a){a=a.call(this,this.K>>8,this.U(this.N,this.I+this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.X},function(a){a=a.call(this,this.K>>8,this.U(this.N,this.I+this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-= this.B.W},function(a){a=a.call(this,this.K>>8,this.U(this.D,this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.U(this.D,this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.U(this.N,this.I+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.U(this.D,this.C+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>> 8,this.U(this.D,this.C+this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.C>>8,this.U(this.D,this.C+this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.X},function(a){a=a.call(this,this.C>>8,this.U(this.N,this.I+this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.X},function(a){a=a.call(this,this.C>>8,this.U(this.N,this.I+this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.C>>8,this.U(this.D, -this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.U(this.D,this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.U(this.N,this.I+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.U(this.D,this.C+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff, -Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg],M=[function(a){this.H=a.call(this,this.H,this.V(this.D,this.C+this.G&65535));this.A-=this.B.ja},function(a){this.H=a.call(this,this.H,this.V(this.D,this.C+this.F&65535));this.A-=this.B.ka},function(a){this.H=a.call(this,this.H,this.V(this.N,this.I+this.G&65535));this.A-=this.B.ka},function(a){this.H=a.call(this,this.H,this.V(this.N,this.I+this.F&65535));this.A-=this.B.ja},function(a){this.H=a.call(this, +this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.U(this.D,this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.U(this.N,this.I+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.U(this.D,this.C+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef, +Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg],N=[function(a){this.H=a.call(this,this.H,this.V(this.D,this.C+this.G&65535));this.A-=this.B.ja},function(a){this.H=a.call(this,this.H,this.V(this.D,this.C+this.F&65535));this.A-=this.B.ka},function(a){this.H=a.call(this,this.H,this.V(this.N,this.I+this.G&65535));this.A-=this.B.ka},function(a){this.H=a.call(this,this.H,this.V(this.N,this.I+this.F&65535));this.A-=this.B.ja},function(a){this.H=a.call(this, this.H,this.V(this.D,this.G));this.A-=this.B.ba},function(a){this.H=a.call(this,this.H,this.V(this.D,this.F));this.A-=this.B.ba},function(a){this.H=a.call(this,this.H,this.V(this.D,this.L()));this.A-=this.B.Aa},function(a){this.H=a.call(this,this.H,this.V(this.D,this.C));this.A-=this.B.ba},function(a){this.J=a.call(this,this.J,this.V(this.D,this.C+this.G&65535));this.A-=this.B.ja},function(a){this.J=a.call(this,this.J,this.V(this.D,this.C+this.F&65535));this.A-=this.B.ka},function(a){this.J=a.call(this, this.J,this.V(this.N,this.I+this.G&65535));this.A-=this.B.ka},function(a){this.J=a.call(this,this.J,this.V(this.N,this.I+this.F&65535));this.A-=this.B.ja},function(a){this.J=a.call(this,this.J,this.V(this.D,this.G));this.A-=this.B.ba},function(a){this.J=a.call(this,this.J,this.V(this.D,this.F));this.A-=this.B.ba},function(a){this.J=a.call(this,this.J,this.V(this.D,this.L()));this.A-=this.B.Aa},function(a){this.J=a.call(this,this.J,this.V(this.D,this.C));this.A-=this.B.ba},function(a){this.K=a.call(this, this.K,this.V(this.D,this.C+this.G&65535));this.A-=this.B.ja},function(a){this.K=a.call(this,this.K,this.V(this.D,this.C+this.F&65535));this.A-=this.B.ka},function(a){this.K=a.call(this,this.K,this.V(this.N,this.I+this.G&65535));this.A-=this.B.ka},function(a){this.K=a.call(this,this.K,this.V(this.N,this.I+this.F&65535));this.A-=this.B.ja},function(a){this.K=a.call(this,this.K,this.V(this.D,this.G));this.A-=this.B.ba},function(a){this.K=a.call(this,this.K,this.V(this.D,this.F));this.A-=this.B.ba}, @@ -272,8 +272,8 @@ this.V(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.cal this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.V(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.V(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.V(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.V(this.D,this.C+this.G+this.L()&65535));this.A-=this.B.W},function(a){this.G=a.call(this,this.G,this.V(this.D,this.C+this.F+this.L()&65535)); this.A-=this.B.X},function(a){this.G=a.call(this,this.G,this.V(this.N,this.I+this.G+this.L()&65535));this.A-=this.B.X},function(a){this.G=a.call(this,this.G,this.V(this.N,this.I+this.F+this.L()&65535));this.A-=this.B.W},function(a){this.G=a.call(this,this.G,this.V(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.V(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.V(this.N,this.I+this.L()&65535));this.A-=this.B.Q}, function(a){this.G=a.call(this,this.G,this.V(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.V(this.D,this.C+this.G+this.L()&65535));this.A-=this.B.W},function(a){this.F=a.call(this,this.F,this.V(this.D,this.C+this.F+this.L()&65535));this.A-=this.B.X},function(a){this.F=a.call(this,this.F,this.V(this.N,this.I+this.G+this.L()&65535));this.A-=this.B.X},function(a){this.F=a.call(this,this.F,this.V(this.N,this.I+this.F+this.L()&65535));this.A-=this.B.W},function(a){this.F= -a.call(this,this.F,this.V(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.V(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.V(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.V(this.D,this.C+this.L()&65535));this.A-=this.B.Q},mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,ah,bh,ch,dh,eh,fh,gh, -hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,uh,vh,wh],Ah=[function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ja},function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ka},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ka},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ja}, +a.call(this,this.F,this.V(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.V(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.V(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.V(this.D,this.C+this.L()&65535));this.A-=this.B.Q},lg,mg,ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg,Dg,Eg,Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,ah,bh,ch,dh,eh,fh, +gh,hh,ih,jh,kh,lh,mh,nh,oh,ph,qh,rh,sh,th,uh,vh],zh=[function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ja},function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ka},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ka},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ja}, function(a,b){var c=a[0].call(this,this.O(this.D,this.G),b.call(this));this.R(c);this.A-=this.B.ba},function(a,b){var c=a[0].call(this,this.O(this.D,this.F),b.call(this));this.R(c);this.A-=this.B.ba},function(a,b){var c=a[0].call(this,this.O(this.D,this.L()),b.call(this));this.R(c);this.A-=this.B.Aa},function(a,b){var c=a[0].call(this,this.O(this.D,this.C),b.call(this));this.R(c);this.A-=this.B.ba},function(a,b){var c=a[1].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-= this.B.ja},function(a,b){var c=a[1].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ka},function(a,b){var c=a[1].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ka},function(a,b){var c=a[1].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ja},function(a,b){var c=a[1].call(this,this.O(this.D,this.G),b.call(this));this.R(c);this.A-=this.B.ba},function(a,b){var c=a[1].call(this,this.O(this.D,this.F), b.call(this));this.R(c);this.A-=this.B.ba},function(a,b){var c=a[1].call(this,this.O(this.D,this.L()),b.call(this));this.R(c);this.A-=this.B.Aa},function(a,b){var c=a[1].call(this,this.O(this.D,this.C),b.call(this));this.R(c);this.A-=this.B.ba},function(a,b){var c=a[2].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ja},function(a,b){var c=a[2].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ka},function(a,b){var c=a[2].call(this, @@ -326,7 +326,7 @@ this.K=this.K&-256|c},function(a,b){var c=a[4].call(this,this.C&255,b.call(this) this.H&-256|c},function(a,b){var c=a[5].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[5].call(this,this.K&255,b.call(this));this.K=this.K&-256|c},function(a,b){var c=a[5].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[5].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a,b){var c=a[5].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[5].call(this,this.K>>8,b.call(this));this.K=this.K&255| c<<8},function(a,b){var c=a[5].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8},function(a,b){var c=a[6].call(this,this.H&255,b.call(this));this.H=this.H&-256|c},function(a,b){var c=a[6].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[6].call(this,this.K&255,b.call(this));this.K=this.K&-256|c},function(a,b){var c=a[6].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[6].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a, b){var c=a[6].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[6].call(this,this.K>>8,b.call(this));this.K=this.K&255|c<<8},function(a,b){var c=a[6].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8},function(a,b){var c=a[7].call(this,this.H&255,b.call(this));this.H=this.H&-256|c},function(a,b){var c=a[7].call(this,this.J&255,b.call(this));this.J=this.J&-256|c},function(a,b){var c=a[7].call(this,this.K&255,b.call(this));this.K=this.K&-256|c},function(a,b){var c= -a[7].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[7].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.K>>8,b.call(this));this.K=this.K&255|c<<8},function(a,b){var c=a[7].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8}],Bh=[function(a,b){var c=a[0].call(this,this.P(this.D,this.C+this.G&65535),b.call(this));this.S(c);this.A-= +a[7].call(this,this.C&255,b.call(this));this.C=this.C&-256|c},function(a,b){var c=a[7].call(this,this.H>>8,b.call(this));this.H=this.H&255|c<<8},function(a,b){var c=a[7].call(this,this.J>>8,b.call(this));this.J=this.J&255|c<<8},function(a,b){var c=a[7].call(this,this.K>>8,b.call(this));this.K=this.K&255|c<<8},function(a,b){var c=a[7].call(this,this.C>>8,b.call(this));this.C=this.C&255|c<<8}],Ah=[function(a,b){var c=a[0].call(this,this.P(this.D,this.C+this.G&65535),b.call(this));this.S(c);this.A-= this.B.ja},function(a,b){var c=a[0].call(this,this.P(this.D,this.C+this.F&65535),b.call(this));this.S(c);this.A-=this.B.ka},function(a,b){var c=a[0].call(this,this.P(this.N,this.I+this.G&65535),b.call(this));this.S(c);this.A-=this.B.ka},function(a,b){var c=a[0].call(this,this.P(this.N,this.I+this.F&65535),b.call(this));this.S(c);this.A-=this.B.ja},function(a,b){var c=a[0].call(this,this.P(this.D,this.G),b.call(this));this.S(c);this.A-=this.B.ba},function(a,b){var c=a[0].call(this,this.P(this.D,this.F), b.call(this));this.S(c);this.A-=this.B.ba},function(a,b){var c=a[0].call(this,this.P(this.D,this.L()),b.call(this));this.S(c);this.A-=this.B.Aa},function(a,b){var c=a[0].call(this,this.P(this.D,this.C),b.call(this));this.S(c);this.A-=this.B.ba},function(a,b){var c=a[1].call(this,this.P(this.D,this.C+this.G&65535),b.call(this));this.S(c);this.A-=this.B.ja},function(a,b){var c=a[1].call(this,this.P(this.D,this.C+this.F&65535),b.call(this));this.S(c);this.A-=this.B.ka},function(a,b){var c=a[1].call(this, this.P(this.N,this.I+this.G&65535),b.call(this));this.S(c);this.A-=this.B.ka},function(a,b){var c=a[1].call(this,this.P(this.N,this.I+this.F&65535),b.call(this));this.S(c);this.A-=this.B.ja},function(a,b){var c=a[1].call(this,this.P(this.D,this.G),b.call(this));this.S(c);this.A-=this.B.ba},function(a,b){var c=a[1].call(this,this.P(this.D,this.F),b.call(this));this.S(c);this.A-=this.B.ba},function(a,b){var c=a[1].call(this,this.P(this.D,this.L()),b.call(this));this.S(c);this.A-=this.B.Aa},function(a, @@ -377,293 +377,292 @@ b.call(this))},function(a,b){this.K=a[3].call(this,this.K,b.call(this))},functio this.K,b.call(this))},function(a,b){this.C=a[4].call(this,this.C,b.call(this))},function(a,b){this.Y=a[4].call(this,this.Y,b.call(this))},function(a,b){this.I=a[4].call(this,this.I,b.call(this))},function(a,b){this.G=a[4].call(this,this.G,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.K=a[5].call(this,this.K,b.call(this))},function(a,b){this.C= a[5].call(this,this.C,b.call(this))},function(a,b){this.Y=a[5].call(this,this.Y,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.K=a[6].call(this,this.K,b.call(this))},function(a,b){this.C=a[6].call(this,this.C,b.call(this))}, function(a,b){this.aa|=512;this.Y=a[6].call(this,this.Y,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.K=a[7].call(this,this.K,b.call(this))},function(a,b){this.C=a[7].call(this,this.C,b.call(this))},function(a,b){this.Y=a[7].call(this, -this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Dh=[function(){var a=this.ha();16>(a&56)&&(this.aa|=1);Bh[a].call(this,dd,ue)},function(){var a=this.ha();a&16||(this.aa|=1);Bh[a].call(this,Ch,ue)},function(){M[this.ha()].call(this,Te)},function(){M[this.ha()].call(this,Xe)},K,function(){this.xa.Kc?ic.call(this,13,0,!0):($e.call(this,this.ua(2054)),this.F= -this.ua(2086),this.G=this.ua(2088),this.I=this.ua(2090),this.Y=this.ua(2092),this.C=this.ua(2094),this.K=this.ua(2096),this.J=this.ua(2098),this.H=this.ua(2100),nc(this.Za,this.ua(2084),2102),nc(this.xa,this.ua(2082),2108),nc(this.tb,this.ua(2080),2114),nc(this.zb,this.ua(2078),2120),Uc(this,this.ua(2072)),G(this,this.ua(2074)),this.yc=this.ua(2126)|this.ua(2128)<<16,this.ye=this.yc+this.ua(2130),nc(this.bd,this.ua(2076),2132),this.Fc=this.ua(2138)|this.ua(2140)<<16,this.$d=this.Fc+this.ua(2142), -nc(this.Ue,this.ua(2070),2144),this.A-=195)},K,K,K,K,K,tc,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K, -K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K,K],ed=[function(){this.A-=2+(0>this.la?0:1);return this.bd.ta},function(){this.A-=2+(0>this.la?0:1);return this.Ue.ta},function(a){this.aa|=2;this.bd.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.Ue.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Nb.load(a,!0)&&2048!=(this.Nb.Oa&2560)&&(this.Nb.Ac>=this.xa.Kc&&this.Nb.Ac>=(a&3)||7168==(this.Nb.Oa&7168)))return Bd(this),a; -wd(this);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Nb.load(a,!0)&&512==(this.Nb.Oa&2560)&&this.Nb.Ac>=this.xa.Kc&&this.Nb.Ac>=(a&3))return Bd(this),a;wd(this);return a},I,I],fd=[Mc,Mc,Mc,Mc,Mc,Mc,I,I],dd=fd,Ch=[function(a){0>this.la?tc.call(this):(a=this.ye-this.yc,this.cd(this.la+2,this.yc),this.cd(this.la+4,65280|this.yc>>16),this.A-=11);return a},function(a){0>this.la?tc.call(this):(a=this.$d-this.Fc,this.cd(this.la+2,this.Fc),this.cd(this.la+4,65280|this.Fc>>16),this.A-= -12);return a},function(a){0>this.la?tc.call(this):(this.yc=this.ua(this.la+2)|this.wb(this.la+4)<<16,this.ye=this.yc+a,this.aa|=2,this.A-=11);return a},function(a){0>this.la?tc.call(this):(this.Fc=this.ua(this.la+2)|this.wb(this.la+4)<<16,this.$d=this.Fc+a,this.aa|=2,this.A-=12);return a},function(){this.A-=2+(0>this.la?0:1);return this.Cc},I,function(a){$e.call(this,a);this.A-=0>this.la?3:6;this.aa|=2;return a},I];function Pc(){Dh[this.ha()].call(this)} -function Rc(){H(this,this.Y);this.A-=this.B.qc}function uc(){var a=this.Y;H(this,this.H);H(this,this.J);H(this,this.K);H(this,this.C);H(this,a);H(this,this.I);H(this,this.G);H(this,this.F);this.A-=this.B.Fl}function vc(){this.F=this.La();this.G=this.La();this.I=this.La();this.Y+=2;this.C=this.La();this.K=this.La();this.J=this.La();this.H=this.La();this.A-=this.B.Dl}function wc(){M[this.ha()].call(this,Re)}function Qc(){yh[this.ha()].call(this,Se)}function xc(){H(this,this.L());this.A-=this.B.qc} -function yc(){M[this.ha()].call(this,Me)}function zc(){H(this,this.ha());this.A-=this.B.qc}function Ac(){M[this.ha()].call(this,Le)}function Bc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=ub(this.ra,this.K,this.Ga-b-1);this.Od(this.Za.gc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}} -function Cc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.Ga-b-1,d=ub(this.ra,this.K,d)|ub(this.ra,this.K,d)<<8;this.cd(this.Za.gc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}} -function Dc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.wb(this.zb.jd(this.G,0));this.G=this.G+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;Ab(this.ra,this.K,d,this.Ga-b-1);a&&(nd(this,-2),this.aa|=256)}} -function Ec(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.ua(this.zb.jd(this.G,1));this.G=this.G+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ga-b-1;Ab(this.ra,this.K,d&255,b);Ab(this.ra,this.K,d>>8,b);a&&(nd(this,-2),this.aa|=256)}}function Eh(){var a=this.M();td(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Fh(){var a=this.M();td(this)?this.A-=this.B.Wb:(G(this,this.va+a),this.A-=this.B.Vb)} -function Gh(){var a=this.M();od(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Hh(){var a=this.M();od(this)?this.A-=this.B.Wb:(G(this,this.va+a),this.A-=this.B.Vb)}function Ih(){var a=this.M();rd(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Jh(){var a=this.M();rd(this)?this.A-=this.B.Wb:(G(this,this.va+a),this.A-=this.B.Vb)}function Kh(){var a=this.M();od(this)||rd(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb} -function Lh(){var a=this.M();od(this)||rd(this)?this.A-=this.B.Wb:(G(this,this.va+a),this.A-=this.B.Vb)}function Mh(){var a=this.M();sd(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Nh(){var a=this.M();sd(this)?this.A-=this.B.Wb:(G(this,this.va+a),this.A-=this.B.Vb)}function Oh(){var a=this.M();pd(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Ph(){var a=this.M();pd(this)?this.A-=this.B.Wb:(G(this,this.va+a),this.A-=this.B.Vb)} -function Qh(){var a=this.M();!sd(this)!=!td(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Rh(){var a=this.M();!sd(this)==!td(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Sh(){var a=this.M();rd(this)||!sd(this)!=!td(this)?(G(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Th(){var a=this.M();rd(this)||!sd(this)!=!td(this)?this.A-=this.B.Wb:(G(this,this.va+a),this.A-=this.B.Vb)} -function Uh(){Ah[this.ha()].call(this,we,this.ha);this.A-=0>this.Ma?1:this.B.Ch}function Fc(){Ah[this.ha()].call(this,Fe,te)}function Gc(){Bh[this.ha()].call(this,Ge,te)}function Vh(){var a=this.L();G(this,this.La());this.Y=this.Y+a&65535;this.A-=this.B.Kl}function Wh(){G(this,this.La());this.A-=this.B.Hl} -function Hc(){var a=this.L(),b=this.ha()&31;this.A-=11;H(this,this.I);var c=this.Y;if(0>8,c,d=qd(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?Ad(this):vd(this);this.A-=this.B.Ne},function(){xh[this.ha()].call(this,Ud)},function(){yh[this.ha()].call(this,be)},function(){zh[this.ha()].call(this,Ud)},function(){M[this.ha()].call(this,be)},function(){this.H=this.H&-256|Ud.call(this,this.H&255,this.ha());this.A--},function(){this.H=be.call(this,this.H,this.L()); -this.A--},function(){this.aa|=20;this.D=this.N=this.zb;this.A-=this.B.oe},function(){var a=this.H&255,b=this.H>>8,c,d=qd(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?Ad(this):vd(this);this.A-=this.B.Ne},function(){this.pa=this.H;this.H=(this.ma=this.H+1)&65535;this.Z=this.H|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.J;this.J=(this.ma=this.J+1)&65535;this.Z=this.J|(this.Z&this.ga?1:0)<<16;this.ga=65536; +this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Ch=[function(){var a=this.ha();16>(a&56)&&(this.aa|=1);Ah[a].call(this,cd,te)},function(){var a=this.ha();a&16||(this.aa|=1);Ah[a].call(this,Bh,te)},function(){N[this.ha()].call(this,Se)},function(){N[this.ha()].call(this,Te)},M,function(){this.xa.Kc?jc.call(this,13,0,!0):(Ze.call(this,this.ua(2054)),this.F= +this.ua(2086),this.G=this.ua(2088),this.I=this.ua(2090),this.Y=this.ua(2092),this.C=this.ua(2094),this.K=this.ua(2096),this.J=this.ua(2098),this.H=this.ua(2100),nc(this.Za,this.ua(2084),2102),nc(this.xa,this.ua(2082),2108),nc(this.ub,this.ua(2080),2114),nc(this.zb,this.ua(2078),2120),Tc(this,this.ua(2072)),H(this,this.ua(2074)),this.yc=this.ua(2126)|this.ua(2128)<<16,this.ye=this.yc+this.ua(2130),nc(this.bd,this.ua(2076),2132),this.Fc=this.ua(2138)|this.ua(2140)<<16,this.$d=this.Fc+this.ua(2142), +nc(this.Ue,this.ua(2070),2144),this.A-=195)},M,M,M,M,M,sc,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M, +M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M],dd=[function(){this.A-=2+(0>this.la?0:1);return this.bd.sa},function(){this.A-=2+(0>this.la?0:1);return this.Ue.sa},function(a){this.aa|=2;this.bd.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.Ue.load(a);this.A-=17+(0>this.la?0:2);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Nb.load(a,!0)&&2048!=(this.Nb.Oa&2560)&&(this.Nb.Ac>=this.xa.Kc&&this.Nb.Ac>=(a&3)||7168==(this.Nb.Oa&7168)))return Ad(this),a; +vd(this);return a},function(a){this.aa|=2;this.A-=14+(0>this.la?0:2);if(0<=this.Nb.load(a,!0)&&512==(this.Nb.Oa&2560)&&this.Nb.Ac>=this.xa.Kc&&this.Nb.Ac>=(a&3))return Ad(this),a;vd(this);return a},L,L],ed=[Mc,Mc,Mc,Mc,Mc,Mc,L,L],cd=ed,Bh=[function(a){0>this.la?sc.call(this):(a=this.ye-this.yc,this.cd(this.la+2,this.yc),this.cd(this.la+4,65280|this.yc>>16),this.A-=11);return a},function(a){0>this.la?sc.call(this):(a=this.$d-this.Fc,this.cd(this.la+2,this.Fc),this.cd(this.la+4,65280|this.Fc>>16),this.A-= +12);return a},function(a){0>this.la?sc.call(this):(this.yc=this.ua(this.la+2)|this.mb(this.la+4)<<16,this.ye=this.yc+a,this.aa|=2,this.A-=11);return a},function(a){0>this.la?sc.call(this):(this.Fc=this.ua(this.la+2)|this.mb(this.la+4)<<16,this.$d=this.Fc+a,this.aa|=2,this.A-=12);return a},function(){this.A-=2+(0>this.la?0:1);return this.Cc},L,function(a){Ze.call(this,a);this.A-=0>this.la?3:6;this.aa|=2;return a},L];function Oc(){Ch[this.ha()].call(this)} +function Qc(){J(this,this.Y);this.A-=this.B.qc}function tc(){var a=this.Y;J(this,this.H);J(this,this.J);J(this,this.K);J(this,this.C);J(this,a);J(this,this.I);J(this,this.G);J(this,this.F);this.A-=this.B.El}function uc(){this.F=this.La();this.G=this.La();this.I=this.La();this.Y+=2;this.C=this.La();this.K=this.La();this.J=this.La();this.H=this.La();this.A-=this.B.Cl}function vc(){N[this.ha()].call(this,Qe)}function Pc(){xh[this.ha()].call(this,Re)}function wc(){J(this,this.L());this.A-=this.B.qc} +function xc(){N[this.ha()].call(this,Le)}function yc(){J(this,this.ha());this.A-=this.B.qc}function zc(){N[this.ha()].call(this,Ke)}function Ac(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=tb(this.ra,this.K,this.Ga-b-1);this.Od(this.Za.gc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(md(this,-2),this.aa|=256)}} +function Bc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.Ga-b-1,d=tb(this.ra,this.K,d)|tb(this.ra,this.K,d)<<8;this.cd(this.Za.gc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(md(this,-2),this.aa|=256)}} +function Cc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.mb(this.zb.jd(this.G,0));this.G=this.G+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;zb(this.ra,this.K,d,this.Ga-b-1);a&&(md(this,-2),this.aa|=256)}} +function Dc(){var a=1,b=0,c=5;this.Ba&192&&(a=this.J,b=1,this.Ba&256&&(c=4));if(a--){var d=this.ua(this.zb.jd(this.G,1));this.G=this.G+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ga-b-1;zb(this.ra,this.K,d&255,b);zb(this.ra,this.K,d>>8,b);a&&(md(this,-2),this.aa|=256)}}function Dh(){var a=this.M();sd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Eh(){var a=this.M();sd(this)?this.A-=this.B.Wb:(H(this,this.va+a),this.A-=this.B.Vb)} +function Fh(){var a=this.M();nd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Gh(){var a=this.M();nd(this)?this.A-=this.B.Wb:(H(this,this.va+a),this.A-=this.B.Vb)}function Hh(){var a=this.M();qd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Ih(){var a=this.M();qd(this)?this.A-=this.B.Wb:(H(this,this.va+a),this.A-=this.B.Vb)}function Jh(){var a=this.M();nd(this)||qd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb} +function Kh(){var a=this.M();nd(this)||qd(this)?this.A-=this.B.Wb:(H(this,this.va+a),this.A-=this.B.Vb)}function Lh(){var a=this.M();rd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Mh(){var a=this.M();rd(this)?this.A-=this.B.Wb:(H(this,this.va+a),this.A-=this.B.Vb)}function Nh(){var a=this.M();od(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Oh(){var a=this.M();od(this)?this.A-=this.B.Wb:(H(this,this.va+a),this.A-=this.B.Vb)} +function Ph(){var a=this.M();!rd(this)!=!sd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Qh(){var a=this.M();!rd(this)==!sd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Rh(){var a=this.M();qd(this)||!rd(this)!=!sd(this)?(H(this,this.va+a),this.A-=this.B.Vb):this.A-=this.B.Wb}function Sh(){var a=this.M();qd(this)||!rd(this)!=!sd(this)?this.A-=this.B.Wb:(H(this,this.va+a),this.A-=this.B.Vb)} +function Th(){zh[this.ha()].call(this,ve,this.ha);this.A-=0>this.Ma?1:this.B.Ch}function Ec(){zh[this.ha()].call(this,Ee,se)}function Fc(){Ah[this.ha()].call(this,Fe,se)}function Uh(){var a=this.L();H(this,this.La());this.Y=this.Y+a&65535;this.A-=this.B.Jl}function Vh(){H(this,this.La());this.A-=this.B.Gl} +function Gc(){var a=this.L(),b=this.ha()&31;this.A-=11;J(this,this.I);var c=this.Y;if(0>8,c,d=pd(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?zd(this):ud(this);this.A-=this.B.Ne},function(){wh[this.ha()].call(this,Td)},function(){xh[this.ha()].call(this,ae)},function(){yh[this.ha()].call(this,Td)},function(){N[this.ha()].call(this,ae)},function(){this.H=this.H&-256|Td.call(this,this.H&255,this.ha());this.A--},function(){this.H=ae.call(this,this.H,this.L()); +this.A--},function(){this.aa|=20;this.D=this.N=this.zb;this.A-=this.B.oe},function(){var a=this.H&255,b=this.H>>8,c,d=pd(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.Z=a);this.ga=65536;c&&(this.Z|=this.ga);d?zd(this):ud(this);this.A-=this.B.Ne},function(){this.pa=this.H;this.H=(this.ma=this.H+1)&65535;this.Z=this.H|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.J;this.J=(this.ma=this.J+1)&65535;this.Z=this.J|(this.Z&this.ga?1:0)<<16;this.ga=65536; this.A-=2},function(){this.pa=this.K;this.K=(this.ma=this.K+1)&65535;this.Z=this.K|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.C;this.C=(this.ma=this.C+1)&65535;this.Z=this.C|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.Y;this.Y=(this.ma=this.Y+1)&65535;this.Z=this.Y|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.I;this.I=(this.ma=this.I+1)&65535;this.Z=this.I|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa= this.G;this.G=(this.ma=this.G+1)&65535;this.Z=this.G|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.F;this.F=(this.ma=this.F+1)&65535;this.Z=this.F|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.H;this.H=(this.ma=this.H-1)&65535;this.Z=this.H|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.J;this.J=(this.ma=this.J-1)&65535;this.Z=this.J|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.K;this.K= (this.ma=this.K-1)&65535;this.Z=this.K|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.C;this.C=(this.ma=this.C-1)&65535;this.Z=this.C|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.Y;this.Y=(this.ma=this.Y-1)&65535;this.Z=this.Y|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.I;this.I=(this.ma=this.I-1)&65535;this.Z=this.I|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.G;this.G=(this.ma=this.G- -1)&65535;this.Z=this.G|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.F;this.F=(this.ma=this.F-1)&65535;this.Z=this.F|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){H(this,this.H);this.A-=this.B.qc},function(){H(this,this.J);this.A-=this.B.qc},function(){H(this,this.K);this.A-=this.B.qc},function(){H(this,this.C);this.A-=this.B.qc},function(){H(this,this.Y-2&65535);this.A-=this.B.qc},function(){H(this,this.I);this.A-=this.B.qc},function(){H(this,this.G);this.A-= -this.B.qc},function(){H(this,this.F);this.A-=this.B.qc},function(){this.H=this.La();this.A-=this.B.ic},function(){this.J=this.La();this.A-=this.B.ic},function(){this.K=this.La();this.A-=this.B.ic},function(){this.C=this.La();this.A-=this.B.ic},function(){this.Y=this.La();this.A-=this.B.ic},function(){this.I=this.La();this.A-=this.B.ic},function(){this.G=this.La();this.A-=this.B.ic},function(){this.F=this.La();this.A-=this.B.ic},Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Eh,Fh,Gh,Hh,Ih,Jh,Kh, -Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,function(){Bh[this.ha()].call(this,xe,this.L);this.A-=0>this.Ma?1:this.B.Ch},Uh,function(){Bh[this.ha()].call(this,xe,this.M);this.A-=0>this.Ma?1:this.B.Ch},function(){xh[this.ha()].call(this,Je)},function(){yh[this.ha()].call(this,Ke)},function(){zh[this.Sg=this.ha()].call(this,Ye)},function(){M[this.Sg=this.ha()].call(this,Ze)},function(){this.aa|=1;xh[this.ha()].call(this,He)},function(){this.aa|=1;yh[this.ha()].call(this,He)},function(){zh[this.ha()].call(this,He)}, -function(){M[this.ha()].call(this,He)},function(){var a=this.ha();switch((a&56)>>3){case 0:this.Fb=this.Za.ta;break;case 1:this.Fb=this.xa.ta;break;case 2:this.Fb=this.tb.ta;break;case 3:this.Fb=this.zb.ta;break;default:K.call(this);return}this.aa|=1;yh[a].call(this,Ie)},function(){this.aa|=1;this.D=this.N=this.bm;M[this.ha()].call(this,Oe)},function(){var a,b=this.ha(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Ia){tc.call(this); -return}switch(c){case 1:a=this.J;break;case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}M[b].call(this,He);switch(c){case 0:md(this,this.H);this.H=a;break;case 1:jd(this,this.J);this.J=a;break;case 2:ld(this,this.K);this.K=a;break;case 3:kd(this,this.C);this.C=a;break;case 4:md(this,this.Y);this.Y=a;break;case 5:jd(this,this.I);this.I=a;break;case 6:ld(this,this.G);this.G=a;break;case 7:kd(this,this.F),this.F=a}},function(){this.aa|=1;Bh[this.ha()].call(this,ye,this.La)}, +1)&65535;this.Z=this.G|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){this.pa=this.F;this.F=(this.ma=this.F-1)&65535;this.Z=this.F|(this.Z&this.ga?1:0)<<16;this.ga=65536;this.A-=2},function(){J(this,this.H);this.A-=this.B.qc},function(){J(this,this.J);this.A-=this.B.qc},function(){J(this,this.K);this.A-=this.B.qc},function(){J(this,this.C);this.A-=this.B.qc},function(){J(this,this.Y-2&65535);this.A-=this.B.qc},function(){J(this,this.I);this.A-=this.B.qc},function(){J(this,this.G);this.A-= +this.B.qc},function(){J(this,this.F);this.A-=this.B.qc},function(){this.H=this.La();this.A-=this.B.ic},function(){this.J=this.La();this.A-=this.B.ic},function(){this.K=this.La();this.A-=this.B.ic},function(){this.C=this.La();this.A-=this.B.ic},function(){this.Y=this.La();this.A-=this.B.ic},function(){this.I=this.La();this.A-=this.B.ic},function(){this.G=this.La();this.A-=this.B.ic},function(){this.F=this.La();this.A-=this.B.ic},Dh,Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Dh,Eh,Fh,Gh,Hh,Ih,Jh, +Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,function(){Ah[this.ha()].call(this,we,this.L);this.A-=0>this.Ma?1:this.B.Ch},Th,function(){Ah[this.ha()].call(this,we,this.M);this.A-=0>this.Ma?1:this.B.Ch},function(){wh[this.ha()].call(this,Ie)},function(){xh[this.ha()].call(this,Je)},function(){yh[this.Sg=this.ha()].call(this,Xe)},function(){N[this.Sg=this.ha()].call(this,Ye)},function(){this.aa|=1;wh[this.ha()].call(this,Ge)},function(){this.aa|=1;xh[this.ha()].call(this,Ge)},function(){yh[this.ha()].call(this,Ge)}, +function(){N[this.ha()].call(this,Ge)},function(){var a=this.ha();switch((a&56)>>3){case 0:this.Fb=this.Za.sa;break;case 1:this.Fb=this.xa.sa;break;case 2:this.Fb=this.ub.sa;break;case 3:this.Fb=this.zb.sa;break;default:M.call(this);return}this.aa|=1;xh[a].call(this,He)},function(){this.aa|=1;this.D=this.N=this.am;N[this.ha()].call(this,Ne)},function(){var a,b=this.ha(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Ia){sc.call(this); +return}switch(c){case 1:a=this.J;break;case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}N[b].call(this,Ge);switch(c){case 0:ld(this,this.H);this.H=a;break;case 1:id(this,this.J);this.J=a;break;case 2:kd(this,this.K);this.K=a;break;case 3:jd(this,this.C);this.C=a;break;case 4:ld(this,this.Y);this.Y=a;break;case 5:id(this,this.I);this.I=a;break;case 6:kd(this,this.G);this.G=a;break;case 7:jd(this,this.F),this.F=a}},function(){this.aa|=1;Ah[this.ha()].call(this,xe,this.La)}, function(){this.A-=3},function(){var a=this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.Y;this.Y=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;this.A-=2},function(){this.K=this.H& -32768?65535:0;this.A-=this.B.Rk},function(){var a=this.L(),b=this.L();H(this,this.xa.ta);H(this,this.va);Tc(this,a,b);this.A-=this.B.Uk},function(){K.call(this)},function(){H(this,Wc(this));this.A-=this.B.qc},function(){Uc(this,this.La());this.A-=this.B.ic},function(){var a=this.H>>8;a&1?zd(this):ud(this);a&4?pd(this)||(this.ma^=1):pd(this)&&(this.ma^=1);a&16?Ad(this):vd(this);a&64?Bd(this):wd(this);a&128?Cd(this):xd(this);this.A-=this.B.Eb},function(){this.H=this.H&255|(Wc(this)&213)<<8;this.A-= -this.B.Eb},function(){this.H=this.H&-256|this.U(this.D,this.L());this.A-=this.B.hj},function(){this.H=this.V(this.D,this.L());this.A-=this.B.hj},function(){var a=this.L(),b=this.H;this.Od(this.D.gc(a,0),b);this.A-=this.B.ij},function(){var a=this.L(),b=this.H;this.cd(this.D.gc(a,1),b);this.A-=this.B.ij},function(){var a=1,b=0,c=this.B.jj;this.Ba&192&&(a=this.J,b=1,c=this.B.lj,this.Ba&256||(this.A-=this.B.kj));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G);this.Od(this.Za.gc(this.F,0),e); -this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.jj;this.Ba&192&&(a=this.J,b=1,c=this.B.lj,this.Ba&256||(this.A-=this.B.kj));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G);this.cd(this.Za.gc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.Ui;this.Ba&192&&(a=this.J,b=1,c=this.B.Wi,this.Ba&256|| -(this.A-=this.B.Vi));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G),f=this.O(this.Za,this.F);Ud.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.sb;this.J-=b;a&&rd(this)==(this.Ba&64)&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.Ui;this.Ba&192&&(a=this.J,b=1,c=this.B.Wi,this.Ba&256||(this.A-=this.B.Vi));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G),f=this.P(this.Za,this.F);be.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+ -d&65535;this.A-=c-this.B.sb;this.J-=b;a&&rd(this)==(this.Ba&64)&&(nd(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){this.Z=this.ma=this.pa=this.H&255&this.ha();this.ga=256;this.A-=this.B.Ne},function(){this.Z=this.ma=this.pa=this.H&this.L();this.ga=65536;this.A-=this.B.Ne},function(){var a=1,b=0,c=this.B.uj;this.Ba&192&&(a=this.J,b=1,c=this.B.wj,this.Ba&256||(this.A-=this.B.vj));if(a--){var d=this.H;this.Od(this.Za.gc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&& -(nd(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.uj;this.Ba&192&&(a=this.J,b=1,c=this.B.wj,this.Ba&256||(this.A-=this.B.vj));if(a--){var d=this.H;this.cd(this.Za.gc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(nd(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.bj;this.Ba&192&&(a=this.J,b=1,c=this.B.dj,this.Ba&256||(this.A-=this.B.cj));a--&&(this.H=this.H&-256|this.U(this.D,this.G),this.G=this.G+(this.Ca&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(nd(this, -this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.bj;this.Ba&192&&(a=this.J,b=1,c=this.B.dj,this.Ba&256||(this.A-=this.B.cj));a--&&(this.H=this.V(this.D,this.G),this.G=this.G+(this.Ca&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(nd(this,this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.oj;this.Ba&192&&(a=this.J,b=1,c=this.B.qj,this.Ba&256||(this.A-=this.B.pj));a--&&(Ud.call(this,this.H&255,this.O(this.Za,this.F)),this.F=this.F+(this.Ca&1024?-1:1)&65535,this.A-=c-this.B.sb, -this.J-=b,a&&rd(this)==(this.Ba&64)&&(nd(this,-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.oj;this.Ba&192&&(a=this.J,b=1,c=this.B.qj,this.Ba&256||(this.A-=this.B.pj));a--&&(be.call(this,this.H,this.P(this.Za,this.F)),this.F=this.F+(this.Ca&1024?-2:2)&65535,this.A-=c-this.B.sb,this.J-=b,a&&rd(this)==(this.Ba&64)&&(nd(this,-2),this.aa|=256))},function(){this.H=this.H&-256|this.ha();this.A-=this.B.Eb},function(){this.J=this.J&-256|this.ha();this.A-=this.B.Eb},function(){this.K=this.K&-256|this.ha(); +32768?65535:0;this.A-=this.B.Qk},function(){var a=this.L(),b=this.L();J(this,this.xa.sa);J(this,this.va);Sc(this,a,b);this.A-=this.B.Tk},function(){M.call(this)},function(){J(this,Vc(this));this.A-=this.B.qc},function(){Tc(this,this.La());this.A-=this.B.ic},function(){var a=this.H>>8;a&1?yd(this):td(this);a&4?od(this)||(this.ma^=1):od(this)&&(this.ma^=1);a&16?zd(this):ud(this);a&64?Ad(this):vd(this);a&128?Bd(this):wd(this);this.A-=this.B.Eb},function(){this.H=this.H&255|(Vc(this)&213)<<8;this.A-= +this.B.Eb},function(){this.H=this.H&-256|this.U(this.D,this.L());this.A-=this.B.gj},function(){this.H=this.V(this.D,this.L());this.A-=this.B.gj},function(){var a=this.L(),b=this.H;this.Od(this.D.gc(a,0),b);this.A-=this.B.hj},function(){var a=this.L(),b=this.H;this.cd(this.D.gc(a,1),b);this.A-=this.B.hj},function(){var a=1,b=0,c=this.B.ij;this.Ba&192&&(a=this.J,b=1,c=this.B.kj,this.Ba&256||(this.A-=this.B.jj));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G);this.Od(this.Za.gc(this.F,0),e); +this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(md(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.ij;this.Ba&192&&(a=this.J,b=1,c=this.B.kj,this.Ba&256||(this.A-=this.B.jj));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G);this.cd(this.Za.gc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(md(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.Ti;this.Ba&192&&(a=this.J,b=1,c=this.B.Vi,this.Ba&256|| +(this.A-=this.B.Ui));if(a--){var d=this.Ca&1024?-1:1,e=this.U(this.D,this.G),f=this.O(this.Za,this.F);Td.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.tb;this.J-=b;a&&qd(this)==(this.Ba&64)&&(md(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.Ti;this.Ba&192&&(a=this.J,b=1,c=this.B.Vi,this.Ba&256||(this.A-=this.B.Ui));if(a--){var d=this.Ca&1024?-2:2,e=this.V(this.D,this.G),f=this.P(this.Za,this.F);ae.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+ +d&65535;this.A-=c-this.B.tb;this.J-=b;a&&qd(this)==(this.Ba&64)&&(md(this,this.Ba&16?-3:-2),this.aa|=256)}},function(){this.Z=this.ma=this.pa=this.H&255&this.ha();this.ga=256;this.A-=this.B.Ne},function(){this.Z=this.ma=this.pa=this.H&this.L();this.ga=65536;this.A-=this.B.Ne},function(){var a=1,b=0,c=this.B.tj;this.Ba&192&&(a=this.J,b=1,c=this.B.vj,this.Ba&256||(this.A-=this.B.uj));if(a--){var d=this.H;this.Od(this.Za.gc(this.F,0),d);this.F=this.F+(this.Ca&1024?-1:1)&65535;this.A-=c;this.J-=b;a&& +(md(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.tj;this.Ba&192&&(a=this.J,b=1,c=this.B.vj,this.Ba&256||(this.A-=this.B.uj));if(a--){var d=this.H;this.cd(this.Za.gc(this.F,1),d);this.F=this.F+(this.Ca&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(md(this,-2),this.aa|=256)}},function(){var a=1,b=0,c=this.B.aj;this.Ba&192&&(a=this.J,b=1,c=this.B.cj,this.Ba&256||(this.A-=this.B.bj));a--&&(this.H=this.H&-256|this.U(this.D,this.G),this.G=this.G+(this.Ca&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(md(this, +this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.aj;this.Ba&192&&(a=this.J,b=1,c=this.B.cj,this.Ba&256||(this.A-=this.B.bj));a--&&(this.H=this.V(this.D,this.G),this.G=this.G+(this.Ca&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(md(this,this.Ba&16?-3:-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.nj;this.Ba&192&&(a=this.J,b=1,c=this.B.pj,this.Ba&256||(this.A-=this.B.oj));a--&&(Td.call(this,this.H&255,this.O(this.Za,this.F)),this.F=this.F+(this.Ca&1024?-1:1)&65535,this.A-=c-this.B.tb, +this.J-=b,a&&qd(this)==(this.Ba&64)&&(md(this,-2),this.aa|=256))},function(){var a=1,b=0,c=this.B.nj;this.Ba&192&&(a=this.J,b=1,c=this.B.pj,this.Ba&256||(this.A-=this.B.oj));a--&&(ae.call(this,this.H,this.P(this.Za,this.F)),this.F=this.F+(this.Ca&1024?-2:2)&65535,this.A-=c-this.B.tb,this.J-=b,a&&qd(this)==(this.Ba&64)&&(md(this,-2),this.aa|=256))},function(){this.H=this.H&-256|this.ha();this.A-=this.B.Eb},function(){this.J=this.J&-256|this.ha();this.A-=this.B.Eb},function(){this.K=this.K&-256|this.ha(); this.A-=this.B.Eb},function(){this.C=this.C&-256|this.ha();this.A-=this.B.Eb},function(){this.H=this.H&255|this.ha()<<8;this.A-=this.B.Eb},function(){this.J=this.J&255|this.ha()<<8;this.A-=this.B.Eb},function(){this.K=this.K&255|this.ha()<<8;this.A-=this.B.Eb},function(){this.C=this.C&255|this.ha()<<8;this.A-=this.B.Eb},function(){this.H=this.L();this.A-=this.B.Eb},function(){this.J=this.L();this.A-=this.B.Eb},function(){this.K=this.L();this.A-=this.B.Eb},function(){this.C=this.L();this.A-=this.B.Eb}, -function(){this.Y=this.L();this.A-=this.B.Eb},function(){this.I=this.L();this.A-=this.B.Eb},function(){this.G=this.L();this.A-=this.B.Eb},function(){this.F=this.L();this.A-=this.B.Eb},Vh,Wh,Vh,Wh,function(){M[this.ha()].call(this,Qe)},function(){M[this.ha()].call(this,Pe)},function(){this.aa|=1;Ah[this.ha()].call(this,ze,this.ha)},function(){this.aa|=1;Bh[this.ha()].call(this,ze,this.L)},Xh,Yh,Xh,Yh,function(){Hd.call(this,3,null,this.B.kl)},function(){var a=this.ha();Yc(this,a)?Hd.call(this,a,null, -0):this.A--},function(){td(this)?Hd.call(this,4,null,this.B.ll):this.A-=this.B.ml},function(){Tc(this,this.La(),this.La());Uc(this,this.La());this.Zg&&cd(this,this.Ga);this.A-=this.B.il},function(){Ah[this.ha()].call(this,Ae,re)},function(){Bh[this.ha()].call(this,Be,re)},function(){Ah[this.ha()].call(this,Ae,se)},function(){Bh[this.ha()].call(this,Be,se)},function(){var a=this.ha(),b=this.H&255;this.H=(b/a&255)<<8|b%a;this.ga=256;this.Z=this.ma=b;this.A-=this.B.Ok},function(){var a=this.ha();this.Z= -this.ma=this.H=(this.H>>8)*a+this.H&255;this.ga=256;this.A-=this.B.Nk},function(){this.H=this.H&-256|(od(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.U(this.D,this.C+(this.H&255)&65535);this.A-=this.B.Ml},Zh,Zh,Zh,Zh,Zh,Zh,Zh,Zh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.Z&this.ga-1?(G(this,this.va+a),this.A-=this.B.tl):this.A-=this.B.ej},function(){var a=this.M();!(this.J=this.J-1&65535)||this.Z&this.ga-1?this.A-=this.B.gj:(G(this,this.va+a),this.A-=this.B.fj)},function(){var a= -this.M();(this.J=this.J-1&65535)?(G(this,this.va+a),this.A-=this.B.sl):this.A-=this.B.ej},function(){var a=this.M();this.J?this.A-=this.B.gj:(G(this,this.va+a),this.A-=this.B.fj)},function(){var a=this.ha();this.H=this.H&-256|ub(this.ra,a,this.Ga-2);this.A-=this.B.Zi},function(){var a=this.ha();this.H=ub(this.ra,a,this.Ga-1)|ub(this.ra,a+1&65535,this.Ga-2)<<8;this.A-=this.B.Zi},function(){var a=this.ha();Ab(this.ra,a,this.H&255,this.Ga-2);this.A-=this.B.nj},function(){var a=this.ha();Ab(this.ra,a, -this.H&255,this.Ga-2);Ab(this.ra,a+1&65535,this.H>>8,this.Ga-2);this.A-=this.B.nj},function(){var a=this.L();H(this,this.va);G(this,this.va+a);this.A-=this.B.Sk},function(){var a=this.L();G(this,this.va+a);this.A-=this.B.$i},function(){Tc(this,this.L(),this.L());this.A-=this.B.ol},function(){var a=this.M();G(this,this.va+a);this.A-=this.B.$i},function(){this.H=this.H&-256|ub(this.ra,this.K,this.Ga-1);this.A-=this.B.Yi},function(){this.H=ub(this.ra,this.K,this.Ga-1)|ub(this.ra,this.K+1&65535,this.Ga- -1)<<8;this.A-=this.B.Yi},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);this.A-=this.B.mj},function(){Ab(this.ra,this.K,this.H&255,this.Ga-1);Ab(this.ra,this.K+1&65535,this.H>>8,this.Ga-1);this.A-=this.B.mj},$h,$h,function(){this.aa|=132;this.A-=this.B.oe},function(){this.aa|=68;this.A-=this.B.oe},function(){this.mb|=4;this.A-=2;this.da&&Ed(this.da)?(nd(this,-1),this.xb()):this.Ca&512||(this.da&&nd(this,-1),this.xb())},function(){od(this)?ud(this):zd(this);this.A-=2},function(){this.Fb=-1;Ah[this.ha()].call(this, -De,ue);0<=this.Fb&&(this.H=this.Fb)},function(){this.Fb=-1;Bh[this.ha()].call(this,Ee,ue);0<=this.Fb&&(this.H=this.Fb,this.K=this.yg)},function(){this.Z&=~this.ga;this.A-=2},function(){this.Z|=this.ga;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.Qk},function(){this.Ca|=512;this.aa|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){Ah[this.ha()].call(this,Lc,ue)},function(){Bh[this.ha()].call(this,Oc,ue)}]; -function N(a){y.call(this,"ChipSet",a,N);this.Ia=a.model;this.Ia=void 0!==this.Ia?parseInt(this.Ia,10):ai;this.Zb=0;var b=a.sw1;if(b)this.Zb=bi(b,ci|di.jm);else{this.Vd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.Vd=b);if(b=this.Vd.length)this.Zb|=ei.Sh,b--,this.Zb|=(b&3)<=fi&&(this.Rf=this.Sf=2);this.nh=a.scaleTimers||!1; -this.dp=a.rtcDate;this.xk=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.ji=new webkitAudioContext);this.reset(!0);this.Ta()}Ua(y,N);var ai=5150,fi=5170,gi={none:0,tv:1,color:2,mono:3,ega:0},ei={Sh:1,ONE:0,Xp:64,Vp:128,tp:192,Df:192,Ef:6},ci=12,di={Wp:16,mp:32,jm:48,Df:48,Ef:4};k=N.prototype; -k.Ab=function(a,b,c,d){switch(c){case "sw1":return this.za[c]=d,hi(this,c,d,this.Zb,{0:this.Ia==ai?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==ai?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==ai)return this.za[c]=d,hi(this,c,d,this.ue,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.za[c]=d,!0}return!1}; -k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.da=d;this.Ka=a;this.ab=eb(a,"Keyboard");this.Nl=Math.round(c.ca.Jd/1193181);tb(b,this,ii);zb(b,this,ji);this.Iab;b++){var c=13>=b?si(e,b):e.sa[b];a&&(a+="\n");a+="CMOS[0x"+q(b)+"]: 0x"+q(c)}e.da.message(a)})}Xc(c,26,this,this.Gn)};k.Yb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0}; -k.reset=function(a){var b;this.dd=this.Zb;this.Xe=this.ue;ti(this);this.eb=Array(this.Rf);for(b=0;b=fi){this.jb=16;this.wd=0;this.gd=16;this.Pg=0;this.Ae=160;512<=xi(this)&&(this.Ae|=16);3==yi(this)&&(this.Ae|=64);this.ci=3;this.Of=0;this.Lg=Array(7);this.Be=0;a&&(this.sa=Array(64)); -zi(this,this.dp);for(a=21;24>=a;a++)this.sa[a]=0;for(a=14;46>a;a++)void 0===this.sa[a]&&(this.sa[a]=0);this.sa[20]=this.dd&(di.Df|2|ei.Sh|ei.Df);this.sa[16]=Ai(this,0)<<4|Ai(this,1);Bi(this)}}; -function zi(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.fa("CMOS date invalid ("+b+"), using "+c)):b&&a.fa("CMOS date: "+c);a.sa[0]=c.getSeconds();a.sa[1]=0;a.sa[2]=c.getMinutes();a.sa[3]=0;a.sa[4]=c.getHours();a.sa[5]=0;a.sa[6]=c.getDay()+1;a.sa[7]=c.getDate();a.sa[8]=c.getMonth()+1;c=c.getFullYear();a.sa[9]=c%100;c/=100;a.sa[50]=c%10|c/10<<4;a.gg=-1;a.sa[10]=38;a.sa[11]=2;a.sa[12]=0;a.sa[13]=128} -function si(a,b){var c=a.sa[b];if(10>b){var d=!1;4!=b&&5!=b||a.sa[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.sa[11]&4||(d&&128c;c++)b+=a.sa[c];a.sa[47]=b&255;a.sa[46]=b>>8} -k.save=function(){var a=new gd(this);a.set(0,[this.Zb,this.ue,this.dd,this.Xe]);for(var b=[],c=0;c=fi&&(a.set(5,[this.jb,this.wd,this.gd,this.Pg,this.Ae,this.ci]),a.set(6,[this.Of,this.Lg,this.Be,this.sa,this.gg]));return a.data()}; -k.restore=function(a){var b,c;b=a[0];this.Zb=b[0];this.ue=b[1];this.dd=b[2];this.Xe=b[3];b=a[1];this.eb=Array(this.Rf);for(c=0;c>2)+1)*a.Jn+32*((b?a.ue:a.Xe)&15)}function Ei(a,b){var c=b?a.Zb:a.dd;return a.Ia!=ai||c&ei.Sh?((c&ei.Df)>>ei.Ef)+1:0} -function Ai(a,b){if(b>di.Ef} -function hi(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='
'+g+"
\n"}c.innerHTML=f;b=A(c,"pcjs-bitCell");c=null;for(g=0;g>8)*a+this.H&255;this.ga=256;this.A-=this.B.Mk},function(){this.H=this.H&-256|(nd(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.U(this.D,this.C+(this.H&255)&65535);this.A-=this.B.Ll},Yh,Yh,Yh,Yh,Yh,Yh,Yh,Yh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.Z&this.ga-1?(H(this,this.va+a),this.A-=this.B.sl):this.A-=this.B.dj},function(){var a=this.M();!(this.J=this.J-1&65535)||this.Z&this.ga-1?this.A-=this.B.fj:(H(this,this.va+a),this.A-=this.B.ej)},function(){var a= +this.M();(this.J=this.J-1&65535)?(H(this,this.va+a),this.A-=this.B.rl):this.A-=this.B.dj},function(){var a=this.M();this.J?this.A-=this.B.fj:(H(this,this.va+a),this.A-=this.B.ej)},function(){var a=this.ha();this.H=this.H&-256|tb(this.ra,a,this.Ga-2);this.A-=this.B.Yi},function(){var a=this.ha();this.H=tb(this.ra,a,this.Ga-1)|tb(this.ra,a+1&65535,this.Ga-2)<<8;this.A-=this.B.Yi},function(){var a=this.ha();zb(this.ra,a,this.H&255,this.Ga-2);this.A-=this.B.mj},function(){var a=this.ha();zb(this.ra,a, +this.H&255,this.Ga-2);zb(this.ra,a+1&65535,this.H>>8,this.Ga-2);this.A-=this.B.mj},function(){var a=this.L();J(this,this.va);H(this,this.va+a);this.A-=this.B.Rk},function(){var a=this.L();H(this,this.va+a);this.A-=this.B.Zi},function(){Sc(this,this.L(),this.L());this.A-=this.B.nl},function(){var a=this.M();H(this,this.va+a);this.A-=this.B.Zi},function(){this.H=this.H&-256|tb(this.ra,this.K,this.Ga-1);this.A-=this.B.Xi},function(){this.H=tb(this.ra,this.K,this.Ga-1)|tb(this.ra,this.K+1&65535,this.Ga- +1)<<8;this.A-=this.B.Xi},function(){zb(this.ra,this.K,this.H&255,this.Ga-1);this.A-=this.B.lj},function(){zb(this.ra,this.K,this.H&255,this.Ga-1);zb(this.ra,this.K+1&65535,this.H>>8,this.Ga-1);this.A-=this.B.lj},Zh,Zh,function(){this.aa|=132;this.A-=this.B.oe},function(){this.aa|=68;this.A-=this.B.oe},function(){this.nb|=4;this.A-=2;this.fa&&Dd(this.fa)?(md(this,-1),this.xb()):this.Ca&512||(this.fa&&md(this,-1),this.xb())},function(){nd(this)?td(this):yd(this);this.A-=2},function(){this.Fb=-1;zh[this.ha()].call(this, +Ce,te);0<=this.Fb&&(this.H=this.Fb)},function(){this.Fb=-1;Ah[this.ha()].call(this,De,te);0<=this.Fb&&(this.H=this.Fb,this.K=this.yg)},function(){this.Z&=~this.ga;this.A-=2},function(){this.Z|=this.ga;this.A-=2},function(){this.Ca&=-513;this.A-=this.B.Pk},function(){this.Ca|=512;this.aa|=4;this.A-=2},function(){this.Ca&=-1025;this.A-=2},function(){this.Ca|=1024;this.A-=2},function(){zh[this.ha()].call(this,Lc,te)},function(){Ah[this.ha()].call(this,Nc,te)}]; +function O(a){y.call(this,"ChipSet",a,O);this.Ia=a.model;this.Ia=void 0!==this.Ia?parseInt(this.Ia,10):$h;this.Zb=0;var b=a.sw1;if(b)this.Zb=ai(b,bi|ci.im);else{this.Vd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.Vd=b);if(b=this.Vd.length)this.Zb|=di.Sh,b--,this.Zb|=(b&3)<=ei&&(this.Rf=this.Sf=2);this.nh=a.scaleTimers||!1; +this.bp=a.rtcDate;this.wk=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.ji=new webkitAudioContext);this.reset(!0);this.Ta()}z(y,O);var $h=5150,ei=5170,fi={none:0,tv:1,color:2,mono:3,ega:0},di={Sh:1,ONE:0,Vp:64,Tp:128,rp:192,Df:192,Ef:6},bi=12,ci={Up:16,kp:32,im:48,Df:48,Ef:4};k=O.prototype; +k.Ab=function(a,b,c,d){switch(c){case "sw1":return this.za[c]=d,gi(this,c,d,this.Zb,{0:this.Ia==$h?"Bootable Floppy Drive":"Loop on POST",1:this.Ia==$h?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Ia==$h)return this.za[c]=d,gi(this,c,d,this.ue,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.za[c]=d,!0}return!1}; +k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.Ka=a;this.ab=db(a,"Keyboard");this.Ml=Math.round(c.ca.Jd/1193181);sb(b,this,hi);yb(b,this,ii);this.Iab;b++){var c=13>=b?ri(e,b):e.ta[b];a&&(a+="\n");a+="CMOS[0x"+t(b)+"]: 0x"+t(c)}e.fa.message(a)})}Wc(c,si,this,this.Gn)};k.Yb=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0}; +k.reset=function(a){var b;this.dd=this.Zb;this.Xe=this.ue;ti(this);this.eb=Array(this.Rf);for(b=0;b=ei){this.jb=16;this.wd=0;this.gd=16;this.Pg=0;this.Ae=160;512<=xi(this)&&(this.Ae|=16);3==yi(this)&&(this.Ae|=64);this.ci=3;this.Of=0;this.Lg=Array(7);this.Be=0;a&&(this.ta=Array(64)); +zi(this,this.bp);for(a=21;24>=a;a++)this.ta[a]=0;for(a=14;46>a;a++)void 0===this.ta[a]&&(this.ta[a]=0);this.ta[20]=this.dd&(ci.Df|2|di.Sh|di.Df);this.ta[16]=Ai(this,0)<<4|Ai(this,1);Bi(this)}}; +function zi(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.da("CMOS date invalid ("+b+"), using "+c)):b&&a.da("CMOS date: "+c);a.ta[0]=c.getSeconds();a.ta[1]=0;a.ta[2]=c.getMinutes();a.ta[3]=0;a.ta[4]=c.getHours();a.ta[5]=0;a.ta[6]=c.getDay()+1;a.ta[7]=c.getDate();a.ta[8]=c.getMonth()+1;c=c.getFullYear();a.ta[9]=c%100;c/=100;a.ta[50]=c%10|c/10<<4;a.gg=-1;a.ta[10]=38;a.ta[11]=2;a.ta[12]=0;a.ta[13]=128} +function ri(a,b){var c=a.ta[b];if(10>b){var d=!1;4!=b&&5!=b||a.ta[11]&2||(c=12>c?c?c:12:(c-=12)?c+128:140,d=!0);a.ta[11]&4||(d&&128c;c++)b+=a.ta[c];a.ta[47]=b&255;a.ta[46]=b>>8} +k.save=function(){var a=new fd(this);a.set(0,[this.Zb,this.ue,this.dd,this.Xe]);for(var b=[],c=0;c=ei&&(a.set(5,[this.jb,this.wd,this.gd,this.Pg,this.Ae,this.ci]),a.set(6,[this.Of,this.Lg,this.Be,this.ta,this.gg]));return a.data()}; +k.restore=function(a){var b,c;b=a[0];this.Zb=b[0];this.ue=b[1];this.dd=b[2];this.Xe=b[3];b=a[1];this.eb=Array(this.Rf);for(c=0;c>2)+1)*a.Hn+32*((b?a.ue:a.Xe)&15)}function Ei(a,b){var c=b?a.Zb:a.dd;return a.Ia!=$h||c&di.Sh?((c&di.Df)>>di.Ef)+1:0} +function Ai(a,b){if(b>ci.Ef} +function gi(a,b,c,d,e){for(var f="",g=1;8>=g;g++){var h="pcjs-bitCell";g||(h+=" pcjs-bitCellLeft");f+='
'+g+"
\n"}c.innerHTML=f;b=D(c,"pcjs-bitCell");c=null;for(g=0;g>2].Gb[b&3],c,d,e)} -function Ni(a,b,c){b=a.eb[b>>2].Gb[b&3];b.ah&&b.Bi&&b.Eh?(c&&(b.dh=c),b.Hd||Id(a,b,!0)):c&&c(!0)}function Id(a,b,c){c&&(b.count=b.$b[1]<<8|b.$b[0],b.fm=b.mode&12,b.yk=b.Zc=!1);for(var d=!1;0<=b.count&&(c=b.Vg<<16|b.Pb[1]<<8|b.Pb[0],4==b.fm?(d=!0,function(c){b.Bi.call(b.ah,b.Eh,-1,function(f,g){0>f&&(b.yk||(b.yk=!0),f=255);b.Hd||pb(a.ra,c,f);(d=g)&&setTimeout(function(){Ui(b)||Id(a,b)},0)})}(c)):8==b.fm?(c=nb(a.ra,c),0>b.Bi.call(b.ah,b.Eh,c)&&(b.Zc=!0)):b.Zc=!0),!d&&!Ui(b););} -function Ui(a){if(!a.Zc&&0<=--a.count&&(a.mode&32?(a.Pb[0]--,0>a.Pb[0]&&(a.Pb[0]=255,a.Pb[1]--,0>a.Pb[1]&&(a.Pb[1]=255))):(a.Pb[0]++,255>3,e=a.ub[d];e.Ib|=1<<(b&7);e.lg=c||0;1==d&&(a.ub[0].Ib|=4);Xi(a,d)} -function aj(a,b){var c=b>>3,d=a.ub[c],e=1<<(b&7);d.Ib&e&&(d.Ib&=~e,1!=c||d.Ib||(a.ub[0].Ib&=-5),Xi(a,c))}function Gd(a,b){void 0===b&&(b=0);var c=-1,d=a.ub[b];if(d.lg)c=-2,d.lg--;else for(var e=d.Ib&((d.Gc|d.xd)^255),f=d.Ce+1;;){var f=f&7,g=1<>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Hb[a];e.zg=b;e.mode=d;e.hk=c;e.Jc=[0,0];e.$b=[0,0];e.Xf=[0,0];e.md=!1;e.$f=!1;e.gf=!1;cj(this,a);0==a&&aj(this,0);2==a&&255==this.ub[0].xd&&77==this.zc&&(a=this.Hb[0],a.Yc[0]=a.Jc[0],a.Yc[1]=a.Jc[1],a.re=E(this.T,this.nh))}else qi(this,a),b=this.Hb[a],b.Xf[0]=b.$b[0],b.Xf[1]=b.$b[1],b.$f=!0,cj(this,a)}}; +function Gi(a,b,c,d,e){var f=a.eb[b],g=f.Gb[c].Pb[f.rb];f.rb^=1;a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".ADDR["+f.rb+"]",P,g);return g}function Hi(a,b,c,d,e,f){var g=a.eb[b];a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".ADDR["+g.rb+"]",P);a=g.Gb[c];a.Pb[g.rb]=a.$j[g.rb]=e;g.rb^=1}function Ii(a,b,c,d,e){var f=a.eb[b],g=f.Gb[c].$b[f.rb];f.rb^=1;a.ea(d,null,e,"DMA"+b+".CHANNEL"+c+".COUNT["+f.rb+"]",P,g);return g} +function Ji(a,b,c,d,e,f){var g=a.eb[b];a.ea(d,e,f,"DMA"+b+".CHANNEL"+c+".COUNT["+g.rb+"]",P);a=g.Gb[c];a.$b[g.rb]=a.Jc[g.rb]=e;g.rb^=1}function Ki(a,b,c,d){var e=a.eb[b],f=e.de|1;e.de&=-16;a.ea(c,null,d,"DMA"+b+".STATUS",P,f);return f}function Li(a,b,c,d,e){var f=a.eb[b];a.ea(c,d,e,"DMA"+b+".REQ",P);a=d&3;f.de=f.de&~(16<>2].Gb[b&3],c,d,e)} +function Ni(a,b,c){b=a.eb[b>>2].Gb[b&3];b.ah&&b.Bi&&b.Eh?(c&&(b.dh=c),b.Hd||Hd(a,b,!0)):c&&c(!0)}function Hd(a,b,c){c&&(b.count=b.$b[1]<<8|b.$b[0],b.em=b.mode&12,b.xk=b.Zc=!1);for(var d=!1;0<=b.count&&(c=b.Vg<<16|b.Pb[1]<<8|b.Pb[0],4==b.em?(d=!0,function(c){b.Bi.call(b.ah,b.Eh,-1,function(f,g){0>f&&(b.xk||(b.xk=!0),f=255);b.Hd||ob(a.ra,c,f);(d=g)&&setTimeout(function(){Ui(b)||Hd(a,b)},0)})}(c)):8==b.em?(c=mb(a.ra,c),0>b.Bi.call(b.ah,b.Eh,c)&&(b.Zc=!0)):b.Zc=!0),!d&&!Ui(b););} +function Ui(a){if(!a.Zc&&0<=--a.count&&(a.mode&32?(a.Pb[0]--,0>a.Pb[0]&&(a.Pb[0]=255,a.Pb[1]--,0>a.Pb[1]&&(a.Pb[1]=255))):(a.Pb[0]++,255>3,e=a.vb[d];e.Ib|=1<<(b&7);e.lg=c||0;1==d&&(a.vb[0].Ib|=4);Xi(a,d)} +function aj(a,b){var c=b>>3,d=a.vb[c],e=1<<(b&7);d.Ib&e&&(d.Ib&=~e,1!=c||d.Ib||(a.vb[0].Ib&=-5),Xi(a,c))}function Fd(a,b){void 0===b&&(b=0);var c=-1,d=a.vb[b];if(d.lg)c=-2,d.lg--;else for(var e=d.Ib&((d.Gc|d.xd)^255),f=d.Ce+1;;){var f=f&7,g=1<>6;if(3!=a){c=b&1;var d=b&14;if(b&=48){var e=this.Hb[a];e.zg=b;e.mode=d;e.gk=c;e.Jc=[0,0];e.$b=[0,0];e.Xf=[0,0];e.md=!1;e.$f=!1;e.gf=!1;cj(this,a);0==a&&aj(this,0);2==a&&255==this.vb[0].xd&&77==this.zc&&(a=this.Hb[0],a.Yc[0]=a.Jc[0],a.Yc[1]=a.Jc[1],a.re=F(this.T,this.nh))}else pi(this,a),b=this.Hb[a],b.Xf[0]=b.$b[0],b.Xf[1]=b.$b[1],b.$f=!0,cj(this,a)}}; function ej(a,b){var c=a.Hb[b],d=c.Jc[1]<<8|c.Jc[0];d||(d=1==c.kd?256:65536);return d}function cj(a,b){var c=a.Hb[b];c.ge=32==c.zg?1:0;c.kd=48==c.zg?2:1} -function qi(a,b,c){var d=a.Hb[b];if(d.gf&&(2!=b||a.zc&1)){var e=E(a.T,a.nh),f=(e-d.re)/a.Nl|0;0>f&&(d.re=e,f=0);var g=ej(a,b),h=a.Hb[b],l=h.Yc[1]<<8|h.Yc[0];l||(l=1==h.kd?256:65536);h=l-f;0==d.mode?(0>=h&&(h=0),h||(d.md=!0,d.gf=!1,b||$i(a,0))):4==d.mode?(d.md=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Yc[0]=h&255,d.Yc[1]=h>>8,d.re=e,!b&&d.md&&$i(a,0))):6==d.mode&&(h-=f,0>=h&&(d.md=!d.md,h=g+h,0>=h&&(h=g),d.Yc[0]=h&255,d.Yc[1]=h>>8,d.re=e,!b&&d.md&&$i(a,0)));d.$b[0]=h&255;d.$b[1]=h>>8;c&&(a.re=0)}return d} -function Zb(a,b){for(var c=0;c=fi){var c=0,d=a.T.ca.Jd,e=E(a.T,a.nh);if(0<=a.gg&&(c=e-a.gg,Math.floor(c/d)&&60<=++a.sa[0]&&(a.sa[0]=0,60<=++a.sa[2]&&(a.sa[2]=0,24<=++a.sa[4])))){a.sa[4]=0;a.sa[6]=a.sa[6]%7+1;var f=a.sa[9],g=qa[a.sa[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.sa[7]>g&&(a.sa[7]=1,12<++a.sa[8]&&(a.sa[8]=1,a.sa[9]=(a.sa[9]+1)%100))}a.gg=e-c%d}} -k.sn=function(a,b){var c=this.Ug;this.Qf&16&&(this.zc&128?c=this.dd:this.ab&&(c=fj(this.ab)));this.ea(a,null,b,"PPI_A",gj,c);return c};k.Jo=function(a,b,c){this.ea(a,b,c,"PPI_A",gj);this.Ug=b};k.tn=function(a,b){var c=this.zc;this.ea(a,null,b,"PPI_B",gj,c);return c};k.Ko=function(a,b,c){this.ea(a,b,c,"PPI_B",gj);hj(this,b);this.ab&&ij(this.ab,b&128?!1:!0,b&64?!0:!1)};function hj(a,b){var c=!!(b&2),d=!!(a.zc&2);a.zc=b;c!=d&&Yb(a,c)} -k.un=function(a,b){var c=0,c=this.Ia==ai?this.zc&4?c|this.Xe&15:c|this.Xe>>4&1:this.zc&8?c|this.dd>>4:c|this.dd&15;this.zc&1&&qi(this,2).md&&(c=this.zc&2?c|32:c|16);this.ea(a,null,b,"PPI_C",gj|Db,c);return c};k.Lo=function(a,b,c){this.ea(a,b,c,"PPI_C",gj);this.ei=b};k.vn=function(a,b){var c=this.Qf;this.ea(a,null,b,"PPI_CTRL",gj,c);return c};k.Mo=function(a,b,c){this.ea(a,b,c,"PPI_CTRL",gj);this.Qf=b}; -k.Im=function(a,b){var c=this.Pg;this.ea(a,null,b,"8042_OUTBUFF",jj,c);this.jb&=-258;var d=this.ab&&fj(this.ab,!0);d&&kj(this,d);return c};k.ao=function(a,b,c){this.ea(a,b,c,"8042_INBUF.DATA",jj);if(this.jb&8)switch(this.wd){case 96:lj(this,b);break;case 209:mj(this,b);break;default:if(lj(this,this.gd&-17),this.ab){a=-1;switch(b){case 255:a=250,nj(this.ab)}kj(this,a)}}this.wd=b;this.jb&=-9};k.Jm=function(a,b){var c=this.zc&-209|(E(this.T)&64?16:0);this.ea(a,null,b,"8042_RWREG",jj|oj,c);return c}; -k.bo=function(a,b,c){this.ea(a,b,c,"8042_RWREG",jj);hj(this,b)};k.Km=function(a,b){this.ea(a,null,b,"8042_STATUS",jj,this.jb);var c=this.jb&255;this.jb&256&&(this.jb|=1,this.jb&=-257);return c}; -k.$n=function(a,b,c){this.ea(a,b,c,"8042_INBUFF.CMD",jj);this.wd=b;this.jb|=8;a=0;240<=this.wd&&(a=this.wd^15,this.wd=240);switch(this.wd){case 192:kj(this,this.Ae);break;case 173:lj(this,this.gd|16);break;case 174:lj(this,this.gd&-17);break;case 170:this.ab&&pj(this.ab,!0);lj(this,this.gd|16);kj(this,85);mj(this,3);break;case 224:kj(this,this.gd&16?0:1);break;case 240:a&1&&Sc(this.T)}}; -function lj(a,b){var c=!(a.gd&16);a.gd=b;a.jb=a.jb&-5|b&4;if(a.ab){var d=!(b&16);ij(a.ab,!!(b&8),d)&&kj(a,fj(a.ab,!0));!c&&d&&fj(a.ab)&&qj(a)}}function kj(a,b){0<=b&&(a.Pg=b,a.jb&=-2,a.jb|=256)}function mj(a,b){a.ci=b;jb(a.ra,!!(b&2));b&1||Sc(a.T)}function qj(a){a.Ia=c?si(this,c):this.sa[c];this.ea(a,null,b,"CMOS_DATA["+q(c)+"]",ri,d);return d};k.so=function(a,b,c){var d=this.Be&63;this.ea(a,b,c,"CMOS_DATA["+q(d)+"]",ri);a=this.sa;13>=d&&10>d&&(c=!1,this.sa[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.qn=function(a,b){this.ea(a,null,b,"MFG_DATA",gj,this.Of);return this.Of};k.Go=function(a,b,c){this.ea(a,b,c,"MFG_DATA",gj);this.Of=b}; -k.Io=function(a,b,c){this.ea(a,b,c,"NMI",gj);this.Tg=b};k.Gn=function(a){var b=this.T.H>>8;this.da&&C(this.da,rj)&&($c(this.da,26,a),ad(this.T,a,function(a,d){return function(e){d=E(a.T)-d;var f,g=a.T.K&255,h=a.T.K>>8,l=a.T.K&255,n=a.T.K>>8;if(2==b||3==b)f=" CH(hour)="+u(h)+" CL(min)="+q(g)+" DH(sec)="+q(n);else if(4==b||5==b)f=" CX(year)="+u(a.T.J)+" DH(month)="+q(n)+" DL(day)="+q(l);bd(a.da,26,e,d,f)}}(this,E(this.T))));return!0}; -function bi(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4f&&(d.re=e,f=0);var g=ej(a,b),h=a.Hb[b],l=h.Yc[1]<<8|h.Yc[0];l||(l=1==h.kd?256:65536);h=l-f;0==d.mode?(0>=h&&(h=0),h||(d.md=!0,d.gf=!1,b||$i(a,0))):4==d.mode?(d.md=1!=h,0>=h&&(h=g+h,0>=h&&(h=g),d.Yc[0]=h&255,d.Yc[1]=h>>8,d.re=e,!b&&d.md&&$i(a,0))):6==d.mode&&(h-=f,0>=h&&(d.md=!d.md,h=g+h,0>=h&&(h=g),d.Yc[0]=h&255,d.Yc[1]=h>>8,d.re=e,!b&&d.md&&$i(a,0)));d.$b[0]=h&255;d.$b[1]=h>>8;c&&(a.re=0)}return d} +function Yb(a,b){for(var c=0;c=ei){var c=0,d=a.T.ca.Jd,e=F(a.T,a.nh);if(0<=a.gg&&(c=e-a.gg,Math.floor(c/d)&&60<=++a.ta[0]&&(a.ta[0]=0,60<=++a.ta[2]&&(a.ta[2]=0,24<=++a.ta[4])))){a.ta[4]=0;a.ta[6]=a.ta[6]%7+1;var f=a.ta[9],g=qa[a.ta[8]-1];28==g&&0===f%4&&(f%100||0===f%400)&&g++;++a.ta[7]>g&&(a.ta[7]=1,12<++a.ta[8]&&(a.ta[8]=1,a.ta[9]=(a.ta[9]+1)%100))}a.gg=e-c%d}} +k.rn=function(a,b){var c=this.Ug;this.Qf&16&&(this.zc&128?c=this.dd:this.ab&&(c=fj(this.ab)));this.ea(a,null,b,"PPI_A",gj,c);return c};k.Ho=function(a,b,c){this.ea(a,b,c,"PPI_A",gj);this.Ug=b};k.sn=function(a,b){var c=this.zc;this.ea(a,null,b,"PPI_B",gj,c);return c};k.Io=function(a,b,c){this.ea(a,b,c,"PPI_B",gj);hj(this,b);this.ab&&ij(this.ab,b&128?!1:!0,b&64?!0:!1)};function hj(a,b){var c=!!(b&2),d=!!(a.zc&2);a.zc=b;c!=d&&Xb(a,c)} +k.tn=function(a,b){var c=0,c=this.Ia==$h?this.zc&4?c|this.Xe&15:c|this.Xe>>4&1:this.zc&8?c|this.dd>>4:c|this.dd&15;this.zc&1&&pi(this,2).md&&(c=this.zc&2?c|32:c|16);this.ea(a,null,b,"PPI_C",gj|Cb,c);return c};k.Jo=function(a,b,c){this.ea(a,b,c,"PPI_C",gj);this.ei=b};k.un=function(a,b){var c=this.Qf;this.ea(a,null,b,"PPI_CTRL",gj,c);return c};k.Ko=function(a,b,c){this.ea(a,b,c,"PPI_CTRL",gj);this.Qf=b}; +k.Hm=function(a,b){var c=this.Pg;this.ea(a,null,b,"8042_OUTBUFF",jj,c);this.jb&=-258;var d=this.ab&&fj(this.ab,!0);d&&kj(this,d);return c};k.Zn=function(a,b,c){this.ea(a,b,c,"8042_INBUF.DATA",jj);if(this.jb&8)switch(this.wd){case 96:lj(this,b);break;case 209:mj(this,b);break;default:if(lj(this,this.gd&-17),this.ab){a=-1;switch(b){case 255:a=250,nj(this.ab)}kj(this,a)}}this.wd=b;this.jb&=-9};k.Im=function(a,b){var c=this.zc&-209|(F(this.T)&64?16:0);this.ea(a,null,b,"8042_RWREG",jj|oj,c);return c}; +k.$n=function(a,b,c){this.ea(a,b,c,"8042_RWREG",jj);hj(this,b)};k.Jm=function(a,b){this.ea(a,null,b,"8042_STATUS",jj,this.jb);var c=this.jb&255;this.jb&256&&(this.jb|=1,this.jb&=-257);return c}; +k.Yn=function(a,b,c){this.ea(a,b,c,"8042_INBUFF.CMD",jj);this.wd=b;this.jb|=8;a=0;240<=this.wd&&(a=this.wd^15,this.wd=240);switch(this.wd){case 192:kj(this,this.Ae);break;case 173:lj(this,this.gd|16);break;case 174:lj(this,this.gd&-17);break;case 170:this.ab&&pj(this.ab,!0);lj(this,this.gd|16);kj(this,85);mj(this,3);break;case 224:kj(this,this.gd&16?0:1);break;case 240:a&1&&Rc(this.T)}}; +function lj(a,b){var c=!(a.gd&16);a.gd=b;a.jb=a.jb&-5|b&4;if(a.ab){var d=!(b&16);ij(a.ab,!!(b&8),d)&&kj(a,fj(a.ab,!0));!c&&d&&fj(a.ab)&&qj(a)}}function kj(a,b){0<=b&&(a.Pg=b,a.jb&=-2,a.jb|=256)}function mj(a,b){a.ci=b;ib(a.ra,!!(b&2));b&1||Rc(a.T)}function qj(a){a.Ia=c?ri(this,c):this.ta[c];this.ea(a,null,b,"CMOS_DATA["+t(c)+"]",qi,d);return d};k.qo=function(a,b,c){var d=this.Be&63;this.ea(a,b,c,"CMOS_DATA["+t(d)+"]",qi);a=this.ta;13>=d&&10>d&&(c=!1,this.ta[11]&4||(b=10*(b>>4)+(b&15),c=!0),4==d||5==d)&&(c&&12=b?b=12==b?0:b:(b-=116,b=24==b?12:b)));a[d]=b};k.pn=function(a,b){this.ea(a,null,b,"MFG_DATA",gj,this.Of);return this.Of};k.Eo=function(a,b,c){this.ea(a,b,c,"MFG_DATA",gj);this.Of=b}; +k.Go=function(a,b,c){this.ea(a,b,c,"NMI",gj);this.Tg=b};k.Gn=function(a){var b=this.T.H>>8;this.fa&&E(this.fa,rj)&&(Zc(this.fa,si,a),$c(this.T,a,function(a,d){return function(e){d=F(a.T)-d;var f,g=a.T.K&255,h=a.T.K>>8,l=a.T.K&255,n=a.T.K>>8;if(2==b||3==b)f=" CH(hour)="+v(h)+" CL(min)="+t(g)+" DH(sec)="+t(n);else if(4==b||5==b)f=" CX(year)="+v(a.T.J)+" DH(month)="+t(n)+" DL(day)="+t(l);ad(a.fa,si,e,d,f)}}(this,F(this.T))));return!0}; +function ai(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4>8&255,this.Bb[c++]=f[b]>>16&255,this.Bb[c++]=f[b]>>24&255;else this.Bb=d;this.Yh=d.symbols;if(!this.Bb.length){w("Empty ROM: "+a);return}if(1==this.Bb.length){w(this.Bb[0]);return}}catch(g){this.Ja("ROM data error: "+ -g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.Bb=Array(a.length),d=0;dthis.Ng?21:23,c=a.sa[b]|a.sa[b+1]<<8,c=c+(this.Qd>>10);a.sa[b]=c&255;a.sa[b+1]=c>>8;Bi(a)}}else w("No RAM allocated")}; -Fa(function(){for(var a=A(window.document,"pcjs","ram"),b=0;b":62,"?":63,"@":64,kp:65,lp:66,Vj:67,hm:68,E:69,rp:70,vp:71,Wj:72,xp:73,yp:74,zp:75,Ap:76,Bp:77,Th:78,Dp:79,Ep:80,Gp:81,Yj:82,Kp:83,Up:84,Yp:85,Zp:86,$p:87,bq:88,cq:89,dq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,eq:97,fq:98,hq:99,iq:100,jq:101,kq:102,lq:103,mq:104,nq:105,oq:106,pq:107,qq:108, -rq:109,sq:110,uq:111,vq:112,wq:113,xq:114,yq:115,zq:116,Aq:117,Bq:118,Cq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Cj={16:2,17:8,18:32,20:256},Dj={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Q={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,w:17, -e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,"num-pgdn":81, -"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":57372,"right-ctrl":57373,"num-div":57397,"num-mul":57399,"right-alt":57400,home:57415,up:57416,pgup:57417,left:57419,right:57421,end:57423,down:57424,pgdn:57425,ins:57426,del:57427,win:57435,"right-win":57436,menu:57437},R={};R[1027]=Q.esc;R[P["1"]]=Q["1"];R[P["!"]]=Q["1"]|512;R[P["2"]]=Q["2"];R[P["@"]]=Q["2"]|512;R[P["3"]]=Q["3"];R[P["#"]]=Q["3"]|512;R[P["4"]]=Q["4"];R[P.$]=Q["4"]|512;R[P["5"]]=Q["5"];R[P["%"]]=Q["5"]|512; -R[P["6"]]=Q["6"];R[P["^"]]=Q["6"]|512;R[P["7"]]=Q["7"];R[P["&"]]=Q["7"]|512;R[P["8"]]=Q["8"];R[P["*"]]=Q["8"]|512;R[P["9"]]=Q["9"];R[P["("]]=Q["9"]|512;R[P["0"]]=Q["0"];R[P[")"]]=Q["0"]|512;R[P["-"]]=Q["-"];R[P._]=Q["-"]|512;R[P["="]]=Q["="];R[P["+"]]=Q["="]|512;R[1008]=Q.bs;R[1009]=Q.tab;R[113]=Q.q;R[81]=Q.q|512;R[119]=Q.w;R[87]=Q.w|512;R[101]=Q.e;R[69]=Q.e|512;R[114]=Q.r;R[82]=Q.r|512;R[116]=Q.t;R[84]=Q.t|512;R[121]=Q.y;R[89]=Q.y|512;R[117]=Q.u;R[85]=Q.u|512;R[105]=Q.i;R[73]=Q.i|512;R[111]=Q.o; -R[79]=Q.o|512;R[112]=Q.p;R[80]=Q.p|512;R[P["["]]=Q["["];R[P["{"]]=Q["["]|512;R[P["]"]]=Q["]"];R[P["}"]]=Q["]"]|512;R[13]=Q.enter;R[1017]=Q.ctrl;R[97]=Q.a;R[65]=Q.a|512;R[115]=Q.s;R[83]=Q.s|512;R[100]=Q.d;R[68]=Q.d|512;R[102]=Q.f;R[70]=Q.f|512;R[103]=Q.g;R[71]=Q.g|512;R[104]=Q.h;R[72]=Q.h|512;R[106]=Q.j;R[74]=Q.j|512;R[107]=Q.k;R[75]=Q.k|512;R[108]=Q.l;R[76]=Q.l|512;R[P[";"]]=Q[";"];R[P[":"]]=Q[";"]|512;R[P["'"]]=Q.quote;R[P['"']]=Q.quote|512;R[P["`"]]=Q["`"];R[P["~"]]=Q["`"]|512;R[1016]=Q.shift; -R[P["\\"]]=Q["\\"];R[P["\\"]]=Q["\\"]|512;R[122]=Q.z;R[90]=Q.z|512;R[120]=Q.x;R[88]=Q.x|512;R[99]=Q.c;R[67]=Q.c|512;R[118]=Q.v;R[86]=Q.v|512;R[98]=Q.b;R[66]=Q.b|512;R[110]=Q.n;R[78]=Q.n|512;R[109]=Q.m;R[77]=Q.m|512;R[P[","]]=Q[","];R[P["<"]]=Q[","]|512;R[P["."]]=Q["."];R[P[">"]]=Q["."]|512;R[P["/"]]=Q["/"];R[P["?"]]=Q["/"]|512;R[3016]=Q["right-shift"];R[1018]=Q.alt;R[P[" "]]=Q.space;R[1020]=Q["caps-lock"];R[1112]=Q.f1;R[1113]=Q.f2;R[1114]=Q.f3;R[1115]=Q.f4;R[1116]=Q.f5;R[1117]=Q.f6;R[1118]=Q.f7; -R[1119]=Q.f8;R[1120]=Q.f9;R[1121]=Q.f10;R[1036]=Q["num-home"];R[1038]=Q["num-up"];R[1033]=Q["num-pgup"];R[1037]=Q["num-left"];R[1039]=Q["num-right"];R[1035]=Q["num-end"];R[1040]=Q["num-down"];R[1034]=Q["num-pgdn"];R[1045]=Q["num-ins"];R[1046]=Q["num-del"];R[1122]=Q.f11;R[1123]=Q.f12;R[4003]=Q.c+2048;R[4063]=Q["scroll-lock"]+2048;R[4081]=Q["num-del"]+2048+2097152;k=Bj.prototype; -k.Ab=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.za[a])switch(c){case "kbd":return this.za[a]=d,d.onkeydown=function(a){return Ej(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.vb&64?e.vb&=-65:b=e.vb&40?!1:!Fj(e,a);return b},d.onkeyup=function(a){return Ej(e,a,!1)},!0;default:if(void 0!==Dj[c]&&"button"==b)return this.za[a]=d,d.onclick=function(a,b,c){return function(){a.T&&a.T.Pd();return!Fj(a,c)}}(this,c,Dj[c]),!0;if(void 0!==Q[c])return this.za[a]= -d,b=function(a,b,c){return function(){Gj(a,c)}}(this,c,Q[c]),c=function(a,b,c){return function(){Gj(a,c)}}(this,c,Q[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.da=d;this.oa=eb(a,"ChipSet")};k.Ta=function(){this.vk=(this.Hm=ya("iOS"))||ya("Android");this.Ra("mobile keyboard support: "+(this.vk?"true":"false"));return y.prototype.Ta.call(this)}; -function nj(a){a.Ra("keyboard reset",Hj);a.xc=[170];a.oa&&qj(a.oa)}function ij(a,b,c){var d=!1;a.ui!==c&&(a.ui=a.yi=c);a.jh!==b&&(a.jh=b)&&!a.yi&&pj(a);a.jh&&a.yi&&(nj(a),a.yi=!1,d=!0);return d}function fj(a,b){var c=0;a.xc.length&&(c=a.xc[0],a.Ra("scan code 0x"+q(c)+" delivered"),b&&pj(a));return c}function pj(a,b){0a.xc.length){if(!(!d&&!a.Xh[c]||d&&a.Xh[c])){a.Xh[c]=d;a.Ra("scan code 0x"+q(b)+" buffered");a.xc.push(b);1==a.xc.length&&a.oa&&qj(a.oa);for(var e in Q)if(Q[e]==c){(c=a.za["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.xc.length&&a.xc.push(255),a.Ra("scan code buffer overflow")}function Ij(a,b){var c=b?a.Nn:a.Mn;a.T&&a.T.ca.nd&&(c/=a.T.ca.nd);return c} -function Jj(a,b){!a.Re||void 0!==b&&b==a.Re||(clearTimeout(a.sd[a.Re]),Kj(a,a.Re,!1))}function Ej(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.Rl=f);if(R[f+1E3]){var g=g+1E3,h=Cj[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.vb&=~h,c&&(a.vb|=h),20==f?d=Fj(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.vb&40)&&(g=4063),d=c?!Fj(a,g):!1}else 91==f?(a.vb&=-65,c&&(a.vb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.vb&=-65,a.vk||f!=a.Rl||Jj(a));void 0===d&&(d=!Kj(a,g,c));return d} -function Fj(a,b,c){var d=!1;Jj(a,b);Kj(a,b,!0)&&(c?Kj(a,b,!1):(c=!1,a.sd[b]&&(clearTimeout(a.sd[b]),c=!0),c=Ij(a,c),a.sd[a.Re=b]=setTimeout(function(a){return function(){Kj(a,b,!1)}}(a),c)),d=!0);return d} -function Kj(a,b,c){var d=!1;c||(a.sd[b]=null,a.Re==b&&(a.Re=0));var e=R[b]||R[b+1E3];void 0===e&&1<=b&&26>=b&&(b+=64,e=R[b]&255|2048);if(void 0!==e){e==Q.bs&&40==(a.vb&40)&&(e=Q["num-del"]);d=65<=b&&90>=b||97<=b&&122>=b;b=[];for(b.push(e&255|(c?0:128));e>>=8;){var f=0,g=e&255;2==g?a.vb&3||a.vb&256&&d||(f=Q.shift):8==g?a.vb&12||(f=Q.ctrl):32==g&&(a.vb&48||(f=Q.alt));f&&(c?b.unshift(f):b.push(f|128))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(Yj)];this.da=a.da;this.type=e[0];this.port=e[1];this.ke=b;this.Ua=e[2];this.Ob=e[3];this.Wc=d||e[4];65536<=this.Wc&&720896<=this.Ua&&(this.Ob=Math.min(this.Wc>>2,32768));this.mc=c[0];this.Bc=c[1];this.cf=c[2];this.xf=c[3];this.oc=c[4]&255;this.rh=c[4]>>8&255;this.dc=c[5];this.Ii=Yj;this.Og=Zj;if(5==b){this.Ii=ak;this.Og=bk;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5), -0,0,0,Array(9),0,[this.Ua,this.Ob,this.Wc],Array(this.Wc>>2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.ld=b[0];this.Dd=b[1];this.Td=b[2];this.$h=ck;this.Rh=b[3];this.dg=b[4];this.ph=b[5];this.Fd=b[6];this.Gf=b[7];this.bi=dk;this.Ci=b[8];this.Di=b[9];this.Ed=b[10];this.xe=b[11];this.ai=ek;this.yb=b[12];d=b[13];"number"==typeof d&&(d=[this.Ua,this.Ob,d]);this.Ua=d[0];this.Ob=d[1];d=this.Wc>>2;if((this.fd=b[14])&&this.fd.length>8&255)} -var nk=[,,function(a){a+=this.offset;return(this.ia.yb=this.wa[a])>>this.ia.Cj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.wa[b]>>8:this.wa[b])&255}];nk[16]=function(a){a+=this.offset;a=this.wa[a];for(var b=this.ia.Ki&this.ia.Li,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};nk[512]=function(a,b){var c=a+this.offset,d;d=this.wa[c]&~this.ia.hb|(b|b<<8|b<<16|b<<24)&this.ia.hb;d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; -nk[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; -nk[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d&=this.ia.yb;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; -nk[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d|=this.ia.yb;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; -nk[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d^=this.ia.yb;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)};nk[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.hb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.wa[d]&~c;c=c&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[d]!=c&&(this.wa[d]=c,this.lb=!0)}; -nk[4096]=function(a){a+=this.offset;var b=this.wa[a]&~this.ia.hb|this.ia.yb&this.ia.hb;this.wa[a]!=b&&(this.wa[a]=b,this.lb=!0)};nk[8192]=function(a,b){var c=a+this.offset,d=Uj[b&15],d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)};nk[24576]=function(a,b){var c=a+this.offset,d=Uj[b&15],d=d&this.ia.yb,d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; -nk[40960]=function(a,b){var c=a+this.offset,d=Uj[b&15],d=d|this.ia.yb,d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)};nk[57344]=function(a,b){var c=a+this.offset,d=Uj[b&15],d=d^this.ia.yb,d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.nb|this.ia.yb&~this.ia.nb;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; -function ok(a){var b=[];if(void 0!==a.ke){b[0]=a.mc;b[1]=a.Bc;b[2]=a.cf;b[3]=a.xf;b[4]=a.oc|a.rh<<8;b[5]=a.dc;if(5==a.ke){var c=[];c[0]=a.ld;c[1]=a.Dd;c[2]=a.Td;c[3]=a.Rh;c[4]=a.dg;c[5]=a.ph;c[6]=a.Fd;c[7]=a.Gf;c[8]=a.Ci;c[9]=a.Di;c[10]=a.Ed;c[11]=a.xe;c[12]=a.yb;c[13]=[a.Ua,a.Ob,a.Wc];var d;a:if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=l;h=n}if(f.lengtha&&(a=0);for(var c="",d=0;8>d;d++){for(var n=p(b.Ua+a)+":",r=0;8>r&&a>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),qb(this.ra,b,c|d<<8);Mb(this,!0)}};function xk(a){a.na.dg&1?(a.Vc=a.hi,a.Cb=a.na):(a.Vc=a.na,a.Cb=a.$g)}k.save=function(){var a=new gd(this);a.set(0,ok(this.hi));a.set(1,ok(this.$g));a.set(2,[this.ne,this.pd,this.Ld]);a.set(3,ok(this.na));return a.data()}; -k.restore=function(a){var b=a[2];this.ne=b[0];this.pd=b[1];this.Ld=b[2];this.Ha=null;this.Vc=this.hi=new Wj(this,1,a[0]);this.Cb=this.$g=new Wj(this,3,a[1]);this.na=new Wj(this,5,a[3],this.Wc);this.na.mc&&xk(this);yk(this);if(!Ak(this))return!1;Bk(this);return!0}; -k.Wn=function(a,b,c){if(c)this.Ja("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){w("Empty font ROM image: "+a);return}if(1==d.length){w(d[0]);return}if(8192==d.length)zj(this,d,[0,6144]);else{this.Ja("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ja("Font ROM data error: "+e.message);return}this.Ta()}}; -function Ck(a,b){if(1==b)return a.vd[0]=U[0],a.vd[1]=U[7],a.vd;if(2==b){var c=a.Ha.cf;if(a.Ha===a.na){var d=a.na.Td[0],c=d&7;d&16&&(c|=8);18!=a.na.Td[1]&&(c|=32)}a.vd[0]=U[c&15];c=c&32?Sj:Rj;for(d=0;dKa||!W?Ka:8,xb=X.createImageData(n.kc,n.lc),L=0;256>L;L++){for(T=0;T=Ka-2,ga=wb[T>(8<=x&&176<=L&&223>=L?7:x)?t:lc;Fk(xb,Xa,Kc,mc);B&&Fk(xb,Xa+1,Kc,mc)}X.putImageData(xb,(L&15)*n.kc,(L>>4)*n.lc)}n.Ze[v]="#"+q(t[0])+q(t[1])+q(t[2]);n.$j[v]=t;n.Uh[v]=Rb;n=!0}}a.Wd[b]=s;return n}function Gk(a){0a.Ge&&(a.Ge=0):a.Ge=-1} -function Bk(a){if(a.Sb){for(var b=10;15>=b;b++)if(null==a.Ha.dc[b])return;var c=a.Ha.dc[10],b=c&31,d=a.Ha.dc[11]&31,e=a.Ha.dc[9]&31,f=!1;a.Ha===a.na&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Hk(a);else{c=a.Ha.dc[15]+((a.Ha.dc[14]&63)<<8);a.Nc!=c&&(Hk(a),a.Nc=c);d=d-b+1;if(a.gm!=b||a.ok!=d)a.gm=b,a.ok=d;a.he=e+1;Gk(a)}}} -function Hk(a){if(0<=a.Nc){if(void 0!==a.ec){var b=a.ec[a.Nc];if(b&131072){var b=b&-131073,c=a.Nc%a.Db,d=Math.floor(a.Nc/a.Db);a.Sb&&a.Wd[a.Sb]&&(a.df&&Ik(a,c,d,b,a.df),Ik(a,c,d,b));a.ec[a.Nc]=b}}a.Nc=-1}} -function Jk(a){var b;a=a.Ha;var c=a.xe[5];if(null!=c){b=2;var d=512,e=a.xe[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.od=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.Ve=function(a){var b=this.Ha;null!=a&&b&&a!=b.xh&&(b.Oh(a),this.ra.Oh(b.Ua,b.Ob,b.Lf))}; -function Ak(a,b){var c,d=a.Ld,e=a.Ha;if(e)if(1==e.ke)d=Mj;else if(5==e.ke){var d=null,f=e.Wc>>2,g=32768f&&(d=c?13:14):c&&(d-=2));c=Jk(a)}}else e.Bc&8&&(e.Bc&2?(d=e.Bc&16?6:5,e.Bc&4||(d-=1)):(d=e.Bc&1?3:1,e.Bc&4&&(d-= -1)));else a.Ld=null,null==d&&(d=a.pd);if(!zk(a,d,b))return!1;a.Ve(c);return!0} -function zk(a,b,c){if(null!=b&&(b!=a.Ld||c)){a.mm=0;a.Ld=b;b=a.Ha||(b==Mj?a.Vc:a.Cb);if(b!=a.Ha||b.Ua!=a.Ua||b.Ob!=a.Ob){Hk(a);if(a.Ua){if(!mb(a.ra,a.Ua,a.Ob))return!1;a.Ha&&(a.Ha.mc=!1)}a.Ha=b;b.mc=!0;a.Ua=b.Ua;a.Ob=b.Ob;if(!kb(a.ra,b.Ua,b.Ob,!1,b===a.na?b:null))return!1}a.Sb=0;a.Db=a.Ah;a.rc=a.Pi;a.Ji=Lj[Mj][2];b=0;var d=Lj[a.Ld];d&&(a.Db=d[0],a.rc=d[1],a.Ji=d[2],b=d[3]||0,a.Sb=d[4],4==a.ne&&a.Ha===a.na&&3==a.Sb&&(7==a.na.dc[9]?a.rc=43:a.Sb=5));a.Jk=a.Db*a.rc;a.zh=a.Jk/a.Ji;a.ii=(a.zh<<1)+b;a.lk= -b?a.ii+b>>1:0;13<=a.Ld&&(a.zh<<=1);a.Wd.length&&(a.Ad=Math.floor(a.zd/a.Db),a.Bd=Math.floor(a.ie/a.rc),a.Sb?(b=a.Wd[a.Sb],d=a.Wd[a.Sb<<1],a.ym&&80==a.Db?d&&a.Ad>=3*d.kc>>2&&(a.Sb<<=1,b=d):(d&&a.Ad>=d.kc&&(a.Sb<<=1,b=d),b&&(a.Ad=b.kc,a.Bd=b.lc)),a.Yf=a.Zf=0,b&&(a.Yf=a.Db*b.kc,a.Zf=a.rc*b.lc)):(a.Ad=a.Bd=1,a.Yf=a.Db,a.Zf=a.rc),a.th=a.Xc.createImageData(a.Yf,a.Zf),a.bf=window.document.createElement("canvas"),a.bf.width=a.Yf,a.bf.height=a.Zf,a.df=a.bf.getContext("2d"),a.Tj=a.Uj=0,a.ki=a.zd,a.li=a.ie, -b=a.zd-a.Db*a.Ad,d=a.ie-a.rc*a.Bd,0>1,a.ki-=b),0>1,a.li-=d),b||d)&&(a.Xc.fillStyle=a.Jb.style.backgroundColor,a.Xc.fillRect(0,0,a.zd,a.ie));!1!==c?Mb(a,!0):Kk(a,!0)}return!0}function Fk(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Kk(a,b){var c;if(b){if(c=a.zh,void 0===a.ec||a.ec.length!=c)a.ec=Array(c)}else{if(void 0===a.ec)return;c=a.ec.length}for(var d=0;d>8;d=g&15;var h=a.Wd[a.Sb];h.Ff&&(d=h.Ff[d]);var l=g>>4&15;h.Ff&&(l=h.Ff[l]);e?(b*=h.kc,c*=h.lc,e.fillStyle=h.Ze[l],e.fillRect(b,c,h.kc,h.lc)):(b=b*a.Ad+a.Tj,c=c*a.Bd+a.Uj,a.Xc.fillStyle=h.Ze[l],a.Xc.fillRect(b,c,a.Ad,a.Bd));g&256&&(l=(f&15)*h.kc,f=(f>>4)*h.lc,e?e.drawImage(h.Uh[d],l,f,h.kc,h.lc,b,c,h.kc,h.lc):a.Xc.drawImage(h.Uh[d],l,f,h.kc,h.lc,b,c,a.Ad,a.Bd));g&512&&(f=a.gm,g=a.ok,e?(a.he&&a.he!==h.lc&&(f=Math.floor(f*h.lc/a.he),g=Math.floor(g*h.lc/a.he)), +1,0,a,b)},194:function(a,b){return Ii(this,1,0,a,b)},196:function(a,b){return Gi(this,1,1,a,b)},198:function(a,b){return Ii(this,1,1,a,b)},200:function(a,b){return Gi(this,1,2,a,b)},202:function(a,b){return Ii(this,1,2,a,b)},204:function(a,b){return Gi(this,1,3,a,b)},206:function(a,b){return Ii(this,1,3,a,b)},208:function(a,b){return Ki(this,1,a,b)}},ii={0:function(a,b,c){Hi(this,0,0,a,b,c)},1:function(a,b,c){Ji(this,0,0,a,b,c)},2:function(a,b,c){Hi(this,0,1,a,b,c)},3:function(a,b,c){Ji(this,0,1, +a,b,c)},4:function(a,b,c){Hi(this,0,2,a,b,c)},5:function(a,b,c){Ji(this,0,2,a,b,c)},6:function(a,b,c){Hi(this,0,3,a,b,c)},7:function(a,b,c){Ji(this,0,3,a,b,c)},8:function(a,b,c){this.ea(a,b,c,"DMA0.CMD",P);this.eb[0].di=b},9:function(a,b,c){Li(this,0,a,b,c)},10:function(a,b,c){Mi(this,0,a,b,c)},11:function(a,b,c){this.ea(a,b,c,"DMA0.MODE",P);this.eb[0].Gb[b&3].mode=b},12:function(a,b,c){this.ea(a,b,c,"DMA0.INDEX",P);this.eb[0].rb=0},13:function(a,b,c){Oi(this,0,a,b,c)},32:function(a,b,c){Wi(this, +0,b,c)},33:function(a,b,c){Zi(this,0,b,c)},64:function(a,b,c){dj(this,0,b,c)},65:function(a,b,c){dj(this,1,b,c)},66:function(a,b,c){dj(this,2,b,c)},67:O.prototype.Oo,129:function(a,b,c){Qi(this,0,2,a,b,c)},130:function(a,b,c){Qi(this,0,3,a,b,c)},131:function(a,b,c){Qi(this,0,1,a,b,c)},135:function(a,b,c){Qi(this,0,0,a,b,c)}},ki={96:O.prototype.Ho,97:O.prototype.Io,98:O.prototype.Jo,99:O.prototype.Ko,160:O.prototype.Go},mi={96:O.prototype.Zn,97:O.prototype.$n,100:O.prototype.Yn,112:O.prototype.po, +113:O.prototype.qo,128:O.prototype.Eo,132:function(a,b,c){Si(this,0,a,b,c)},133:function(a,b,c){Si(this,1,a,b,c)},134:function(a,b,c){Si(this,2,a,b,c)},136:function(a,b,c){Si(this,3,a,b,c)},137:function(a,b,c){Qi(this,1,2,a,b,c)},138:function(a,b,c){Qi(this,1,3,a,b,c)},139:function(a,b,c){Qi(this,1,1,a,b,c)},140:function(a,b,c){Si(this,4,a,b,c)},141:function(a,b,c){Si(this,5,a,b,c)},142:function(a,b,c){Si(this,6,a,b,c)},143:function(a,b,c){Qi(this,1,0,a,b,c)},160:function(a,b,c){Wi(this,1,b,c)},161:function(a, +b,c){Zi(this,1,b,c)},192:function(a,b,c){Hi(this,1,0,a,b,c)},194:function(a,b,c){Ji(this,1,0,a,b,c)},196:function(a,b,c){Hi(this,1,1,a,b,c)},198:function(a,b,c){Ji(this,1,1,a,b,c)},200:function(a,b,c){Hi(this,1,2,a,b,c)},202:function(a,b,c){Ji(this,1,2,a,b,c)},204:function(a,b,c){Hi(this,1,3,a,b,c)},206:function(a,b,c){Ji(this,1,3,a,b,c)},208:function(a,b,c){this.ea(a,b,c,"DMA1.CMD",P);this.eb[1].di=b},210:function(a,b,c){Li(this,1,a,b,c)},212:function(a,b,c){Mi(this,1,a,b,c)},214:function(a,b,c){this.ea(a, +b,c,"DMA1.MODE",P);this.eb[1].Gb[b&3].mode=b},216:function(a,b,c){this.ea(a,b,c,"DMA1.INDEX",P);this.eb[1].rb=0},218:function(a,b,c){Oi(this,1,a,b,c)}};Fa(function(){for(var a=D(window.document,"pcjs","chipset"),b=0;b>8&255,this.Bb[c++]=f[b]>>16&255,this.Bb[c++]=f[b]>>24&255;else this.Bb=d;this.Yh=d.symbols;if(!this.Bb.length){x("Empty ROM: "+a);return}if(1==this.Bb.length){x(this.Bb[0]);return}}catch(g){this.Ja("ROM data error: "+ +g.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.Bb=Array(a.length),d=0;dthis.Ng?21:23,c=a.ta[b]|a.ta[b+1]<<8,c=c+(this.Qd>>10);a.ta[b]=c&255;a.ta[b+1]=c>>8;Bi(a)}}else x("No RAM allocated")}; +Fa(function(){for(var a=D(window.document,"pcjs","ram"),b=0;b":62,"?":63,"@":64,ip:65,jp:66,Uj:67,gm:68,E:69,pp:70,sp:71,Vj:72,vp:73,wp:74,xp:75,yp:76,zp:77,Th:78,Bp:79,Cp:80,Ep:81,Xj:82,Ip:83,Sp:84,Wp:85,Xp:86,Yp:87,$p:88,aq:89,bq:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,cq:97,dq:98,fq:99,gq:100,hq:101,iq:102,jq:103,kq:104,lq:105,mq:106,nq:107,oq:108, +pq:109,qq:110,sq:111,tq:112,uq:113,vq:114,wq:115,xq:116,yq:117,zq:118,Aq:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},Cj={16:2,17:8,18:32,20:256},Dj={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},Ej={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16, +w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80, +"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},S={1027:2};S[R["1"]]=2;S[R["!"]]=10754;S[R["2"]]=3;S[R["@"]]=10755;S[R["3"]]=4;S[R["#"]]=10756;S[R["4"]]=5;S[R.$]=10757;S[R["5"]]=6;S[R["%"]]=10758;S[R["6"]]=7;S[R["^"]]=10759;S[R["7"]]=8; +S[R["&"]]=10760;S[R["8"]]=9;S[R["*"]]=10761;S[R["9"]]=10;S[R["("]]=10762;S[R["0"]]=11;S[R[")"]]=10763;S[R["-"]]=12;S[R._]=10764;S[R["="]]=13;S[R["+"]]=10765;S[1008]=14;S[1009]=15;S[113]=16;S[81]=10768;S[119]=17;S[87]=10769;S[101]=18;S[69]=10770;S[114]=19;S[82]=10771;S[116]=20;S[84]=10772;S[121]=21;S[89]=10773;S[117]=22;S[85]=10774;S[105]=23;S[73]=10775;S[111]=24;S[79]=10776;S[112]=25;S[80]=10777;S[R["["]]=26;S[R["{"]]=10778;S[R["]"]]=27;S[R["}"]]=10779;S[13]=28;S[1017]=29;S[97]=30;S[65]=10782; +S[115]=31;S[83]=10783;S[100]=32;S[68]=10784;S[102]=33;S[70]=10785;S[103]=34;S[71]=10786;S[104]=35;S[72]=10787;S[106]=36;S[74]=10788;S[107]=37;S[75]=10789;S[108]=38;S[76]=10790;S[R[";"]]=39;S[R[":"]]=10791;S[R["'"]]=40;S[R['"']]=10792;S[R["`"]]=41;S[R["~"]]=10793;S[1016]=42;S[R["\\"]]=43;S[R["|"]]=10795;S[122]=44;S[90]=10796;S[120]=45;S[88]=10797;S[99]=46;S[67]=10798;S[118]=47;S[86]=10799;S[98]=48;S[66]=10800;S[110]=49;S[78]=10801;S[109]=50;S[77]=10802;S[R[","]]=51;S[R["<"]]=10803;S[R["."]]=52; +S[R[">"]]=10804;S[R["/"]]=53;S[R["?"]]=10805;S[3016]=54;S[1018]=56;S[R[" "]]=57;S[1020]=58;S[1112]=59;S[1113]=60;S[1114]=61;S[1115]=62;S[1116]=63;S[1117]=64;S[1118]=65;S[1119]=66;S[1120]=67;S[1121]=68;S[1036]=71;S[1038]=72;S[1033]=73;S[1037]=75;S[1039]=77;S[1035]=79;S[1040]=80;S[1034]=81;S[1045]=82;S[1046]=83;S[1122]=87;S[1123]=88;S[4003]=7470;S[4063]=7494;S[4081]=3677523;k=Bj.prototype; +k.Ab=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.za[a])switch(c){case "kbd":return this.za[a]=d,d.onkeydown=function(a){return Fj(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.wb&64?e.wb&=-65:b=e.wb&40?!1:!Gj(e,a);return b},d.onkeyup=function(a){return Fj(e,a,!1)},!0;default:if(void 0!==Dj[c]&&"button"==b)return this.za[a]=d,d.onclick=function(a,b,c){return function(){a.T&&a.T.Pd();return!Gj(a,c)}}(this,c,Dj[c]),!0;if(void 0!==Ej[c])return this.za[a]= +d,b=function(a,b,c){return function(){Hj(a,c)}}(this,c,Ej[c]),c=function(a,b,c){return function(){Hj(a,c)}}(this,c,Ej[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.oa=db(a,"ChipSet")};k.Ta=function(){this.uk=(this.Gm=ya("iOS"))||ya("Android");this.Ra("mobile keyboard support: "+(this.uk?"true":"false"));return y.prototype.Ta.call(this)}; +function nj(a){a.Ra("keyboard reset",Ij);a.xc=[170];a.oa&&qj(a.oa)}function ij(a,b,c){var d=!1;a.ui!==c&&(a.ui=a.yi=c);a.jh!==b&&(a.jh=b)&&!a.yi&&pj(a);a.jh&&a.yi&&(nj(a),a.yi=!1,d=!0);return d}function fj(a,b){var c=0;a.xc.length&&(c=a.xc[0],a.Ra("scan code 0x"+t(c)+" delivered"),b&&pj(a));return c}function pj(a,b){0a.xc.length){if(!(!d&&!a.Xh[c]||d&&a.Xh[c])){a.Xh[c]=d;a.Ra("scan code 0x"+t(b)+" buffered");a.xc.push(b);1==a.xc.length&&a.oa&&qj(a.oa);for(var e in Ej)if(Ej[e]==c){(c=a.za["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.xc.length&&a.xc.push(255),a.Ra("scan code buffer overflow")}function Jj(a,b){var c=b?a.Ln:a.Kn;a.T&&a.T.ca.nd&&(c/=a.T.ca.nd);return c} +function Kj(a,b){!a.Re||void 0!==b&&b==a.Re||(clearTimeout(a.sd[a.Re]),Lj(a,a.Re,!1))}function Fj(a,b,c){var d,e=!c,f=b.keyCode,g=f;c&&(a.Ql=f);if(S[f+1E3]){var g=g+1E3,h=Cj[f]||0;if(h)2==b.location&&(h>>=1,g+=2E3),a.wb&=~h,c&&(a.wb|=h),20==f?d=Gj(a,g):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.wb&40)&&(g=4063),d=c?!Gj(a,g):!1}else 91==f?(a.wb&=-65,c&&(a.wb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(g+=32):d=!0;e&&(a.wb&=-65,a.uk||f!=a.Ql||Kj(a));void 0===d&&(d=!Lj(a,g,c));return d} +function Gj(a,b,c){var d=!1;Kj(a,b);Lj(a,b,!0)&&(c?Lj(a,b,!1):(c=!1,a.sd[b]&&(clearTimeout(a.sd[b]),c=!0),c=Jj(a,c),a.sd[a.Re=b]=setTimeout(function(a){return function(){Lj(a,b,!1)}}(a),c)),d=!0);return d} +function Lj(a,b,c){var d=!1;c||(a.sd[b]=null,a.Re==b&&(a.Re=0));var e=S[b]||S[b+1E3];if(void 0!==e){14==e&&40==(a.wb&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,h=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==h?a.wb&3||a.wb&256&&b||(g=h):29==h?a.wb&12||(g=h):56==h?a.wb&48||(g=h):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(Zj)];this.fa=a.fa;this.type=e[0];this.port=e[1];this.ke=b;this.Ua=e[2];this.Ob=e[3];this.Wc=d||e[4];65536<=this.Wc&&720896<=this.Ua&&(this.Ob=Math.min(this.Wc>>2,32768));this.mc=c[0];this.Bc=c[1];this.cf=c[2];this.xf=c[3];this.oc=c[4]&255;this.rh=c[4]>>8&255;this.dc=c[5];this.Hi=Zj;this.Og=ak;if(5==b){this.Hi=bk;this.Og=ck;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5), +0,0,0,Array(9),0,[this.Ua,this.Ob,this.Wc],Array(this.Wc>>2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.ld=b[0];this.Dd=b[1];this.Td=b[2];this.$h=dk;this.Rh=b[3];this.dg=b[4];this.ph=b[5];this.Fd=b[6];this.Gf=b[7];this.bi=ek;this.Ci=b[8];this.Di=b[9];this.Ed=b[10];this.xe=b[11];this.ai=fk;this.yb=b[12];d=b[13];"number"==typeof d&&(d=[this.Ua,this.Ob,d]);this.Ua=d[0];this.Ob=d[1];d=this.Wc>>2;if((this.fd=b[14])&&this.fd.length>8&255)} +var ok=[,,function(a){a+=this.offset;return(this.ia.yb=this.wa[a])>>this.ia.Bj&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.wa[b]>>8:this.wa[b])&255}];ok[16]=function(a){a+=this.offset;a=this.wa[a];for(var b=this.ia.Ji&this.ia.Ki,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};ok[512]=function(a,b){var c=a+this.offset,d;d=this.wa[c]&~this.ia.hb|(b|b<<8|b<<16|b<<24)&this.ia.hb;d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; +ok[1024]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; +ok[1536]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d&=this.ia.yb;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; +ok[2560]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d|=this.ia.yb;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; +ok[3584]=function(a,b){var c=a+this.offset;b=b>>this.ia.od|b<<8-this.ia.od&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ia.qe|this.ia.Oe;d^=this.ia.yb;d=d&this.ia.hb|this.wa[c]&~this.ia.hb;d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)};ok[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ia.hb&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.wa[d]&~c;c=c&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[d]!=c&&(this.wa[d]=c,this.lb=!0)}; +ok[4096]=function(a){a+=this.offset;var b=this.wa[a]&~this.ia.hb|this.ia.yb&this.ia.hb;this.wa[a]!=b&&(this.wa[a]=b,this.lb=!0)};ok[8192]=function(a,b){var c=a+this.offset,d=Vj[b&15],d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)};ok[24576]=function(a,b){var c=a+this.offset,d=Vj[b&15],d=d&this.ia.yb,d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; +ok[40960]=function(a,b){var c=a+this.offset,d=Vj[b&15],d=d|this.ia.yb,d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)};ok[57344]=function(a,b){var c=a+this.offset,d=Vj[b&15],d=d^this.ia.yb,d=d&this.ia.hb|this.wa[c]&~this.ia.hb,d=d&this.ia.ob|this.ia.yb&~this.ia.ob;this.wa[c]!=d&&(this.wa[c]=d,this.lb=!0)}; +function pk(a){var b=[];if(void 0!==a.ke){b[0]=a.mc;b[1]=a.Bc;b[2]=a.cf;b[3]=a.xf;b[4]=a.oc|a.rh<<8;b[5]=a.dc;if(5==a.ke){var c=[];c[0]=a.ld;c[1]=a.Dd;c[2]=a.Td;c[3]=a.Rh;c[4]=a.dg;c[5]=a.ph;c[6]=a.Fd;c[7]=a.Gf;c[8]=a.Ci;c[9]=a.Di;c[10]=a.Ed;c[11]=a.xe;c[12]=a.yb;c[13]=[a.Ua,a.Ob,a.Wc];var d;a:if(d=a.fd){var e=0,f=[];if(void 0!==d[0])for(var g=0;2>g;g++)for(var h=g;h>1;f[e++]=l;h=n}if(f.lengtha&&(a=0);for(var c="",d=0;8>d;d++){for(var n=p(b.Ua+a)+":",q=0;8>q&&a>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),pb(this.ra,b,c|d<<8);Lb(this,!0)}};function yk(a){a.na.dg&1?(a.Vc=a.hi,a.Cb=a.na):(a.Vc=a.na,a.Cb=a.$g)}k.save=function(){var a=new fd(this);a.set(0,pk(this.hi));a.set(1,pk(this.$g));a.set(2,[this.ne,this.pd,this.Ld]);a.set(3,pk(this.na));return a.data()}; +k.restore=function(a){var b=a[2];this.ne=b[0];this.pd=b[1];this.Ld=b[2];this.Ha=null;this.Vc=this.hi=new Xj(this,1,a[0]);this.Cb=this.$g=new Xj(this,3,a[1]);this.na=new Xj(this,5,a[3],this.Wc);this.na.mc&&yk(this);zk(this);if(!Bk(this))return!1;Ck(this);return!0}; +k.Un=function(a,b,c){if(c)this.Ja("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){x("Empty font ROM image: "+a);return}if(1==d.length){x(d[0]);return}if(8192==d.length)zj(this,d,[0,6144]);else{this.Ja("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ja("Font ROM data error: "+e.message);return}this.Ta()}}; +function Dk(a,b){if(1==b)return a.vd[0]=X[0],a.vd[1]=X[7],a.vd;if(2==b){var c=a.Ha.cf;if(a.Ha===a.na){var d=a.na.Td[0],c=d&7;d&16&&(c|=8);18!=a.na.Td[1]&&(c|=32)}a.vd[0]=X[c&15];c=c&32?Tj:Sj;for(d=0;dJa||!U?Ja:8,xb=V.createImageData(n.kc,n.lc),K=0;256>K;K++){for(Q=0;Q=Ja-2,fa=wb[Q>(8<=w&&176<=K&&223>=K?7:w)?s:hc;Gk(xb,Wa,Hc,ic);A&&Gk(xb,Wa+1,Hc,ic)}V.putImageData(xb,(K&15)*n.kc,(K>>4)*n.lc)}n.Ze[u]="#"+t(s[0])+t(s[1])+t(s[2]);n.Zj[u]=s;n.Uh[u]=Pb;n=!0}}a.Wd[b]=r;return n}function Hk(a){0a.Ge&&(a.Ge=0):a.Ge=-1} +function Ck(a){if(a.Sb){for(var b=10;15>=b;b++)if(null==a.Ha.dc[b])return;var c=a.Ha.dc[10],b=c&31,d=a.Ha.dc[11]&31,e=a.Ha.dc[9]&31,f=!1;a.Ha===a.na&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)Ik(a);else{c=a.Ha.dc[15]+((a.Ha.dc[14]&63)<<8);a.Nc!=c&&(Ik(a),a.Nc=c);d=d-b+1;if(a.fm!=b||a.nk!=d)a.fm=b,a.nk=d;a.he=e+1;Hk(a)}}} +function Ik(a){if(0<=a.Nc){if(void 0!==a.ec){var b=a.ec[a.Nc];if(b&131072){var b=b&-131073,c=a.Nc%a.Db,d=Math.floor(a.Nc/a.Db);a.Sb&&a.Wd[a.Sb]&&(a.df&&Jk(a,c,d,b,a.df),Jk(a,c,d,b));a.ec[a.Nc]=b}}a.Nc=-1}} +function Kk(a){var b;a=a.Ha;var c=a.xe[5];if(null!=c){b=2;var d=512,e=a.xe[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.od=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}k.Ve=function(a){var b=this.Ha;null!=a&&b&&a!=b.xh&&(b.Oh(a),this.ra.Oh(b.Ua,b.Ob,b.Lf))}; +function Bk(a,b){var c,d=a.Ld,e=a.Ha;if(e)if(1==e.ke)d=Nj;else if(5==e.ke){var d=null,f=e.Wc>>2,g=32768f&&(d=c?13:14):c&&(d-=2));c=Kk(a)}}else e.Bc&8&&(e.Bc&2?(d=e.Bc&16?6:5,e.Bc&4||(d-=1)):(d=e.Bc&1?3:1,e.Bc&4&&(d-= +1)));else a.Ld=null,null==d&&(d=a.pd);if(!Ak(a,d,b))return!1;a.Ve(c);return!0} +function Ak(a,b,c){if(null!=b&&(b!=a.Ld||c)){a.lm=0;a.Ld=b;b=a.Ha||(b==Nj?a.Vc:a.Cb);if(b!=a.Ha||b.Ua!=a.Ua||b.Ob!=a.Ob){Ik(a);if(a.Ua){if(!lb(a.ra,a.Ua,a.Ob))return!1;a.Ha&&(a.Ha.mc=!1)}a.Ha=b;b.mc=!0;a.Ua=b.Ua;a.Ob=b.Ob;if(!jb(a.ra,b.Ua,b.Ob,!1,b===a.na?b:null))return!1}a.Sb=0;a.Db=a.Ah;a.rc=a.Oi;a.Ii=Mj[Nj][2];b=0;var d=Mj[a.Ld];d&&(a.Db=d[0],a.rc=d[1],a.Ii=d[2],b=d[3]||0,a.Sb=d[4],4==a.ne&&a.Ha===a.na&&3==a.Sb&&(7==a.na.dc[9]?a.rc=43:a.Sb=5));a.Ik=a.Db*a.rc;a.zh=a.Ik/a.Ii;a.ii=(a.zh<<1)+b;a.kk= +b?a.ii+b>>1:0;13<=a.Ld&&(a.zh<<=1);a.Wd.length&&(a.Ad=Math.floor(a.zd/a.Db),a.Bd=Math.floor(a.ie/a.rc),a.Sb?(b=a.Wd[a.Sb],d=a.Wd[a.Sb<<1],a.xm&&80==a.Db?d&&a.Ad>=3*d.kc>>2&&(a.Sb<<=1,b=d):(d&&a.Ad>=d.kc&&(a.Sb<<=1,b=d),b&&(a.Ad=b.kc,a.Bd=b.lc)),a.Yf=a.Zf=0,b&&(a.Yf=a.Db*b.kc,a.Zf=a.rc*b.lc)):(a.Ad=a.Bd=1,a.Yf=a.Db,a.Zf=a.rc),a.th=a.Xc.createImageData(a.Yf,a.Zf),a.bf=window.document.createElement("canvas"),a.bf.width=a.Yf,a.bf.height=a.Zf,a.df=a.bf.getContext("2d"),a.Sj=a.Tj=0,a.ki=a.zd,a.li=a.ie, +b=a.zd-a.Db*a.Ad,d=a.ie-a.rc*a.Bd,0>1,a.ki-=b),0>1,a.li-=d),b||d)&&(a.Xc.fillStyle=a.Jb.style.backgroundColor,a.Xc.fillRect(0,0,a.zd,a.ie));!1!==c?Lb(a,!0):Lk(a,!0)}return!0}function Gk(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function Lk(a,b){var c;if(b){if(c=a.zh,void 0===a.ec||a.ec.length!=c)a.ec=Array(c)}else{if(void 0===a.ec)return;c=a.ec.length}for(var d=0;d>8;d=g&15;var h=a.Wd[a.Sb];h.Ff&&(d=h.Ff[d]);var l=g>>4&15;h.Ff&&(l=h.Ff[l]);e?(b*=h.kc,c*=h.lc,e.fillStyle=h.Ze[l],e.fillRect(b,c,h.kc,h.lc)):(b=b*a.Ad+a.Sj,c=c*a.Bd+a.Tj,a.Xc.fillStyle=h.Ze[l],a.Xc.fillRect(b,c,a.Ad,a.Bd));g&256&&(l=(f&15)*h.kc,f=(f>>4)*h.lc,e?e.drawImage(h.Uh[d],l,f,h.kc,h.lc,b,c,h.kc,h.lc):a.Xc.drawImage(h.Uh[d],l,f,h.kc,h.lc,b,c,a.Ad,a.Bd));g&512&&(f=a.fm,g=a.nk,e?(a.he&&a.he!==h.lc&&(f=Math.floor(f*h.lc/a.he),g=Math.floor(g*h.lc/a.he)), e.fillStyle=h.Ze[d],e.fillRect(b,c+f,h.kc,g)):(a.he&&a.he!==a.Bd&&(f=Math.floor(f*a.Bd/a.he),g=Math.floor(g*a.Bd/a.he)),a.Xc.fillStyle=h.Ze[d],a.Xc.fillRect(b,c+f,a.Ad,g)))} -function Mb(a,b){if(a.qa.Lb){var c=!1;a.Ha&&(a.Ha===a.na?a.na.Dd&32&&(c=!0):a.Ha.Bc&8&&(c=!0));if(c||b){if(b)Kk(a,!0);else if(void 0===a.ec)return;var d=!1;!(b||++a.mm&15)&&0<=a.Ge&&(a.Ge++,d=!0);var e=0,f=a.Jk,c=a.Ha.Ua,g=c+a.Ha.Ob,h=(a.Ha.dc[12]<<8)+a.Ha.dc[13];a.Sb&&(h<<=1);var c=c+h,l=a.ii;c+l>g&&(l=g-c,0>l&&(l=0));g=c+l;if(h=!b){for(var h=a.ra,n=!0,r=c>>h.rb;0a.Nc)return;e=a.Nc;f= -e+1}}if(a.Sb){if(a.Wd[a.Sb]){d=0;h=a.Fe=0;l=1048575;a.Ha.Bc&32&&(h=32768,l&=~h,a.Ge&2||(l&=-65537));for(c+=e<<1;c>8|(s&255)<<8;t=h;var Ka=16;r>=l))>>(Ka-=l);Fk(a.th,r++,v,n[lc])}r>D&&(D=r);v=ja&&(ja=v+1)}e+=2;g++;if(r>=a.Db){r=0;v+=2;if(v>a.rc)break;v==a.rc&&(v=1,e=c+a.lk)}}BW;W++)ja= -D&2155905152,0>ja&&(ja+=4294967296),ja=Vj[ja]||0,Fk(a.th,h++,l,g[ja]),D<<=1;h>r&&(r=h);l=B&&(B=l+1)}e++;if(h>=a.Db&&(h=0,++l>a.rc))break}n>2),c=this.na.Rh&-17|(this.Qg&1<f&&(f=0);f%b.Mi>b.Qn&&(d|=1);f%=b.Mk;f>b.Tn&&(d|=8);b.Ti=e-f;b===a.na?(d|=b.xf&48^48,b.ld=!1):d=(b.xf^=9)|240;b.xf=d;a.ea(b.port+6,null,c,b===a.na?"STATUS1":"STATUS",d);return d}k.Ra=function(a,b){this.da&&(b||C(this.da,uk))&&this.da.message(a)};k.ea=function(a,b,c,d,e){this.da&&this.da.ea(this,a,b,c,d,uk,e)}; -var qk={948:S.prototype.nn,949:S.prototype.mn,952:S.prototype.on,954:S.prototype.pn,980:S.prototype.Vm,981:S.prototype.Um,984:S.prototype.Wm,985:S.prototype.Tm,986:S.prototype.Xm},rk={948:S.prototype.Eo,949:S.prototype.Do,952:S.prototype.Fo,980:S.prototype.po,981:S.prototype.oo,984:S.prototype.qo,985:S.prototype.no},sk={960:S.prototype.Fk,961:S.prototype.Fk,962:S.prototype.zn,964:S.prototype.yn,965:S.prototype.xn,970:S.prototype.fn,972:S.prototype.en,974:S.prototype.dn,975:S.prototype.cn},tk={954:S.prototype.Ql, -960:S.prototype.Pl,961:S.prototype.Pl,962:S.prototype.Ho,964:S.prototype.Oo,965:S.prototype.No,970:S.prototype.zo,972:S.prototype.yo,974:S.prototype.xo,975:S.prototype.wo,986:S.prototype.Ql}; -Fa(function(){for(var a=A(window.document,"pcjs","video"),b=0;bMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; -e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new S(d,e,f);Za(d,c)}}); -function Qk(a){this.Bk=a.adapter;switch(this.Bk){case 1:this.Ij=1016;this.og=4;break;case 2:this.Ij=760;this.og=3;break;default:w("Unrecognized serial adapter #"+this.Bk);return}this.fe=null;y.call(this,"SerialPort",a,Qk);var b=a.binding,c;a=Rk;b&&(void 0===c&&(c="Panel"),(c=Ya(c,this.id))&&(b=c.za[b])&&this.Ab(null,null,a,b))}Ua(y,Qk);var Rk="buffer";k=Qk.prototype;k.ck=function(a,b){return a==this.sh?(this.Gk=b,this):null}; -k.Ab=function(a,b,c,d){var e=this;switch(c){case Rk:return this.za[c]=this.fe=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Sk(e,[b]))},d.onkeypress=function(a){a=a||window.event;Sk(e,[a.which||a.keyCode])},!0}return!1};k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.da=d;this.oa=eb(a,"ChipSet");tb(b,this,Tk,this.Ij);zb(b,this,Uk,this.Ij);this.Ta()}; -k.Yb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le()};k.save=function(){var a=new gd(this),b=0,c=[];c[b++]=this.fi;c[b++]=this.gk;c[b++]=this.Ye;c[b++]=this.Rg;c[b++]=this.be;c[b++]=this.Uc;c[b++]=this.hd;c[b++]=this.Hc;c[b++]=this.ek;c[b]=this.If;a.set(0,c);return a.data()};k.restore=function(a){return this.le(a[0])}; -k.le=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.fi=a[b++];this.gk=a[b++];this.Ye=a[b++];this.Rg=a[b++];this.be=a[b++];this.Uc=a[b++];this.hd=a[b++];this.Hc=a[b++];this.ek=a[b++];this.If=a[b];return!0};function Sk(a,b){a.If=a.If.concat(b);Vk(a)}function Vk(a){0>8:this.Rg;this.ea(a,null,b,this.Uc&128?"DLM":"IER",c);return c};k.hn=function(a,b){var c=this.be;this.ea(a,null,b,"IIR",c);return c};k.jn=function(a,b){var c=this.Uc;this.ea(a,null,b,"LCR",c);return c};k.ln=function(a,b){var c=this.hd;this.ea(a,null,b,"MCR",c);return c}; -k.kn=function(a,b){var c=this.Hc;this.ea(a,null,b,"LSR",c);return c};k.rn=function(a,b){var c=this.ek;this.ea(a,null,b,"MSR",c);return c};k.Po=function(a,b,c){this.ea(a,b,c,this.Uc&128?"DLL":"THR");this.Uc&128?this.Ye=this.Ye&-256|b:(this.gk=b,this.Hc&=-97,this.fe?(13!=b&&(8==b?this.fe.value=this.fe.value.slice(0,-1):(this.fe.value+=String.fromCharCode(b),this.fe.scrollTop=this.fe.scrollHeight)),a=!0):a=!1,a&&(this.Hc|=96))}; -k.Ao=function(a,b,c){this.ea(a,b,c,this.Uc&128?"DLM":"IER");this.Uc&128?this.Ye=this.Ye&255|b<<8:this.Rg=b};k.Bo=function(a,b,c){this.ea(a,b,c,"LCR");this.Uc=b}; -k.Co=function(a,b,c){var d=this.hd;this.ea(a,b,c,"MCR");this.hd=b;this.Gk&&(d^b)&3&&(a=this.Gk,b=this.hd,(c=3==(b&3))?a.mc||(d=!1,a.hd&2||(a.reset(),a.Ra("serial mouse reset"),d=!0),a.hd&1||(a.Ra("serial mouse ID requested"),d=!0),d&&(Sk(a.Uf,[77]),a.Ra("serial mouse ID sent")),Wk(a,a.Jb),a.mc=c):a.mc&&(a.Ra("serial mouse inactive"),Xk(a.Jb),a.mc=c),a.hd=b)};k.Ra=function(a){this.da&&C(this.da,Yk)&&this.da.message(a)};k.ea=function(a,b,c,d,e){this.da&&this.da.ea(this,a,b,c,d,Yk,e)}; -var Tk={0:Qk.prototype.wn,1:Qk.prototype.gn,2:Qk.prototype.hn,3:Qk.prototype.jn,4:Qk.prototype.ln,5:Qk.prototype.kn,6:Qk.prototype.rn},Uk={0:Qk.prototype.Po,1:Qk.prototype.Ao,3:Qk.prototype.Bo,4:Qk.prototype.Co};Fa(function(){for(var a=A(window.document,"pcjs","serial"),b=0;ba.Fg||0>a.Gg)a.Fg=b.clientX,a.Gg=b.clientY;a.Af=b.clientX-a.Fg;a.Bf=b.clientY-a.Gg;(a.Af||a.Bf)&&$k(a,null,b.clientX,b.clientY);a.Fg=b.clientX;a.Gg=b.clientY}},!1),b.addEventListener("mousedown",function(b){al(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){al(a,b.button,!1)},!1),a.ti=!0),b.style.cursor="none")}function Xk(a){a&&(a.style.cursor="auto")} -function al(a,b,c){if(a.mc&&a.T&&a.T.qa.Mb)switch(b){case 0:a.gh!=c&&(a.gh=c,$k(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.hh!=c&&(a.hh=c,$k(a,"mouse button2 "+(c?"dn":"up")))}}function $k(a,b,c,d){var e=64|(a.gh?32:0)|(a.hh?16:0)|(a.Bf&192)>>4|(a.Af&192)>>6,f=a.Af&63,g=a.Bf&63;a.Ra((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+q(e)+","+q(f)+","+q(g)+"]");Sk(a.Uf,[e,f,g]);a.Af=a.Bf=0}k.Ra=function(a){this.da&&C(this.da,bl)&&this.da.message(a)}; -Fa(function(){for(var a=A(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a?e=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Rb+":"+this.Tb+":"+this.ac+":"+this.Kb,a+="&machine="+this.ia.kf(),a+="&user="+this.ia.je(),e=ta()+"/api/v1/disk?"+a,this.kh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)? -(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),e=ta()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.hf?"":d)+"&format=json")),sa(e,!0,null,this,this.sm,b))}; -k.sm=function(a,b,c,d){var e=null;this.jf=!1;var f=0>c&&this.Ka&&!this.Ka.qa.Lb;if(this.kh)c?this.ia.Ja('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Cd=!0,e=this);else if(c)this.ia.Ja('Unable to load disk "'+this.Nd+'" (error '+c+")",f);else try{if(0g&&0b.indexOf("0x")&& -'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)w(h[0]);else{for(b=a=0;b>2,r=l.pattern;void 0===r&&(r=l.pattern=0);var s=l.data;if(void 0===s){var t=l.bytes;if(void 0!==t&&t.length){for(var f=n<<2,v=t.length;vb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function ll(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} -k.write=function(a,b,c){if(this.jf)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Ic?f=a.$c+a.Ic&&(a.Ic+=f-(a.$c+a.Ic)+1):(a.$c=f,a.Ic=1);d[f]=d[f]&~(255<=this.pb.length||l>=this.pb[h].length||n>=this.pb[h][l].length){c="sector "+h+":"+l+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.jf){c="unable to modify write-protected disk";b=-1;break}e= -g[f++];f=g[f++];g=e+f.length;if(h=this.pb[h][l][n]){for(l=h.data.length;lb&&this.ia.Ja("unable to restore disk '"+this.Nd+": "+c);return b};k.Ra=function(a){this.da&&C(this.da,ml)&&this.da.message(a)}; -function nl(a){y.call(this,"FDC",a,nl);this.dmaRead=this.ni;this.dmaWrite=this.oi;this.dmaFormat=this.pm;this.Qe=null;if(a.autoMount&&(this.Qe=a.autoMount,"string"==typeof this.Qe))try{this.Qe=eval("("+a.autoMount+")")}catch(b){w("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Qe=null}this.uc=[]}Ua(y,nl);m={};aa={}; -var ol={3:{yd:3,ee:0,name:aa.Pp},4:{yd:2,ee:1,name:aa.Np},5:{yd:9,ee:7,name:aa.aq},6:{yd:9,ee:7,name:aa.Hp},7:{yd:2,ee:0,name:aa.Jp},8:{yd:1,ee:2,name:aa.Op},10:{yd:2,ee:7,name:aa.Ip},13:{yd:6,ee:7,name:aa.sp},15:{yd:3,ee:0,name:aa.Mp}};k=nl.prototype; -k.Ab=function(a,b,c,d){switch(c){case "listDisks":return this.za[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.za.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var l={};if(d=d.getAttribute("data-value"))try{l=eval("({"+d+"})")}catch(n){w("FDC option error: "+(n.message||n))}d=l.desc;void 0===d&&(d="");l=l.href;void 0!==l&&(d=''+d+"");c.innerHTML= -d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.za[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||pl(a,c)}}(this,d),!0;case "loadDrive":return this.za[c]=d,d.onclick=function(a){return function(){var b,c=a.za.listDisks,d=a.za.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.ya.restore(f)&&(e=!1);e&&a.ya&&void 0!==a.$a&&(a.Sa=a.ya.seek(a.kb,a.Na,a.Wa));return e};k.Pj=function(){for(var a=0,b=[],c=0;ca.Rb||e[1]>a.Tb)&&(this.Ja('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.fb)),b=null);b&&(a.ya=b,a.Yl=c,a.Te=d,wl(this,c,d,b),this.se|=128,this.Ja('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.fb),a.Ke),a.Bh=e[0],a.mg=e[1],a.ng=e[2]);a.Ke&&(a.Ke=!1,--this.Ee||this.Ta());pl(this,a.fb)}; -function pl(a,b){if(0<=b&&b=this.cb&&(this.Da&=-81,this.ob=this.cb=0);return c}; -k.uo=function(a,b,c){this.ea(a,b,c,"DATA["+this.cb+"]");this.cb=ol[a].yd){c=!1;this.ob=0;a=this.Pa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Pa(m.Qp);this.Pa(m.wp);this.Qb();break;case 4:e=this.Pa(m.Cf);this.fb=e&3;d=this.Ea[this.fb];this.Qb();this.bc((d.Ya&4278190080)>>>24,m.Tp);break;case 5:case 6:e=this.Pa(m.Cf);c=e>>2&1;this.fb=e&3;d=this.Ea[this.fb];d.Na=c;e=d.kb=this.Pa(m.Vj);f=this.Pa(m.Wj);g=d.Wa=this.Pa(m.Yj); -h=this.Pa(m.Th);d.bb=128<>2&1;this.fb=e&3;d=this.Ea[this.fb];e=d.kb;f=d.Na=c;g=d.Wa=1;h=0;d.Ya=0;d.ya&&(d.Sa=d.ya.seek(d.kb,d.Na,d.Wa))? -h=d.Sa.length:d.Ya=1088;xl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Pa(m.Cf);c=e>>2&1;this.fb=e&3;d=this.Ea[this.fb];e=d.kb;f=d.Na=c;g=1;h=this.Pa(m.Th);d.bb=128<>2&1,e=this.Pa(m.Cp),d.kb+=e-d.ae,0>d.kb&&(d.kb=0),d.kb>=d.Rb&&(d.kb=d.Rb-1),d.ae=e,d.Ya=32,0==d.kb&&(d.Ya|=268435456),this.Qb(),c=!0}0>>8,m.Rp);a.bc((b.Ya&16711680)>>>16,m.Sp);var l=0;if(e!=b.kb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.bc(e+l,m.Vj);a.bc(f,m.Wj);a.bc(g,m.Yj);a.bc(h,m.Th)}k.Pa=function(){var a=this.cc[this.ob];this.ob++;return a}; -k.Qb=function(){this.ob=this.cb=0};k.bc=function(a){this.cc[this.cb++]=a};k.ni=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};k.oi=function(a,b){return void 0!==b&&0<=b?this.Dc(a,b):-1};k.pm=function(a,b){return void 0!==b&&0<=b?this.Rj(a,b):-1};k.pi=function(a){a.Ya=72;a.ya&&(a.Sa=null,a.Ya=0,this.oa&&(Ti(this.oa,2,this,"dmaRead",a),Ni(this.oa,2)))};k.qi=function(a){a.Ya=72;a.ya&&(a.ya.jf?a.Ya=576:(a.Sa=null,a.Ya=0,this.oa&&(Ti(this.oa,2,this,"dmaWrite",a),Ni(this.oa,2))))}; -k.pk=function(a){a.Ya=72;a.ya&&(a.Sa=null,a.Ya=0,this.oa&&(a.He=0,a.wc=Array(4),a.Nf=!0,a.Tf=0,Ti(this.oa,2,this,"dmaFormat",a),Ni(this.oa,2),a.Nf=!1))};k.sc=function(a,b){var c=-1;if(!a.Ya&&a.ya){do{if(a.Sa&&0<=(c=ll(a.Sa,a.$a++)))break;a.Sa=a.ya.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=1088;break}a.$a=0;this.Kf(a)}while(1)}b(c,!1)}; -k.Dc=function(a,b){if(a.Ya||!a.ya)return-1;do{if(a.Sa&&a.ya.write(a.Sa,a.$a++,b))break;a.Sa=a.ya.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=8256;b=-1;break}a.$a=0;this.Kf(a)}while(1);return b};k.Kf=function(a){a.Wa++;a.Wa>=a.ng+1&&(a.Wa=1,a.Na++,a.Na>=a.mg&&(a.Na=0,a.kb++))};k.Rj=function(a,b){if(a.Ya)return-1;a.wc[a.He++]=b;if(a.He==a.wc.length){a.kb=a.wc[0];a.Na=a.wc[1];a.Wa=a.wc[2];a.bb=128<this.Dc(a,a.dk))return-1;a.Tf++}a.Tf>=a.ce&&(b=-1);return b}; -k.Hi=function(a){var b=this.T.K&255;this.da&&C(this.da,uj|Zc)&&128>b&&($c(this.da,19,a),ad(this.T,a,function(a,b){return function(e){bd(a.da,19,e,E(a.T)-b)}}(this,E(this.T))));return!0};k.Ra=function(a,b){this.da&&(null==b&&(b=uj),C(this.da,b)&&this.da.message(a))};k.ea=function(a,b,c,d,e){this.da&&this.da.ea(this,a,b,c,d,uj,e)};var sl={1012:nl.prototype.bn,1013:nl.prototype.$m,1015:nl.prototype.an},tl={1010:nl.prototype.vo,1013:nl.prototype.uo,1015:nl.prototype.to}; -Fa(function(){for(var a=A(window.document,"pcjs","fdc"),b=0;bg&&(l=g-c,0>l&&(l=0));g=c+l;if(h=!b){for(var h=a.ra,n=!0,q=c>>h.sb;0a.Nc)return;e=a.Nc;f= +e+1}}if(a.Sb){if(a.Wd[a.Sb]){d=0;h=a.Fe=0;l=1048575;a.Ha.Bc&32&&(h=32768,l&=~h,a.Ge&2||(l&=-65537));for(c+=e<<1;c>8|(r&255)<<8;s=h;var Ja=16;q>=l))>>(Ja-=l);Gk(a.th,q++,u,n[hc])}q>C&&(C=q);u=ia&&(ia=u+1)}e+=2;g++;if(q>=a.Db){q=0;u+=2;if(u>a.rc)break;u==a.rc&&(u=1,e=c+a.kk)}}AU;U++)ia= +C&2155905152,0>ia&&(ia+=4294967296),ia=Wj[ia]||0,Gk(a.th,h++,l,g[ia]),C<<=1;h>q&&(q=h);l=A&&(A=l+1)}e++;if(h>=a.Db&&(h=0,++l>a.rc))break}n>2),c=this.na.Rh&-17|(this.Qg&1<f&&(f=0);f%b.Li>b.On&&(d|=1);f%=b.Lk;f>b.Rn&&(d|=8);b.Si=e-f;b===a.na?(d|=b.xf&48^48,b.ld=!1):d=(b.xf^=9)|240;b.xf=d;a.ea(b.port+6,null,c,b===a.na?"STATUS1":"STATUS",d);return d}k.Ra=function(a,b){this.fa&&(b||E(this.fa,vk))&&this.fa.message(a)};k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,vk,e)}; +var rk={948:T.prototype.mn,949:T.prototype.ln,952:T.prototype.nn,954:T.prototype.on,980:T.prototype.Um,981:T.prototype.Tm,984:T.prototype.Vm,985:T.prototype.Sm,986:T.prototype.Wm},sk={948:T.prototype.Co,949:T.prototype.Bo,952:T.prototype.Do,980:T.prototype.no,981:T.prototype.mo,984:T.prototype.oo,985:T.prototype.lo},tk={960:T.prototype.Ek,961:T.prototype.Ek,962:T.prototype.yn,964:T.prototype.xn,965:T.prototype.wn,970:T.prototype.en,972:T.prototype.dn,974:T.prototype.cn,975:T.prototype.bn},uk={954:T.prototype.Pl, +960:T.prototype.Ol,961:T.prototype.Ol,962:T.prototype.Fo,964:T.prototype.Mo,965:T.prototype.Lo,970:T.prototype.xo,972:T.prototype.wo,974:T.prototype.vo,975:T.prototype.uo,986:T.prototype.Pl}; +Fa(function(){for(var a=D(window.document,"pcjs","video"),b=0;bMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; +e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new T(d,e,f);Ya(d,c)}}); +function Rk(a){this.Ak=a.adapter;switch(this.Ak){case 1:this.Hj=1016;this.og=4;break;case 2:this.Hj=760;this.og=3;break;default:x("Unrecognized serial adapter #"+this.Ak);return}this.fe=null;y.call(this,"SerialPort",a,Rk);var b=a.binding,c;a=Sk;b&&(void 0===c&&(c="Panel"),(c=Xa(c,this.id))&&(b=c.za[b])&&this.Ab(null,null,a,b))}z(y,Rk);var Sk="buffer";k=Rk.prototype;k.bk=function(a,b){return a==this.sh?(this.Fk=b,this):null}; +k.Ab=function(a,b,c,d){var e=this;switch(c){case Sk:return this.za[c]=this.fe=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),Tk(e,[b]))},d.onkeypress=function(a){a=a||window.event;Tk(e,[a.which||a.keyCode])},!0}return!1};k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.fa=d;this.oa=db(a,"ChipSet");sb(b,this,Uk,this.Hj);yb(b,this,Vk,this.Hj);this.Ta()}; +k.Yb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};k.Xb=function(a){return a&&this.save?this.save():!0};k.reset=function(){this.le()};k.save=function(){var a=new fd(this),b=0,c=[];c[b++]=this.fi;c[b++]=this.fk;c[b++]=this.Ye;c[b++]=this.Rg;c[b++]=this.be;c[b++]=this.Uc;c[b++]=this.hd;c[b++]=this.Hc;c[b++]=this.dk;c[b]=this.If;a.set(0,c);return a.data()};k.restore=function(a){return this.le(a[0])}; +k.le=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.fi=a[b++];this.fk=a[b++];this.Ye=a[b++];this.Rg=a[b++];this.be=a[b++];this.Uc=a[b++];this.hd=a[b++];this.Hc=a[b++];this.dk=a[b++];this.If=a[b];return!0};function Tk(a,b){a.If=a.If.concat(b);Wk(a)}function Wk(a){0>8:this.Rg;this.ea(a,null,b,this.Uc&128?"DLM":"IER",c);return c};k.gn=function(a,b){var c=this.be;this.ea(a,null,b,"IIR",c);return c};k.hn=function(a,b){var c=this.Uc;this.ea(a,null,b,"LCR",c);return c};k.kn=function(a,b){var c=this.hd;this.ea(a,null,b,"MCR",c);return c}; +k.jn=function(a,b){var c=this.Hc;this.ea(a,null,b,"LSR",c);return c};k.qn=function(a,b){var c=this.dk;this.ea(a,null,b,"MSR",c);return c};k.No=function(a,b,c){this.ea(a,b,c,this.Uc&128?"DLL":"THR");this.Uc&128?this.Ye=this.Ye&-256|b:(this.fk=b,this.Hc&=-97,this.fe?(13!=b&&(8==b?this.fe.value=this.fe.value.slice(0,-1):(this.fe.value+=String.fromCharCode(b),this.fe.scrollTop=this.fe.scrollHeight)),a=!0):a=!1,a&&(this.Hc|=96))}; +k.yo=function(a,b,c){this.ea(a,b,c,this.Uc&128?"DLM":"IER");this.Uc&128?this.Ye=this.Ye&255|b<<8:this.Rg=b};k.zo=function(a,b,c){this.ea(a,b,c,"LCR");this.Uc=b}; +k.Ao=function(a,b,c){var d=this.hd;this.ea(a,b,c,"MCR");this.hd=b;this.Fk&&(d^b)&3&&(a=this.Fk,b=this.hd,(c=3==(b&3))?a.mc||(d=!1,a.hd&2||(a.reset(),a.Ra("serial mouse reset"),d=!0),a.hd&1||(a.Ra("serial mouse ID requested"),d=!0),d&&(Tk(a.Uf,[77,77]),a.Ra("serial mouse ID sent")),Xk(a,a.Jb),a.mc=c):a.mc&&(a.Ra("serial mouse inactive"),Yk(a.Jb),a.mc=c),a.hd=b)};k.Ra=function(a){this.fa&&E(this.fa,Zk)&&this.fa.message(a)};k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,Zk,e)}; +var Uk={0:Rk.prototype.vn,1:Rk.prototype.fn,2:Rk.prototype.gn,3:Rk.prototype.hn,4:Rk.prototype.kn,5:Rk.prototype.jn,6:Rk.prototype.qn},Vk={0:Rk.prototype.No,1:Rk.prototype.yo,3:Rk.prototype.zo,4:Rk.prototype.Ao};Fa(function(){for(var a=D(window.document,"pcjs","serial"),b=0;ba.Fg||0>a.Gg)a.Fg=b.clientX,a.Gg=b.clientY;a.Af=b.clientX-a.Fg;a.Bf=b.clientY-a.Gg;(a.Af||a.Bf)&&al(a,null,b.clientX,b.clientY);a.Fg=b.clientX;a.Gg=b.clientY}},!1),b.addEventListener("mousedown",function(b){bl(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){bl(a,b.button,!1)},!1),a.ti=!0),b.style.cursor="none")}function Yk(a){a&&(a.style.cursor="auto")} +function bl(a,b,c){if(a.mc&&a.T&&a.T.qa.Mb)switch(b){case 0:a.gh!=c&&(a.gh=c,al(a,"mouse button1 "+(c?"dn":"up")));break;case 2:a.hh!=c&&(a.hh=c,al(a,"mouse button2 "+(c?"dn":"up")))}}function al(a,b,c,d){var e=64|(a.gh?32:0)|(a.hh?16:0)|(a.Bf&192)>>4|(a.Af&192)>>6,f=a.Af&63,g=a.Bf&63;a.Ra((b?b+": ":"")+(void 0!==d?"mouse ("+c+","+d+"): ":"")+"serial packet ["+t(e)+","+t(f)+","+t(g)+"]");Tk(a.Uf,[e,f,g]);a.Af=a.Bf=0}k.Ra=function(a){this.fa&&E(this.fa,cl)&&this.fa.message(a+" @"+da(this.T.va,this.T.xa.sa))}; +Fa(function(){for(var a=D(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=ga(b),"json"==a?e=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Rb+":"+this.Tb+":"+this.ac+":"+this.Kb,a+="&machine="+this.ia.kf(),a+="&user="+this.ia.je(),e=ta()+"/api/v1/disk?"+a,this.kh=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)? +(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),e=ta()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.hf?"":d)+"&format=json")),sa(e,!0,null,this,this.rm,b))}; +k.rm=function(a,b,c,d){var e=null;this.jf=!1;var f=0>c&&this.Ka&&!this.Ka.qa.Lb;if(this.kh)c?this.ia.Ja('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.Cd=!0,e=this);else if(c)this.ia.Ja('Unable to load disk "'+this.Nd+'" (error '+c+")",f);else try{if(0g&&0b.indexOf("0x")&& +'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(h.length)if(1==h.length)x(h[0]);else{for(b=a=0;b>2,q=l.pattern;void 0===q&&(q=l.pattern=0);var r=l.data;if(void 0===r){var s=l.bytes;if(void 0!==s&&s.length){for(var f=n<<2,u=s.length;ub&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=g>>16&255;c[d++]=g>>24&255}return c}function ml(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} +k.write=function(a,b,c){if(this.jf)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Ic?f=a.$c+a.Ic&&(a.Ic+=f-(a.$c+a.Ic)+1):(a.$c=f,a.Ic=1);d[f]=d[f]&~(255<=this.qb.length||l>=this.qb[h].length||n>=this.qb[h][l].length){c="sector "+h+":"+l+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.jf){c="unable to modify write-protected disk";b=-1;break}e= +g[f++];f=g[f++];g=e+f.length;if(h=this.qb[h][l][n]){for(l=h.data.length;lb&&this.ia.Ja("unable to restore disk '"+this.Nd+": "+c);return b};k.Ra=function(a){this.fa&&E(this.fa,nl)&&this.fa.message(a)}; +function ol(a){y.call(this,"FDC",a,ol);this.dmaRead=this.ni;this.dmaWrite=this.oi;this.dmaFormat=this.om;this.Qe=null;if(a.autoMount&&(this.Qe=a.autoMount,"string"==typeof this.Qe))try{this.Qe=eval("("+a.autoMount+")")}catch(b){x("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.Qe=null}this.uc=[]}z(y,ol);m={};aa={}; +var pl={3:{yd:3,ee:0,name:aa.Np},4:{yd:2,ee:1,name:aa.Lp},5:{yd:9,ee:7,name:aa.Zp},6:{yd:9,ee:7,name:aa.Fp},7:{yd:2,ee:0,name:aa.Hp},8:{yd:1,ee:2,name:aa.Mp},10:{yd:2,ee:7,name:aa.Gp},13:{yd:6,ee:7,name:aa.qp},15:{yd:3,ee:0,name:aa.Kp}};k=ol.prototype; +k.Ab=function(a,b,c,d){switch(c){case "listDisks":return this.za[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.za.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var l={};if(d=d.getAttribute("data-value"))try{l=eval("({"+d+"})")}catch(n){x("FDC option error: "+(n.message||n))}d=l.desc;void 0===d&&(d="");l=l.href;void 0!==l&&(d=''+d+"");c.innerHTML= +d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.za[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||ql(a,c)}}(this,d),!0;case "loadDrive":return this.za[c]=d,d.onclick=function(a){return function(){var b,c=a.za.listDisks,d=a.za.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.ya.restore(f)&&(e=!1);e&&a.ya&&void 0!==a.$a&&(a.Sa=a.ya.seek(a.kb,a.Na,a.Wa));return e};k.Oj=function(){for(var a=0,b=[],c=0;ca.Rb||e[1]>a.Tb)&&(this.Ja('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.fb)),b=null);b&&(a.ya=b,a.Xl=c,a.Te=d,xl(this,c,d,b),this.se|=128,this.Ja('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.fb),a.Ke),a.Bh=e[0],a.mg=e[1],a.ng=e[2]);a.Ke&&(a.Ke=!1,--this.Ee||this.Ta());ql(this,a.fb)}; +function ql(a,b){if(0<=b&&b=this.cb&&(this.Da&=-81,this.pb=this.cb=0);return c}; +k.so=function(a,b,c){this.ea(a,b,c,"DATA["+this.cb+"]");this.cb=pl[a].yd){c=!1;this.pb=0;a=this.Pa();var d,e,f,g,h;b=a&31;switch(b){case 3:this.Pa(m.Op);this.Pa(m.tp);this.Qb();break;case 4:e=this.Pa(m.Cf);this.fb=e&3;d=this.Ea[this.fb];this.Qb();this.bc((d.Ya&4278190080)>>>24,m.Rp);break;case 5:case 6:e=this.Pa(m.Cf);c=e>>2&1;this.fb=e&3;d=this.Ea[this.fb];d.Na=c;e=d.kb=this.Pa(m.Uj);f=this.Pa(m.Vj);g=d.Wa=this.Pa(m.Xj); +h=this.Pa(m.Th);d.bb=128<>2&1;this.fb=e&3;d=this.Ea[this.fb];e=d.kb;f=d.Na=c;g=d.Wa=1;h=0;d.Ya=0;d.ya&&(d.Sa=d.ya.seek(d.kb,d.Na,d.Wa))? +h=d.Sa.length:d.Ya=1088;yl(this,d,a,c,e,f,g,h);c=!0;break;case 13:e=this.Pa(m.Cf);c=e>>2&1;this.fb=e&3;d=this.Ea[this.fb];e=d.kb;f=d.Na=c;g=1;h=this.Pa(m.Th);d.bb=128<>2&1,e=this.Pa(m.Ap),d.kb+=e-d.ae,0>d.kb&&(d.kb=0),d.kb>=d.Rb&&(d.kb=d.Rb-1),d.ae=e,d.Ya=32,0==d.kb&&(d.Ya|=268435456),this.Qb(),c=!0}0>>8,m.Pp);a.bc((b.Ya&16711680)>>>16,m.Qp);var l=0;if(e!=b.kb||f!=b.Na)l=g=1;c&128&&(f^=l,d||(l=0));a.bc(e+l,m.Uj);a.bc(f,m.Vj);a.bc(g,m.Xj);a.bc(h,m.Th)}k.Pa=function(){var a=this.cc[this.pb];this.pb++;return a}; +k.Qb=function(){this.pb=this.cb=0};k.bc=function(a){this.cc[this.cb++]=a};k.ni=function(a,b,c){void 0===b||0>b?this.sc(a,c):c(-1,!1)};k.oi=function(a,b){return void 0!==b&&0<=b?this.Dc(a,b):-1};k.om=function(a,b){return void 0!==b&&0<=b?this.Qj(a,b):-1};k.pi=function(a){a.Ya=72;a.ya&&(a.Sa=null,a.Ya=0,this.oa&&(Ti(this.oa,2,this,"dmaRead",a),Ni(this.oa,2)))};k.qi=function(a){a.Ya=72;a.ya&&(a.ya.jf?a.Ya=576:(a.Sa=null,a.Ya=0,this.oa&&(Ti(this.oa,2,this,"dmaWrite",a),Ni(this.oa,2))))}; +k.ok=function(a){a.Ya=72;a.ya&&(a.Sa=null,a.Ya=0,this.oa&&(a.He=0,a.wc=Array(4),a.Nf=!0,a.Tf=0,Ti(this.oa,2,this,"dmaFormat",a),Ni(this.oa,2),a.Nf=!1))};k.sc=function(a,b){var c=-1;if(!a.Ya&&a.ya){do{if(a.Sa&&0<=(c=ml(a.Sa,a.$a++)))break;a.Sa=a.ya.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=1088;break}a.$a=0;this.Kf(a)}while(1)}b(c,!1)}; +k.Dc=function(a,b){if(a.Ya||!a.ya)return-1;do{if(a.Sa&&a.ya.write(a.Sa,a.$a++,b))break;a.Sa=a.ya.seek(a.kb,a.Na,a.Wa);if(!a.Sa){a.Ya=8256;b=-1;break}a.$a=0;this.Kf(a)}while(1);return b};k.Kf=function(a){a.Wa++;a.Wa>=a.ng+1&&(a.Wa=1,a.Na++,a.Na>=a.mg&&(a.Na=0,a.kb++))};k.Qj=function(a,b){if(a.Ya)return-1;a.wc[a.He++]=b;if(a.He==a.wc.length){a.kb=a.wc[0];a.Na=a.wc[1];a.Wa=a.wc[2];a.bb=128<this.Dc(a,a.ck))return-1;a.Tf++}a.Tf>=a.ce&&(b=-1);return b}; +k.Ra=function(a,b){this.fa&&(null==b&&(b=uj),E(this.fa,b)&&this.fa.message(a))};k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,uj,e)};var tl={1012:ol.prototype.an,1013:ol.prototype.Zm,1015:ol.prototype.$m},ul={1010:ol.prototype.to,1013:ol.prototype.so,1015:ol.prototype.ro};Fa(function(){for(var a=D(window.document,"pcjs","fdc"),b=0;b=e&&(this.tf|=(f.type&3)<<(1-e<<1))}return d}; -k.Nj=function(){var a=0,b=[];this.Je?(b[a++]=this.Md,b[a++]=this.Xl,b[a++]=this.te,b[a++]=this.Mh,b[a++]=this.Kh,b[a++]=this.Jh,b[a++]=this.uf,b[a++]=this.Da,b[a++]=this.Kj,b[a++]=this.Lh):(b[a++]=this.tf,b[a++]=this.Da,b[a++]=this.cc,b[a++]=this.ob,b[a++]=this.cb,b[a++]=this.Wl,b[a++]=this.Vl,b[a++]=this.Ul,b[a++]=this.lf);b[a]=this.Pj();return b}; -k.Fi=function(a,b,c,d,e){var f=0,g=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.fb=a;b.errorCode=d[f++];b.cm=d[f++];b.hf=d[f++];b.$e=d[f++];b.af=d[f++];b.Na=d[f++];b.Tb=d[f++];b.Sd=d[f++];b.Wa=d[f++];b.ce=d[f++];b.bb=d[f++];b.Wg=this.Je?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.je()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===yl[this.cg][b.type])b.type=this.Fm;c=yl[this.cg][b.type]; -b.ac=c[2]||17;b.Kb=c[3]||512;if(e&&this.oa&&(e=this.oa,c=b.type,e.sa)){var h=e.sa[18],h=a?h&240|c:h&15|c<<4;e.sa&&(e.sa[18]=h,Bi(e))}void 0===b.ya&&(b.ya=null,this.Ja("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Dl(this,b);b.$a=d[f++];b.Sa=null;b.ya&&(a=d[f],void 0!==a&&0>b.ya.restore(a)&&(g=!1),g&&void 0!==b.$a&&(b.Sa=b.ya.seek(b.Sd,b.Na,b.Wa+b.Wg)));return g};k.Pj=function(){for(var a=0,b=[],c=0;c=this.cb&&(this.ob=this.cb=0,this.Da&=-15);return c}; -k.Ro=function(a,b,c){this.ea(a,b,c,"DATA["+this.cb+"]");this.cb=a&&(this.Da|=2,this.Da&=-2,El(this))};k.Dn=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);this.ob=this.Qa.Kb){var e=this;this.sc(this.Qa,function(a){0<=a?Fl(e):(e.Da=1,e.Md=16)},!1)}else this.Da=80;d||this.ea(a,null,b,"DATA",c);return c}; -k.ho=function(a,b,c){this.Qa&&0!=this.Qa.$a||this.ea(a,b,c,"DATA");this.Qa&&this.Qa.bb>=this.Qa.Kb&&(0>this.Dc(this.Qa,b)?(this.Da=1,this.Md=16):this.Qa.$a==this.Qa.Kb&&(this.Qa.bb-=this.Qa.Kb,this.te=this.te-1&255,Fl(this),this.Qa.bb>=this.Qa.Kb||(this.Da=80)))};k.Pm=function(a,b){var c=this.Md;this.ea(a,null,b,"ERROR",c);return c};k.mo=function(a,b,c){this.ea(a,b,c,"WPREC");this.Xl=b};k.Qm=function(a,b){var c=this.te;this.ea(a,null,b,"SECCNT",c);return c}; -k.ko=function(a,b,c){this.ea(a,b,c,"SECCNT");this.te=b};k.Rm=function(a,b){var c=this.Mh;this.ea(a,null,b,"SECNUM",c);return c};k.lo=function(a,b,c){this.ea(a,b,c,"SECNUM");this.Mh=b};k.Mm=function(a,b){var c=this.Kh;this.ea(a,null,b,"CYLLO",c);return c};k.fo=function(a,b,c){this.ea(a,b,c,"CYLLO");this.Kh=b};k.Lm=function(a,b){var c=this.Jh;this.ea(a,null,b,"CYLHI",c);return c};k.eo=function(a,b,c){this.ea(a,b,c,"CYLHI");this.Jh=b};k.Om=function(a,b){var c=this.uf;this.ea(a,null,b,"DRVHD",c);return c}; -k.io=function(a,b,c){this.ea(a,b,c,"DRVHD");this.uf=b;this.Da=this.Ea[this.uf&16?1:0]?this.Da|64:this.Da&-65};k.Sm=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);return c};k.co=function(a,b,c){this.ea(a,b,c,"COMMAND");this.Kj=b;this.oa&&aj(this.oa,14);Gl(this)};k.jo=function(a,b,c){this.ea(a,b,c,"FDR");this.Lh&4&&!(b&4)&&(this.Md=1);this.Lh=b}; -function Gl(a){var b=!1,c=a.Kj,d=a.uf&16?1:0,e=a.uf&15,f=a.Kh|(a.Jh&3)<<8,g=a.Mh,h=a.te||256;a.Qa=null;a.Md=0;a.Da=80;(d=a.Ea[d])?(d.Sd=f,d.Na=e,d.Wa=g,d.bb=h*d.Kb,c=144<=c?c:c&240,d.Sa=null,d.errorCode=0,a.Qa=d):c=-1;switch(c&240){case 32:a.sc(d,function(b){0<=b&&a.oa?(Fl(a),a.Da=136):(a.Da=1,a.Md=16)},!1);break;case 48:a.oa?(Fl(a),a.Da=136):(a.Da=1,a.Md=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Md=1;b=!0;break;case 145:d.Tb=e+1,d.ac=h,b=!0}b&&Fl(a)} -function Fl(a){!a.oa||a.Lh&2||$i(a.oa,14)} -function El(a){a.ob=0;var b=a.Pa(),c=a.Pa(),d=c&32,e=d>>5,f=c&31,g=a.Pa(),h=a.Pa(),l=g<<2&768|h,n=g&63,r=a.Pa(),s=a.Pa(),t=a.Ea[e];t&&(t.Sd=l,t.Na=f,t.Wa=n,t.bb=r*t.Kb);switch(b){case 3:a.Qb(t?t.errorCode:4);a.bc(c);a.bc(g);a.bc(h);a.bc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Pa());)t&&cb?this.sc(a,c):c(-1,!1)}; -k.oi=function(a,b){return void 0!==b&&0<=b?this.Dc(a,b):-1};k.qm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.$ab.ya.restore(a)&&(g=!1),g&&void 0!==b.$a&&(b.Sa=b.ya.seek(b.Sd,b.Na,b.Wa+b.Wg)));return g};k.Oj=function(){for(var a=0,b=[],c=0;c=this.cb&&(this.pb=this.cb=0,this.Da&=-15);return c}; +k.Po=function(a,b,c){this.ea(a,b,c,"DATA["+this.cb+"]");this.cb=a&&(this.Da|=2,this.Da&=-2,Fl(this))};k.Cn=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);this.pb=this.Qa.Kb){var e=this;this.sc(this.Qa,function(a){0<=a?Gl(e):(e.Da=1,e.Md=16)},!1)}else this.Da=80;d||this.ea(a,null,b,"DATA",c);return c}; +k.eo=function(a,b,c){this.Qa&&0!=this.Qa.$a||this.ea(a,b,c,"DATA");this.Qa&&this.Qa.bb>=this.Qa.Kb&&(0>this.Dc(this.Qa,b)?(this.Da=1,this.Md=16):this.Qa.$a==this.Qa.Kb&&(this.Qa.bb-=this.Qa.Kb,this.te=this.te-1&255,Gl(this),this.Qa.bb>=this.Qa.Kb||(this.Da=80)))};k.Om=function(a,b){var c=this.Md;this.ea(a,null,b,"ERROR",c);return c};k.ko=function(a,b,c){this.ea(a,b,c,"WPREC");this.Wl=b};k.Pm=function(a,b){var c=this.te;this.ea(a,null,b,"SECCNT",c);return c}; +k.io=function(a,b,c){this.ea(a,b,c,"SECCNT");this.te=b};k.Qm=function(a,b){var c=this.Mh;this.ea(a,null,b,"SECNUM",c);return c};k.jo=function(a,b,c){this.ea(a,b,c,"SECNUM");this.Mh=b};k.Lm=function(a,b){var c=this.Kh;this.ea(a,null,b,"CYLLO",c);return c};k.co=function(a,b,c){this.ea(a,b,c,"CYLLO");this.Kh=b};k.Km=function(a,b){var c=this.Jh;this.ea(a,null,b,"CYLHI",c);return c};k.bo=function(a,b,c){this.ea(a,b,c,"CYLHI");this.Jh=b};k.Nm=function(a,b){var c=this.uf;this.ea(a,null,b,"DRVHD",c);return c}; +k.fo=function(a,b,c){this.ea(a,b,c,"DRVHD");this.uf=b;this.Da=this.Ea[this.uf&16?1:0]?this.Da|64:this.Da&-65};k.Rm=function(a,b){var c=this.Da;this.ea(a,null,b,"STATUS",c);return c};k.ao=function(a,b,c){this.ea(a,b,c,"COMMAND");this.Jj=b;this.oa&&aj(this.oa,14);Hl(this)};k.ho=function(a,b,c){this.ea(a,b,c,"FDR");this.Lh&4&&!(b&4)&&(this.Md=1);this.Lh=b}; +function Hl(a){var b=!1,c=a.Jj,d=a.uf&16?1:0,e=a.uf&15,f=a.Kh|(a.Jh&3)<<8,g=a.Mh,h=a.te||256;a.Qa=null;a.Md=0;a.Da=80;(d=a.Ea[d])?(d.Sd=f,d.Na=e,d.Wa=g,d.bb=h*d.Kb,c=144<=c?c:c&240,d.Sa=null,d.errorCode=0,a.Qa=d):c=-1;switch(c&240){case 32:a.sc(d,function(b){0<=b&&a.oa?(Gl(a),a.Da=136):(a.Da=1,a.Md=16)},!1);break;case 48:a.oa?(Gl(a),a.Da=136):(a.Da=1,a.Md=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.Md=1;b=!0;break;case 145:d.Tb=e+1,d.ac=h,b=!0}b&&Gl(a)} +function Gl(a){!a.oa||a.Lh&2||$i(a.oa,14)} +function Fl(a){a.pb=0;var b=a.Pa(),c=a.Pa(),d=c&32,e=d>>5,f=c&31,g=a.Pa(),h=a.Pa(),l=g<<2&768|h,n=g&63,q=a.Pa(),r=a.Pa(),s=a.Ea[e];s&&(s.Sd=l,s.Na=f,s.Wa=n,s.bb=q*s.Kb);switch(b){case 3:a.Qb(s?s.errorCode:4);a.bc(c);a.bc(g);a.bc(h);a.bc(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Pa());)s&&cb?this.sc(a,c):c(-1,!1)}; +k.oi=function(a,b){return void 0!==b&&0<=b?this.Dc(a,b):-1};k.pm=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.$a=a.ac+b&&(a.Wa=b,a.Na++,a.Na>=a.Tb&&(a.Na=0,a.Sd++))}; -k.Rj=function(a,b){if(a.errorCode)return-1;a.wc[a.He++]=b;if(a.He==a.wc.length){a.Sd=a.wc[0];a.Na=a.wc[1];a.Wa=a.wc[2];a.bb=128<this.Dc(a,a.dk))return-1;a.Tf++}a.Tf>=a.ce&&(b=-1);return b};k.Fn=function(a){var b=this.T.K&255;!(this.T.H>>8)&&128>8)||(a=!this.oa)||(a=!(this.oa.ub[0].xd&64));return a?!0:!1};k.Ra=function(a,b){this.da&&(null==b&&(b=Il),C(this.da,b)&&this.da.message(a))};k.ea=function(a,b,c,d,e){this.da&&this.da.ea(this,a,b,c,d,Il,e)}; -var Al={800:V.prototype.Cn,801:V.prototype.Dn,802:V.prototype.Bn},zl={496:V.prototype.Nm,497:V.prototype.Pm,498:V.prototype.Qm,499:V.prototype.Rm,500:V.prototype.Mm,501:V.prototype.Lm,502:V.prototype.Om,503:V.prototype.Sm},Cl={800:V.prototype.Ro,801:V.prototype.Uo,802:V.prototype.To,803:V.prototype.So,807:V.prototype.Fj,811:V.prototype.Fj,815:V.prototype.Fj},Bl={496:V.prototype.ho,497:V.prototype.mo,498:V.prototype.ko,499:V.prototype.lo,500:V.prototype.fo,501:V.prototype.eo,502:V.prototype.io,503:V.prototype.co, -1014:V.prototype.jo};Fa(function(){for(var a=A(window.document,"pcjs","hdc"),b=0;bthis.Dc(a,a.ck))return-1;a.Tf++}a.Tf>=a.ce&&(b=-1);return b};k.En=function(){var a=this.T.K&255;!(this.T.H>>8)&&128>8)||(a=!this.oa)||(a=!(this.oa.vb[0].xd&64));return a?!0:!1};k.Ra=function(a,b){this.fa&&(null==b&&(b=Jl),E(this.fa,b)&&this.fa.message(a))}; +k.ea=function(a,b,c,d,e){this.fa&&this.fa.ea(this,a,b,c,d,Jl,e)}; +var Bl={800:Y.prototype.Bn,801:Y.prototype.Cn,802:Y.prototype.An},Al={496:Y.prototype.Mm,497:Y.prototype.Om,498:Y.prototype.Pm,499:Y.prototype.Qm,500:Y.prototype.Lm,501:Y.prototype.Km,502:Y.prototype.Nm,503:Y.prototype.Rm},Dl={800:Y.prototype.Po,801:Y.prototype.So,802:Y.prototype.Ro,803:Y.prototype.Qo,807:Y.prototype.Ej,811:Y.prototype.Ej,815:Y.prototype.Ej},Cl={496:Y.prototype.eo,497:Y.prototype.ko,498:Y.prototype.io,499:Y.prototype.jo,500:Y.prototype.co,501:Y.prototype.bo,502:Y.prototype.fo,503:Y.prototype.ao, +1014:Y.prototype.ho};Fa(function(){for(var a=D(window.document,"pcjs","hdc"),b=0;b>8,e=Vl[b];if(e=e&&e[d]||""){var f=a.T;a.ib[Z[0]]=q(f.H&255);a.ib[Z[1]]=q(f.J&255);a.ib[Z[2]]=q(f.K&255);a.ib[Z[3]]=q(f.C&255);a.ib[Z[4]]=q(f.H>>8);a.ib[Z[5]]=q(f.J>>8);a.ib[Z[6]]=q(f.K>>8);a.ib[Z[7]]=q(f.C>>8);a.ib[Z[8]]=u(f.H);a.ib[Z[9]]=u(f.J);a.ib[Z[10]]=u(f.K);a.ib[Z[11]]=u(f.C);a.ib[Z[12]]=u(f.Y);a.ib[Z[13]]=u(f.I);a.ib[Z[14]]=u(f.G);a.ib[Z[15]]=u(f.F);a.ib[Z[16]]=u(f.Za.ta);a.ib[Z[17]]=u(f.xa.ta);a.ib[Z[18]]=u(f.tb.ta);a.ib[Z[19]]= -u(f.zb.ta);a.ib[Z[20]]=u(f.va);e=" "+ka(a.ib,e)}a.message("INT 0x"+q(b)+": AH="+q(d)+" at "+da(c-a.T.xa.Xa,a.T.xa.ta)+e)}}function bd(a,b,c,d,e){32>b&&16!=b&&21!=b&&22!=b&&26!=b&&28!=b&&a.message("INT 0x"+q(b)+"("+c+"): C="+(od(a.T)?1:0)+(e||"")+" (cycles="+d+")")} -k.ea=function(a,b,c,d,e,f,g){f||(f=0);f|=Hj;if(null==d||(this.jc&f)==f)f=null,null!=d&&(f=this.T.xa.ta,d-=this.T.xa.Xa),this.message(a.sh+"."+(null!=c?"outPort":"inPort")+"(0x"+u(b)+","+(e?e:"unknown")+(null!=c?",0x"+q(c):"")+")"+(null!=g?": 0x"+q(g):"")+(null!=d?" at "+da(d,f):""))};k.message=function(a){this.fa(a);this.T&&(this.jc&268435456&&this.T.xb(),a=this.T,a.ca.rf=0,a.Pc-=a.A,a.A=0,a.bh())};k.In=function(a){C(this,2097152|Zc)&&$c(this,33,a);return!0};k.En=function(){this.fa("Type ? for list of debugger commands")}; -function Ll(a){var b;if(Ed(a)){if(!a.Xd||!a.Xd.length){a.Xd=Array(1E4);for(b=0;b>c.rb],!1)}a.Ud=["read"];if(void 0!==a.Sc)for(b=1;b>c.rb],!0);a.Sc=["write"]}k.Yd=function(a,b,c){if(!fm(this,a,b)){b[2]=cm(this,b);b[3]=c;a.push(b);if(a!=this.tc){var d=this.ra,e=cm(this,b);d.Fa[e>>d.rb].Yd(e&d.gb,a==this.Sc)}c||this.fa("breakpoint enabled: "+em(b)+" ("+a[0]+")");Ll(this);return!0}return!1}; -function fm(a,b,c,d){var e=!1;c=cm(a,c);for(var f=1;f>d.rb],b==a.Sc));g[3]||a.fa("breakpoint cleared: "+em(g)+" ("+b[0]+")");Ll(a);break}a.fa("breakpoint exists: "+em(g)+" ("+b[0]+")");break}}return e}function gm(a,b){for(var c=1;c=b&&f>g.rb].Yd(f&g.gb,d==a.Sc)}}}function $l(a,b){if(void 0!==b)am(a,b,a.tc,!0),a.nc=0;else for(var c=1;c=Pl.length&&(l=a.wb(b,1),g=Ul[h-Pl.length][l>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var r="",s=g[f];if(void 0!==s){var t=s&15;if(0!=t&&15!=t){var v=s&240;if(128<=v)if(0>l&&(l=a.wb(b,1)),160<=v)r=l>>3&7,176==(s&240)?r+=16:3<=(s&15)&&(r+=8),r=Z[r];else{if(128<=v){var r=a,B=s,t=b,D="",v=l>>6,D=l&7;3>v?(B=void 0,v||6!=D?(D=Ql[D],1==v?(B=r.wb(t, -1),B&128?(B=B<<24>>24,D+="-"+q(-B)):D+="+"+q(B)):2==v&&(B=r.ua(t,2),D+="+"+u(B))):(B=r.ua(t,2),D=u(B)),D="["+D+"]"):D=Z[D+(1==(B&15)?0:8)];r=D}}else if(16==v)r="1";else if(0==v){r=a;v=s;t=b;B=" ";switch(v&15){case 1:v&12288&&(B=q(r.wb(t,1)));break;case 2:B=u(r.wb(t,1)<<24>>24);break;case 3:case 4:B=u(r.ua(t,2));break;case 6:v=r.ua(t,2);r=r.ua(t,2);B=em([v,r,void 0]);break;default:B="imm("+u(v)+")"}r=B}else 32==v?r="["+u(a.ua(b,2))+"]":48==v?(1==t?(r=a.wb(b,1),r=r<<24>>24):r=a.ua(b,2),r=b[0]+r&65535, -r=im(a,[r,b[1],void 0])[0]||u(r)):96==v?r=Z[(s&3840)>>8]:112==v?r=Z[((s&3840)>>8)+16]:64==v?r="DS:[SI]":80==v&&(r="ES:[DI]");r.length||(r="type("+u(s)+")");0>>4),d[0]=g,d[1]=h,void 0!==l.p&&(d[2]=l.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=nm(a,b),d=null):d=nm(a,b):(e=nm(a,b.substring(0,d)),c=nm(a,b.substring(d+1)),d= +82:"get system variables (es:bx)",83:"translate bpb DS:SI to dpb (es:bp)",84:"get verify flag (al)",85:"create child psp at segment DX",86:"rename file DS:DX to name ES:DI",87:"get(0)/set(1) file date DX and time CX (AL)",88:"get(0)/set(1) memory allocation strategy (AL)",89:"get extended error information",90:"create temporary file DS:DX with attributes CX",91:"create file DS:DX with attributes CX",92:"lock(0)/unlock(1) file BX region CX:DX length SI:DI (AL)"}};k=Kl.prototype; +k.pc=function(a,b,c,d){this.ra=b;this.T=c;this.Ka=a;this.Am=db(a,"FDC");this.zk=db(a,"HDC");this.Hf=Ul;80186<=this.T.Ia&&(this.Hf=Ul.slice(),this.Hf[15]=$,80286<=this.T.Ia&&(this.Hf[15]=Tl));ni(this,2097152,function(a){if(a)for(d.da("dumpDOS("+a+")"),a=ca(a);a;){var b=[0,a,void 0],c=d.mb(b,1),e=d.ua(b,2),n=d.ua(b,5);if(77!=c&&90!=c)break;d.da(da(0,a)+": '"+String.fromCharCode(c)+"' PID="+v(e)+" LEN="+v(n)+' "'+Yl(d,b)+'"');a+=1+n}});this.Ta();if(this.Lj){a=Nl(this,this.Lj);delete this.Lj;for(var e in a)Zl(this, +a[e])}}; +k.Ab=function(a,b,c,d){var e=this;switch(c){case "debugInput":return this.Vf=this.za[c]=d,d.onkeypress=function(a){if(13==a.keyCode){var b=d.value;d.value="";var c=Nl(e,b,!0);for(b in c)Zl(e,c[b]);a.preventDefault&&a.preventDefault()}},!0;case "debugEnter":return this.za[c]=d,Aa(d,function(){if(e.Vf){var a=e.Vf.value;e.Vf.value="";var b=Nl(e,a,!0);for(a in b)Zl(e,b[a]);return!0}return!1}),!0;case "step":return this.za[c]=d,Aa(d,function(a){var b=!1;$a(e,!0)||(Za(e,!0),b=e.yf(a?1:0),Za(e,!1));return b}), +!0}return!1};k.Pd=function(){this.Vf&&this.Vf.focus()};function Yl(a,b){var c,d="";for(c=8;d.lengthe?String.fromCharCode(e):"."}return d}function ni(a,b,c){for(var d in Ol)if(b==Ol[d]){a.Zh[d]=c;break}}function E(a,b){return(a.jc&b)===b} +function Zc(a,b,c){var d=Pl[b],e=d&&E(a,d);if(e){var f=a.T.H>>8,g=a.T.K&255;if(33==b&&11==f||d==uj&&128<=g||d==Jl&&128>g)e=!1}if(e){if(d=(d=Xl[b])&&d[f]||"")g=a.T,a.ib[Z[0]]=t(g.H&255),a.ib[Z[1]]=t(g.J&255),a.ib[Z[2]]=t(g.K&255),a.ib[Z[3]]=t(g.C&255),a.ib[Z[4]]=t(g.H>>8),a.ib[Z[5]]=t(g.J>>8),a.ib[Z[6]]=t(g.K>>8),a.ib[Z[7]]=t(g.C>>8),a.ib[Z[8]]=v(g.H),a.ib[Z[9]]=v(g.J),a.ib[Z[10]]=v(g.K),a.ib[Z[11]]=v(g.C),a.ib[Z[12]]=v(g.Y),a.ib[Z[13]]=v(g.I),a.ib[Z[14]]=v(g.G),a.ib[Z[15]]=v(g.F),a.ib[Z[16]]=v(g.Za.sa), +a.ib[Z[17]]=v(g.xa.sa),a.ib[Z[18]]=v(g.ub.sa),a.ib[Z[19]]=v(g.zb.sa),a.ib[Z[20]]=v(g.va),d=" "+ka(a.ib,d);a.message("INT 0x"+t(b)+": AH="+t(f)+" at "+da(c-a.T.xa.Xa,a.T.xa.sa)+d)}return e}function ad(a,b,c,d,e){a.message("INT 0x"+t(b)+": C="+(nd(a.T)?1:0)+(e||"")+" (cycles="+d+(c?",level="+(c+1):"")+")")} +k.ea=function(a,b,c,d,e,f,g){f||(f=0);f|=Ij;if(null==d||(this.jc&f)==f)f=null,null!=d&&(f=this.T.xa.sa,d-=this.T.xa.Xa),this.message(a.sh+"."+(null!=c?"outPort":"inPort")+"(0x"+v(b)+","+(e?e:"unknown")+(null!=c?",0x"+t(c):"")+")"+(null!=g?": 0x"+t(g):"")+(null!=d?" at "+da(d,f):""))};k.message=function(a){this.da(a);this.T&&(this.jc&268435456&&this.T.xb(),a=this.T,a.ca.rf=0,a.Pc-=a.A,a.A=0,a.bh())};k.Dn=function(){this.da("Type ? for list of debugger commands")}; +function Ml(a){var b;if(Dd(a)){if(!a.Xd||!a.Xd.length){a.Xd=Array(1E4);for(b=0;b>c.sb],!1)}a.Ud=["read"];if(void 0!==a.Sc)for(b=1;b>c.sb],!0);a.Sc=["write"]}k.Yd=function(a,b,c){if(!im(this,a,b)){b[2]=fm(this,b);b[3]=c;a.push(b);if(a!=this.tc){var d=this.ra,e=fm(this,b);d.Fa[e>>d.sb].Yd(e&d.gb,a==this.Sc)}c||this.da("breakpoint enabled: "+hm(b)+" ("+a[0]+")");Ml(this);return!0}return!1}; +function im(a,b,c,d){var e=!1;c=fm(a,c);for(var f=1;f>d.sb],b==a.Sc));g[3]||a.da("breakpoint cleared: "+hm(g)+" ("+b[0]+")");Ml(a);break}a.da("breakpoint exists: "+hm(g)+" ("+b[0]+")");break}}return e}function jm(a,b){for(var c=1;c=b&&f>g.sb].Yd(f&g.gb,d==a.Sc)}}}function cm(a,b){if(void 0!==b)dm(a,b,a.tc,!0),a.nc=0;else for(var c=1;c=Rl.length&&(l=a.mb(b,1),g=Wl[h-Rl.length][l>>3&7]);var n=2,h="";if(164<=f&&167>=f||170<=f&&175>=f)n=0;for(f=1;f<=n;f++){var q="",r=g[f];if(void 0!==r){var s=r&15;if(0!=s&&15!=s){var u=r&240;if(128<=u)if(0>l&&(l=a.mb(b,1)),160<=u)q=l>>3&7,176==(r&240)?q+=16:3<=(r&15)&&(q+=8),q=Z[q];else{if(128<=u){var q=a,A=r,s=b,C="",u=l>>6,C=l&7;3>u?(A=void 0,u||6!=C?(C=Sl[C],1==u?(A=q.mb(s, +1),A&128?(A=A<<24>>24,C+="-"+t(-A)):C+="+"+t(A)):2==u&&(A=q.ua(s,2),C+="+"+v(A))):(A=q.ua(s,2),C=v(A)),C="["+C+"]"):C=Z[C+(1==(A&15)?0:8)];q=C}}else if(16==u)q="1";else if(0==u){q=a;u=r;s=b;A=" ";switch(u&15){case 1:u&12288&&(A=t(q.mb(s,1)));break;case 2:A=v(q.mb(s,1)<<24>>24);break;case 3:case 4:A=v(q.ua(s,2));break;case 6:u=q.ua(s,2);q=q.ua(s,2);A=hm([u,q,void 0]);break;default:A="imm("+v(u)+")"}q=A}else 32==u?q="["+v(a.ua(b,2))+"]":48==u?(1==s?(q=a.mb(b,1),q=q<<24>>24):q=a.ua(b,2),q=b[0]+q&65535, +q=lm(a,[q,b[1],void 0])[0]||v(q)):96==u?q=Z[(r&3840)>>8]:112==u?q=Z[((r&3840)>>8)+16]:64==u?q="DS:[SI]":80==u&&(q="ES:[DI]");q.length||(q="type("+v(r)+")");0>>4),d[0]=g,d[1]=h,void 0!==l.p&&(d[2]=l.p));break}}if(d&&d.length)return d;d=b.indexOf(":");0>d?null!=e?(c=qm(a,b),d=null):d=qm(a,b):(e=qm(a,b.substring(0,d)),c=qm(a,b.substring(d+1)),d= null)}return[c,e,d]} -function nm(a,b,c){var d;if(void 0!==b)switch(b=b.toUpperCase(),b){case "AX":d=a.T.H;break;case "BX":d=a.T.C;break;case "CX":d=a.T.J;break;case "DX":d=a.T.K;break;case "SI":d=a.T.G;break;case "DI":d=a.T.F;break;case "BP":d=a.T.I;break;case "SP":d=a.T.Y;break;case "CS":d=a.T.xa.ta;break;case "DS":d=a.T.zb.ta;break;case "ES":d=a.T.Za.ta;break;case "SS":d=a.T.tb.ta;break;case "IP":d=a.T.va;break;default:d=ca(b),void 0===d&&a.fa("invalid "+(c?c:"value")+": "+b)}else a.fa("missing "+(c?c:"value"));return d} -function xj(a,b,c,d){function e(a,b){return a[0]>b[0]?1:a[0]=g&&eb[0]?1:a[0]c?(a.fa("out of data at address "+em(b)),r=!0):(a.Od(b,c,1),n++)})})(a,c);a.fa(n+" bytes read at "+e)}else a.fa("sector "+e+" request out of range");else a.fa("drive "+d+" not loaded"); -else a.fa("invalid drive: "+d)}else a.fa("disk controller not present")}}} -function Yl(a,b,c){if(b&&"?"==b[1])a.fa("\nregister commands:"),a.fa("\tr\t\tdisplay all registers"),a.fa("\tr [target=#]\tmodify target register"),a.fa("supported targets:"),a.fa("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1b[0]?1:a[0]=g&&eb[0]?1:a[0]c?(a.da("out of data at address "+hm(b)),q=!0):(a.Od(b,c,1),n++)})})(a,c);a.da(n+" bytes read at "+e)}else a.da("sector "+e+" request out of range");else a.da("drive "+d+" not loaded"); +else a.da("invalid drive: "+d)}else a.da("disk controller not present")}}} +function am(a,b,c){if(b&&"?"==b[1])a.da("\nregister commands:"),a.da("\tr\t\tdisplay all registers"),a.da("\tr [target=#]\tmodify target register"),a.da("supported targets:"),a.da("\tall registers and flags V,D,I,S,Z,A,P,C");else{var d=!0,e;if(null!=b&&1c||"z">>4);var lc=D[W].l;lc&&(W=lc);a.fa(da(Ka,wb)+" "+W)}}}else{for(v in Nl)if(s==v){var Rb=a.Zh[v];Rb?Rb(t):a.fa("no dump registered for "+s);break a}var X=mm(a,s,2);if(null!=X[0])if("ds"== -l){var L=bm(a,X[0]);if(null!=L.ta){var x="selector="+u(X[0])+" limit="+u(L.Oc)+" base="+p(L.Xa);if(L.Oa){x+=" access="+u(L.Oa);if(L.Oa&4096)L.Oa&2048?(x+="code:",x+=L.Oa&512?"readable,":"execonly,",x+=L.Oa&1024?"conforming,":"nonconforming,"):(x+="data:",x+=L.Oa&512?"writeable,":"readonly,",x+=L.Oa&1024?"expand down,":"expand up,"),x+=L.Oa&256?"accessed":"not accessed";else switch(x+="type:",L.Oa&7936){case 256:x+="tss";break;case 512:x+="ldt";break;case 768:x+="tss(busy)";break;case 1024:x+="call"; -break;case 1280:x+="task";break;case 1536:x+="int";break;case 1792:x+="trap";break;default:x+="unknown"}x+=",dpl"+(L.Oa>>13&24576);x+=L.Oa&32768?",present":",not present"}a.fa(x)}else a.fa("invalid selector: "+u(X[0]))}else{var T=0;void 0!==t&&("l"==t.charAt(0)&&(t=t.substr(1)),T=parseInt(t,10));var J="";T||(T=8);for(var xb=0;xbY;Y++){var Xa=a.wb(X,1);"dw"==l?Y&1&&(f+=u(ga|Xa<<8)+(7==Y?" - ":" ")):f+=q(Xa)+(7==Y?"-":" ");La+=32<=Xa&&128>Xa?String.fromCharCode(Xa): -".";ga=Xa}J&&(J+="\n");J+=s+" "+f+" "+La}J&&a.fa(J);a.Zj=X}}}break;case "e":var Kc=f[1];if(void 0===Kc)a.fa("missing address");else{var mc=mm(a,Kc,2);if(null!=mc[0])for(l=2;lY.length&&(a.fa("note: only "+Y.length+" available"),Pa=Y.length);ga-=Pa;0>ga&&(null!=Y[Y.length-1][1]?ga+=Y.length:(Pa=ga+Pa,ga=0));for(void 0!==La&&a.fa(Pa+" instructions earlier:");s&&ga!=a.mf;){var pc=Y[ga];if(null==pc[1])break;pc=[pc[0],pc[1],pc[2]];a.fa(hm(a,pc,"history",-Pa));++ga==Y.length&&(ga=0);a.Ol=--Pa;s--}}10==s&&(a.fa("no "+l+"history available"),a.Ol=void 0)}break;case "i":var Ue= -f[1];if(Ue&&"?"!=Ue){var Ve=nm(a,Ue);if(void 0!==Ve){var Im=ub(a.ra,Ve);a.fa(u(Ve)+": "+q(Im))}}else a.fa("\ninput commands:"),a.fa("\ti [p]\tread port [p]"),a.fa("warning: port accesses can affect hardware state");break;case "l":qm(a,f);break;case "m":a:{l=null;J=f[1];"?"==J&&(J=void 0);if(void 0!==J){s=0;if("all"==J)s=4294967295,J=null;else if("on"==J)l=!0,J=null;else if("off"==J)l=!1,J=null;else{for(T in Nl)if(J==T){s=Nl[T];l=!!(a.jc&s);break}if(!s){a.fa("unknown message category: "+J);break a}}s&& -("on"==f[2]?(a.jc|=s,l=!0):"off"==f[2]&&(a.jc&=~s,l=!1))}s=0;X="";for(T in Nl)if(!J||J==T)if(xb=!!(a.jc&Nl[T]),null===l||l==xb)X&&(X+=","),++s%10||(X+="\n\t"),X+=T;void 0===J&&a.fa("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");a.fa((null!==l?l?"messages on: ":"messages off: ":"message categories:\n\t")+(X||"none"))}break;case "o":var We=f[1],Jm=f[2];if(We&&"?"!=We){var kk=nm(a,We,"port #"),lk=nm(a,Jm);void 0!==kk&&void 0!==lk&&Ab(a.ra,kk,lk)}else a.fa("\noutput commands:"), -a.fa("\to [p] [d]\twrite data [d] to port [p]"),a.fa("warning: port accesses can affect hardware state");break;case "p":case "pr":var mk="pr"==f[0]?1:0,l=1+mk;if(a.nc)a.fa("step in progress");else{var Od,s=!1,Qa=[a.T.va,a.T.xa.ta,void 0];do switch(Od=!1,a.wb(Qa)){case 38:case 46:case 54:case 62:case 240:dm(Qa,1);Od=!0;break;case 204:case 206:a.nc=l;dm(Qa,1);break;case 205:case 224:case 225:case 226:a.nc=l;dm(Qa,2);break;case 232:a.nc=l;dm(Qa,3);break;case 154:a.nc=l;dm(Qa,5);break;case 255:a.nc=0<= -hm(a,Qa).indexOf("CALL")?l:0;break;case 243:case 242:dm(Qa,1);s=Od=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:s&&(a.nc=l,dm(Qa,1))}while(Od);a.nc?(a.Yd(a.tc,Qa,!0),a.Se()||(a.T.Pd(),a.nc=0)):rm(a,mk?"tr":"t")}break;case "r":Yl(a,f);break;case "t":case "tr":rm(a,f[0],f[1]);break;case "u":Zl(a,f[1],f[2],8);break;case "x":a:if(void 0===f[1]||"?"==f[1])a.fa("\nexecution options:"),a.fa("\tcs int #\tset checksum cycle interval to #"),a.fa("\tcs start #\tset checksum cycle start count to #"), -a.fa("\tcs stop #\tset checksum cycle stop count to #"),a.fa("\tsp #\t\tset speed multiplier to #");else switch(f[1]){case "cs":var Nc;void 0!==f[3]&&(Nc=parseInt(f[3],10));switch(f[2]){case "int":a.T.ca.of=Nc;break;case "start":a.T.ca.hg=Nc;break;case "stop":a.T.ca.qf=Nc;break;default:a.fa("unknown cs option");break a}void 0!==Nc&&Ob(a.T);a.fa("checksums "+(a.T.qa.ff?"enabled":"disabled"));break;case "sp":void 0!==f[2]&&Vb(a.T,parseInt(f[2],10));a.fa("target speed: "+(a.T.ca.Le.toFixed(2)+"Mhz")+ -" ("+a.T.ca.Id+"x)");break;default:a.fa("unknown option: "+f[1])}break;case "?":var l="commands:",Pd;for(Pd in Ol)l+="\n"+Pd+" ".substr(0,7-Pd.length)+Ol[Pd];Ed(a)||(l+="\nnote: frequency/history disabled if no exec breakpoints");a.fa(l);break;default:a.fa("unknown command: "+b)}}}catch(Km){a.fa("debugger sad: "+Km.message)}}Fa(function(){for(var a=A(window.document,"pcjs","debugger"),b=0;bxm){if(d.load(this.Cg)){this.We=new gd(this,"1.15.9","failsafe");this.We.load()&&(Bm(this,d),a=2,um(this.We));this.We.set("timestamp",pa());vm(this.We);var e=this.Qc&&!this.oh;if(1==a||ua("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"== -f&&"no machine state"!=g?(this.Ja("Error: "+g),"unable to verify user"==g&&(xa("user",""),this.Rc=null)):this.fa(f+": "+g),um(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Am(this,c?d:null)}else 2==a&&d.clear()}else Am(this);delete this.Cg;delete this.Qh}e=Va(this.id);for(f=0;fa[1];a=a[2];this.qa.Lb=!0;this.uk||(this.fa("PCjs v1.15.9\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.uk=!0);this.T&&Cm(this,this.T,b,c,a);this.wk&&(Bm(this,b),b.clear());!c&&this.We&&(this.We.clear(),delete this.We)}; -function Bm(a,b){if(ua("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.je(),d=b.toString(),e={app:"PCjs",ver:"1.15.9"};e.url=a.url;e.user=c;e.type="bug";e.data=d;sa("http://www.pcjs.org/api/v1/report",!0,e)}} -function sm(a,b,c){var d,e="none",f=new gd(a,"1.15.9"),g=new gd(a,"1.15.9","validate"),h=pa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.9");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.T&&a.T.Xb&&(c&&a.T.xb(),d=a.T.Xb(b,c),"object"===typeof d&&f.set(a.T.id,d),c&&(a.T.qa.Lb=!1,!1===d&&(e=null)));for(var h=Va(a.id),l=0;lh.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(s){h= -null,a=s.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");sa(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],n,r=/( [a-z]+=)(['"])(.*?)\2/g;n=r.exec(f);)l=0>l.indexOf(n[1])?l.replace(">",n[0]+">"):l.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, -"");a=a.replace(d[0],g);Lm(a,b,c)}})}else c(a,null)} -function Mm(a,b,c,d){function e(a){if(void 0===l){var b=h&&A(h,"machine-warning");l=b&&b[0]||h}l&&(l.innerHTML=ia(a))}function f(a){e("Error: "+a);n&&g();n=!1}function g(){0==--Fm&&Ha(!0)}var h,l,n=!0;Fm++;try{if(h=window.document.getElementById(a)){c||(c="/versions/pcjs/1.15.9/components.xsl");var r=function(a,d){if(d){var l=function(a,l){if(l)if(l)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(l);n?(h.outerHTML=n,g()):f("transformNodeToObject failed")}else window.document.implementation&& -window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(l),(n=n.transformToFragment(d,window.document))?(h.parentNode.replaceChild(n,h),g()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?Gm(c,null,null,!1,e,l):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?Gm(b,a,d,!0,e,r):Hm(b,null,a,d,!1,e,r)}else f("failed to find machine element: "+a)}catch(s){f(s.message)}return n} -window.embedPC=function(a,b,c,d){return Mm(a,b,c,d)};window.enableEvents=Ha;window.sendEvent=Ia;Ha(!1);})(); +break;case "BP":a.T.I=b&65535;break;case "SI":a.T.G=b&65535;break;case "DI":a.T.F=b&65535;break;case "DS":jd(a.T,b);break;case "ES":ld(a.T,b);break;case "SS":kd(a.T,b);break;case "CS":d=!0;id(a.T,b);a.Ec=[a.T.va,a.T.xa.sa,void 0];break;case "IP":d=!0;H(a.T,b);a.Ec=[a.T.va,a.T.xa.sa,void 0];break;case "PC":Tc(a.T,b);break;case "C":b?yd(a.T):td(a.T);break;case "P":b?(f=a.T,od(f)||(f.ma^=1)):(f=a.T,od(f)&&(f.ma^=1));break;case "A":b?zd(a.T):ud(a.T);break;case "Z":b?Ad(a.T):vd(a.T);break;case "S":b?Bd(a.T): +wd(a.T);break;case "I":b?(f=a.T,f.Ca|=512):(f=a.T,f.Ca&=-513);break;case "D":b?(f=a.T,f.Ca|=1024):(f=a.T,f.Ca&=-1025);break;case "V":b?Cd(a.T):xd(a.T);break;default:c=!0;if(80286<=a.T.Ia)switch(c=!1,f){case "MS":Ze.call(a.T,b);break;case "TR":a.T.Ue.load(b);break;default:c=!0}if(c){a.da("unknown register: "+f);return}}Rb(a.T);a.da("\nupdated registers:");c=!0}}f=e;void 0===f&&(f=!!(a.T.Cc&1));e="AX="+v(a.T.H)+" BX="+v(a.T.C)+" CX="+v(a.T.J)+" DX="+v(a.T.K)+" SP="+v(a.T.Y)+" BP="+v(a.T.I)+" SI="+v(a.T.G)+ +" DI="+v(a.T.F)+"\n";e+=nm(a.T.zb,f)+" "+nm(a.T.Za,f)+" "+nm(a.T.ub,f);e=e+(f?"\n":" ")+(nm(a.T.xa,f)+" IP="+v(a.T.va)+mm(a,"V")+mm(a,"D")+mm(a,"I")+mm(a,"T")+mm(a,"S")+mm(a,"Z")+mm(a,"A")+mm(a,"P")+mm(a,"C"));f&&(f=a.ra,e+=" MS="+v(a.T.Cc)+"\n"+om("LD",a.T.bd.sa,a.T.bd.Xa,a.T.bd.Xa+a.T.bd.Oc)+" "+om("GD",null,a.T.yc,a.T.ye)+" "+om("ID",null,a.T.Fc,a.T.$d)+" TR="+v(a.T.Ue.sa)+" A20="+(f.Jf==f.ed?"ON":"OFF"));a.da((c?"":"\n")+e);d&&(a.Ec=[a.T.va,a.T.xa.sa,void 0],bm(a,hm(a.Ec)))}} +function um(a,b,c){var d="tr"==b;b=null!=c?parseInt(c,10):1;var e=1==b?0:1;za(b,function(){return Za(a,!0)&&a.yf(e,d,!1)},function(){Rb(a.T);Za(a,!1)})} +function bm(a,b,c,d){b=pm(a,b,1);if(null!=b[0]){void 0===d&&(d=1);var e=[65535,b[1],a.ra.Jf];if(void 0!==c){e=pm(a,c,1);if(null==e[0]||e[0]c||"z">>4);var hc=C[U].l;hc&&(U=hc);a.da(da(Ja,wb)+" "+U)}}}else{for(u in Ol)if(r==u){var Pb=a.Zh[u];Pb?Pb(s):a.da("no dump registered for "+r);break a}var V=pm(a,r,2);if(null!=V[0])if("ds"== +l){var K=em(a,V[0]);if(null!=K.sa){var w="selector="+v(V[0])+" limit="+v(K.Oc)+" base="+p(K.Xa);if(K.Oa){w+=" access="+v(K.Oa);if(K.Oa&4096)K.Oa&2048?(w+="code:",w+=K.Oa&512?"readable,":"execonly,",w+=K.Oa&1024?"conforming,":"nonconforming,"):(w+="data:",w+=K.Oa&512?"writeable,":"readonly,",w+=K.Oa&1024?"expand down,":"expand up,"),w+=K.Oa&256?"accessed":"not accessed";else switch(w+="type:",K.Oa&7936){case 256:w+="tss";break;case 512:w+="ldt";break;case 768:w+="tss(busy)";break;case 1024:w+="call"; +break;case 1280:w+="task";break;case 1536:w+="int";break;case 1792:w+="trap";break;default:w+="unknown"}w+=",dpl"+(K.Oa>>13&24576);w+=K.Oa&32768?",present":",not present"}a.da(w)}else a.da("invalid selector: "+v(V[0]))}else{var Q=0;void 0!==s&&("l"==s.charAt(0)&&(s=s.substr(1)),Q=parseInt(s,10));var I="";Q||(Q=8);for(var xb=0;xbW;W++){var Wa=a.mb(V,1);"dw"==l?W&1&&(f+=v(fa|Wa<<8)+(7==W?" - ":" ")):f+=t(Wa)+(7==W?"-":" ");Ka+=32<=Wa&&128>Wa?String.fromCharCode(Wa): +".";fa=Wa}I&&(I+="\n");I+=r+" "+f+" "+Ka}I&&a.da(I);a.Yj=V}}}break;case "e":var Hc=f[1];if(void 0===Hc)a.da("missing address");else{var ic=pm(a,Hc,2);if(null!=ic[0])for(l=2;lW.length&&(a.da("note: only "+W.length+" available"),Oa=W.length);fa-=Oa;0>fa&&(null!=W[W.length-1][1]?fa+=W.length:(Oa=fa+Oa,fa=0));for(void 0!==Ka&&a.da(Oa+" instructions earlier:");r&&fa!=a.mf;){var lc=W[fa];if(null==lc[1])break;lc=[lc[0],lc[1],lc[2]];a.da(km(a,lc,"history",-Oa));++fa==W.length&&(fa=0);a.Nl=--Oa;r--}}10==r&&(a.da("no "+l+"history available"),a.Nl=void 0)}break;case "i":var Ue= +f[1];if(Ue&&"?"!=Ue){var Ve=qm(a,Ue);if(void 0!==Ve){var Lm=tb(a.ra,Ve);a.da(v(Ve)+": "+t(Lm))}}else a.da("\ninput commands:"),a.da("\ti [p]\tread port [p]"),a.da("warning: port accesses can affect hardware state");break;case "l":tm(a,f);break;case "m":a:{l=null;I=f[1];"?"==I&&(I=void 0);if(void 0!==I){r=0;if("all"==I)r=4294967295,I=null;else if("on"==I)l=!0,I=null;else if("off"==I)l=!1,I=null;else{for(Q in Ol)if(I==Q){r=Ol[Q];l=!!(a.jc&r);break}if(!r){a.da("unknown message category: "+I);break a}}r&& +("on"==f[2]?(a.jc|=r,l=!0):"off"==f[2]&&(a.jc&=~r,l=!1))}r=0;V="";for(Q in Ol)if(!I||I==Q)if(xb=!!(a.jc&Ol[Q]),null===l||l==xb)V&&(V+=","),++r%10||(V+="\n\t"),V+=Q;void 0===I&&a.da("\nmessage commands:\n\tm [category] [on|off]\tturn categories on/off");a.da((null!==l?l?"messages on: ":"messages off: ":"message categories:\n\t")+(V||"none"))}break;case "o":var We=f[1],Mm=f[2];if(We&&"?"!=We){var lk=qm(a,We,"port #"),mk=qm(a,Mm);void 0!==lk&&void 0!==mk&&zb(a.ra,lk,mk)}else a.da("\noutput commands:"), +a.da("\to [p] [d]\twrite data [d] to port [p]"),a.da("warning: port accesses can affect hardware state");break;case "p":case "pr":var nk="pr"==f[0]?1:0,l=1+nk;if(a.nc)a.da("step in progress");else{var Jd,r=!1,Pa=[a.T.va,a.T.xa.sa,void 0];do switch(Jd=!1,a.mb(Pa)){case 38:case 46:case 54:case 62:case 240:gm(Pa,1);Jd=!0;break;case 204:case 206:a.nc=l;gm(Pa,1);break;case 205:case 224:case 225:case 226:a.nc=l;gm(Pa,2);break;case 232:a.nc=l;gm(Pa,3);break;case 154:a.nc=l;gm(Pa,5);break;case 255:a.nc=0<= +km(a,Pa).indexOf("CALL")?l:0;break;case 243:case 242:gm(Pa,1);r=Jd=!0;break;case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:r&&(a.nc=l,gm(Pa,1))}while(Jd);a.nc?(a.Yd(a.tc,Pa,!0),a.Se()||(a.T.Pd(),a.nc=0)):um(a,nk?"tr":"t")}break;case "r":am(a,f);break;case "t":case "tr":um(a,f[0],f[1]);break;case "u":bm(a,f[1],f[2],8);break;case "x":a:if(void 0===f[1]||"?"==f[1])a.da("\nexecution options:"),a.da("\tcs int #\tset checksum cycle interval to #"),a.da("\tcs start #\tset checksum cycle start count to #"), +a.da("\tcs stop #\tset checksum cycle stop count to #"),a.da("\tsp #\t\tset speed multiplier to #");else switch(f[1]){case "cs":var Kc;void 0!==f[3]&&(Kc=parseInt(f[3],10));switch(f[2]){case "int":a.T.ca.of=Kc;break;case "start":a.T.ca.hg=Kc;break;case "stop":a.T.ca.qf=Kc;break;default:a.da("unknown cs option");break a}void 0!==Kc&&Nb(a.T);a.da("checksums "+(a.T.qa.ff?"enabled":"disabled"));break;case "sp":void 0!==f[2]&&Ub(a.T,parseInt(f[2],10));a.da("target speed: "+(a.T.ca.Le.toFixed(2)+"Mhz")+ +" ("+a.T.ca.Id+"x)");break;default:a.da("unknown option: "+f[1])}break;case "?":var l="commands:",Kd;for(Kd in Ql)l+="\n"+Kd+" ".substr(0,7-Kd.length)+Ql[Kd];Dd(a)||(l+="\nnote: frequency/history disabled if no exec breakpoints");a.da(l);break;default:a.da("unknown command: "+b)}}}catch(Nm){a.da("debugger sad: "+Nm.message)}}Fa(function(){for(var a=D(window.document,"pcjs","debugger"),b=0;bAm){if(d.load(this.Cg)){this.We=new fd(this,"1.15.9","failsafe");this.We.load()&&(Em(this,d),a=2,xm(this.We));this.We.set("timestamp",pa());ym(this.We);var e=this.Qc&&!this.oh;if(1==a||ua("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),g=d.get("data");f&&("ok"==f?d.load(g):("error"== +f&&"no machine state"!=g?(this.Ja("Error: "+g),"unable to verify user"==g&&(xa("user",""),this.Rc=null)):this.da(f+": "+g),xm(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&Dm(this,c?d:null)}else 2==a&&d.clear()}else Dm(this);delete this.Cg;delete this.Qh}e=Ua(this.id);for(f=0;fa[1];a=a[2];this.qa.Lb=!0;this.tk||(this.da("PCjs v1.15.9\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.tk=!0);this.T&&Fm(this,this.T,b,c,a);this.vk&&(Em(this,b),b.clear());!c&&this.We&&(this.We.clear(),delete this.We)}; +function Em(a,b){if(ua("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.je(),d=b.toString(),e={app:"PCjs",ver:"1.15.9"};e.url=a.url;e.user=c;e.type="bug";e.data=d;sa("http://www.pcjs.org/api/v1/report",!0,e)}} +function vm(a,b,c){var d,e="none",f=new fd(a,"1.15.9"),g=new fd(a,"1.15.9","validate"),h=pa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.15.9");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.T&&a.T.Xb&&(c&&a.T.xb(),d=a.T.Xb(b,c),"object"===typeof d&&f.set(a.T.id,d),c&&(a.T.qa.Lb=!1,!1===d&&(e=null)));for(var h=Ua(a.id),l=0;lh.indexOf("/")&&(h=window.location.pathname+h);a=a.replace(/(]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(h?" url=$2"+h+"$2":""))}h=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/\s*/g,"")),h=new window.ActiveXObject("Microsoft.XMLDOM"),h.async=!1,h.loadXML(a)):h=(new window.DOMParser).parseFromString(a,"text/xml")}catch(r){h= +null,a=r.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");sa(e,!0,null,null,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)l=0>l.indexOf(n[1])?l.replace(">",n[0]+">"):l.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, +"");a=a.replace(d[0],g);Om(a,b,c)}})}else c(a,null)} +function Pm(a,b,c,d){function e(a){if(void 0===l){var b=h&&D(h,"machine-warning");l=b&&b[0]||h}l&&(l.innerHTML=ja(a))}function f(a){e("Error: "+a);n&&g();n=!1}function g(){0==--Im&&Ha(!0)}var h,l,n=!0;Im++;try{if(h=window.document.getElementById(a)){c||(c="/versions/pcjs/1.15.9/components.xsl");var q=function(a,d){if(d){var l=function(a,l){if(l)if(l)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(l);n?(h.outerHTML=n,g()):f("transformNodeToObject failed")}else window.document.implementation&& +window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(l),(n=n.transformToFragment(d,window.document))?(h.parentNode.replaceChild(n,h),g()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?Jm(c,null,null,!1,e,l):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?Jm(b,a,d,!0,e,q):Km(b,null,a,d,!1,e,q)}else f("failed to find machine element: "+a)}catch(r){f(r.message)}return n} +window.embedPC=function(a,b,c,d){return Pm(a,b,c,d)};window.enableEvents=Ha;window.sendEvent=Ia;Ha(!1);})(); diff --git a/versions/pcjs/1.15.9/pc.js b/versions/pcjs/1.15.9/pc.js index 28a72529f..48945c8a9 100644 --- a/versions/pcjs/1.15.9/pc.js +++ b/versions/pcjs/1.15.9/pc.js @@ -1,110 +1,110 @@ -(function(){var h,aa,l;function p(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function da(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0":">",'"':""","'":"'"}; +(function(){var h,ca,l;function p(a,b){var c="";void 0===b?b=8:8=d?48:55),c=String.fromCharCode(d)+c;a>>=4}return c}function da(a,b){var c=a,d=a.lastIndexOf("/");0<=d&&(c=a.substr(d+1));b&&(d=c.lastIndexOf("."),0":">",'"':""","'":"'"}; function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function ha(){return Date.now()||+new Date}function ia(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}var ja=[31,28,31,30,31,30,31,31,30,31,30,31],ka; -function q(a,b,c,d,e,f){b=!!b;var k=0,g=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(g=n.responseText,200==n.status||!n.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(k=n.status||-1),e&&(d?e.call(d,m,g,k,f):e(m,g,k,f)))});if(c){var r="",x;for(x in c)c.hasOwnProperty(x)&&(r&&(r+="&"),r+=x+"="+encodeURIComponent(c[x]));r=r.replace(/%20/g,"+");n.open("POST",a, -b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(r)}else n.open("GET",a,b),n.send();a=[];b||(g=n.responseText,200!=n.status&&(k=n.status||-1),e&&(d?e.call(d,m,g,k,f):e(m,g,k,f)),a=[k,g]);return a}function la(){return"http://"+(window?window.location.host:"www.pcjs.org")}function s(a){window&&window.alert(a)}function ma(a){var b=!1;window&&(b=window.confirm(a));return b} +function r(a,b,c,d,e,f){b=!!b;var k=0,g=null,m=da(a),n=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");b&&(n.onreadystatechange=function(){4===n.readyState&&(g=n.responseText,200==n.status||!n.status&&g.length&&"file:"==(window?window.location.protocol:"file:")||(k=n.status||-1),e&&(d?e.call(d,m,g,k,f):e(m,g,k,f)))});if(c){var q="",w;for(w in c)c.hasOwnProperty(w)&&(q&&(q+="&"),q+=w+"="+encodeURIComponent(c[w]));q=q.replace(/%20/g,"+");n.open("POST",a, +b);n.setRequestHeader("Content-type","application/x-www-form-urlencoded");n.send(q)}else n.open("GET",a,b),n.send();a=[];b||(g=n.responseText,200!=n.status&&(k=n.status||-1),e&&(d?e.call(d,m,g,k,f):e(m,g,k,f)),a=[k,g]);return a}function la(){return"http://"+(window?window.location.host:"www.pcjs.org")}function s(a){window&&window.alert(a)}function ma(a){var b=!1;window&&(b=window.confirm(a));return b} function na(){if(void 0===ka){var a;try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"===window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ka=a}return ka}function oa(a){var b;try{b=window.localStorage.getItem(a)}catch(c){}return b}function pa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1} -function qa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var ra={init:[],show:[],exit:[]},sa=!1,ta=!0;function ua(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function t(a){ra.init.push(a)} -function wa(a){if(ta)try{for(var b=0;b=this.pf?12:14;this.pc=1<>2;this.fb=this.pc-1;this.ig=(this.ih+this.pc)/this.pc|0;this.Yd=this.ig-1;this.Vf=[];this.Wf=[];this.Qh();this.Ma()}y(v,Na);Na.prototype.Qh=function(){this.Ba=Array(this.ig);for(var a=0;a=this.pf?12:14;this.pc=1<>2;this.fb=this.pc-1;this.jg=(this.jh+this.pc)/this.pc|0;this.Yd=this.jg-1;this.Wf=[];this.Xf=[];this.Rh();this.Ma()}y(v,Na);Na.prototype.Rh=function(){this.Ba=Array(this.jg);for(var a=0;a>a.Nb;0>this.Nb;0>a.Nb;0>a.Nb].Ti(b&a.fb)}function Va(a,b){var c=b&a.fb,d=(b&a.Xc)>>a.Nb;return c!=a.fb?a.Ba[d].Tn(c):a.Ba[d++].Ti(c)|a.Ba[d&a.Yd].Ti(0)<<8} -function Wa(a,b,c){a.Ba[(b&a.Xc)>>a.Nb].aj(b&a.fb,c&255)}function Xa(a,b,c){var d=b&a.fb;b=(b&a.Xc)>>a.Nb;d!=a.fb?a.Ba[b].co(d,c&65535):(a.Ba[b++].aj(d,c&255),a.Ba[b&a.Yd].aj(0,c>>8&255))}function Ya(a){for(var b=0,c=[],d=0;d>2);for(d=0;d>2]>>>((a&3)<<3)&255},Un:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},ao:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<>8);this.Za=!0},save:function(){return this.ea? -null:this.pa},restore:function(a){return this.ea?null==a:a&&this.ql==a.length<<2?(this.pa=a,this.Za=!0):!1},pe:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.xc=c[0]?c[0]:this.Qg;this.Sn=c[1]?c[1]:this.Qg;b&&(this.Ti=c[0]?c[0]:this.Qg,this.Tn=c[1]?c[1]:this.Qg);c=a;this.Ac=c[2]&&!this.Bj?c[2]:this.$g;this.bo=c[3]&&!this.Bj?c[3]:this.$g;b&&(this.aj=c[2]?c[2]:this.$g,this.co=c[3]?c[3]:this.$g)}};var cb=[Oa.prototype.Rn,Oa.prototype.Un,Oa.prototype.ao,Oa.prototype.eo]; -function db(a,b){v.call(this,"CPU",a,db);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.hd=c;this.ba.Dd=d;this.ba.Cg=Math.round(this.ba.hd/1E4)/100;this.ba.He=this.ba.Cg*this.ba.Dd;this.na.Db=!1;this.na.uc=!1;this.na.zh=a.autoStart;c=Aa.autostart;void 0!==c&&(this.na.zh="true"==c?!0:"false"==c?!1:null);this.na.qg=!1;this.ba.Hg=this.ba.Je=0;this.ba.Ig=a.csStart;this.ba.rf=a.csInterval;this.ba.sf=a.csStop;var e=this;this.Um=function(){eb(e)};this.Ma()}y(v,db);h=db.prototype; -h.mc=function(a,b,c,d){this.qa=b;this.Pa=d;this.La=a;var e=D(a,"Video");e&&(this.lf=function(){fb(e)},this.Oe=function(){e.Oe()});this.ja=D(a,"ChipSet");this.Ma()};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};h.Qb=function(a,b){if(!b){if(a&&this.restore){gb(this);if(!this.restore(a))return!1;hb(this)}else this.reset();this.hc("No debugger detected")}this.na.Db=!0;!ib(this)&&this.Pa&&this.Pa.zp();this.lf();this.kf();return!0}; -h.Pb=function(a){this.na.Db=!1;return a&&this.save?this.save():!0};function ib(a){return!0===a.na.zh||null===a.na.zh&&void 0===a.sa.run?(eb(a),!0):!1}h.Oe=function(){};h.Fj=function(){return 0};function hb(a){void 0===a.ba.Ig&&(a.ba.Ig=0);void 0===a.ba.rf&&(a.ba.rf=-1);void 0===a.ba.sf&&(a.ba.sf=-1);a.na.qg=0<=a.ba.Ig&&0c&&(c=60);2>c&&(c=2);var d=1;b&&1a.ba.Cg&&(c=Math.round(c/a.ba.Dd));return c}function gb(a){a.ba.Qc=0;a.Fg=1;a.ke=a.Id=a.Rc=a.A=0;hb(a);mb(a,1)} -function mb(a,b,c){void 0!==b&&(0.8>a.ba.Qc/a.ba.He&&(b=1),a.ba.Dd=b,b=a.ba.Cg*a.ba.Dd,a.ba.He!=b&&(a.ba.He=b,b=a.ba.He.toFixed(2)+"Mhz",a.sa.setSpeed&&(a.sa.setSpeed.innerHTML=b),a.hc("target speed: "+b)),c&&a.Oe());nb(a,a.Id);a.Id=0;a.ba.Ie=ha();a.ba.he=0;ob(a)} -function eb(a,b){if(Ia(a,!0)){a.na.uc||(mb(a),a.La&&a.La.start(a.ba.Ie,pb(a)),a.na.uc=!0,a.ja&&qb(a.ja),a.sa.run&&(a.sa.run.innerHTML="Halt"),b&&a.Oe());a.ba.Yh>=a.ba.hd&&ob(a,!0);a.ba.wf=0;a.ba.Eg=ha();if(a.ba.he){var c=a.ba.Eg-a.ba.he;c>a.ba.Mj&&(a.ba.Ie+=c,a.ba.Ie>a.ba.Eg&&(a.ba.Ie=a.ba.Eg))}try{do{a.fl(a.na.qg?1:Math.round(a.ba.Om/a.Fg));var d=a.Rc-a.A;a.Id+=d;a.ba.wf+=d;nb(a,0,!0);var c=a,e=d;if(c.na.qg){var f=!1;c.ba.Hg=c.ba.Hg+c.Fj()|0;c.ba.Je-=e;0>=c.ba.Je&&(c.ba.Je+=c.ba.rf,f=!0);0<=c.ba.sf&& -c.ba.sf<=pb(c)&&(c.ba.rf=c.ba.sf=-1,hb(c),jb(c),f=!0);f&&c.hc(pb(c)+" cycles: checksum="+p(c.ba.Hg))}a.ba.uf-=d;0>=a.ba.uf&&(a.ba.uf+=a.ba.Qj,a.lf());a.ba.tf-=d;0>=a.ba.tf&&(a.ba.tf+=a.ba.Pj,a.kf());a.ba.vf-=d;if(0>=a.ba.vf){a.ba.vf+=a.ba.Xh;break}}while(a.na.uc)}catch(k){jb(a);a.lf();a.kf();a.La&&a.La.stop(ha(),pb(a));Ia(a,!1);Ka(a,k.message);return}d=setTimeout;c=a.Um;a.ba.he=ha();e=a.ba.Mj;a.ba.wf&&(e=Math.round(e*a.ba.wf/a.ba.Xh));e-=a.ba.he-a.ba.Eg;if(f=a.ba.he-a.ba.Ie)a.ba.Qc=Math.round(a.Id/ -(10*f))/100,864E5<=f&&(a.ke=0,a.ja&&rb(a.ja,!0),mb(a));if(0>e||a.ba.Qc>this.Nb;0>a.Nb;0>a.Nb].Ui(b&a.fb)}function Va(a,b){var c=b&a.fb,d=(b&a.Xc)>>a.Nb;return c!=a.fb?a.Ba[d].Vn(c):a.Ba[d++].Ui(c)|a.Ba[d&a.Yd].Ui(0)<<8} +function Wa(a,b,c){a.Ba[(b&a.Xc)>>a.Nb].bj(b&a.fb,c&255)}function Xa(a,b,c){var d=b&a.fb;b=(b&a.Xc)>>a.Nb;d!=a.fb?a.Ba[b].fo(d,c&65535):(a.Ba[b++].bj(d,c&255),a.Ba[b&a.Yd].bj(0,c>>8&255))}function Ya(a){for(var b=0,c=[],d=0;d>2);for(d=0;d>2]>>>((a&3)<<3)&255},Wn:function(a){var b=a>>2;a=(a&3)<<3;var c=this.pa[b]>>>a;return 24>a?c&65535:c&255|(this.pa[b+1]&255)<<8},co:function(a,b){var c=a>>2,d=(a&3)<<3;this.pa[c]=this.pa[c]&~(255<>2,d=(a&3)<<3;24>d?this.pa[c]=this.pa[c]&~(65535<>8);this.Za=!0},save:function(){return this.ea? +null:this.pa},restore:function(a){return this.ea?null==a:a&&this.ql==a.length<<2?(this.pa=a,this.Za=!0):!1},pe:function(a,b){a||(a=[]);void 0===b&&(b=!0);var c=a;this.xc=c[0]?c[0]:this.Rg;this.Un=c[1]?c[1]:this.Rg;b&&(this.Ui=c[0]?c[0]:this.Rg,this.Vn=c[1]?c[1]:this.Rg);c=a;this.Ac=c[2]&&!this.Cj?c[2]:this.ah;this.eo=c[3]&&!this.Cj?c[3]:this.ah;b&&(this.bj=c[2]?c[2]:this.ah,this.fo=c[3]?c[3]:this.ah)}};var cb=[Oa.prototype.Tn,Oa.prototype.Wn,Oa.prototype.co,Oa.prototype.ho]; +function db(a,b){v.call(this,"CPU",a,db);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.jd=c;this.ba.Dd=d;this.ba.Dg=Math.round(this.ba.jd/1E4)/100;this.ba.Ie=this.ba.Dg*this.ba.Dd;this.na.Db=!1;this.na.uc=!1;this.na.Ah=a.autoStart;c=Aa.autostart;void 0!==c&&(this.na.Ah="true"==c?!0:"false"==c?!1:null);this.na.rg=!1;this.ba.Ig=this.ba.Ke=0;this.ba.Jg=a.csStart;this.ba.rf=a.csInterval;this.ba.sf=a.csStop;var e=this;this.Wm=function(){eb(e)};this.Ma()}y(v,db);h=db.prototype; +h.mc=function(a,b,c,d){this.qa=b;this.Pa=d;this.La=a;var e=D(a,"Video");e&&(this.mf=function(){fb(e)},this.Pe=function(){e.Pe()});this.ja=D(a,"ChipSet");this.Ma()};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};h.Qb=function(a,b){if(!b){if(a&&this.restore){gb(this);if(!this.restore(a))return!1;hb(this)}else this.reset();this.hc("No debugger detected")}this.na.Db=!0;!ib(this)&&this.Pa&&this.Pa.Bp();this.mf();this.lf();return!0}; +h.Pb=function(a){this.na.Db=!1;return a&&this.save?this.save():!0};function ib(a){return!0===a.na.Ah||null===a.na.Ah&&void 0===a.sa.run?(eb(a),!0):!1}h.Pe=function(){};h.Gj=function(){return 0};function hb(a){void 0===a.ba.Jg&&(a.ba.Jg=0);void 0===a.ba.rf&&(a.ba.rf=-1);void 0===a.ba.sf&&(a.ba.sf=-1);a.na.rg=0<=a.ba.Jg&&0c&&(c=60);2>c&&(c=2);var d=1;b&&1a.ba.Dg&&(c=Math.round(c/a.ba.Dd));return c}function gb(a){a.ba.Qc=0;a.Gg=1;a.ke=a.Id=a.Rc=a.A=0;hb(a);mb(a,1)} +function mb(a,b,c){void 0!==b&&(0.8>a.ba.Qc/a.ba.Ie&&(b=1),a.ba.Dd=b,b=a.ba.Dg*a.ba.Dd,a.ba.Ie!=b&&(a.ba.Ie=b,b=a.ba.Ie.toFixed(2)+"Mhz",a.sa.setSpeed&&(a.sa.setSpeed.innerHTML=b),a.hc("target speed: "+b)),c&&a.Pe());nb(a,a.Id);a.Id=0;a.ba.Je=ha();a.ba.he=0;ob(a)} +function eb(a,b){if(Ia(a,!0)){a.na.uc||(mb(a),a.La&&a.La.start(a.ba.Je,pb(a)),a.na.uc=!0,a.ja&&qb(a.ja),a.sa.run&&(a.sa.run.innerHTML="Halt"),b&&a.Pe());a.ba.Zh>=a.ba.jd&&ob(a,!0);a.ba.wf=0;a.ba.Fg=ha();if(a.ba.he){var c=a.ba.Fg-a.ba.he;c>a.ba.Nj&&(a.ba.Je+=c,a.ba.Je>a.ba.Fg&&(a.ba.Je=a.ba.Fg))}try{do{a.gl(a.na.rg?1:Math.round(a.ba.Qm/a.Gg));var d=a.Rc-a.A;a.Id+=d;a.ba.wf+=d;nb(a,0,!0);var c=a,e=d;if(c.na.rg){var f=!1;c.ba.Ig=c.ba.Ig+c.Gj()|0;c.ba.Ke-=e;0>=c.ba.Ke&&(c.ba.Ke+=c.ba.rf,f=!0);0<=c.ba.sf&& +c.ba.sf<=pb(c)&&(c.ba.rf=c.ba.sf=-1,hb(c),kb(c),f=!0);f&&c.hc(pb(c)+" cycles: checksum="+p(c.ba.Ig))}a.ba.uf-=d;0>=a.ba.uf&&(a.ba.uf+=a.ba.Rj,a.mf());a.ba.tf-=d;0>=a.ba.tf&&(a.ba.tf+=a.ba.Qj,a.lf());a.ba.vf-=d;if(0>=a.ba.vf){a.ba.vf+=a.ba.Yh;break}}while(a.na.uc)}catch(k){kb(a);a.mf();a.lf();a.La&&a.La.stop(ha(),pb(a));Ia(a,!1);Ka(a,k.message);return}d=setTimeout;c=a.Wm;a.ba.he=ha();e=a.ba.Nj;a.ba.wf&&(e=Math.round(e*a.ba.wf/a.ba.Yh));e-=a.ba.he-a.ba.Fg;if(f=a.ba.he-a.ba.Je)a.ba.Qc=Math.round(a.Id/ +(10*f))/100,864E5<=f&&(a.ke=0,a.ja&&rb(a.ja,!0),mb(a));if(0>e||a.ba.Qc=e?(this.Aa=a,this.jb=b,this.fd=c,this.yb=d&65280,this.type=d&7936,ub(this)):b=-1;return b}return-1}function yb(a){return this.jb+a}function zb(a){return this.jb+a}function Ab(a,b,c){return a+b<=this.fd?this.jb+a:Bb.call(this,0,0,c)} -function Bb(a,b,c){c||Cb.call(this.la,13,0);return-1}function Db(a,b,c){return a+b<=this.fd?this.jb+a:Eb.call(this,0,0,c)}function Eb(a,b,c){c||Cb.call(this.la,13,0);return-1}function Fb(a,b,c){var d=F(a.la,c+2),e=F(a.la,c+0)|(d&255)<<16;c=F(a.la,c+4);a.Aa=b;a.jb=e;a.fd=c;a.yb=d&65280;ub(a)}tb.prototype.save=function(){return[this.Aa,this.jb,this.fd,this.yb,this.yj,this.Vg,this.sc,this.lc]}; -tb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.Aa=a[0],this.jb=a[1],this.fd=a[2],this.yb=a[3],this.yj=a[4],this.Vg=a[5],this.sc=a[6],this.lc=a[7])};function ub(a,b){void 0===b&&(b=!!(a.la.Kc&1));b?(a.load=xb,a.$c=Ab,a.bc=Db,a.yb&4096&&(6144==(a.yb&6656)&&(a.bc=Bb),a.yb&2048||!(a.yb&512))&&(a.bc=Eb),a.sc=a.Aa&3,a.lc=(a.yb&24576)>>13):(a.load=vb,a.$c=yb,a.bc=zb,a.sc=a.lc=0)} -function Gb(a){this.Da=a.model||8088;var b=0;switch(this.Da){default:case 8088:b=4772727;break;case 80286:b=6E6}db.call(this,a,b);this.gj=61442;this.Tf=4;this.Ke=255;this.B=80286<=this.Da?Hb:Ib;this.Na=Jb.slice();80186<=this.Da&&(this.Ke=31,this.Na[15]=G,this.Na[96]=Kb,this.Na[97]=Lb,this.Na[98]=Mb,this.Na[99]=G,this.Na[100]=G,this.Na[101]=G,this.Na[102]=G,this.Na[103]=G,this.Na[104]=Nb,this.Na[105]=Ob,this.Na[106]=Pb,this.Na[107]=Qb,this.Na[108]=Rb,this.Na[109]=Sb,this.Na[110]=Tb,this.Na[111]=Ub, -this.Na[192]=Vb,this.Na[193]=Wb,this.Na[200]=Xb,this.Na[201]=Yb,this.Na[241]=Zb,$b[7]=ac,bc[7]=ac,80286<=this.Da&&(this.gj=2,this.Tf=0,this.Na[15]=cc,this.Na[99]=dc,this.Na[84]=ec));this.nl=[];this.ij=[];this.Rc=this.oh=0;this.na.rg=this.na.zl=!1;this.Ba=[];this.Td=this.Nb=this.fb=this.Yd=0;this.T=this.Gl;this.U=this.Hl;this.O=this.Im;this.P=this.Jm;this.R=this.Zn;this.S=this.$n;fc(this)}y(db,Gb); -var Ib={Ni:4,aa:5,ra:6,fa:7,ga:8,Q:9,V:11,W:12,ie:4,Sj:60,Tj:83,Hb:3,gb:9,Xb:16,Lg:1,Xj:19,Zj:28,ak:16,$j:21,Yj:37,Vj:2,gi:9,Wj:5,Uj:33,ii:10,hi:8,Cf:3,Bf:15,ok:51,pk:1,qk:2,rk:4,nk:32,ji:15,tk:15,Ib:16,Jb:4,vk:11,uk:18,sk:24,pb:4,wk:2,ki:16,xk:17,pi:18,yk:19,oi:5,qi:6,Dk:2,Ck:8,Ak:9,Bk:10,zk:10,ri:10,si:10,ck:80,ek:144,bk:86,dk:154,gk:101,ik:165,fk:107,hk:171,Fk:70,Hk:113,Ek:76,Gk:124,kk:80,mk:128,jk:86,lk:134,Ef:3,Df:16,xi:10,wi:8,Ik:51,Yb:8,Jk:17,Kk:36,fc:11,Lk:16,Ff:10,Hd:2,di:18,ei:7,fi:15,li:12, -mi:7,ni:11,ti:18,ui:7,vi:15,yi:15,zi:7,Ai:13,Ei:11,Fi:7,Gi:8,Mk:8,Pk:12,Nk:18,Ok:17,Qk:15,Ci:8,Bi:20,Di:2,Ji:3,Gf:9,Ii:5,Hi:11,Li:4,Ki:17,Rk:11},Hb={Ni:0,aa:0,ra:0,fa:0,ga:0,Q:0,V:1,W:1,ie:3,Sj:14,Tj:16,Hb:2,gb:7,Xb:7,Lg:0,Xj:7,Zj:13,ak:7,$j:11,Yj:16,Vj:3,gi:6,Wj:2,Uj:13,ii:5,hi:5,Cf:2,Bf:7,ok:23,pk:0,qk:1,rk:3,nk:17,ji:7,tk:11,Ib:7,Jb:3,vk:7,uk:11,sk:15,pb:2,wk:3,ki:7,xk:8,pi:8,yk:8,oi:4,qi:4,Dk:2,Ck:3,Ak:5,Bk:2,zk:3,ri:5,si:3,ck:14,ek:22,bk:17,dk:25,gk:17,ik:25,fk:20,hk:28,Fk:13,Hk:21,Ek:16,Gk:24, -kk:13,mk:21,jk:16,lk:24,Ef:2,Df:7,xi:5,wi:5,Ik:19,Yb:5,Jk:5,Kk:17,fc:3,Lk:5,Ff:3,Hd:0,di:8,ei:5,fi:9,li:5,mi:5,ni:4,ti:5,ui:5,vi:4,yi:7,zi:5,Ai:8,Ei:3,Fi:4,Gi:3,Mk:11,Pk:11,Nk:15,Ok:15,Qk:7,Ci:5,Bi:8,Di:0,Ji:2,Gf:6,Ii:3,Hi:6,Li:3,Ki:5,Rk:5};h=Gb.prototype;h.Qh=function(a,b,c,d,e){this.Ba=a;this.Td=b;this.Nb=c;this.fb=d;this.Yd=e};h.reset=function(){this.na.uc&&jb(this);fc(this);gb(this);this.na.Oc=!1}; -function fc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Kc=65520;a.Cc=0;a.Sd=1023;a.tc={Oi:0,Aa:0,yb:0,Bg:-1};a.Ed=0;a.ya=new tb(a,"CS");a.Zb=new tb(a,"DS");a.Tb=new tb(a,"SS");a.hb=new tb(a,"ES");a.dl=new tb(a,"ZERO");gc(a,0,65535);80286<=a.Da&&(a.Bc=0,a.xe=65535,a.oe=new tb(a,"LDT",!0),a.Pf=new tb(a,"TSS",!0),a.vb=new tb(a,"VER",!0),gc(a,65520,61440),a.ya.jb=16711680);hc(a,0);ic(a);a.$a=0;a.qb=a.Kf=-1;a.dg=0;a.ha=a.Fa=-1;a.D=a.Zb;a.N=a.Tb;a.Z=a.ua=0} -h.Fj=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.ya.Aa+this.Zb.Aa+this.Tb.Aa+this.hb.Aa+jc(this)|0};function kc(a,b){var c=a.ij[b];null!=c&&(c(--a.oh),delete a.ij[b])}function ic(a,b){void 0===b&&(b=!!(a.Kc&1));lc=b?mc:nc;ub(a.ya,b);ub(a.Zb,b);ub(a.Tb,b);ub(a.hb,b)} -h.save=function(){var a=new H(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.Ed]);a.set(1,[this.va,this.ya.save(),this.Zb.save(),this.Tb.save(),this.hb.save(),null!=this.Bc?[this.Kc,this.Bc,this.xe,this.Cc,this.Sd,this.oe.save(),this.Pf.save(),this.Ed]:null,jc(this)]);a.set(2,[this.D.Vg,this.N.Vg,this.Z,this.ua,this.$a,this.ha,this.Fa]);a.set(3,[this.Fg,this.ke,this.ba.Dd]);a.set(4,Ya(this.qa));return a.data()}; -h.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Ed=b[8]||0;b=a[1];this.ya.restore(b[1]);this.Zb.restore(b[2]);this.Tb.restore(b[3]);this.hb.restore(b[4]);var c=b[5];c&&c.length&&(this.Kc=c[0],this.Bc=c[1],this.xe=c[2],this.Cc=c[3],this.Sd=c[4],this.oe.restore(c[5]),this.Pf.restore(c[6]),this.Ed=c[7],ic(this));hc(this,b[6]);I(this,b[0]);b=a[2];this.D=oc(this,b[0]);this.N=oc(this,b[1]);this.Z=b[2];this.ua=b[3];this.$a= -b[4];this.ha=b[5];this.Fa=b[6];b=a[3];this.Fg=b[0];this.ke=b[1];mb(this,b[2]);a:{b=this.qa;a=a[4];for(c=0;c>1?128:0} -function Cc(a){return(a.ia^a.ka^a.ia>>1)&a.ca>>1?2048:0}function Dc(a){a.X&=~a.ca}function Ec(a){a.ka=a.ia&16|a.ka&-17}function Fc(a){a.X|=a.ca-1}function Gc(a){a.ia&=~a.ca;a.ka=a.ia&32896|a.ka&-32897}function Hc(a){a.X|=a.ca}function Ic(a){a.ka=~(a.ia&16)&16|a.ka&-17}function Jc(a){a.X&=~(a.ca-1)}function Kc(a){Bc(a)||(a.ia^=a.ca>>1|a.ca>>2,a.ka^=32896)}function Lc(a){a.ia|=a.ca;a.ka=a.ia&32896|a.ka&-32897}function jc(a){return a.Ga&-2262|xc(a)|yc(a)|zc(a)|Ac(a)|Bc(a)|Cc(a)} -function hc(a,b){a.ca=256;a.X=a.ia=a.ka=0;b&1&&Hc(a);b&4||(a.ia|=1);b&16&&(a.ka|=16);b&64||Fc(a);b&128&&Kc(a);b&2048&&Lc(a);a.ya.sc?b=b&-12289|a.Ga&12288:(a.Ed=(b&12288)>>12,!a.Ed||a.Kc&1||(a.Ed=0));a.ya.sc>a.Ed&&(b=b&-513|a.Ga&512);a.Ga=a.Ga&-1793|b&1792|a.gj;a.Ga&256&&(a.$a|=2,a.Z|=4)} -h.wb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.sa[c]=d;e=!0;break;default:e=db.prototype.wb.call(this,a,b,c,d)}return e};function Mc(a,b){return a.Ba[(b&a.Td)>>a.Nb].xc(b&a.fb)} -function F(a,b){var c=b&a.fb,d=(b&a.Td)>>a.Nb;a.A-=a.B.Ni;return c!=a.fb?a.Ba[d].Sn(c):a.Ba[d++].xc(c)|a.Ba[d&a.Yd].xc(0)<<8}function Nc(a,b,c){a.Ba[(b&a.Td)>>a.Nb].Ac(b&a.fb,c&255)}function Oc(a,b,c){var d=b&a.fb;b=(b&a.Td)>>a.Nb;a.A-=a.B.Ni;d!=a.fb?a.Ba[b].bo(d,c&65535):(a.Ba[b++].Ac(d,c&255),a.Ba[b&a.Yd].Ac(0,c>>8&255))}h.Gl=function(a,b){this.Of=a;this.ha=a.$c(this.Hf=b,0);return this.Z&1?0:Mc(this,this.ha)};h.Hl=function(a,b){this.Of=a;this.ha=a.$c(this.Hf=b,1);return this.Z&1?0:F(this,this.ha)}; -h.Im=function(a,b){this.Of=a;this.Fa=this.ha=a.$c(this.Hf=b,0);return this.Z&1?0:Mc(this,this.ha)};h.Jm=function(a,b){this.Of=a;this.Fa=this.ha=a.$c(this.Hf=b,1);return this.Z&1?0:F(this,this.ha)};h.Zn=function(a){this.Z&2||Nc(this,this.Of.bc(this.Hf,1),a)};h.$n=function(a){this.Z&2||Oc(this,this.Of.bc(this.Hf,2),a)};h.da=function(){var a=Mc(this,this.Ha);this.Ha=this.ya.jb+(this.va=this.va+1&65535);return a}; -h.M=function(){var a=Mc(this,this.Ha)<<24>>24;this.Ha=this.ya.jb+(this.va=this.va+1&65535);return a&65535};h.L=function(){var a=F(this,this.Ha);this.Ha=this.ya.jb+(this.va=this.va+2&65535);return a};h.Ea=function(){var a=this.Y;this.Y=this.Y+2&65535;return F(this,this.Tb.$c(a,1))};function K(a,b){var c=a.Y=a.Y-2&65535;Oc(a,a.Tb.bc(c,1),b)} -h.kf=function(){E(this,"AX",this.H);E(this,"BX",this.C);E(this,"CX",this.J);E(this,"DX",this.K);E(this,"SP",this.Y);E(this,"BP",this.I);E(this,"SI",this.G);E(this,"DI",this.F);E(this,"CS",this.ya.Aa);E(this,"DS",this.Zb.Aa);E(this,"SS",this.Tb.Aa);E(this,"ES",this.hb.Aa);E(this,"IP",this.va);var a=jc(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024? +0,0,1,1,0,1,0,0,1];function tb(a,b,c){this.la=a;this.jb=this.Aa=0;this.gd=65535;this.yb=0;this.zj="CS"==b;this.Wg=b;this.lc=this.sc=0;ub(this,c)}function wb(a){this.Aa=a;this.gd=65535;this.sc=this.lc=0;return this.jb=a<<4} +function xb(a){var b,c;a&4?(b=this.la.oe.jb,c=this.la.oe.gd):(b=this.la.Bc,c=this.la.xe);b+=a&65528;if(b+7<=c){this.la.A-=15;c=F(this.la,b+0);var d=F(this.la,b+4);b=F(this.la,b+2)|(d&255)<<16;var e;d&4096||(e=d&7936)&&768>=e?(this.Aa=a,this.jb=b,this.gd=c,this.yb=d&65280,this.type=d&7936,ub(this)):b=-1;return b}return-1}function yb(a){return this.jb+a}function zb(a){return this.jb+a}function Ab(a,b,c){return a+b<=this.gd?this.jb+a:Bb.call(this,0,0,c)} +function Bb(a,b,c){c||Cb.call(this.la,13,0);return-1}function Db(a,b,c){return a+b<=this.gd?this.jb+a:Eb.call(this,0,0,c)}function Eb(a,b,c){c||Cb.call(this.la,13,0);return-1}function Fb(a,b,c){var d=F(a.la,c+2),e=F(a.la,c+0)|(d&255)<<16;c=F(a.la,c+4);a.Aa=b;a.jb=e;a.gd=c;a.yb=d&65280;ub(a)}tb.prototype.save=function(){return[this.Aa,this.jb,this.gd,this.yb,this.zj,this.Wg,this.sc,this.lc]}; +tb.prototype.restore=function(a){"number"==typeof a?this.load(a):(this.Aa=a[0],this.jb=a[1],this.gd=a[2],this.yb=a[3],this.zj=a[4],this.Wg=a[5],this.sc=a[6],this.lc=a[7])};function ub(a,b){void 0===b&&(b=!!(a.la.Kc&1));b?(a.load=xb,a.ad=Ab,a.bc=Db,a.yb&4096&&(6144==(a.yb&6656)&&(a.bc=Bb),a.yb&2048||!(a.yb&512))&&(a.bc=Eb),a.sc=a.Aa&3,a.lc=(a.yb&24576)>>13):(a.load=wb,a.ad=yb,a.bc=zb,a.sc=a.lc=0)} +function Gb(a){this.Da=a.model||8088;var b=0;switch(this.Da){default:case 8088:b=4772727;break;case 80286:b=6E6}db.call(this,a,b);this.hj=61442;this.Tf=4;this.Le=255;this.B=80286<=this.Da?Hb:Ib;this.Na=Jb.slice();80186<=this.Da&&(this.Le=31,this.Na[15]=G,this.Na[96]=Kb,this.Na[97]=Lb,this.Na[98]=Mb,this.Na[99]=G,this.Na[100]=G,this.Na[101]=G,this.Na[102]=G,this.Na[103]=G,this.Na[104]=Nb,this.Na[105]=Ob,this.Na[106]=Pb,this.Na[107]=Qb,this.Na[108]=Rb,this.Na[109]=Sb,this.Na[110]=Tb,this.Na[111]=Ub, +this.Na[192]=Vb,this.Na[193]=Wb,this.Na[200]=Xb,this.Na[201]=Yb,this.Na[241]=Zb,$b[7]=ac,bc[7]=ac,80286<=this.Da&&(this.hj=2,this.Tf=0,this.Na[15]=cc,this.Na[99]=dc,this.Na[84]=ec));this.Vf=[];this.jj=[];this.Rc=this.ph=0;this.na.sg=this.na.zl=!1;this.Ba=[];this.Td=this.Nb=this.fb=this.Yd=0;this.T=this.Gl;this.U=this.Hl;this.O=this.Km;this.P=this.Lm;this.R=this.ao;this.S=this.bo;fc(this)}y(db,Gb); +var Ib={Oi:4,aa:5,ra:6,fa:7,ga:8,Q:9,V:11,W:12,ie:4,Tj:60,Uj:83,Hb:3,gb:9,Xb:16,Mg:1,Yj:19,$j:28,bk:16,ak:21,Zj:37,Wj:2,hi:9,Xj:5,Vj:33,ji:10,ii:8,Cf:3,Bf:15,pk:51,qk:1,rk:2,sk:4,ok:32,ki:15,uk:15,Ib:16,Jb:4,wk:11,vk:18,tk:24,qb:4,xk:2,li:16,yk:17,qi:18,zk:19,pi:5,ri:6,Ek:2,Dk:8,Bk:9,Ck:10,Ak:10,si:10,ti:10,dk:80,fk:144,ck:86,ek:154,hk:101,jk:165,gk:107,ik:171,Gk:70,Ik:113,Fk:76,Hk:124,lk:80,nk:128,kk:86,mk:134,Ef:3,Df:16,yi:10,xi:8,Jk:51,Yb:8,Kk:17,Lk:36,fc:11,Mk:16,Ff:10,Hd:2,ei:18,fi:7,gi:15,mi:12, +ni:7,oi:11,ui:18,vi:7,wi:15,zi:15,Ai:7,Bi:13,Fi:11,Gi:7,Hi:8,Nk:8,Qk:12,Ok:18,Pk:17,Rk:15,Di:8,Ci:20,Ei:2,Ki:3,Gf:9,Ji:5,Ii:11,Mi:4,Li:17,Sk:11},Hb={Oi:0,aa:0,ra:0,fa:0,ga:0,Q:0,V:1,W:1,ie:3,Tj:14,Uj:16,Hb:2,gb:7,Xb:7,Mg:0,Yj:7,$j:13,bk:7,ak:11,Zj:16,Wj:3,hi:6,Xj:2,Vj:13,ji:5,ii:5,Cf:2,Bf:7,pk:23,qk:0,rk:1,sk:3,ok:17,ki:7,uk:11,Ib:7,Jb:3,wk:7,vk:11,tk:15,qb:2,xk:3,li:7,yk:8,qi:8,zk:8,pi:4,ri:4,Ek:2,Dk:3,Bk:5,Ck:2,Ak:3,si:5,ti:3,dk:14,fk:22,ck:17,ek:25,hk:17,jk:25,gk:20,ik:28,Gk:13,Ik:21,Fk:16,Hk:24, +lk:13,nk:21,kk:16,mk:24,Ef:2,Df:7,yi:5,xi:5,Jk:19,Yb:5,Kk:5,Lk:17,fc:3,Mk:5,Ff:3,Hd:0,ei:8,fi:5,gi:9,mi:5,ni:5,oi:4,ui:5,vi:5,wi:4,zi:7,Ai:5,Bi:8,Fi:3,Gi:4,Hi:3,Nk:11,Qk:11,Ok:15,Pk:15,Rk:7,Di:5,Ci:8,Ei:0,Ki:2,Gf:6,Ji:3,Ii:6,Mi:3,Li:5,Sk:5};h=Gb.prototype;h.Rh=function(a,b,c,d,e){this.Ba=a;this.Td=b;this.Nb=c;this.fb=d;this.Yd=e};h.reset=function(){this.na.uc&&kb(this);fc(this);gb(this);this.na.Oc=!1}; +function fc(a){a.H=0;a.C=0;a.J=0;a.K=0;a.Y=0;a.I=0;a.G=0;a.F=0;a.Kc=65520;a.Cc=0;a.Sd=1023;a.tc={Pi:0,Aa:0,yb:0,Cg:-1};a.Ed=0;a.ya=new tb(a,"CS");a.Zb=new tb(a,"DS");a.Tb=new tb(a,"SS");a.hb=new tb(a,"ES");a.el=new tb(a,"ZERO");gc(a,0,65535);80286<=a.Da&&(a.Bc=0,a.xe=65535,a.oe=new tb(a,"LDT",!0),a.Pf=new tb(a,"TSS",!0),a.vb=new tb(a,"VER",!0),gc(a,65520,61440),a.ya.jb=16711680);hc(a,0);ic(a);a.$a=0;a.rb=a.Kf=-1;a.eg=0;a.ha=a.Fa=-1;a.D=a.Zb;a.N=a.Tb;a.Z=a.ua=0} +h.Gj=function(){var a=this.H+this.C+this.J+this.K+this.Y+this.I+this.G+this.F|0;return a=a+this.va+this.ya.Aa+this.Zb.Aa+this.Tb.Aa+this.hb.Aa+jc(this)|0};function kc(a,b,c,d){void 0!==d&&(void 0===a.Vf[b]&&(a.Vf[b]=[]),a.Vf[b].push([c,d]))}function lc(a,b){var c=a.jj[b];null!=c&&(c(--a.ph),delete a.jj[b])}function ic(a,b){void 0===b&&(b=!!(a.Kc&1));mc=b?nc:oc;ub(a.ya,b);ub(a.Zb,b);ub(a.Tb,b);ub(a.hb,b)} +h.save=function(){var a=new H(this);a.set(0,[this.H,this.C,this.J,this.K,this.Y,this.I,this.G,this.F,this.Ed]);a.set(1,[this.va,this.ya.save(),this.Zb.save(),this.Tb.save(),this.hb.save(),null!=this.Bc?[this.Kc,this.Bc,this.xe,this.Cc,this.Sd,this.oe.save(),this.Pf.save(),this.Ed]:null,jc(this)]);a.set(2,[this.D.Wg,this.N.Wg,this.Z,this.ua,this.$a,this.ha,this.Fa]);a.set(3,[this.Gg,this.ke,this.ba.Dd]);a.set(4,Ya(this.qa));return a.data()}; +h.restore=function(a){var b;b=a[0];this.H=b[0];this.C=b[1];this.J=b[2];this.K=b[3];this.Y=b[4];this.I=b[5];this.G=b[6];this.F=b[7];this.Ed=b[8]||0;b=a[1];this.ya.restore(b[1]);this.Zb.restore(b[2]);this.Tb.restore(b[3]);this.hb.restore(b[4]);var c=b[5];c&&c.length&&(this.Kc=c[0],this.Bc=c[1],this.xe=c[2],this.Cc=c[3],this.Sd=c[4],this.oe.restore(c[5]),this.Pf.restore(c[6]),this.Ed=c[7],ic(this));hc(this,b[6]);I(this,b[0]);b=a[2];this.D=pc(this,b[0]);this.N=pc(this,b[1]);this.Z=b[2];this.ua=b[3];this.$a= +b[4];this.ha=b[5];this.Fa=b[6];b=a[3];this.Gg=b[0];this.ke=b[1];mb(this,b[2]);a:{b=this.qa;a=a[4];for(c=0;c>1?128:0} +function Dc(a){return(a.ia^a.ka^a.ia>>1)&a.ca>>1?2048:0}function Ec(a){a.X&=~a.ca}function Fc(a){a.ka=a.ia&16|a.ka&-17}function Gc(a){a.X|=a.ca-1}function Hc(a){a.ia&=~a.ca;a.ka=a.ia&32896|a.ka&-32897}function Ic(a){a.X|=a.ca}function Jc(a){a.ka=~(a.ia&16)&16|a.ka&-17}function Kc(a){a.X&=~(a.ca-1)}function Lc(a){Cc(a)||(a.ia^=a.ca>>1|a.ca>>2,a.ka^=32896)}function Mc(a){a.ia|=a.ca;a.ka=a.ia&32896|a.ka&-32897}function jc(a){return a.Ga&-2262|yc(a)|zc(a)|Ac(a)|Bc(a)|Cc(a)|Dc(a)} +function hc(a,b){a.ca=256;a.X=a.ia=a.ka=0;b&1&&Ic(a);b&4||(a.ia|=1);b&16&&(a.ka|=16);b&64||Gc(a);b&128&&Lc(a);b&2048&&Mc(a);a.ya.sc?b=b&-12289|a.Ga&12288:(a.Ed=(b&12288)>>12,!a.Ed||a.Kc&1||(a.Ed=0));a.ya.sc>a.Ed&&(b=b&-513|a.Ga&512);a.Ga=a.Ga&-1793|b&1792|a.hj;a.Ga&256&&(a.$a|=2,a.Z|=4)} +h.wb=function(a,b,c,d){var e=!1;switch(c){case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "CS":case "DS":case "SS":case "ES":case "IP":case "PC":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "O":this.sa[c]=d;e=!0;break;default:e=db.prototype.wb.call(this,a,b,c,d)}return e};function Nc(a,b){return a.Ba[(b&a.Td)>>a.Nb].xc(b&a.fb)} +function F(a,b){var c=b&a.fb,d=(b&a.Td)>>a.Nb;a.A-=a.B.Oi;return c!=a.fb?a.Ba[d].Un(c):a.Ba[d++].xc(c)|a.Ba[d&a.Yd].xc(0)<<8}function Oc(a,b,c){a.Ba[(b&a.Td)>>a.Nb].Ac(b&a.fb,c&255)}function Pc(a,b,c){var d=b&a.fb;b=(b&a.Td)>>a.Nb;a.A-=a.B.Oi;d!=a.fb?a.Ba[b].eo(d,c&65535):(a.Ba[b++].Ac(d,c&255),a.Ba[b&a.Yd].Ac(0,c>>8&255))}h.Gl=function(a,b){this.Of=a;this.ha=a.ad(this.Hf=b,0);return this.Z&1?0:Nc(this,this.ha)};h.Hl=function(a,b){this.Of=a;this.ha=a.ad(this.Hf=b,1);return this.Z&1?0:F(this,this.ha)}; +h.Km=function(a,b){this.Of=a;this.Fa=this.ha=a.ad(this.Hf=b,0);return this.Z&1?0:Nc(this,this.ha)};h.Lm=function(a,b){this.Of=a;this.Fa=this.ha=a.ad(this.Hf=b,1);return this.Z&1?0:F(this,this.ha)};h.ao=function(a){this.Z&2||Oc(this,this.Of.bc(this.Hf,1),a)};h.bo=function(a){this.Z&2||Pc(this,this.Of.bc(this.Hf,2),a)};h.da=function(){var a=Nc(this,this.Ha);this.Ha=this.ya.jb+(this.va=this.va+1&65535);return a}; +h.M=function(){var a=Nc(this,this.Ha)<<24>>24;this.Ha=this.ya.jb+(this.va=this.va+1&65535);return a&65535};h.L=function(){var a=F(this,this.Ha);this.Ha=this.ya.jb+(this.va=this.va+2&65535);return a};h.Ea=function(){var a=this.Y;this.Y=this.Y+2&65535;return F(this,this.Tb.ad(a,1))};function K(a,b){var c=a.Y=a.Y-2&65535;Pc(a,a.Tb.bc(c,1),b)} +h.lf=function(){E(this,"AX",this.H);E(this,"BX",this.C);E(this,"CX",this.J);E(this,"DX",this.K);E(this,"SP",this.Y);E(this,"BP",this.I);E(this,"SI",this.G);E(this,"DI",this.F);E(this,"CS",this.ya.Aa);E(this,"DS",this.Zb.Aa);E(this,"SS",this.Tb.Aa);E(this,"ES",this.hb.Aa);E(this,"IP",this.va);var a=jc(this);E(this,"PS",a);E(this,"C",a&1?1:0,1);E(this,"P",a&4?1:0,1);E(this,"A",a&16?1:0,1);E(this,"Z",a&64?1:0,1);E(this,"S",a&128?1:0,1);E(this,"T",a&256?1:0,1);E(this,"I",a&512?1:0,1);E(this,"D",a&1024? 1:0,1);E(this,"O",a&2048?1:0,1);this.sa.speed&&(this.sa.speed.innerHTML=this.na.uc&&this.ba.Qc?this.ba.Qc.toFixed(2)+"Mhz":"Stopped")}; -h.fl=function(a){this.na.rg=!0;this.na.zl=!1;this.Rc=this.A=a;this.ja&&rb(this.ja);a||!this.Pa||this.Pa.op(Pc)||(this.Z|=4);do{if(a=this.Z&240)this.ua|=a;else if(this.Og=this.Ha,this.ha=this.Fa=-1,this.D=this.Zb,this.N=this.Tb,this.ua=this.Z&256,this.$a){a:{if(!(this.Z&4))if(this.$a&1&&this.Ga&512){if(a=Qc(this.ja),-1<=a&&(this.$a&=-2,0<=a)){this.$a&=-5;Rc.call(this,a,null,11);break a}}else if(this.$a&2){this.$a&=-3;Rc.call(this,1,null,11);break a}if(a=this.$a&8){a=this.ja;for(var b=!1,c=0;cthis.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a+b)&255} -function Uc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&255}function Vc(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&255}function Wc(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&255} -function Xc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&255}function Yc(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a-b)&255}function Zc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&255} -function $c(a,b){this.ka=a^b;this.ca=256;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gi:this.B.gb;this.Z|=2;return a}function ad(a,b){this.ka=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a+b)&65535}function bd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&65535} -function cd(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&65535}function dd(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&65535}function ed(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&65535} -function fd(a,b){this.ka=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a-b)&65535}function gd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&65535}function hd(a,b){this.ka=a^b;this.ca=65536;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gi:this.B.gb;this.Z|=2;return a}function id(a,b){this.X=this.X&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?Lc(this):Gc(this)} -function jd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;id.call(this,d,256)}return c}function kd(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;id.call(this,d,65536)}return c}function ld(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);id.call(this,d,256)}return c}function md(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);id.call(this,d,65536)}return c} -function nd(a,b){var c=a;if(b){var d;(d=(b&this.Ke)%9)?(d=a<>9-d,c=d&255):d=a|(this.X&this.ca?1:0)<<8;id.call(this,d,256)}return c}function od(a,b){var c=a;if(b){var d;(d=(b&this.Ke)%17)?(d=a<>17-d,c=d&65535):d=a|(this.X&this.ca?1:0)<<16;id.call(this,d,65536)}return c}function sd(a,b){var c=a;b&&(c=(b&this.Ke)%9,c=a>>c|(this.X&this.ca?1:0)<<8-c|a<<9-c,id.call(this,c,256),c&=255);return c} -function td(a,b){var c=a;b&&(c=(b&this.Ke)%17,c=a>>c|(this.X&this.ca?1:0)<<16-c|a<<17-c,id.call(this,c,65536),c&=65535);return c}function ud(a,b){var c=a;b&&(c=8>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.ka=a^this.X;this.ca=256;a=this.X}return a&255}function xd(a,b){if(b){var c=16>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.ka=a^this.X;this.ca=65536;a=this.X}return a&65535}function yd(a,b){if(b){8>24>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.ka=a^this.X;this.ca=256;a=this.X}return a&255} -function zd(a,b){if(b){16>16>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.ka=a^this.X;this.ca=65536;a=this.X}return a&65535}function Ad(){this.A-=0>this.ha?2:this.B.Qk;return 1}function Bd(){var a=this.J&this.Ke;this.A-=(0>this.ha?this.B.Ci:this.B.Bi)+(a<this.ha?this.B.Ci:this.B.Bi)+(a<this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a+b)&255} +function Vc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&255}function Wc(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&255}function Xc(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&255} +function Yc(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&255}function Zc(a,b){this.ka=a^b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a-b)&255}function $c(a,b){this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&255} +function ad(a,b){this.ka=a^b;this.ca=256;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.hi:this.B.gb;this.Z|=2;return a}function bd(a,b){this.ka=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a+b)&65535}function cd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a|b)&65535} +function dd(a,b){this.ka=a^b;this.X=this.ia=a+b+(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&65535}function ed(a,b){this.ka=a^b;this.X=this.ia=a-b-(this.X&this.ca?1:0);this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return this.X&65535}function fd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a&b)&65535} +function gd(a,b){this.ka=a^b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=a-b)&65535}function hd(a,b){this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.gb:this.B.Xb;return(this.X=this.ia=this.ka=a^b)&65535}function id(a,b){this.ka=a^b;this.ca=65536;this.X=this.ia=a-b;this.A-=0>this.Fa?0>this.ha?this.B.Hb:this.B.hi:this.B.gb;this.Z|=2;return a}function jd(a,b){this.X=this.X&this.ca-1|(a&b?this.ca:0);(a^a>>1)&b>>1?Mc(this):Hc(this)} +function kd(a,b){var c=a;if(b){var d,e=b&7;e?c=(d=a<>8-e)&255:d=a<<8;jd.call(this,d,256)}return c}function ld(a,b){var c=a;if(b){var d,e=b&15;e?c=(d=a<>16-e)&65535:d=a<<16;jd.call(this,d,65536)}return c}function md(a,b){var c=a;if(b){var d,c=b&7,c=d=(a>>c|a<<8-c)&255;d&128&&(d|=256);jd.call(this,d,256)}return c}function nd(a,b){var c=a;if(b){var d,c=b&15,c=d=(a>>c|a<<16-c)&65535;d&32768&&(d|=65536);jd.call(this,d,65536)}return c} +function od(a,b){var c=a;if(b){var d;(d=(b&this.Le)%9)?(d=a<>9-d,c=d&255):d=a|(this.X&this.ca?1:0)<<8;jd.call(this,d,256)}return c}function sd(a,b){var c=a;if(b){var d;(d=(b&this.Le)%17)?(d=a<>17-d,c=d&65535):d=a|(this.X&this.ca?1:0)<<16;jd.call(this,d,65536)}return c}function td(a,b){var c=a;b&&(c=(b&this.Le)%9,c=a>>c|(this.X&this.ca?1:0)<<8-c|a<<9-c,jd.call(this,c,256),c&=255);return c} +function ud(a,b){var c=a;b&&(c=(b&this.Le)%17,c=a>>c|(this.X&this.ca?1:0)<<16-c|a<<17-c,jd.call(this,c,65536),c&=65535);return c}function vd(a,b){var c=a;b&&(c=8>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.ka=a^this.X;this.ca=256;a=this.X}return a&255}function yd(a,b){if(b){var c=16>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.ka=a^this.X;this.ca=65536;a=this.X}return a&65535}function zd(a,b){if(b){8>24>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|256:this.X&-257;this.ka=a^this.X;this.ca=256;a=this.X}return a&255} +function Ad(a,b){if(b){16>16>>b-1;this.X=this.ia=c>>1;this.X=c&1?this.X|65536:this.X&-65537;this.ka=a^this.X;this.ca=65536;a=this.X}return a&65535}function Bd(){this.A-=0>this.ha?2:this.B.Rk;return 1}function Cd(){var a=this.J&this.Le;this.A-=(0>this.ha?this.B.Di:this.B.Ci)+(a<this.ha?this.B.Di:this.B.Ci)+(a<this.Fa?this.B.Yb:this.B.Jk;return b},Ed,Ed,Ed,Ed,Ed,Ed,Ed],Id=[function(a,b){this.A-=0>this.Fa?this.B.Bk:this.B.zk;return b},L,L,L,L,L,L,L],Jd=[jd,ld,nd,sd,ud,wd,L,yd],Kd=[kd,md,od,td,vd,xd,L,zd],Md=[function(a,b){b=this.da();this.X=this.ia=this.ka=a&b;this.ca=256;this.A-=0>this.ha?this.B.Ii:this.B.Hi;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Ef:this.B.Df;return a^255},function(a,b){b=0;this.ka= -a^b;this.ca=256;this.A-=0>this.ha?this.B.Ef:this.B.Df;return(this.X=this.ia=b-a)&255},function(a){this.H=this.qb=(this.X=(this.H&255)*a)&65535;this.ka=this.ia=this.X;this.ca=256;this.H&65280?(Hc(this),Lc(this)):(Dc(this),Gc(this));this.A-=0>this.ha?this.B.Fk:this.B.Ek;this.Z|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.qb=b&65535;this.X=this.ka=this.ia=b;this.ca=256;127b?(Hc(this),Lc(this)):(Dc(this),Gc(this));this.A-=0>this.ha?this.B.kk:this.B.jk;this.Z|=2;return a}, -function(a){if(!a)return Ld.call(this),a;var b=this.H/a;if(255this.ha?this.B.ck:this.B.bk;this.Z|=2;return a},function(a){if(!a)return Ld.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Ld.call(this),a;this.qb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.ka=this.X=b|256;this.ca=256;this.A-=0>this.ha?this.B.gk:this.B.fk;this.Z|=2;return a}], -Nd=[function(a,b){b=this.L();this.X=this.ia=this.ka=a&b;this.ca=65536;this.A-=0>this.ha?this.B.Ii:this.B.Hi;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Ef:this.B.Df;return a^65535},function(a,b){b=0;this.ka=a^b;this.ca=65536;this.A-=0>this.ha?this.B.Ef:this.B.Df;return(this.X=this.ia=b-a)&65535},function(a){this.qb=this.H=(this.X=this.H*a)&65535;this.Kf=this.K=this.X>>16&65535;this.ka=this.ia=this.X;this.ca=65536;this.K?(Hc(this),Lc(this)):(Dc(this),Gc(this));this.A-=0>this.ha?this.B.Hk: -this.B.Gk;this.Z|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.qb=b&65535;this.K=this.Kf=b>>16&65535;this.X=this.ka=this.ia=b;this.ca=65536;32767b?(Hc(this),Lc(this)):(Dc(this),Gc(this));this.A-=0>this.ha?this.B.mk:this.B.lk;this.Z|=2;return a},function(a,b){if(!a)return Ld.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Ld.call(this),a;this.qb=this.H=c&65535;this.Kf=this.K=b%a&65535;this.ia=this.ka=this.X=c|65536;this.ca=65536;this.A-= -0>this.ha?this.B.ek:this.B.dk;this.Z|=2;return a},function(a,b){if(!a)return Ld.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Ld.call(this),a;this.qb=this.H=d&65535;this.Kf=this.K=b%c&65535;this.ia=this.ka=this.X=d|65536;this.ca=65536;this.A-=0>this.ha?this.B.ik:this.B.hk;this.Z|=2;return a}],$b=[function(a){this.ka=a;a=(this.ia=a+1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},function(a){this.ka= -a;a=(this.ia=a-1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},L,L,L,L,L,L],bc=[function(a){this.ka=a;a=(this.ia=a+1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},function(a){this.ka=a;a=(this.ia=a-1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},function(a){K(this,this.va);I(this,a);this.A-=0>this.ha?this.B.ak:this.B.$j;this.Z|=2;return a}, -function(a){if(0>this.ha)return L.call(this,a);K(this,this.ya.Aa);K(this,this.va);gc(this,a,F(this,this.ha+2));this.A-=this.B.Yj;this.Z|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.B.vk:this.B.uk;this.Z|=2;return a},function(a){if(0>this.ha)return L.call(this,a);gc(this,a,F(this,this.ha+2));this.A-=this.B.sk;this.Z|=2;return a},function(a){var b=a;this.Z&512&&(a=a-2&65535,80286>this.Da&&(b=a));K(this,b);this.A-=0>this.ha?this.B.fc:this.B.Lk;this.Z|=2;return a},Ed],Od=[jd,ld,nd,sd,ud, -wd,L,yd],Pd=[kd,md,od,td,vd,xd,L,zd];function Qd(a,b){this.A-=0>this.Fa?0>this.ha?this.B.Dk:this.B.Ck:this.B.Ak;return b}function Rd(){return Qd.call(this,0,this.qb)}function Sd(a,b){this.X=this.ia=this.ka=a&b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ji:this.B.Gf:this.B.Gf;this.Z|=2;return a}function Td(a,b){this.X=this.ia=this.ka=a&b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ji:this.B.Gf:this.B.Gf;this.Z|=2;return a} -function Ud(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.X=this.ka=this.ia=c;this.ca=256;32767c?(Hc(this),Lc(this)):(Dc(this),Gc(this));this.A-=0>this.ha?21:24;return c&65535}function Vd(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.X=this.ka=this.ia=c;this.ca=65536;32767c?(Hc(this),Lc(this)):(Dc(this),Gc(this));this.A-=0>this.ha?21:24;return c&65535}function Wd(a){return a}function Xd(a){if(0>this.ha)return M.call(this),a;this.A-=this.B.wk;return this.ha} -function Yd(a,b){if(0>this.ha)return M.call(this),a;rc(this,F(this,this.ha+2));this.A-=this.B.ki;return b}function Zd(a,b){if(0>this.ha)return M.call(this),a;tc(this,F(this,this.ha+2));this.A-=this.B.ki;return b}function $d(a){if(0>this.ha)return G.call(this),a;var b=a<<16>>16,c=F(this,this.ha)<<16>>16,d=F(this,this.ha+2)<<16>>16;this.A-=this.B.Uj;if(bd)I(this,this.Og-this.ya.jb),Rc.call(this,5,null,0);this.Z|=2;return a} -function ae(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Jc(this),a;Fc(this);return a}function be(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.vb.load(b,!0)&&this.vb.lc>=this.ya.sc&&this.vb.lc>=(b&3))return Jc(this),this.vb.yb&65280;Fc(this);return a}function ce(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.vb.load(b,!0)&&(7168==(this.vb.yb&7168)||this.vb.lc>=this.ya.sc)&&this.vb.lc>=(b&3))return Jc(this),this.vb.fd;Fc(this);return a} -function de(a,b){if(0>this.ha){switch(this.dg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Li}else this.Fa=this.ha,this.R(a),this.A-=this.B.Ki;return b} -function ee(a,b){if(0>this.ha){switch(this.dg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Li}else this.Fa=this.ha,this.S(a),this.A-=this.B.Ki;return b}function Rc(a,b,c){pc(this,a)&&(K(this,jc(this)),this.Ga&=this.tc.Bg,K(this,this.ya.Aa),K(this,this.va),null!=b&&K(this,b),gc(this,this.tc.Oi,this.tc.Aa),this.A-=this.B.ok+c)} -function fe(a){a|=this.Kc&1;this.Kc=this.Kc&65520|a&-65521;this.Kc&1&&ic(this,!0)}function Ld(){I(this,this.Og-this.ya.jb);Rc.call(this,0,null,2)}function Cb(a,b){80186<=this.Da&&(I(this,this.Og-this.ya.jb),Rc.call(this,a,b,0))}function G(){Cb.call(this,6);jb(this)}function M(){I(this,this.Og-this.ya.jb);var a=Ta(this.qa,this.Ha),b=this.va,c=this.ya.Aa;Ka(this,"Undefined opcode 0x"+p(a,2)+" at "+(void 0!==c?p(c,4)+":"+p(b,4):p(b)));jb(this)} -function ge(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function he(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function ie(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function je(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function ke(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}function le(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a} -function me(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function ne(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}function oe(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function pe(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function qe(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a}function re(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a} -function se(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function te(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function ue(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function ve(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function we(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a}function xe(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a} -function ye(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}function ze(a){a=a.call(this,this.K&255,this.C&255);this.K=this.K&-256|a}function Ae(a){a=a.call(this,this.K&255,this.H>>8);this.K=this.K&-256|a}function Be(a){a=a.call(this,this.K&255,this.J>>8);this.K=this.K&-256|a}function Ce(a){a=a.call(this,this.K&255,this.K>>8);this.K=this.K&-256|a}function De(a){a=a.call(this,this.K&255,this.C>>8);this.K=this.K&-256|a} -function Ee(a){a=a.call(this,this.C&255,this.H&255);this.C=this.C&-256|a}function Fe(a){a=a.call(this,this.C&255,this.J&255);this.C=this.C&-256|a}function Ge(a){a=a.call(this,this.C&255,this.K&255);this.C=this.C&-256|a}function He(a){a=a.call(this,this.C&255,this.C&255);this.C=this.C&-256|a}function Ie(a){a=a.call(this,this.C&255,this.H>>8);this.C=this.C&-256|a}function Je(a){a=a.call(this,this.C&255,this.J>>8);this.C=this.C&-256|a} -function Ke(a){a=a.call(this,this.C&255,this.K>>8);this.C=this.C&-256|a}function Le(a){a=a.call(this,this.C&255,this.C>>8);this.C=this.C&-256|a}function Me(a){a=a.call(this,this.H>>8,this.H&255);this.H=this.H&255|a<<8}function Ne(a){a=a.call(this,this.H>>8,this.J&255);this.H=this.H&255|a<<8}function Oe(a){a=a.call(this,this.H>>8,this.K&255);this.H=this.H&255|a<<8}function Pe(a){a=a.call(this,this.H>>8,this.C&255);this.H=this.H&255|a<<8} -function Qe(a){a=a.call(this,this.H>>8,this.H>>8);this.H=this.H&255|a<<8}function Re(a){a=a.call(this,this.H>>8,this.J>>8);this.H=this.H&255|a<<8}function Se(a){a=a.call(this,this.H>>8,this.K>>8);this.H=this.H&255|a<<8}function Te(a){a=a.call(this,this.H>>8,this.C>>8);this.H=this.H&255|a<<8}function Ue(a){a=a.call(this,this.J>>8,this.H&255);this.J=this.J&255|a<<8}function Ve(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8} -function We(a){a=a.call(this,this.J>>8,this.K&255);this.J=this.J&255|a<<8}function Xe(a){a=a.call(this,this.J>>8,this.C&255);this.J=this.J&255|a<<8}function Ye(a){a=a.call(this,this.J>>8,this.H>>8);this.J=this.J&255|a<<8}function Ze(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function $e(a){a=a.call(this,this.J>>8,this.K>>8);this.J=this.J&255|a<<8}function af(a){a=a.call(this,this.J>>8,this.C>>8);this.J=this.J&255|a<<8} -function bf(a){a=a.call(this,this.K>>8,this.H&255);this.K=this.K&255|a<<8}function cf(a){a=a.call(this,this.K>>8,this.J&255);this.K=this.K&255|a<<8}function df(a){a=a.call(this,this.K>>8,this.K&255);this.K=this.K&255|a<<8}function ef(a){a=a.call(this,this.K>>8,this.C&255);this.K=this.K&255|a<<8}function ff(a){a=a.call(this,this.K>>8,this.H>>8);this.K=this.K&255|a<<8}function gf(a){a=a.call(this,this.K>>8,this.J>>8);this.K=this.K&255|a<<8} -function hf(a){a=a.call(this,this.K>>8,this.K>>8);this.K=this.K&255|a<<8}function jf(a){a=a.call(this,this.K>>8,this.C>>8);this.K=this.K&255|a<<8}function kf(a){a=a.call(this,this.C>>8,this.H&255);this.C=this.C&255|a<<8}function lf(a){a=a.call(this,this.C>>8,this.J&255);this.C=this.C&255|a<<8}function mf(a){a=a.call(this,this.C>>8,this.K&255);this.C=this.C&255|a<<8}function nf(a){a=a.call(this,this.C>>8,this.C&255);this.C=this.C&255|a<<8} -function of(a){a=a.call(this,this.C>>8,this.H>>8);this.C=this.C&255|a<<8}function pf(a){a=a.call(this,this.C>>8,this.J>>8);this.C=this.C&255|a<<8}function qf(a){a=a.call(this,this.C>>8,this.K>>8);this.C=this.C&255|a<<8}function rf(a){a=a.call(this,this.C>>8,this.C>>8);this.C=this.C&255|a<<8}function sf(a){this.H=a.call(this,this.H,this.H)}function tf(a){this.H=a.call(this,this.H,this.J)}function uf(a){this.H=a.call(this,this.H,this.K)}function vf(a){this.H=a.call(this,this.H,this.C)} -function wf(a){this.H=a.call(this,this.H,this.Y)}function xf(a){this.H=a.call(this,this.H,this.I)}function yf(a){this.H=a.call(this,this.H,this.G)}function zf(a){this.H=a.call(this,this.H,this.F)}function Af(a){this.J=a.call(this,this.J,this.H)}function Bf(a){this.J=a.call(this,this.J,this.J)}function Cf(a){this.J=a.call(this,this.J,this.K)}function Df(a){this.J=a.call(this,this.J,this.C)}function Ef(a){this.J=a.call(this,this.J,this.Y)}function Ff(a){this.J=a.call(this,this.J,this.I)} -function Gf(a){this.J=a.call(this,this.J,this.G)}function Hf(a){this.J=a.call(this,this.J,this.F)}function If(a){this.K=a.call(this,this.K,this.H)}function Jf(a){this.K=a.call(this,this.K,this.J)}function Kf(a){this.K=a.call(this,this.K,this.K)}function Lf(a){this.K=a.call(this,this.K,this.C)}function Mf(a){this.K=a.call(this,this.K,this.Y)}function Nf(a){this.K=a.call(this,this.K,this.I)}function Of(a){this.K=a.call(this,this.K,this.G)}function Pf(a){this.K=a.call(this,this.K,this.F)} -function Qf(a){this.C=a.call(this,this.C,this.H)}function Rf(a){this.C=a.call(this,this.C,this.J)}function Sf(a){this.C=a.call(this,this.C,this.K)}function Tf(a){this.C=a.call(this,this.C,this.C)}function Uf(a){this.C=a.call(this,this.C,this.Y)}function Vf(a){this.C=a.call(this,this.C,this.I)}function Wf(a){this.C=a.call(this,this.C,this.G)}function Xf(a){this.C=a.call(this,this.C,this.F)}function Yf(a){this.Y=a.call(this,this.Y,this.H)}function Zf(a){this.Y=a.call(this,this.Y,this.J)} -function $f(a){this.Y=a.call(this,this.Y,this.K)}function ag(a){this.Y=a.call(this,this.Y,this.C)}function bg(a){this.Y=a.call(this,this.Y,this.Y)}function cg(a){this.Y=a.call(this,this.Y,this.I)}function dg(a){this.Y=a.call(this,this.Y,this.G)}function eg(a){this.Y=a.call(this,this.Y,this.F)}function fg(a){this.I=a.call(this,this.I,this.H)}function gg(a){this.I=a.call(this,this.I,this.J)}function hg(a){this.I=a.call(this,this.I,this.K)}function ig(a){this.I=a.call(this,this.I,this.C)} -function jg(a){this.I=a.call(this,this.I,this.Y)}function kg(a){this.I=a.call(this,this.I,this.I)}function lg(a){this.I=a.call(this,this.I,this.G)}function mg(a){this.I=a.call(this,this.I,this.F)}function ng(a){this.G=a.call(this,this.G,this.H)}function og(a){this.G=a.call(this,this.G,this.J)}function pg(a){this.G=a.call(this,this.G,this.K)}function qg(a){this.G=a.call(this,this.G,this.C)}function rg(a){this.G=a.call(this,this.G,this.Y)}function sg(a){this.G=a.call(this,this.G,this.I)} -function tg(a){this.G=a.call(this,this.G,this.G)}function ug(a){this.G=a.call(this,this.G,this.F)}function vg(a){this.F=a.call(this,this.F,this.H)}function wg(a){this.F=a.call(this,this.F,this.J)}function xg(a){this.F=a.call(this,this.F,this.K)}function yg(a){this.F=a.call(this,this.F,this.C)}function zg(a){this.F=a.call(this,this.F,this.Y)}function Ag(a){this.F=a.call(this,this.F,this.I)}function Bg(a){this.F=a.call(this,this.F,this.G)}function Cg(a){this.F=a.call(this,this.F,this.F)} -var Dg=[function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.H&255);this.R(a);this.A-=this.B.aa}, +var Gd=[Uc,Vc,Wc,Xc,Yc,Zc,$c,ad],Hd=[bd,cd,dd,ed,fd,gd,hd,id],Id=[function(a,b){this.A-=0>this.Fa?this.B.Yb:this.B.Kk;return b},Fd,Fd,Fd,Fd,Fd,Fd,Fd],Jd=[function(a,b){this.A-=0>this.Fa?this.B.Ck:this.B.Ak;return b},L,L,L,L,L,L,L],Kd=[kd,md,od,td,vd,xd,L,zd],Ld=[ld,nd,sd,ud,wd,yd,L,Ad],Nd=[function(a,b){b=this.da();this.X=this.ia=this.ka=a&b;this.ca=256;this.A-=0>this.ha?this.B.Ji:this.B.Ii;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Ef:this.B.Df;return a^255},function(a,b){b=0;this.ka= +a^b;this.ca=256;this.A-=0>this.ha?this.B.Ef:this.B.Df;return(this.X=this.ia=b-a)&255},function(a){this.H=this.rb=(this.X=(this.H&255)*a)&65535;this.ka=this.ia=this.X;this.ca=256;this.H&65280?(Ic(this),Mc(this)):(Ec(this),Hc(this));this.A-=0>this.ha?this.B.Gk:this.B.Fk;this.Z|=2;return a},function(a){var b=(this.H<<24>>24)*(a<<24>>24);this.H=this.rb=b&65535;this.X=this.ka=this.ia=b;this.ca=256;127b?(Ic(this),Mc(this)):(Ec(this),Hc(this));this.A-=0>this.ha?this.B.lk:this.B.kk;this.Z|=2;return a}, +function(a){if(!a)return Md.call(this),a;var b=this.H/a;if(255this.ha?this.B.dk:this.B.ck;this.Z|=2;return a},function(a){if(!a)return Md.call(this),a;var b=(this.H<<16>>16)/(a<<24>>24);if(b>b<<24>>24&65535)return Md.call(this),a;this.rb=this.H=b&255|((this.H<<16>>16)%(a<<24>>24)&255)<<8;this.ia=this.ka=this.X=b|256;this.ca=256;this.A-=0>this.ha?this.B.hk:this.B.gk;this.Z|=2;return a}], +Od=[function(a,b){b=this.L();this.X=this.ia=this.ka=a&b;this.ca=65536;this.A-=0>this.ha?this.B.Ji:this.B.Ii;this.Z|=2;return a},L,function(a){this.A-=0>this.ha?this.B.Ef:this.B.Df;return a^65535},function(a,b){b=0;this.ka=a^b;this.ca=65536;this.A-=0>this.ha?this.B.Ef:this.B.Df;return(this.X=this.ia=b-a)&65535},function(a){this.rb=this.H=(this.X=this.H*a)&65535;this.Kf=this.K=this.X>>16&65535;this.ka=this.ia=this.X;this.ca=65536;this.K?(Ic(this),Mc(this)):(Ec(this),Hc(this));this.A-=0>this.ha?this.B.Ik: +this.B.Hk;this.Z|=2;return a},function(a){var b=(this.H<<16>>16)*(a<<16>>16);this.H=this.rb=b&65535;this.K=this.Kf=b>>16&65535;this.X=this.ka=this.ia=b;this.ca=65536;32767b?(Ic(this),Mc(this)):(Ec(this),Hc(this));this.A-=0>this.ha?this.B.nk:this.B.mk;this.Z|=2;return a},function(a,b){if(!a)return Md.call(this),a;b=this.H+65536*this.K;var c=Math.floor(b/a);if(65536<=c)return Md.call(this),a;this.rb=this.H=c&65535;this.Kf=this.K=b%a&65535;this.ia=this.ka=this.X=c|65536;this.ca=65536;this.A-= +0>this.ha?this.B.fk:this.B.ek;this.Z|=2;return a},function(a,b){if(!a)return Md.call(this),a;var c=a<<16>>16;b=this.K<<16|this.H;var d=Math.floor(b/c);if(d!=(d&65535)<<16>>16)return Md.call(this),a;this.rb=this.H=d&65535;this.Kf=this.K=b%c&65535;this.ia=this.ka=this.X=d|65536;this.ca=65536;this.A-=0>this.ha?this.B.jk:this.B.ik;this.Z|=2;return a}],$b=[function(a){this.ka=a;a=(this.ia=a+1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},function(a){this.ka= +a;a=(this.ia=a-1)&255;this.X=a|(this.X&this.ca?1:0)<<8;this.ca=256;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},L,L,L,L,L,L],bc=[function(a){this.ka=a;a=(this.ia=a+1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},function(a){this.ka=a;a=(this.ia=a-1)&65535;this.X=a|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=0>this.ha?this.B.Cf:this.B.Bf;return a},function(a){K(this,this.va);I(this,a);this.A-=0>this.ha?this.B.bk:this.B.ak;this.Z|=2;return a}, +function(a){if(0>this.ha)return L.call(this,a);K(this,this.ya.Aa);K(this,this.va);gc(this,a,F(this,this.ha+2));this.A-=this.B.Zj;this.Z|=2;return a},function(a){I(this,a);this.A-=0>this.ha?this.B.wk:this.B.vk;this.Z|=2;return a},function(a){if(0>this.ha)return L.call(this,a);gc(this,a,F(this,this.ha+2));this.A-=this.B.tk;this.Z|=2;return a},function(a){var b=a;this.Z&512&&(a=a-2&65535,80286>this.Da&&(b=a));K(this,b);this.A-=0>this.ha?this.B.fc:this.B.Mk;this.Z|=2;return a},Fd],Pd=[kd,md,od,td,vd, +xd,L,zd],Qd=[ld,nd,sd,ud,wd,yd,L,Ad];function Rd(a,b){this.A-=0>this.Fa?0>this.ha?this.B.Ek:this.B.Dk:this.B.Bk;return b}function Sd(){return Rd.call(this,0,this.rb)}function Td(a,b){this.X=this.ia=this.ka=a&b;this.ca=256;this.A-=0>this.Fa?0>this.ha?this.B.Ki:this.B.Gf:this.B.Gf;this.Z|=2;return a}function Ud(a,b){this.X=this.ia=this.ka=a&b;this.ca=65536;this.A-=0>this.Fa?0>this.ha?this.B.Ki:this.B.Gf:this.B.Gf;this.Z|=2;return a} +function Vd(a,b){var c=(b<<16>>16)*(this.da()<<24>>24);this.X=this.ka=this.ia=c;this.ca=256;32767c?(Ic(this),Mc(this)):(Ec(this),Hc(this));this.A-=0>this.ha?21:24;return c&65535}function Wd(a,b){var c=(b<<16>>16)*(this.L()<<16>>16);this.X=this.ka=this.ia=c;this.ca=65536;32767c?(Ic(this),Mc(this)):(Ec(this),Hc(this));this.A-=0>this.ha?21:24;return c&65535}function Xd(a){return a}function Yd(a){if(0>this.ha)return M.call(this),a;this.A-=this.B.xk;return this.ha} +function Zd(a,b){if(0>this.ha)return M.call(this),a;sc(this,F(this,this.ha+2));this.A-=this.B.li;return b}function $d(a,b){if(0>this.ha)return M.call(this),a;xc(this,F(this,this.ha+2));this.A-=this.B.li;return b}function ae(a){if(0>this.ha)return G.call(this),a;var b=a<<16>>16,c=F(this,this.ha)<<16>>16,d=F(this,this.ha+2)<<16>>16;this.A-=this.B.Vj;if(bd)I(this,this.Pg-this.ya.jb),Sc.call(this,5,null,0);this.Z|=2;return a} +function be(a,b){this.A-=10+(0>this.ha?0:1);if((a&3)<(b&3))return a=a&-4|b&3,Kc(this),a;Gc(this);return a}function ce(a,b){this.A-=14+(0>this.ha?0:2);if(0<=this.vb.load(b,!0)&&this.vb.lc>=this.ya.sc&&this.vb.lc>=(b&3))return Kc(this),this.vb.yb&65280;Gc(this);return a}function de(a,b){this.A-=14+(0>this.ha?0:2);if(b&65528&&0<=this.vb.load(b,!0)&&(7168==(this.vb.yb&7168)||this.vb.lc>=this.ya.sc)&&this.vb.lc>=(b&3))return Kc(this),this.vb.gd;Gc(this);return a} +function ee(a,b){if(0>this.ha){switch(this.eg&7){case 0:this.H=this.H&-256|a;break;case 1:this.J=this.J&-256|a;break;case 2:this.K=this.K&-256|a;break;case 3:this.C=this.C&-256|a;break;case 4:this.H=this.H&255|a<<8;break;case 5:this.J=this.J&255|a<<8;break;case 6:this.K=this.K&255|a<<8;break;case 7:this.C=this.C&255|a<<8}this.A-=this.B.Mi}else this.Fa=this.ha,this.R(a),this.A-=this.B.Li;return b} +function fe(a,b){if(0>this.ha){switch(this.eg&7){case 0:this.H=a;break;case 1:this.J=a;break;case 2:this.K=a;break;case 3:this.C=a;break;case 4:this.Y=a;break;case 5:this.I=a;break;case 6:this.G=a;break;case 7:this.F=a}this.A-=this.B.Mi}else this.Fa=this.ha,this.S(a),this.A-=this.B.Li;return b}function Sc(a,b,c){qc(this,a)&&(K(this,jc(this)),this.Ga&=this.tc.Cg,K(this,this.ya.Aa),K(this,this.va),null!=b&&K(this,b),gc(this,this.tc.Pi,this.tc.Aa),this.A-=this.B.pk+c)} +function ge(a){a|=this.Kc&1;this.Kc=this.Kc&65520|a&-65521;this.Kc&1&&ic(this,!0)}function Md(){I(this,this.Pg-this.ya.jb);Sc.call(this,0,null,2)}function Cb(a,b){80186<=this.Da&&(I(this,this.Pg-this.ya.jb),Sc.call(this,a,b,0))}function G(){Cb.call(this,6);kb(this)}function M(){I(this,this.Pg-this.ya.jb);var a=Ua(this.qa,this.Ha),b=this.va,c=this.ya.Aa;Ka(this,"Undefined opcode 0x"+p(a,2)+" at "+(void 0!==c?p(c,4)+":"+p(b,4):p(b)));kb(this)} +function he(a){a=a.call(this,this.H&255,this.H&255);this.H=this.H&-256|a}function ie(a){a=a.call(this,this.H&255,this.J&255);this.H=this.H&-256|a}function je(a){a=a.call(this,this.H&255,this.K&255);this.H=this.H&-256|a}function ke(a){a=a.call(this,this.H&255,this.C&255);this.H=this.H&-256|a}function le(a){a=a.call(this,this.H&255,this.H>>8);this.H=this.H&-256|a}function me(a){a=a.call(this,this.H&255,this.J>>8);this.H=this.H&-256|a} +function ne(a){a=a.call(this,this.H&255,this.K>>8);this.H=this.H&-256|a}function oe(a){a=a.call(this,this.H&255,this.C>>8);this.H=this.H&-256|a}function pe(a){a=a.call(this,this.J&255,this.H&255);this.J=this.J&-256|a}function qe(a){a=a.call(this,this.J&255,this.J&255);this.J=this.J&-256|a}function re(a){a=a.call(this,this.J&255,this.K&255);this.J=this.J&-256|a}function se(a){a=a.call(this,this.J&255,this.C&255);this.J=this.J&-256|a} +function te(a){a=a.call(this,this.J&255,this.H>>8);this.J=this.J&-256|a}function ue(a){a=a.call(this,this.J&255,this.J>>8);this.J=this.J&-256|a}function ve(a){a=a.call(this,this.J&255,this.K>>8);this.J=this.J&-256|a}function we(a){a=a.call(this,this.J&255,this.C>>8);this.J=this.J&-256|a}function xe(a){a=a.call(this,this.K&255,this.H&255);this.K=this.K&-256|a}function ye(a){a=a.call(this,this.K&255,this.J&255);this.K=this.K&-256|a} +function ze(a){a=a.call(this,this.K&255,this.K&255);this.K=this.K&-256|a}function Ae(a){a=a.call(this,this.K&255,this.C&255);this.K=this.K&-256|a}function Be(a){a=a.call(this,this.K&255,this.H>>8);this.K=this.K&-256|a}function Ce(a){a=a.call(this,this.K&255,this.J>>8);this.K=this.K&-256|a}function De(a){a=a.call(this,this.K&255,this.K>>8);this.K=this.K&-256|a}function Ee(a){a=a.call(this,this.K&255,this.C>>8);this.K=this.K&-256|a} +function Fe(a){a=a.call(this,this.C&255,this.H&255);this.C=this.C&-256|a}function Ge(a){a=a.call(this,this.C&255,this.J&255);this.C=this.C&-256|a}function He(a){a=a.call(this,this.C&255,this.K&255);this.C=this.C&-256|a}function Ie(a){a=a.call(this,this.C&255,this.C&255);this.C=this.C&-256|a}function Je(a){a=a.call(this,this.C&255,this.H>>8);this.C=this.C&-256|a}function Ke(a){a=a.call(this,this.C&255,this.J>>8);this.C=this.C&-256|a} +function Le(a){a=a.call(this,this.C&255,this.K>>8);this.C=this.C&-256|a}function Me(a){a=a.call(this,this.C&255,this.C>>8);this.C=this.C&-256|a}function Ne(a){a=a.call(this,this.H>>8,this.H&255);this.H=this.H&255|a<<8}function Oe(a){a=a.call(this,this.H>>8,this.J&255);this.H=this.H&255|a<<8}function Pe(a){a=a.call(this,this.H>>8,this.K&255);this.H=this.H&255|a<<8}function Qe(a){a=a.call(this,this.H>>8,this.C&255);this.H=this.H&255|a<<8} +function Re(a){a=a.call(this,this.H>>8,this.H>>8);this.H=this.H&255|a<<8}function Se(a){a=a.call(this,this.H>>8,this.J>>8);this.H=this.H&255|a<<8}function Te(a){a=a.call(this,this.H>>8,this.K>>8);this.H=this.H&255|a<<8}function Ue(a){a=a.call(this,this.H>>8,this.C>>8);this.H=this.H&255|a<<8}function Ve(a){a=a.call(this,this.J>>8,this.H&255);this.J=this.J&255|a<<8}function We(a){a=a.call(this,this.J>>8,this.J&255);this.J=this.J&255|a<<8} +function Xe(a){a=a.call(this,this.J>>8,this.K&255);this.J=this.J&255|a<<8}function Ye(a){a=a.call(this,this.J>>8,this.C&255);this.J=this.J&255|a<<8}function Ze(a){a=a.call(this,this.J>>8,this.H>>8);this.J=this.J&255|a<<8}function $e(a){a=a.call(this,this.J>>8,this.J>>8);this.J=this.J&255|a<<8}function af(a){a=a.call(this,this.J>>8,this.K>>8);this.J=this.J&255|a<<8}function bf(a){a=a.call(this,this.J>>8,this.C>>8);this.J=this.J&255|a<<8} +function cf(a){a=a.call(this,this.K>>8,this.H&255);this.K=this.K&255|a<<8}function df(a){a=a.call(this,this.K>>8,this.J&255);this.K=this.K&255|a<<8}function ef(a){a=a.call(this,this.K>>8,this.K&255);this.K=this.K&255|a<<8}function ff(a){a=a.call(this,this.K>>8,this.C&255);this.K=this.K&255|a<<8}function gf(a){a=a.call(this,this.K>>8,this.H>>8);this.K=this.K&255|a<<8}function hf(a){a=a.call(this,this.K>>8,this.J>>8);this.K=this.K&255|a<<8} +function jf(a){a=a.call(this,this.K>>8,this.K>>8);this.K=this.K&255|a<<8}function kf(a){a=a.call(this,this.K>>8,this.C>>8);this.K=this.K&255|a<<8}function lf(a){a=a.call(this,this.C>>8,this.H&255);this.C=this.C&255|a<<8}function mf(a){a=a.call(this,this.C>>8,this.J&255);this.C=this.C&255|a<<8}function nf(a){a=a.call(this,this.C>>8,this.K&255);this.C=this.C&255|a<<8}function of(a){a=a.call(this,this.C>>8,this.C&255);this.C=this.C&255|a<<8} +function pf(a){a=a.call(this,this.C>>8,this.H>>8);this.C=this.C&255|a<<8}function qf(a){a=a.call(this,this.C>>8,this.J>>8);this.C=this.C&255|a<<8}function rf(a){a=a.call(this,this.C>>8,this.K>>8);this.C=this.C&255|a<<8}function sf(a){a=a.call(this,this.C>>8,this.C>>8);this.C=this.C&255|a<<8}function tf(a){this.H=a.call(this,this.H,this.H)}function uf(a){this.H=a.call(this,this.H,this.J)}function vf(a){this.H=a.call(this,this.H,this.K)}function wf(a){this.H=a.call(this,this.H,this.C)} +function xf(a){this.H=a.call(this,this.H,this.Y)}function yf(a){this.H=a.call(this,this.H,this.I)}function zf(a){this.H=a.call(this,this.H,this.G)}function Af(a){this.H=a.call(this,this.H,this.F)}function Bf(a){this.J=a.call(this,this.J,this.H)}function Cf(a){this.J=a.call(this,this.J,this.J)}function Df(a){this.J=a.call(this,this.J,this.K)}function Ef(a){this.J=a.call(this,this.J,this.C)}function Ff(a){this.J=a.call(this,this.J,this.Y)}function Gf(a){this.J=a.call(this,this.J,this.I)} +function Hf(a){this.J=a.call(this,this.J,this.G)}function If(a){this.J=a.call(this,this.J,this.F)}function Jf(a){this.K=a.call(this,this.K,this.H)}function Kf(a){this.K=a.call(this,this.K,this.J)}function Lf(a){this.K=a.call(this,this.K,this.K)}function Mf(a){this.K=a.call(this,this.K,this.C)}function Nf(a){this.K=a.call(this,this.K,this.Y)}function Of(a){this.K=a.call(this,this.K,this.I)}function Pf(a){this.K=a.call(this,this.K,this.G)}function Qf(a){this.K=a.call(this,this.K,this.F)} +function Rf(a){this.C=a.call(this,this.C,this.H)}function Sf(a){this.C=a.call(this,this.C,this.J)}function Tf(a){this.C=a.call(this,this.C,this.K)}function Uf(a){this.C=a.call(this,this.C,this.C)}function Vf(a){this.C=a.call(this,this.C,this.Y)}function Wf(a){this.C=a.call(this,this.C,this.I)}function Xf(a){this.C=a.call(this,this.C,this.G)}function Yf(a){this.C=a.call(this,this.C,this.F)}function Zf(a){this.Y=a.call(this,this.Y,this.H)}function $f(a){this.Y=a.call(this,this.Y,this.J)} +function ag(a){this.Y=a.call(this,this.Y,this.K)}function bg(a){this.Y=a.call(this,this.Y,this.C)}function cg(a){this.Y=a.call(this,this.Y,this.Y)}function dg(a){this.Y=a.call(this,this.Y,this.I)}function eg(a){this.Y=a.call(this,this.Y,this.G)}function fg(a){this.Y=a.call(this,this.Y,this.F)}function gg(a){this.I=a.call(this,this.I,this.H)}function hg(a){this.I=a.call(this,this.I,this.J)}function ig(a){this.I=a.call(this,this.I,this.K)}function jg(a){this.I=a.call(this,this.I,this.C)} +function kg(a){this.I=a.call(this,this.I,this.Y)}function lg(a){this.I=a.call(this,this.I,this.I)}function mg(a){this.I=a.call(this,this.I,this.G)}function ng(a){this.I=a.call(this,this.I,this.F)}function og(a){this.G=a.call(this,this.G,this.H)}function pg(a){this.G=a.call(this,this.G,this.J)}function qg(a){this.G=a.call(this,this.G,this.K)}function rg(a){this.G=a.call(this,this.G,this.C)}function sg(a){this.G=a.call(this,this.G,this.Y)}function tg(a){this.G=a.call(this,this.G,this.I)} +function ug(a){this.G=a.call(this,this.G,this.G)}function vg(a){this.G=a.call(this,this.G,this.F)}function wg(a){this.F=a.call(this,this.F,this.H)}function xg(a){this.F=a.call(this,this.F,this.J)}function yg(a){this.F=a.call(this,this.F,this.K)}function zg(a){this.F=a.call(this,this.F,this.C)}function Ag(a){this.F=a.call(this,this.F,this.Y)}function Bg(a){this.F=a.call(this,this.F,this.I)}function Cg(a){this.F=a.call(this,this.F,this.G)}function Dg(a){this.F=a.call(this,this.F,this.F)} +var Eg=[function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.H&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.H&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.H&255);this.R(a);this.A-=this.B.aa}, function(a){a=a.call(this,this.O(this.D,this.F),this.H&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.L()),this.H&255);this.R(a);this.A-=this.B.ra},function(a){a=a.call(this,this.O(this.D,this.C),this.H&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.J&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.J&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N, this.I+this.G&65535),this.J&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.J&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.J&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.F),this.J&255);this.R(a);this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.L()),this.J&255);this.R(a);this.A-=this.B.ra},function(a){a=a.call(this,this.O(this.D,this.C),this.J&255);this.R(a); this.A-=this.B.aa},function(a){a=a.call(this,this.O(this.D,this.C+this.G&65535),this.K&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.C+this.F&65535),this.K&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.G&65535),this.K&255);this.R(a);this.A-=this.B.ga},function(a){a=a.call(this,this.O(this.N,this.I+this.F&65535),this.K&255);this.R(a);this.A-=this.B.fa},function(a){a=a.call(this,this.O(this.D,this.G),this.K&255);this.R(a);this.A-= @@ -142,8 +142,8 @@ this.C+this.G+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.V},function(a) a.call(this,this.O(this.D,this.F+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.J>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.C+this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.W}, function(a){a=a.call(this,this.O(this.N,this.I+this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.N,this.I+this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.K>>8);this.R(a); this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.K>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.C+this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.N,this.I+this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.W},function(a){a=a.call(this,this.O(this.N,this.I+this.F+ -this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},ge,oe,we,Ee,Me,Ue,bf,kf,he,pe,xe,Fe,Ne, -Ve,cf,lf,ie,qe,ye,Ge,Oe,We,df,mf,je,re,ze,He,Pe,Xe,ef,nf,ke,se,Ae,Ie,Qe,Ye,ff,of,le,te,Be,Je,Re,Ze,gf,pf,me,ue,Ce,Ke,Se,$e,hf,qf,ne,ve,De,Le,Te,af,jf,rf],Eg=[function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.H);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F& +this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.V},function(a){a=a.call(this,this.O(this.D,this.G+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.F+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.N,this.I+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},function(a){a=a.call(this,this.O(this.D,this.C+this.L()&65535),this.C>>8);this.R(a);this.A-=this.B.Q},he,pe,xe,Fe,Ne,Ve,cf,lf,ie,qe,ye,Ge,Oe, +We,df,mf,je,re,ze,He,Pe,Xe,ef,nf,ke,se,Ae,Ie,Qe,Ye,ff,of,le,te,Be,Je,Re,Ze,gf,pf,me,ue,Ce,Ke,Se,$e,hf,qf,ne,ve,De,Le,Te,af,jf,rf,oe,we,Ee,Me,Ue,bf,kf,sf],O=[function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.H);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.H);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F& 65535),this.H);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.G),this.H);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.F),this.H);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.L()),this.H);this.S(a);this.A-=this.B.ra},function(a){a=a.call(this,this.P(this.D,this.C),this.H);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.J);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this, this.P(this.D,this.C+this.F&65535),this.J);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.J);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F&65535),this.J);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.G),this.J);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.F),this.J);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.L()),this.J);this.S(a); this.A-=this.B.ra},function(a){a=a.call(this,this.P(this.D,this.C),this.J);this.S(a);this.A-=this.B.aa},function(a){a=a.call(this,this.P(this.D,this.C+this.G&65535),this.K);this.S(a);this.A-=this.B.fa},function(a){a=a.call(this,this.P(this.D,this.C+this.F&65535),this.K);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.G&65535),this.K);this.S(a);this.A-=this.B.ga},function(a){a=a.call(this,this.P(this.N,this.I+this.F&65535),this.K);this.S(a);this.A-=this.B.fa},function(a){a= @@ -180,8 +180,8 @@ function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.I);th this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.I);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.C+this.F+this.L()&65535),this.G);this.S(a); this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.F+this.L()&65535),this.G);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.G);this.S(a); this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.G);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.C+this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.W},function(a){a=a.call(this,this.P(this.N,this.I+this.F+this.L()&65535), -this.F);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},sf,Af,If,Qf,Yf,fg,ng,vg,tf,Bf,Jf,Rf,Zf,gg,og,wg,uf,Cf,Kf,Sf,$f,hg,pg, -xg,vf,Df,Lf,Tf,ag,ig,qg,yg,wf,Ef,Mf,Uf,bg,jg,rg,zg,xf,Ff,Nf,Vf,cg,kg,sg,Ag,yf,Gf,Of,Wf,dg,lg,tg,Bg,zf,Hf,Pf,Xf,eg,mg,ug,Cg],Fg=[function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255,this.T(this.N,this.I+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255, +this.F);this.S(a);this.A-=this.B.V},function(a){a=a.call(this,this.P(this.D,this.G+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.F+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.N,this.I+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},function(a){a=a.call(this,this.P(this.D,this.C+this.L()&65535),this.F);this.S(a);this.A-=this.B.Q},tf,Bf,Jf,Rf,Zf,gg,og,wg,uf,Cf,Kf,Sf,$f,hg,pg,xg,vf,Df,Lf,Tf,ag,ig,qg, +yg,wf,Ef,Mf,Uf,bg,jg,rg,zg,xf,Ff,Nf,Vf,cg,kg,sg,Ag,yf,Gf,Of,Wf,dg,lg,tg,Bg,zf,Hf,Pf,Xf,eg,mg,ug,Cg,Af,If,Qf,Yf,fg,ng,vg,Dg],Fg=[function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.C+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255,this.T(this.N,this.I+this.G&65535));this.H=this.H&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.H&255, this.T(this.N,this.I+this.F&65535));this.H=this.H&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.G));this.H=this.H&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.F));this.H=this.H&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.H&255,this.T(this.D,this.L()));this.H=this.H&-256|a;this.A-=this.B.ra},function(a){a=a.call(this,this.H&255,this.T(this.D,this.C));this.H=this.H&-256|a;this.A-=this.B.aa},function(a){a=a.call(this, this.J&255,this.T(this.D,this.C+this.G&65535));this.J=this.J&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.C+this.F&65535));this.J=this.J&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.J&255,this.T(this.N,this.I+this.G&65535));this.J=this.J&-256|a;this.A-=this.B.ga},function(a){a=a.call(this,this.J&255,this.T(this.N,this.I+this.F&65535));this.J=this.J&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.G));this.J=this.J&-256| a;this.A-=this.B.aa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.F));this.J=this.J&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.J&255,this.T(this.D,this.L()));this.J=this.J&-256|a;this.A-=this.B.ra},function(a){a=a.call(this,this.J&255,this.T(this.D,this.C));this.J=this.J&-256|a;this.A-=this.B.aa},function(a){a=a.call(this,this.K&255,this.T(this.D,this.C+this.G&65535));this.K=this.K&-256|a;this.A-=this.B.fa},function(a){a=a.call(this,this.K&255,this.T(this.D,this.C+this.F& @@ -224,8 +224,8 @@ this.I+this.F+this.L()&65535));this.J=this.J&255|a<<8;this.A-=this.B.V},function 255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.C+this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.V},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.C+this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.K>>8,this.T(this.N,this.I+this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.K>>8,this.T(this.N,this.I+this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-= this.B.V},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.G+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.F+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.N,this.I+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.K>>8,this.T(this.D,this.C+this.L()&65535));this.K=this.K&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>> 8,this.T(this.D,this.C+this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.V},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.C+this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.W},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.V},function(a){a=a.call(this,this.C>>8,this.T(this.D, -this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.C+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},ge,he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke, -Le,Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf],N=[function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.H=a.call(this, +this.G+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.F+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.N,this.I+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},function(a){a=a.call(this,this.C>>8,this.T(this.D,this.C+this.L()&65535));this.C=this.C&255|a<<8;this.A-=this.B.Q},he,ie,je,ke,le,me,ne,oe,pe,qe,re,se,te,ue,ve,we,xe,ye,ze,Ae,Be,Ce,De,Ee,Fe,Ge,He,Ie,Je,Ke,Le, +Me,Ne,Oe,Pe,Qe,Re,Se,Te,Ue,Ve,We,Xe,Ye,Ze,$e,af,bf,cf,df,ef,ff,gf,hf,jf,kf,lf,mf,nf,of,pf,qf,rf,sf],P=[function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.H=a.call(this,this.H,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.H=a.call(this, this.H,this.U(this.D,this.G));this.A-=this.B.aa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.F));this.A-=this.B.aa},function(a){this.H=a.call(this,this.H,this.U(this.D,this.L()));this.A-=this.B.ra},function(a){this.H=a.call(this,this.H,this.U(this.D,this.C));this.A-=this.B.aa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.J=a.call(this, this.J,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.J=a.call(this,this.J,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.G));this.A-=this.B.aa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.F));this.A-=this.B.aa},function(a){this.J=a.call(this,this.J,this.U(this.D,this.L()));this.A-=this.B.ra},function(a){this.J=a.call(this,this.J,this.U(this.D,this.C));this.A-=this.B.aa},function(a){this.K=a.call(this, this.K,this.U(this.D,this.C+this.G&65535));this.A-=this.B.fa},function(a){this.K=a.call(this,this.K,this.U(this.D,this.C+this.F&65535));this.A-=this.B.ga},function(a){this.K=a.call(this,this.K,this.U(this.N,this.I+this.G&65535));this.A-=this.B.ga},function(a){this.K=a.call(this,this.K,this.U(this.N,this.I+this.F&65535));this.A-=this.B.fa},function(a){this.K=a.call(this,this.K,this.U(this.D,this.G));this.A-=this.B.aa},function(a){this.K=a.call(this,this.K,this.U(this.D,this.F));this.A-=this.B.aa}, @@ -260,8 +260,8 @@ this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.cal this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.I=a.call(this,this.I,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.U(this.D,this.C+this.G+this.L()&65535));this.A-=this.B.V},function(a){this.G=a.call(this,this.G,this.U(this.D,this.C+this.F+this.L()&65535)); this.A-=this.B.W},function(a){this.G=a.call(this,this.G,this.U(this.N,this.I+this.G+this.L()&65535));this.A-=this.B.W},function(a){this.G=a.call(this,this.G,this.U(this.N,this.I+this.F+this.L()&65535));this.A-=this.B.V},function(a){this.G=a.call(this,this.G,this.U(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.G=a.call(this,this.G,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q}, function(a){this.G=a.call(this,this.G,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.G+this.L()&65535));this.A-=this.B.V},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.F+this.L()&65535));this.A-=this.B.W},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.G+this.L()&65535));this.A-=this.B.W},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.F+this.L()&65535));this.A-=this.B.V},function(a){this.F= -a.call(this,this.F,this.U(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},sf,tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg, -ng,og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg],Gg=[function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.fa}, +a.call(this,this.F,this.U(this.D,this.G+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.F+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.N,this.I+this.L()&65535));this.A-=this.B.Q},function(a){this.F=a.call(this,this.F,this.U(this.D,this.C+this.L()&65535));this.A-=this.B.Q},tf,uf,vf,wf,xf,yf,zf,Af,Bf,Cf,Df,Ef,Ff,Gf,Hf,If,Jf,Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng, +og,pg,qg,rg,sg,tg,ug,vg,wg,xg,yg,zg,Ag,Bg,Cg,Dg],Gg=[function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[0].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[0].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.fa}, function(a,b){var c=a[0].call(this,this.O(this.D,this.G),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[0].call(this,this.O(this.D,this.F),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[0].call(this,this.O(this.D,this.L()),b.call(this));this.R(c);this.A-=this.B.ra},function(a,b){var c=a[0].call(this,this.O(this.D,this.C),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-= this.B.fa},function(a,b){var c=a[1].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[1].call(this,this.O(this.N,this.I+this.G&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[1].call(this,this.O(this.N,this.I+this.F&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[1].call(this,this.O(this.D,this.G),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.O(this.D,this.F), b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[1].call(this,this.O(this.D,this.L()),b.call(this));this.R(c);this.A-=this.B.ra},function(a,b){var c=a[1].call(this,this.O(this.D,this.C),b.call(this));this.R(c);this.A-=this.B.aa},function(a,b){var c=a[2].call(this,this.O(this.D,this.C+this.G&65535),b.call(this));this.R(c);this.A-=this.B.fa},function(a,b){var c=a[2].call(this,this.O(this.D,this.C+this.F&65535),b.call(this));this.R(c);this.A-=this.B.ga},function(a,b){var c=a[2].call(this, @@ -365,278 +365,276 @@ b.call(this))},function(a,b){this.K=a[3].call(this,this.K,b.call(this))},functio this.K,b.call(this))},function(a,b){this.C=a[4].call(this,this.C,b.call(this))},function(a,b){this.Y=a[4].call(this,this.Y,b.call(this))},function(a,b){this.I=a[4].call(this,this.I,b.call(this))},function(a,b){this.G=a[4].call(this,this.G,b.call(this))},function(a,b){this.F=a[4].call(this,this.F,b.call(this))},function(a,b){this.H=a[5].call(this,this.H,b.call(this))},function(a,b){this.J=a[5].call(this,this.J,b.call(this))},function(a,b){this.K=a[5].call(this,this.K,b.call(this))},function(a,b){this.C= a[5].call(this,this.C,b.call(this))},function(a,b){this.Y=a[5].call(this,this.Y,b.call(this))},function(a,b){this.I=a[5].call(this,this.I,b.call(this))},function(a,b){this.G=a[5].call(this,this.G,b.call(this))},function(a,b){this.F=a[5].call(this,this.F,b.call(this))},function(a,b){this.H=a[6].call(this,this.H,b.call(this))},function(a,b){this.J=a[6].call(this,this.J,b.call(this))},function(a,b){this.K=a[6].call(this,this.K,b.call(this))},function(a,b){this.C=a[6].call(this,this.C,b.call(this))}, function(a,b){this.Z|=512;this.Y=a[6].call(this,this.Y,b.call(this))},function(a,b){this.I=a[6].call(this,this.I,b.call(this))},function(a,b){this.G=a[6].call(this,this.G,b.call(this))},function(a,b){this.F=a[6].call(this,this.F,b.call(this))},function(a,b){this.H=a[7].call(this,this.H,b.call(this))},function(a,b){this.J=a[7].call(this,this.J,b.call(this))},function(a,b){this.K=a[7].call(this,this.K,b.call(this))},function(a,b){this.C=a[7].call(this,this.C,b.call(this))},function(a,b){this.Y=a[7].call(this, -this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Jg=[function(){var a=this.da();16>(a&56)&&(this.Z|=1);Hg[a].call(this,lc,Dd)},function(){var a=this.da();a&16||(this.Z|=1);Hg[a].call(this,Ig,Dd)},function(){N[this.da()].call(this,be)},function(){N[this.da()].call(this,ce)},M,function(){this.ya.sc?Cb.call(this,13,0):(fe.call(this,F(this,2054)),this.F=F(this, +this.Y,b.call(this))},function(a,b){this.I=a[7].call(this,this.I,b.call(this))},function(a,b){this.G=a[7].call(this,this.G,b.call(this))},function(a,b){this.F=a[7].call(this,this.F,b.call(this))}],Jg=[function(){var a=this.da();16>(a&56)&&(this.Z|=1);Hg[a].call(this,mc,Ed)},function(){var a=this.da();a&16||(this.Z|=1);Hg[a].call(this,Ig,Ed)},function(){P[this.da()].call(this,ce)},function(){P[this.da()].call(this,de)},M,function(){this.ya.sc?Cb.call(this,13,0):(ge.call(this,F(this,2054)),this.F=F(this, 2086),this.G=F(this,2088),this.I=F(this,2090),this.Y=F(this,2092),this.C=F(this,2094),this.K=F(this,2096),this.J=F(this,2098),this.H=F(this,2100),Fb(this.hb,F(this,2084),2102),Fb(this.ya,F(this,2082),2108),Fb(this.Tb,F(this,2080),2114),Fb(this.Zb,F(this,2078),2120),hc(this,F(this,2072)),I(this,F(this,2074)),this.Bc=F(this,2126)|F(this,2128)<<16,this.xe=this.Bc+F(this,2130),Fb(this.oe,F(this,2076),2132),this.Cc=F(this,2138)|F(this,2140)<<16,this.Sd=this.Cc+F(this,2142),Fb(this.Pf,F(this,2070),2144), this.A-=195)},M,M,M,M,M,G,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M, -M,M,M,M,M,M],mc=[function(){this.A-=2+(0>this.ha?0:1);return this.oe.Aa},function(){this.A-=2+(0>this.ha?0:1);return this.Pf.Aa},function(a){this.Z|=2;this.oe.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.Pf.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.vb.load(a,!0)&&2048!=(this.vb.yb&2560)&&(this.vb.lc>=this.ya.sc&&this.vb.lc>=(a&3)||7168==(this.vb.yb&7168)))return Jc(this),a;Fc(this);return a},function(a){this.Z|= -2;this.A-=14+(0>this.ha?0:2);if(0<=this.vb.load(a,!0)&&512==(this.vb.yb&2560)&&this.vb.lc>=this.ya.sc&&this.vb.lc>=(a&3))return Jc(this),a;Fc(this);return a},L,L],nc=[ac,ac,ac,ac,ac,ac,L,L],lc=nc,Ig=[function(a){0>this.ha?G.call(this):(a=this.xe-this.Bc,Oc(this,this.ha+2,this.Bc),Oc(this,this.ha+4,65280|this.Bc>>16),this.A-=11);return a},function(a){0>this.ha?G.call(this):(a=this.Sd-this.Cc,Oc(this,this.ha+2,this.Cc),Oc(this,this.ha+4,65280|this.Cc>>16),this.A-=12);return a},function(a){0>this.ha? -G.call(this):(this.Bc=F(this,this.ha+2)|Mc(this,this.ha+4)<<16,this.xe=this.Bc+a,this.Z|=2,this.A-=11);return a},function(a){0>this.ha?G.call(this):(this.Cc=F(this,this.ha+2)|Mc(this,this.ha+4)<<16,this.Sd=this.Cc+a,this.Z|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.Kc},L,function(a){fe.call(this,a);this.A-=0>this.ha?3:6;this.Z|=2;return a},L];function cc(){Jg[this.da()].call(this)}function ec(){K(this,this.Y);this.A-=this.B.fc} -function Kb(){var a=this.Y;K(this,this.H);K(this,this.J);K(this,this.K);K(this,this.C);K(this,a);K(this,this.I);K(this,this.G);K(this,this.F);this.A-=this.B.Kk}function Lb(){this.F=this.Ea();this.G=this.Ea();this.I=this.Ea();this.Y+=2;this.C=this.Ea();this.K=this.Ea();this.J=this.Ea();this.H=this.Ea();this.A-=this.B.Ik}function Mb(){N[this.da()].call(this,$d)}function dc(){Eg[this.da()].call(this,ae)}function Nb(){K(this,this.L());this.A-=this.B.fc}function Ob(){N[this.da()].call(this,Vd)} -function Pb(){K(this,this.da());this.A-=this.B.fc}function Qb(){N[this.da()].call(this,Ud)}function Rb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=$a(this.qa,this.K,this.Ha-b-1);Nc(this,this.hb.bc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}} -function Sb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=this.Ha-b-1,d=$a(this.qa,this.K,d)|$a(this.qa,this.K,d)<<8;Oc(this,this.hb.bc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}} -function Tb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=Mc(this,this.Zb.$c(this.G,0));this.G=this.G+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;bb(this.qa,this.K,d,this.Ha-b-1);a&&(J(this,-2),this.Z|=256)}} -function Ub(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=F(this,this.Zb.$c(this.G,1));this.G=this.G+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ha-b-1;bb(this.qa,this.K,d&255,b);bb(this.qa,this.K,d>>8,b);a&&(J(this,-2),this.Z|=256)}}function Kg(){var a=this.M();Cc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Lg(){var a=this.M();Cc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)} -function Mg(){var a=this.M();xc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Ng(){var a=this.M();xc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Og(){var a=this.M();Ac(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Pg(){var a=this.M();Ac(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Qg(){var a=this.M();xc(this)||Ac(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb} -function Rg(){var a=this.M();xc(this)||Ac(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Sg(){var a=this.M();Bc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Tg(){var a=this.M();Bc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Ug(){var a=this.M();yc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Vg(){var a=this.M();yc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)} -function Wg(){var a=this.M();!Bc(this)!=!Cc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Xg(){var a=this.M();!Bc(this)==!Cc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Yg(){var a=this.M();Ac(this)||!Bc(this)!=!Cc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Zg(){var a=this.M();Ac(this)||!Bc(this)!=!Cc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)} -function $g(){Gg[this.da()].call(this,Fd,this.da);this.A-=0>this.Fa?1:this.B.Lg}function Vb(){Gg[this.da()].call(this,Od,Cd)}function Wb(){Hg[this.da()].call(this,Pd,Cd)}function ah(){var a=this.L();I(this,this.Ea());this.Y=this.Y+a&65535;this.A-=this.B.Pk}function bh(){I(this,this.Ea());this.A-=this.B.Mk} -function Xb(){var a=this.L(),b=this.da()&31;this.A-=11;K(this,this.I);var c=this.Y;if(0>8,c,d=zc(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Ic(this):Ec(this);this.A-=this.B.ie},function(){Dg[this.da()].call(this,$c)},function(){Eg[this.da()].call(this,hd)},function(){Fg[this.da()].call(this,$c)},function(){N[this.da()].call(this,hd)},function(){this.H=this.H&-256|$c.call(this,this.H&255,this.da());this.A--},function(){this.H=hd.call(this,this.H,this.L());this.A--}, -function(){this.Z|=20;this.D=this.N=this.Zb;this.A-=this.B.Hd},function(){var a=this.H&255,b=this.H>>8,c,d=zc(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Ic(this):Ec(this);this.A-=this.B.ie},function(){this.ka=this.H;this.H=(this.ia=this.H+1)&65535;this.X=this.H|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.J;this.J=(this.ia=this.J+1)&65535;this.X=this.J|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-= +M,M,M,M,M,M],nc=[function(){this.A-=2+(0>this.ha?0:1);return this.oe.Aa},function(){this.A-=2+(0>this.ha?0:1);return this.Pf.Aa},function(a){this.Z|=2;this.oe.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.Pf.load(a);this.A-=17+(0>this.ha?0:2);return a},function(a){this.Z|=2;this.A-=14+(0>this.ha?0:2);if(0<=this.vb.load(a,!0)&&2048!=(this.vb.yb&2560)&&(this.vb.lc>=this.ya.sc&&this.vb.lc>=(a&3)||7168==(this.vb.yb&7168)))return Kc(this),a;Gc(this);return a},function(a){this.Z|= +2;this.A-=14+(0>this.ha?0:2);if(0<=this.vb.load(a,!0)&&512==(this.vb.yb&2560)&&this.vb.lc>=this.ya.sc&&this.vb.lc>=(a&3))return Kc(this),a;Gc(this);return a},L,L],oc=[ac,ac,ac,ac,ac,ac,L,L],mc=oc,Ig=[function(a){0>this.ha?G.call(this):(a=this.xe-this.Bc,Pc(this,this.ha+2,this.Bc),Pc(this,this.ha+4,65280|this.Bc>>16),this.A-=11);return a},function(a){0>this.ha?G.call(this):(a=this.Sd-this.Cc,Pc(this,this.ha+2,this.Cc),Pc(this,this.ha+4,65280|this.Cc>>16),this.A-=12);return a},function(a){0>this.ha? +G.call(this):(this.Bc=F(this,this.ha+2)|Nc(this,this.ha+4)<<16,this.xe=this.Bc+a,this.Z|=2,this.A-=11);return a},function(a){0>this.ha?G.call(this):(this.Cc=F(this,this.ha+2)|Nc(this,this.ha+4)<<16,this.Sd=this.Cc+a,this.Z|=2,this.A-=12);return a},function(){this.A-=2+(0>this.ha?0:1);return this.Kc},L,function(a){ge.call(this,a);this.A-=0>this.ha?3:6;this.Z|=2;return a},L];function cc(){Jg[this.da()].call(this)}function ec(){K(this,this.Y);this.A-=this.B.fc} +function Kb(){var a=this.Y;K(this,this.H);K(this,this.J);K(this,this.K);K(this,this.C);K(this,a);K(this,this.I);K(this,this.G);K(this,this.F);this.A-=this.B.Lk}function Lb(){this.F=this.Ea();this.G=this.Ea();this.I=this.Ea();this.Y+=2;this.C=this.Ea();this.K=this.Ea();this.J=this.Ea();this.H=this.Ea();this.A-=this.B.Jk}function Mb(){P[this.da()].call(this,ae)}function dc(){O[this.da()].call(this,be)}function Nb(){K(this,this.L());this.A-=this.B.fc}function Ob(){P[this.da()].call(this,Wd)} +function Pb(){K(this,this.da());this.A-=this.B.fc}function Qb(){P[this.da()].call(this,Vd)}function Rb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=$a(this.qa,this.K,this.Ha-b-1);Oc(this,this.hb.bc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}} +function Sb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=this.Ha-b-1,d=$a(this.qa,this.K,d)|$a(this.qa,this.K,d)<<8;Pc(this,this.hb.bc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}} +function Tb(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=Nc(this,this.Zb.ad(this.G,0));this.G=this.G+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;bb(this.qa,this.K,d,this.Ha-b-1);a&&(J(this,-2),this.Z|=256)}} +function Ub(){var a=1,b=0,c=5;this.ua&192&&(a=this.J,b=1,this.ua&256&&(c=4));if(a--){var d=F(this,this.Zb.ad(this.G,1));this.G=this.G+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;b=this.Ha-b-1;bb(this.qa,this.K,d&255,b);bb(this.qa,this.K,d>>8,b);a&&(J(this,-2),this.Z|=256)}}function Kg(){var a=this.M();Dc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Lg(){var a=this.M();Dc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)} +function Mg(){var a=this.M();yc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Ng(){var a=this.M();yc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Og(){var a=this.M();Bc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Pg(){var a=this.M();Bc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Qg(){var a=this.M();yc(this)||Bc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb} +function Rg(){var a=this.M();yc(this)||Bc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Sg(){var a=this.M();Cc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Tg(){var a=this.M();Cc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)}function Ug(){var a=this.M();zc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Vg(){var a=this.M();zc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)} +function Wg(){var a=this.M();!Cc(this)!=!Dc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Xg(){var a=this.M();!Cc(this)==!Dc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Yg(){var a=this.M();Bc(this)||!Cc(this)!=!Dc(this)?(I(this,this.va+a),this.A-=this.B.Ib):this.A-=this.B.Jb}function Zg(){var a=this.M();Bc(this)||!Cc(this)!=!Dc(this)?this.A-=this.B.Jb:(I(this,this.va+a),this.A-=this.B.Ib)} +function $g(){Gg[this.da()].call(this,Gd,this.da);this.A-=0>this.Fa?1:this.B.Mg}function Vb(){Gg[this.da()].call(this,Pd,Dd)}function Wb(){Hg[this.da()].call(this,Qd,Dd)}function ah(){var a=this.L();I(this,this.Ea());this.Y=this.Y+a&65535;this.A-=this.B.Qk}function bh(){I(this,this.Ea());this.A-=this.B.Nk} +function Xb(){var a=this.L(),b=this.da()&31;this.A-=11;K(this,this.I);var c=this.Y;if(0>8,c,d=Ac(this);9<(a&15)||d?(a=a+6&15,b=b+1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Jc(this):Fc(this);this.A-=this.B.ie},function(){Eg[this.da()].call(this,ad)},function(){O[this.da()].call(this,id)},function(){Fg[this.da()].call(this,ad)},function(){P[this.da()].call(this,id)},function(){this.H=this.H&-256|ad.call(this,this.H&255,this.da());this.A--},function(){this.H=id.call(this,this.H,this.L());this.A--}, +function(){this.Z|=20;this.D=this.N=this.Zb;this.A-=this.B.Hd},function(){var a=this.H&255,b=this.H>>8,c,d=Ac(this);9<(a&15)||d?(a=a-6&15,b=b-1&255,c=d=!0):c=d=!1;this.H=b<<8|(this.X=a);this.ca=65536;c&&(this.X|=this.ca);d?Jc(this):Fc(this);this.A-=this.B.ie},function(){this.ka=this.H;this.H=(this.ia=this.H+1)&65535;this.X=this.H|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.J;this.J=(this.ia=this.J+1)&65535;this.X=this.J|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-= 2},function(){this.ka=this.K;this.K=(this.ia=this.K+1)&65535;this.X=this.K|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.C;this.C=(this.ia=this.C+1)&65535;this.X=this.C|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.Y;this.Y=(this.ia=this.Y+1)&65535;this.X=this.Y|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.I;this.I=(this.ia=this.I+1)&65535;this.X=this.I|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka= this.G;this.G=(this.ia=this.G+1)&65535;this.X=this.G|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.F;this.F=(this.ia=this.F+1)&65535;this.X=this.F|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.H;this.H=(this.ia=this.H-1)&65535;this.X=this.H|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.J;this.J=(this.ia=this.J-1)&65535;this.X=this.J|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.K;this.K= (this.ia=this.K-1)&65535;this.X=this.K|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.C;this.C=(this.ia=this.C-1)&65535;this.X=this.C|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.Y;this.Y=(this.ia=this.Y-1)&65535;this.X=this.Y|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.I;this.I=(this.ia=this.I-1)&65535;this.X=this.I|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.G;this.G=(this.ia=this.G- 1)&65535;this.X=this.G|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){this.ka=this.F;this.F=(this.ia=this.F-1)&65535;this.X=this.F|(this.X&this.ca?1:0)<<16;this.ca=65536;this.A-=2},function(){K(this,this.H);this.A-=this.B.fc},function(){K(this,this.J);this.A-=this.B.fc},function(){K(this,this.K);this.A-=this.B.fc},function(){K(this,this.C);this.A-=this.B.fc},function(){K(this,this.Y-2&65535);this.A-=this.B.fc},function(){K(this,this.I);this.A-=this.B.fc},function(){K(this,this.G);this.A-= this.B.fc},function(){K(this,this.F);this.A-=this.B.fc},function(){this.H=this.Ea();this.A-=this.B.Yb},function(){this.J=this.Ea();this.A-=this.B.Yb},function(){this.K=this.Ea();this.A-=this.B.Yb},function(){this.C=this.Ea();this.A-=this.B.Yb},function(){this.Y=this.Ea();this.A-=this.B.Yb},function(){this.I=this.Ea();this.A-=this.B.Yb},function(){this.G=this.Ea();this.A-=this.B.Yb},function(){this.F=this.Ea();this.A-=this.B.Yb},Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,Kg,Lg,Mg,Ng,Og,Pg,Qg, -Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,function(){Hg[this.da()].call(this,Gd,this.L);this.A-=0>this.Fa?1:this.B.Lg},$g,function(){Hg[this.da()].call(this,Gd,this.M);this.A-=0>this.Fa?1:this.B.Lg},function(){Dg[this.da()].call(this,Sd)},function(){Eg[this.da()].call(this,Td)},function(){Fg[this.dg=this.da()].call(this,de)},function(){N[this.dg=this.da()].call(this,ee)},function(){this.Z|=1;Dg[this.da()].call(this,Qd)},function(){this.Z|=1;Eg[this.da()].call(this,Qd)},function(){Fg[this.da()].call(this,Qd)}, -function(){N[this.da()].call(this,Qd)},function(){var a=this.da();switch((a&56)>>3){case 0:this.qb=this.hb.Aa;break;case 1:this.qb=this.ya.Aa;break;case 2:this.qb=this.Tb.Aa;break;case 3:this.qb=this.Zb.Aa;break;default:M.call(this);return}this.Z|=1;Eg[a].call(this,Rd)},function(){this.Z|=1;this.D=this.N=this.dl;N[this.da()].call(this,Xd)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Da){G.call(this);return}switch(c){case 1:a= -this.J;break;case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}N[b].call(this,Qd);switch(c){case 0:tc(this,this.H);this.H=a;break;case 1:qc(this,this.J);this.J=a;break;case 2:sc(this,this.K);this.K=a;break;case 3:rc(this,this.C);this.C=a;break;case 4:tc(this,this.Y);this.Y=a;break;case 5:qc(this,this.I);this.I=a;break;case 6:sc(this,this.G);this.G=a;break;case 7:rc(this,this.F),this.F=a}},function(){this.Z|=1;Hg[this.da()].call(this,Hd,this.Ea)},function(){this.A-= -3},function(){var a=this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.Y;this.Y=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;this.A-=2},function(){this.K=this.H&32768?65535:0;this.A-= -this.B.Wj},function(){var a=this.L(),b=this.L();K(this,this.ya.Aa);K(this,this.va);gc(this,a,b);this.A-=this.B.Zj},function(){M.call(this)},function(){K(this,jc(this));this.A-=this.B.fc},function(){hc(this,this.Ea());this.A-=this.B.Yb},function(){var a=this.H>>8;a&1?Hc(this):Dc(this);a&4?yc(this)||(this.ia^=1):yc(this)&&(this.ia^=1);a&16?Ic(this):Ec(this);a&64?Jc(this):Fc(this);a&128?Kc(this):Bc(this)&&(this.ia^=this.ca>>1|this.ca>>2,this.ka^=32896);this.A-=this.B.pb},function(){this.H=this.H&255| -(jc(this)&213)<<8;this.A-=this.B.pb},function(){this.H=this.H&-256|this.T(this.D,this.L());this.A-=this.B.ri},function(){this.H=this.U(this.D,this.L());this.A-=this.B.ri},function(){var a=this.L(),b=this.H;Nc(this,this.D.bc(a,0),b);this.A-=this.B.si},function(){var a=this.L(),b=this.H;Oc(this,this.D.bc(a,1),b);this.A-=this.B.si},function(){var a=1,b=0,c=this.B.ti;this.ua&192&&(a=this.J,b=1,c=this.B.vi,this.ua&256||(this.A-=this.B.ui));if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G);Nc(this, -this.hb.bc(this.F,0),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ti;this.ua&192&&(a=this.J,b=1,c=this.B.vi,this.ua&256||(this.A-=this.B.ui));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G);Oc(this,this.hb.bc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.di;this.ua&192&&(a=this.J,b=1,c=this.B.fi, -this.ua&256||(this.A-=this.B.ei));if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G),f=this.O(this.hb,this.F);$c.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.gb;this.J-=b;a&&Ac(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.di;this.ua&192&&(a=this.J,b=1,c=this.B.fi,this.ua&256||(this.A-=this.B.ei));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G),f=this.P(this.hb,this.F);hd.call(this,e,f);this.G=this.G+d&65535; -this.F=this.F+d&65535;this.A-=c-this.B.gb;this.J-=b;a&&Ac(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){this.X=this.ia=this.ka=this.H&255&this.da();this.ca=256;this.A-=this.B.ie},function(){this.X=this.ia=this.ka=this.H&this.L();this.ca=65536;this.A-=this.B.ie},function(){var a=1,b=0,c=this.B.Ei;this.ua&192&&(a=this.J,b=1,c=this.B.Gi,this.ua&256||(this.A-=this.B.Fi));if(a--){var d=this.H;Nc(this,this.hb.bc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-= -b;a&&(J(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.Ei;this.ua&192&&(a=this.J,b=1,c=this.B.Gi,this.ua&256||(this.A-=this.B.Fi));if(a--){var d=this.H;Oc(this,this.hb.bc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.li;this.ua&192&&(a=this.J,b=1,c=this.B.ni,this.ua&256||(this.A-=this.B.mi));a--&&(this.H=this.H&-256|this.T(this.D,this.G),this.G=this.G+(this.Ga&1024?-1:1)&65535,this.A-=c,this.J-=b,a&& -(J(this,this.ua&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.li;this.ua&192&&(a=this.J,b=1,c=this.B.ni,this.ua&256||(this.A-=this.B.mi));a--&&(this.H=this.U(this.D,this.G),this.G=this.G+(this.Ga&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(J(this,this.ua&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.yi;this.ua&192&&(a=this.J,b=1,c=this.B.Ai,this.ua&256||(this.A-=this.B.zi));a--&&($c.call(this,this.H&255,this.O(this.hb,this.F)),this.F=this.F+(this.Ga&1024?-1:1)&65535,this.A-=c-this.B.gb, -this.J-=b,a&&Ac(this)==(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.yi;this.ua&192&&(a=this.J,b=1,c=this.B.Ai,this.ua&256||(this.A-=this.B.zi));a--&&(hd.call(this,this.H,this.P(this.hb,this.F)),this.F=this.F+(this.Ga&1024?-2:2)&65535,this.A-=c-this.B.gb,this.J-=b,a&&Ac(this)==(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){this.H=this.H&-256|this.da();this.A-=this.B.pb},function(){this.J=this.J&-256|this.da();this.A-=this.B.pb},function(){this.K=this.K&-256|this.da(); -this.A-=this.B.pb},function(){this.C=this.C&-256|this.da();this.A-=this.B.pb},function(){this.H=this.H&255|this.da()<<8;this.A-=this.B.pb},function(){this.J=this.J&255|this.da()<<8;this.A-=this.B.pb},function(){this.K=this.K&255|this.da()<<8;this.A-=this.B.pb},function(){this.C=this.C&255|this.da()<<8;this.A-=this.B.pb},function(){this.H=this.L();this.A-=this.B.pb},function(){this.J=this.L();this.A-=this.B.pb},function(){this.K=this.L();this.A-=this.B.pb},function(){this.C=this.L();this.A-=this.B.pb}, -function(){this.Y=this.L();this.A-=this.B.pb},function(){this.I=this.L();this.A-=this.B.pb},function(){this.G=this.L();this.A-=this.B.pb},function(){this.F=this.L();this.A-=this.B.pb},ah,bh,ah,bh,function(){N[this.da()].call(this,Zd)},function(){N[this.da()].call(this,Yd)},function(){this.Z|=1;Gg[this.da()].call(this,Id,this.da)},function(){this.Z|=1;Hg[this.da()].call(this,Id,this.L)},ch,dh,ch,dh,function(){Rc.call(this,3,null,this.B.pk)},function(){var a=this.da(),b;a:{b=this.nl[a];if(void 0!== -b)for(var c=0;c>8)*a+this.H&255;this.ca=256;this.A-=this.B.Sj},function(){this.H=this.H&-256|(xc(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.T(this.D,this.C+(this.H&255)&65535);this.A-=this.B.Rk},eh,eh,eh,eh,eh,eh,eh,eh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.X&this.ca-1?(I(this,this.va+a),this.A-=this.B.yk):this.A-=this.B.oi},function(){var a=this.M();!(this.J= -this.J-1&65535)||this.X&this.ca-1?this.A-=this.B.qi:(I(this,this.va+a),this.A-=this.B.pi)},function(){var a=this.M();(this.J=this.J-1&65535)?(I(this,this.va+a),this.A-=this.B.xk):this.A-=this.B.oi},function(){var a=this.M();this.J?this.A-=this.B.qi:(I(this,this.va+a),this.A-=this.B.pi)},function(){var a=this.da();this.H=this.H&-256|$a(this.qa,a,this.Ha-2);this.A-=this.B.ii},function(){var a=this.da();this.H=$a(this.qa,a,this.Ha-1)|$a(this.qa,a+1&65535,this.Ha-2)<<8;this.A-=this.B.ii},function(){var a= -this.da();bb(this.qa,a,this.H&255,this.Ha-2);this.A-=this.B.xi},function(){var a=this.da();bb(this.qa,a,this.H&255,this.Ha-2);bb(this.qa,a+1&65535,this.H>>8,this.Ha-2);this.A-=this.B.xi},function(){var a=this.L();K(this,this.va);I(this,this.va+a);this.A-=this.B.Xj},function(){var a=this.L();I(this,this.va+a);this.A-=this.B.ji},function(){gc(this,this.L(),this.L());this.A-=this.B.tk},function(){var a=this.M();I(this,this.va+a);this.A-=this.B.ji},function(){this.H=this.H&-256|$a(this.qa,this.K,this.Ha- -1);this.A-=this.B.hi},function(){this.H=$a(this.qa,this.K,this.Ha-1)|$a(this.qa,this.K+1&65535,this.Ha-1)<<8;this.A-=this.B.hi},function(){bb(this.qa,this.K,this.H&255,this.Ha-1);this.A-=this.B.wi},function(){bb(this.qa,this.K,this.H&255,this.Ha-1);bb(this.qa,this.K+1&65535,this.H>>8,this.Ha-1);this.A-=this.B.wi},fh,fh,function(){this.Z|=132;this.A-=this.B.Hd},function(){this.Z|=68;this.A-=this.B.Hd},function(){this.$a|=4;this.A-=2;this.Ga&512||jb(this)},function(){xc(this)?Dc(this):Hc(this);this.A-= -2},function(){this.qb=-1;Gg[this.da()].call(this,Md,Dd);0<=this.qb&&(this.H=this.qb)},function(){this.qb=-1;Hg[this.da()].call(this,Nd,Dd);0<=this.qb&&(this.H=this.qb,this.K=this.Kf)},function(){this.X&=~this.ca;this.A-=2},function(){this.X|=this.ca;this.A-=2},function(){this.Ga&=-513;this.A-=this.B.Vj},function(){this.Ga|=512;this.Z|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){Gg[this.da()].call(this,$b,Dd)},function(){Hg[this.da()].call(this, -bc,Dd)}]; -function P(a){v.call(this,"ChipSet",a,P);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):gh;this.Kb=0;var b=a.sw1;if(b)this.Kb=hh(b,ih|jh.ll);else{this.od=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.od=b);if(b=this.od.length)this.Kb|=kh.ah,b--,this.Kb|=(b&3)<=lh&&(this.bf=this.cf=2);this.vg=a.scaleTimers||!1; -this.Yn=a.rtcDate;this.Dj=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.rh=new webkitAudioContext);this.reset(!0);this.Ma()}y(v,P);var gh=5150,lh=5170,mh={none:0,tv:1,color:2,mono:3,ega:0},kh={ah:1,ONE:0,So:64,Qo:128,po:192,Se:192,Te:6},ih=12,jh={Ro:16,io:32,ll:48,Se:48,Te:4};h=P.prototype; +Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,function(){Hg[this.da()].call(this,Hd,this.L);this.A-=0>this.Fa?1:this.B.Mg},$g,function(){Hg[this.da()].call(this,Hd,this.M);this.A-=0>this.Fa?1:this.B.Mg},function(){Eg[this.da()].call(this,Td)},function(){O[this.da()].call(this,Ud)},function(){Fg[this.eg=this.da()].call(this,ee)},function(){P[this.eg=this.da()].call(this,fe)},function(){this.Z|=1;Eg[this.da()].call(this,Rd)},function(){this.Z|=1;O[this.da()].call(this,Rd)},function(){Fg[this.da()].call(this,Rd)},function(){P[this.da()].call(this, +Rd)},function(){var a=this.da();switch((a&56)>>3){case 0:this.rb=this.hb.Aa;break;case 1:this.rb=this.ya.Aa;break;case 2:this.rb=this.Tb.Aa;break;case 3:this.rb=this.Zb.Aa;break;default:M.call(this);return}this.Z|=1;O[a].call(this,Sd)},function(){this.Z|=1;this.D=this.N=this.el;P[this.da()].call(this,Yd)},function(){var a,b=this.da(),c=(b&56)>>3;switch(c){case 0:a=this.H;break;case 2:a=this.K;break;case 3:a=this.C;break;default:if(80286<=this.Da){G.call(this);return}switch(c){case 1:a=this.J;break; +case 4:a=this.Y;break;case 5:a=this.I;break;case 6:a=this.G;break;case 7:a=this.F}}P[b].call(this,Rd);switch(c){case 0:xc(this,this.H);this.H=a;break;case 1:rc(this,this.J);this.J=a;break;case 2:tc(this,this.K);this.K=a;break;case 3:sc(this,this.C);this.C=a;break;case 4:xc(this,this.Y);this.Y=a;break;case 5:rc(this,this.I);this.I=a;break;case 6:tc(this,this.G);this.G=a;break;case 7:sc(this,this.F),this.F=a}},function(){this.Z|=1;Hg[this.da()].call(this,Id,this.Ea)},function(){this.A-=3},function(){var a= +this.H;this.H=this.J;this.J=a;this.A-=3},function(){var a=this.H;this.H=this.K;this.K=a;this.A-=3},function(){var a=this.H;this.H=this.C;this.C=a;this.A-=3},function(){var a=this.H;this.H=this.Y;this.Y=a;this.A-=3},function(){var a=this.H;this.H=this.I;this.I=a;this.A-=3},function(){var a=this.H;this.H=this.G;this.G=a;this.A-=3},function(){var a=this.H;this.H=this.F;this.F=a;this.A-=3},function(){this.H=this.H<<24>>24&65535;this.A-=2},function(){this.K=this.H&32768?65535:0;this.A-=this.B.Xj},function(){var a= +this.L(),b=this.L();K(this,this.ya.Aa);K(this,this.va);gc(this,a,b);this.A-=this.B.$j},function(){M.call(this)},function(){K(this,jc(this));this.A-=this.B.fc},function(){hc(this,this.Ea());this.A-=this.B.Yb},function(){var a=this.H>>8;a&1?Ic(this):Ec(this);a&4?zc(this)||(this.ia^=1):zc(this)&&(this.ia^=1);a&16?Jc(this):Fc(this);a&64?Kc(this):Gc(this);a&128?Lc(this):Cc(this)&&(this.ia^=this.ca>>1|this.ca>>2,this.ka^=32896);this.A-=this.B.qb},function(){this.H=this.H&255|(jc(this)&213)<<8;this.A-=this.B.qb}, +function(){this.H=this.H&-256|this.T(this.D,this.L());this.A-=this.B.si},function(){this.H=this.U(this.D,this.L());this.A-=this.B.si},function(){var a=this.L(),b=this.H;Oc(this,this.D.bc(a,0),b);this.A-=this.B.ti},function(){var a=this.L(),b=this.H;Pc(this,this.D.bc(a,1),b);this.A-=this.B.ti},function(){var a=1,b=0,c=this.B.ui;this.ua&192&&(a=this.J,b=1,c=this.B.wi,this.ua&256||(this.A-=this.B.vi));if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G);Oc(this,this.hb.bc(this.F,0),e);this.G=this.G+ +d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ui;this.ua&192&&(a=this.J,b=1,c=this.B.wi,this.ua&256||(this.A-=this.B.vi));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G);Pc(this,this.hb.bc(this.F,1),e);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c;this.J-=b;a&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ei;this.ua&192&&(a=this.J,b=1,c=this.B.gi,this.ua&256||(this.A-=this.B.fi)); +if(a--){var d=this.Ga&1024?-1:1,e=this.T(this.D,this.G),f=this.O(this.hb,this.F);ad.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c-this.B.gb;this.J-=b;a&&Bc(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.ei;this.ua&192&&(a=this.J,b=1,c=this.B.gi,this.ua&256||(this.A-=this.B.fi));if(a--){var d=this.Ga&1024?-2:2,e=this.U(this.D,this.G),f=this.P(this.hb,this.F);id.call(this,e,f);this.G=this.G+d&65535;this.F=this.F+d&65535;this.A-=c- +this.B.gb;this.J-=b;a&&Bc(this)==(this.ua&64)&&(J(this,this.ua&16?-3:-2),this.Z|=256)}},function(){this.X=this.ia=this.ka=this.H&255&this.da();this.ca=256;this.A-=this.B.ie},function(){this.X=this.ia=this.ka=this.H&this.L();this.ca=65536;this.A-=this.B.ie},function(){var a=1,b=0,c=this.B.Fi;this.ua&192&&(a=this.J,b=1,c=this.B.Hi,this.ua&256||(this.A-=this.B.Gi));if(a--){var d=this.H;Oc(this,this.hb.bc(this.F,0),d);this.F=this.F+(this.Ga&1024?-1:1)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|= +256)}},function(){var a=1,b=0,c=this.B.Fi;this.ua&192&&(a=this.J,b=1,c=this.B.Hi,this.ua&256||(this.A-=this.B.Gi));if(a--){var d=this.H;Pc(this,this.hb.bc(this.F,1),d);this.F=this.F+(this.Ga&1024?-2:2)&65535;this.A-=c;this.J-=b;a&&(J(this,-2),this.Z|=256)}},function(){var a=1,b=0,c=this.B.mi;this.ua&192&&(a=this.J,b=1,c=this.B.oi,this.ua&256||(this.A-=this.B.ni));a--&&(this.H=this.H&-256|this.T(this.D,this.G),this.G=this.G+(this.Ga&1024?-1:1)&65535,this.A-=c,this.J-=b,a&&(J(this,this.ua&16?-3:-2), +this.Z|=256))},function(){var a=1,b=0,c=this.B.mi;this.ua&192&&(a=this.J,b=1,c=this.B.oi,this.ua&256||(this.A-=this.B.ni));a--&&(this.H=this.U(this.D,this.G),this.G=this.G+(this.Ga&1024?-2:2)&65535,this.A-=c,this.J-=b,a&&(J(this,this.ua&16?-3:-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.zi;this.ua&192&&(a=this.J,b=1,c=this.B.Bi,this.ua&256||(this.A-=this.B.Ai));a--&&(ad.call(this,this.H&255,this.O(this.hb,this.F)),this.F=this.F+(this.Ga&1024?-1:1)&65535,this.A-=c-this.B.gb,this.J-=b,a&&Bc(this)== +(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){var a=1,b=0,c=this.B.zi;this.ua&192&&(a=this.J,b=1,c=this.B.Bi,this.ua&256||(this.A-=this.B.Ai));a--&&(id.call(this,this.H,this.P(this.hb,this.F)),this.F=this.F+(this.Ga&1024?-2:2)&65535,this.A-=c-this.B.gb,this.J-=b,a&&Bc(this)==(this.ua&64)&&(J(this,-2),this.Z|=256))},function(){this.H=this.H&-256|this.da();this.A-=this.B.qb},function(){this.J=this.J&-256|this.da();this.A-=this.B.qb},function(){this.K=this.K&-256|this.da();this.A-=this.B.qb},function(){this.C= +this.C&-256|this.da();this.A-=this.B.qb},function(){this.H=this.H&255|this.da()<<8;this.A-=this.B.qb},function(){this.J=this.J&255|this.da()<<8;this.A-=this.B.qb},function(){this.K=this.K&255|this.da()<<8;this.A-=this.B.qb},function(){this.C=this.C&255|this.da()<<8;this.A-=this.B.qb},function(){this.H=this.L();this.A-=this.B.qb},function(){this.J=this.L();this.A-=this.B.qb},function(){this.K=this.L();this.A-=this.B.qb},function(){this.C=this.L();this.A-=this.B.qb},function(){this.Y=this.L();this.A-= +this.B.qb},function(){this.I=this.L();this.A-=this.B.qb},function(){this.G=this.L();this.A-=this.B.qb},function(){this.F=this.L();this.A-=this.B.qb},ah,bh,ah,bh,function(){P[this.da()].call(this,$d)},function(){P[this.da()].call(this,Zd)},function(){this.Z|=1;Gg[this.da()].call(this,Jd,this.da)},function(){this.Z|=1;Hg[this.da()].call(this,Jd,this.L)},ch,dh,ch,dh,function(){Sc.call(this,3,null,this.B.qk)},function(){var a=this.da(),b;a:{b=this.Vf[a];if(void 0!==b)for(var c=0;c>8)*a+this.H&255;this.ca=256;this.A-=this.B.Tj},function(){this.H=this.H&-256|(yc(this)?255:0);this.A-=2},function(){this.H=this.H&-256|this.T(this.D,this.C+(this.H&255)&65535);this.A-=this.B.Sk},eh,eh,eh,eh,eh,eh,eh,eh,function(){var a=this.M();(this.J=this.J-1&65535)&&this.X&this.ca-1?(I(this,this.va+a),this.A-=this.B.zk):this.A-=this.B.pi},function(){var a=this.M();!(this.J=this.J-1&65535)||this.X&this.ca-1?this.A-=this.B.ri: +(I(this,this.va+a),this.A-=this.B.qi)},function(){var a=this.M();(this.J=this.J-1&65535)?(I(this,this.va+a),this.A-=this.B.yk):this.A-=this.B.pi},function(){var a=this.M();this.J?this.A-=this.B.ri:(I(this,this.va+a),this.A-=this.B.qi)},function(){var a=this.da();this.H=this.H&-256|$a(this.qa,a,this.Ha-2);this.A-=this.B.ji},function(){var a=this.da();this.H=$a(this.qa,a,this.Ha-1)|$a(this.qa,a+1&65535,this.Ha-2)<<8;this.A-=this.B.ji},function(){var a=this.da();bb(this.qa,a,this.H&255,this.Ha-2);this.A-= +this.B.yi},function(){var a=this.da();bb(this.qa,a,this.H&255,this.Ha-2);bb(this.qa,a+1&65535,this.H>>8,this.Ha-2);this.A-=this.B.yi},function(){var a=this.L();K(this,this.va);I(this,this.va+a);this.A-=this.B.Yj},function(){var a=this.L();I(this,this.va+a);this.A-=this.B.ki},function(){gc(this,this.L(),this.L());this.A-=this.B.uk},function(){var a=this.M();I(this,this.va+a);this.A-=this.B.ki},function(){this.H=this.H&-256|$a(this.qa,this.K,this.Ha-1);this.A-=this.B.ii},function(){this.H=$a(this.qa, +this.K,this.Ha-1)|$a(this.qa,this.K+1&65535,this.Ha-1)<<8;this.A-=this.B.ii},function(){bb(this.qa,this.K,this.H&255,this.Ha-1);this.A-=this.B.xi},function(){bb(this.qa,this.K,this.H&255,this.Ha-1);bb(this.qa,this.K+1&65535,this.H>>8,this.Ha-1);this.A-=this.B.xi},fh,fh,function(){this.Z|=132;this.A-=this.B.Hd},function(){this.Z|=68;this.A-=this.B.Hd},function(){this.$a|=4;this.A-=2;this.Ga&512||kb(this)},function(){yc(this)?Ec(this):Ic(this);this.A-=2},function(){this.rb=-1;Gg[this.da()].call(this, +Nd,Ed);0<=this.rb&&(this.H=this.rb)},function(){this.rb=-1;Hg[this.da()].call(this,Od,Ed);0<=this.rb&&(this.H=this.rb,this.K=this.Kf)},function(){this.X&=~this.ca;this.A-=2},function(){this.X|=this.ca;this.A-=2},function(){this.Ga&=-513;this.A-=this.B.Wj},function(){this.Ga|=512;this.Z|=4;this.A-=2},function(){this.Ga&=-1025;this.A-=2},function(){this.Ga|=1024;this.A-=2},function(){Gg[this.da()].call(this,$b,Ed)},function(){Hg[this.da()].call(this,bc,Ed)}]; +function Q(a){v.call(this,"ChipSet",a,Q);this.Da=a.model;this.Da=void 0!==this.Da?parseInt(this.Da,10):gh;this.Kb=0;var b=a.sw1;if(b)this.Kb=hh(b,ih|jh.ml);else{this.pd=[360,360];(b=a.floppies)&&void 0!==b.length&&(this.pd=b);if(b=this.pd.length)this.Kb|=kh.bh,b--,this.Kb|=(b&3)<=lh&&(this.cf=this.df=2);this.wg=a.scaleTimers||!1; +this.$n=a.rtcDate;this.Ej=!1;a.sound&&window&&"webkitAudioContext"in window&&(this.sh=new webkitAudioContext);this.reset(!0);this.Ma()}y(v,Q);var gh=5150,lh=5170,mh={none:0,tv:1,color:2,mono:3,ega:0},kh={bh:1,ONE:0,Uo:64,So:128,ro:192,Te:192,Ue:6},ih=12,jh={To:16,ko:32,ml:48,Te:48,Ue:4};h=Q.prototype; h.wb=function(a,b,c,d){switch(c){case "sw1":return this.sa[c]=d,nh(this,c,d,this.Kb,{0:this.Da==gh?"Bootable Floppy Drive":"Loop on POST",1:this.Da==gh?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case "sw2":if(this.Da==gh)return this.sa[c]=d,nh(this,c,d,this.Nd,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.sa[c]=d,!0}return!1}; -h.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Pa=d;this.La=a;this.Ra=D(a,"Keyboard");this.Sk=Math.round(c.ba.hd/1193181);Za(b,this,oh);ab(b,this,ph);this.Da=lh){this.cb=16;this.Yc=0;this.Mc=16;this.$f=0;this.Vd=160;512<=yh(this)&&(this.Vd|=16);3==zh(this)&&(this.Vd|=64);this.jh=3;this.cg=0;this.Mb=Array(7);this.ye=0;a&&(this.oa=Array(64)); -Ah(this,this.Yn);for(a=21;24>=a;a++)this.oa[a]=0;for(a=14;46>a;a++)void 0===this.oa[a]&&(this.oa[a]=0);this.oa[20]=this.Lc&(jh.Se|2|kh.ah|kh.Se);this.oa[16]=Bh(this,0)<<4|Bh(this,1);Ch(this)}}; +h.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Pa=d;this.La=a;this.Ra=D(a,"Keyboard");this.Tk=Math.round(c.ba.jd/1193181);Za(b,this,oh);ab(b,this,ph);this.Da=lh){this.cb=16;this.Yc=0;this.Mc=16;this.ag=0;this.Vd=160;512<=yh(this)&&(this.Vd|=16);3==zh(this)&&(this.Vd|=64);this.kh=3;this.dg=0;this.Mb=Array(7);this.ye=0;a&&(this.oa=Array(64)); +Ah(this,this.$n);for(a=21;24>=a;a++)this.oa[a]=0;for(a=14;46>a;a++)void 0===this.oa[a]&&(this.oa[a]=0);this.oa[20]=this.Lc&(jh.Te|2|kh.bh|kh.Te);this.oa[16]=Bh(this,0)<<4|Bh(this,1);Ch(this)}}; function Ah(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.hc("CMOS date invalid ("+b+"), using "+c)):b&&a.hc("CMOS date: "+c);a.oa[0]=c.getSeconds();a.oa[1]=0;a.oa[2]=c.getMinutes();a.oa[3]=0;a.oa[4]=c.getHours();a.oa[5]=0;a.oa[6]=c.getDay()+1;a.oa[7]=c.getDate();a.oa[8]=c.getMonth()+1;c=c.getFullYear();a.oa[9]=c%100;c/=100;a.oa[50]=c%10|c/10<<4;a.qf=-1;a.oa[10]=38;a.oa[11]=2;a.oa[12]=0;a.oa[13]=128} function Ch(a){for(var b=0,c=16;46>c;c++)b+=a.oa[c];a.oa[47]=b&255;a.oa[46]=b>>8} -h.save=function(){var a=new H(this);a.set(0,[this.Kb,this.Nd,this.Lc,this.re]);for(var b=[],c=0;c=lh&&(a.set(5,[this.cb,this.Yc,this.Mc,this.$f,this.Vd,this.jh]),a.set(6,[this.cg,this.Mb,this.ye,this.oa,this.qf]));return a.data()}; -h.restore=function(a){var b,c;b=a[0];this.Kb=b[0];this.Nd=b[1];this.Lc=b[2];this.re=b[3];b=a[1];this.Ta=Array(this.bf);for(c=0;c>2)+1)*a.Hm+32*((b?a.Nd:a.re)&15)}function Fh(a,b){var c=b?a.Kb:a.Lc;return a.Da!=gh||c&kh.ah?((c&kh.Se)>>kh.Te)+1:0} -function Bh(a,b){if(b>jh.Te} -function nh(a,b,c,d,e){for(var f="",k=1;8>=k;k++){var g="pcjs-bitCell";k||(g+=" pcjs-bitCellLeft");f+='
'+k+"
\n"}c.innerHTML=f;b=B(c,"pcjs-bitCell");c=null;for(k=0;k=lh&&(a.set(5,[this.cb,this.Yc,this.Mc,this.ag,this.Vd,this.kh]),a.set(6,[this.dg,this.Mb,this.ye,this.oa,this.qf]));return a.data()}; +h.restore=function(a){var b,c;b=a[0];this.Kb=b[0];this.Nd=b[1];this.Lc=b[2];this.re=b[3];b=a[1];this.Ta=Array(this.cf);for(c=0;c>2)+1)*a.Jm+32*((b?a.Nd:a.re)&15)}function Fh(a,b){var c=b?a.Kb:a.Lc;return a.Da!=gh||c&kh.bh?((c&kh.Te)>>kh.Ue)+1:0} +function Bh(a,b){if(b>jh.Ue} +function nh(a,b,c,d,e){for(var f="",k=1;8>=k;k++){var g="pcjs-bitCell";k||(g+=" pcjs-bitCellLeft");f+='
'+k+"
\n"}c.innerHTML=f;b=C(c,"pcjs-bitCell");c=null;for(k=0;k>2].rb[b&3],c,d,e)}function Oh(a,b,c){b=a.Ta[b>>2].rb[b&3];b.kg&&b.Kh&&b.Ng?(c&&(b.lg=c),b.gd||Sc(a,b,!0)):c&&c(!0)} -function Sc(a,b,c){c&&(b.count=b.Wb[1]<<8|b.Wb[0],b.hl=b.mode&12,b.Ej=b.Oc=!1);for(var d=!1;0<=b.count&&(c=b.gg<<16|b.zb[1]<<8|b.zb[0],4==b.hl?(d=!0,function(c){b.Kh.call(b.kg,b.Ng,-1,function(f,k){0>f&&(b.Ej||(b.Ej=!0),f=255);b.gd||Wa(a.qa,c,f);(d=k)&&setTimeout(function(){Th(b)||Sc(a,b)},0)})}(c)):8==b.hl?(c=Ta(a.qa,c),0>b.Kh.call(b.kg,b.Ng,c)&&(b.Oc=!0)):b.Oc=!0),!d&&!Th(b););} -function Th(a){if(!a.Oc&&0<=--a.count&&(a.mode&32?(a.zb[0]--,0>a.zb[0]&&(a.zb[0]=255,a.zb[1]--,0>a.zb[1]&&(a.zb[1]=255))):(a.zb[0]++,255>3,e=a.sb[d];e.Ab|=1<<(b&7);e.xf=c||0;1==d&&(a.sb[0].Ab|=4);Wh(a,d)}function ci(a,b){var c=b>>3,d=a.sb[c],e=1<<(b&7);d.Ab&e&&(d.Ab&=~e,1!=c||d.Ab||(a.sb[0].Ab&=-5),Wh(a,c))} -function Qc(a,b){void 0===b&&(b=0);var c=-1,d=a.sb[b];if(d.xf)c=-2,d.xf--;else for(var e=d.Ab&((d.Dc|d.sd)^255),f=d.Wd+1;;){var f=f&7,k=1<>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var k=this.Lb[c];k.Lf=f;k.mode=e;k.rj=d;k.rc=[0,0];k.Wb=[0,0];k.gf=[0,0];k.Pc=!1;k.mf=!1;k.Be=!1;ei(this,c);0==c&&ci(this,0);2==c&&255==this.sb[0].sd&&77==this.kc&&(c=this.Lb[0],c.Hc[0]=c.rc[0],c.Hc[1]=c.rc[1],c.Kd=pb(this.la,this.vg))}else fi(this,c),d=this.Lb[c],d.gf[0]=d.Wb[0],d.gf[1]=d.Wb[1],d.mf=!0,ei(this,c)}};function hi(a,b){var c=a.Lb[b],d=c.rc[1]<<8|c.rc[0];d||(d=1==c.ce?256:65536);return d} +function Hh(a,b,c){a=a.Ta[b];c=a.sb[c].zb[a.Bb];a.Bb^=1;return c}function Ih(a,b,c,d){a=a.Ta[b];c=a.sb[c];c.zb[a.Bb]=c.lj[a.Bb]=d;a.Bb^=1}function Jh(a,b,c){a=a.Ta[b];c=a.sb[c].Wb[a.Bb];a.Bb^=1;return c}function Kh(a,b,c,d){a=a.Ta[b];c=a.sb[c];c.Wb[a.Bb]=c.rc[a.Bb]=d;a.Bb^=1}function Lh(a,b){var c=a.Ta[b],d=c.ud|1;c.ud&=-16;return d}function Mh(a,b,c){a=a.Ta[b];b=c&3;a.ud=a.ud&~(16<>2].sb[b&3],c,d,e)}function Oh(a,b,c){b=a.Ta[b>>2].sb[b&3];b.lg&&b.Lh&&b.Og?(c&&(b.mg=c),b.hd||Tc(a,b,!0)):c&&c(!0)} +function Tc(a,b,c){c&&(b.count=b.Wb[1]<<8|b.Wb[0],b.il=b.mode&12,b.Fj=b.Oc=!1);for(var d=!1;0<=b.count&&(c=b.hg<<16|b.zb[1]<<8|b.zb[0],4==b.il?(d=!0,function(c){b.Lh.call(b.lg,b.Og,-1,function(f,k){0>f&&(b.Fj||(b.Fj=!0),f=255);b.hd||Wa(a.qa,c,f);(d=k)&&setTimeout(function(){Th(b)||Tc(a,b)},0)})}(c)):8==b.il?(c=Ua(a.qa,c),0>b.Lh.call(b.lg,b.Og,c)&&(b.Oc=!0)):b.Oc=!0),!d&&!Th(b););} +function Th(a){if(!a.Oc&&0<=--a.count&&(a.mode&32?(a.zb[0]--,0>a.zb[0]&&(a.zb[0]=255,a.zb[1]--,0>a.zb[1]&&(a.zb[1]=255))):(a.zb[0]++,255>3,e=a.mb[d];e.Ab|=1<<(b&7);e.xf=c||0;1==d&&(a.mb[0].Ab|=4);Wh(a,d)}function ci(a,b){var c=b>>3,d=a.mb[c],e=1<<(b&7);d.Ab&e&&(d.Ab&=~e,1!=c||d.Ab||(a.mb[0].Ab&=-5),Wh(a,c))} +function Rc(a,b){void 0===b&&(b=0);var c=-1,d=a.mb[b];if(d.xf)c=-2,d.xf--;else for(var e=d.Ab&((d.Dc|d.Zc)^255),f=d.Wd+1;;){var f=f&7,k=1<>6;if(3!=c){var d=b&1,e=b&14,f=b&48;if(f){var k=this.Lb[c];k.Lf=f;k.mode=e;k.sj=d;k.rc=[0,0];k.Wb=[0,0];k.hf=[0,0];k.Pc=!1;k.nf=!1;k.Be=!1;ei(this,c);0==c&&ci(this,0);2==c&&255==this.mb[0].Zc&&77==this.kc&&(c=this.Lb[0],c.Hc[0]=c.rc[0],c.Hc[1]=c.rc[1],c.Kd=pb(this.la,this.wg))}else fi(this,c),d=this.Lb[c],d.hf[0]=d.Wb[0],d.hf[1]=d.Wb[1],d.nf=!0,ei(this,c)}};function hi(a,b){var c=a.Lb[b],d=c.rc[1]<<8|c.rc[0];d||(d=1==c.ce?256:65536);return d} function ei(a,b){var c=a.Lb[b];c.xd=32==c.Lf?1:0;c.ce=48==c.Lf?2:1} -function fi(a,b,c){var d=a.Lb[b];if(d.Be&&(2!=b||a.kc&1)){var e=pb(a.la,a.vg),f=(e-d.Kd)/a.Sk|0;0>f&&(d.Kd=e,f=0);var k=hi(a,b),g=a.Lb[b],m=g.Hc[1]<<8|g.Hc[0];m||(m=1==g.ce?256:65536);g=m-f;0==d.mode?(0>=g&&(g=0),g||(d.Pc=!0,d.Be=!1,b||bi(a,0))):4==d.mode?(d.Pc=1!=g,0>=g&&(g=k+g,0>=g&&(g=k),d.Hc[0]=g&255,d.Hc[1]=g>>8,d.Kd=e,!b&&d.Pc&&bi(a,0))):6==d.mode&&(g-=f,0>=g&&(d.Pc=!d.Pc,g=k+g,0>=g&&(g=k),d.Hc[0]=g&255,d.Hc[1]=g>>8,d.Kd=e,!b&&d.Pc&&bi(a,0)));d.Wb[0]=g&255;d.Wb[1]=g>>8;c&&(a.Kd=0)}return d} -function rb(a,b){for(var c=0;c=lh){var c=0,d=a.la.ba.hd,e=pb(a.la,a.vg);if(0<=a.qf&&(c=e-a.qf,Math.floor(c/d)&&60<=++a.oa[0]&&(a.oa[0]=0,60<=++a.oa[2]&&(a.oa[2]=0,24<=++a.oa[4])))){a.oa[4]=0;a.oa[6]=a.oa[6]%7+1;var f=a.oa[9],k=ja[a.oa[8]-1];28==k&&0===f%4&&(f%100||0===f%400)&&k++;++a.oa[7]>k&&(a.oa[7]=1,12<++a.oa[8]&&(a.oa[8]=1,a.oa[9]=(a.oa[9]+1)%100))}a.qf=e-c%d}}h.vm=function(){var a=this.fg;this.af&16&&(this.kc&128?a=this.Lc:this.Ra&&(a=ii(this.Ra)));return a}; -h.En=function(a,b){this.fg=b};h.wm=function(){return this.kc};h.Fn=function(a,b){ji(this,b);this.Ra&&ki(this.Ra,b&128?!1:!0,b&64?!0:!1)};function ji(a,b){var c=!!(b&2),d=!!(a.kc&2);a.kc=b;c!=d&&qb(a,c)}h.xm=function(){var a=0,a=this.Da==gh?this.kc&4?a|this.re&15:a|this.re>>4&1:this.kc&8?a|this.Lc>>4:a|this.Lc&15;this.kc&1&&fi(this,2).Pc&&(a=this.kc&2?a|32:a|16);return a};h.Gn=function(a,b){this.lh=b};h.ym=function(){return this.af};h.Hn=function(a,b){this.af=b}; -h.Ml=function(){var a=this.$f;this.cb&=-258;var b=this.Ra&&ii(this.Ra,!0);b&&li(this,b);return a};h.Xm=function(a,b){if(this.cb&8)switch(this.Yc){case 96:mi(this,b);break;case 209:ni(this,b);break;default:if(mi(this,this.Mc&-17),this.Ra){var c=-1;switch(b){case 255:var c=250,d=this.Ra;d.ac=[170];d.ja&&oi(d.ja)}li(this,c)}}this.Yc=b;this.cb&=-9};h.Nl=function(){return this.kc&-209|(pb(this.la)&64?16:0)};h.Ym=function(a,b){ji(this,b)}; -h.Ol=function(){var a=this.cb&255;this.cb&256&&(this.cb|=1,this.cb&=-257);return a};h.Wm=function(a,b){this.Yc=b;this.cb|=8;var c=0;240<=this.Yc&&(c=this.Yc^15,this.Yc=240);switch(this.Yc){case 192:li(this,this.Vd);break;case 173:mi(this,this.Mc|16);break;case 174:mi(this,this.Mc&-17);break;case 170:this.Ra&&pi(this.Ra,!0);mi(this,this.Mc|16);li(this,85);ni(this,3);break;case 224:li(this,this.Mc&16?0:1);break;case 240:c&1&&fc(this.la)}}; -function mi(a,b){var c=!(a.Mc&16);a.Mc=b;a.cb=a.cb&-5|b&4;if(a.Ra){var d=!(b&16);ki(a.Ra,!!(b&8),d)&&li(a,ii(a.Ra,!0));!c&&d&&ii(a.Ra)&&oi(a)}}function li(a,b){0<=b&&(a.$f=b,a.cb&=-2,a.cb|=256)}function ni(a,b){a.jh=b;Pa(a.qa,!!(b&2));b&1||fc(a.la)}function oi(a){a.Da=a){var b=this.oa[a];if(10>a){var c=!1;4!=a&&5!=a||this.oa[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.oa[11]&4||(c&&128=c){if(e=b,10>c){var f=!1;this.oa[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};h.tm=function(){return this.cg}; -h.Bn=function(a,b){this.cg=b};h.Dn=function(a,b){this.eg=b};function hh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4>8&255,this.mb[c++]=f[b]>>16&255,this.mb[c++]=f[b]>>24&255;else this.mb=d;this.hh=d.symbols;if(!this.mb.length){s("Empty ROM: "+a);return}if(1==this.mb.length){s(this.mb[0]);return}}catch(k){this.za("ROM data error: "+ -k.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.mb=Array(a.length),d=0;dthis.Zf?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.md>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Ch(a)}}else s("No RAM allocated")}; -t(function(){for(var a=B(window.document,"pcjs","ram"),b=0;b":62,"?":63,"@":64,fo:65,ho:66,ej:67,jl:68,E:69,no:70,qo:71,fj:72,so:73,to:74,uo:75,vo:76,wo:77,bh:78,yo:79,zo:80,Bo:81,hj:82,Fo:83,Po:84,To:85,Uo:86,Vo:87,Xo:88,Yo:89,Zo:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,$o:97,bp:98,dp:99,ep:100,fp:101,gp:102,hp:103,ip:104,jp:105,kp:106,lp:107,mp:108, -np:109,pp:110,rp:111,sp:112,tp:113,vp:114,wp:115,xp:116,yp:117,Ap:118,Bp:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},wi={16:2,17:8,18:32,20:256},xi={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},R={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16,w:17, -e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80,"num-pgdn":81, -"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":57372,"right-ctrl":57373,"num-div":57397,"num-mul":57399,"right-alt":57400,home:57415,up:57416,pgup:57417,left:57419,right:57421,end:57423,down:57424,pgdn:57425,ins:57426,del:57427,win:57435,"right-win":57436,menu:57437},S={};S[1027]=R.esc;S[Q["1"]]=R["1"];S[Q["!"]]=R["1"]|512;S[Q["2"]]=R["2"];S[Q["@"]]=R["2"]|512;S[Q["3"]]=R["3"];S[Q["#"]]=R["3"]|512;S[Q["4"]]=R["4"];S[Q.$]=R["4"]|512;S[Q["5"]]=R["5"];S[Q["%"]]=R["5"]|512; -S[Q["6"]]=R["6"];S[Q["^"]]=R["6"]|512;S[Q["7"]]=R["7"];S[Q["&"]]=R["7"]|512;S[Q["8"]]=R["8"];S[Q["*"]]=R["8"]|512;S[Q["9"]]=R["9"];S[Q["("]]=R["9"]|512;S[Q["0"]]=R["0"];S[Q[")"]]=R["0"]|512;S[Q["-"]]=R["-"];S[Q._]=R["-"]|512;S[Q["="]]=R["="];S[Q["+"]]=R["="]|512;S[1008]=R.bs;S[1009]=R.tab;S[113]=R.q;S[81]=R.q|512;S[119]=R.w;S[87]=R.w|512;S[101]=R.e;S[69]=R.e|512;S[114]=R.r;S[82]=R.r|512;S[116]=R.t;S[84]=R.t|512;S[121]=R.y;S[89]=R.y|512;S[117]=R.u;S[85]=R.u|512;S[105]=R.i;S[73]=R.i|512;S[111]=R.o; -S[79]=R.o|512;S[112]=R.p;S[80]=R.p|512;S[Q["["]]=R["["];S[Q["{"]]=R["["]|512;S[Q["]"]]=R["]"];S[Q["}"]]=R["]"]|512;S[13]=R.enter;S[1017]=R.ctrl;S[97]=R.a;S[65]=R.a|512;S[115]=R.s;S[83]=R.s|512;S[100]=R.d;S[68]=R.d|512;S[102]=R.f;S[70]=R.f|512;S[103]=R.g;S[71]=R.g|512;S[104]=R.h;S[72]=R.h|512;S[106]=R.j;S[74]=R.j|512;S[107]=R.k;S[75]=R.k|512;S[108]=R.l;S[76]=R.l|512;S[Q[";"]]=R[";"];S[Q[":"]]=R[";"]|512;S[Q["'"]]=R.quote;S[Q['"']]=R.quote|512;S[Q["`"]]=R["`"];S[Q["~"]]=R["`"]|512;S[1016]=R.shift; -S[Q["\\"]]=R["\\"];S[Q["\\"]]=R["\\"]|512;S[122]=R.z;S[90]=R.z|512;S[120]=R.x;S[88]=R.x|512;S[99]=R.c;S[67]=R.c|512;S[118]=R.v;S[86]=R.v|512;S[98]=R.b;S[66]=R.b|512;S[110]=R.n;S[78]=R.n|512;S[109]=R.m;S[77]=R.m|512;S[Q[","]]=R[","];S[Q["<"]]=R[","]|512;S[Q["."]]=R["."];S[Q[">"]]=R["."]|512;S[Q["/"]]=R["/"];S[Q["?"]]=R["/"]|512;S[3016]=R["right-shift"];S[1018]=R.alt;S[Q[" "]]=R.space;S[1020]=R["caps-lock"];S[1112]=R.f1;S[1113]=R.f2;S[1114]=R.f3;S[1115]=R.f4;S[1116]=R.f5;S[1117]=R.f6;S[1118]=R.f7; -S[1119]=R.f8;S[1120]=R.f9;S[1121]=R.f10;S[1036]=R["num-home"];S[1038]=R["num-up"];S[1033]=R["num-pgup"];S[1037]=R["num-left"];S[1039]=R["num-right"];S[1035]=R["num-end"];S[1040]=R["num-down"];S[1034]=R["num-pgdn"];S[1045]=R["num-ins"];S[1046]=R["num-del"];S[1122]=R.f11;S[1123]=R.f12;S[4003]=R.c+2048;S[4063]=R["scroll-lock"]+2048;S[4081]=R["num-del"]+2048+2097152;h=vi.prototype; -h.wb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.sa[a])switch(c){case "kbd":return this.sa[a]=d,d.onkeydown=function(a){return yi(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.kb&64?e.kb&=-65:b=e.kb&40?!1:!zi(e,a);return b},d.onkeyup=function(a){return yi(e,a,!1)},!0;default:if(void 0!==xi[c]&&"button"==b)return this.sa[a]=d,d.onclick=function(a,b,c){return function(){a.la&&a.la.Oe();return!zi(a,c)}}(this,c,xi[c]),!0;if(void 0!==R[c])return this.sa[a]= -d,b=function(a,b,c){return function(){Ai(a,c)}}(this,c,R[c]),c=function(a,b,c){return function(){Ai(a,c)}}(this,c,R[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};h.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Pa=d;this.ja=D(a,"ChipSet")};h.Ma=function(){this.Cl=(this.Ll=qa("iOS"))||qa("Android");return v.prototype.Ma.call(this)}; -function ki(a,b,c){var d=!1;a.Ch!==c&&(a.Ch=a.Gh=c);a.sg!==b&&(a.sg=b)&&!a.Gh&&pi(a);a.sg&&a.Gh&&(a.ac=[170],a.ja&&oi(a.ja),a.Gh=!1,d=!0);return d}function ii(a,b){var c=0;a.ac.length&&(c=a.ac[0],b&&pi(a));return c}function pi(a,b){0a.ac.length){if(!(!d&&!a.gh[c]||d&&a.gh[c])){a.gh[c]=d;a.ac.push(b);1==a.ac.length&&a.ja&&oi(a.ja);for(var e in R)if(R[e]==c){(c=a.sa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.ac.length&&a.ac.push(255)}function Bi(a,b){var c=b?a.Lm:a.Km;a.la&&a.la.ba.Qc&&(c/=a.la.ba.Qc);return c} -function Ci(a,b){!a.me||void 0!==b&&b==a.me||(clearTimeout(a.Vc[a.me]),Di(a,a.me,!1))}function yi(a,b,c){var d,e=!c,f=b.keyCode,k=f;c&&(a.Vk=f);if(S[f+1E3]){var k=k+1E3,g=wi[f]||0;if(g)2==b.location&&(g>>=1,k+=2E3),a.kb&=~g,c&&(a.kb|=g),20==f?d=zi(a,k):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.kb&40)&&(k=4063),d=c?!zi(a,k):!1}else 91==f?(a.kb&=-65,c&&(a.kb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(k+=32):d=!0;e&&(a.kb&=-65,a.Cl||f!=a.Vk||Ci(a));void 0===d&&(d=!Di(a,k,c));return d} -function zi(a,b,c){var d=!1;Ci(a,b);Di(a,b,!0)&&(c?Di(a,b,!1):(c=!1,a.Vc[b]&&(clearTimeout(a.Vc[b]),c=!0),c=Bi(a,c),a.Vc[a.me=b]=setTimeout(function(a){return function(){Di(a,b,!1)}}(a),c)),d=!0);return d} -function Di(a,b,c){var d=!1;c||(a.Vc[b]=null,a.me==b&&(a.me=0));var e=S[b]||S[b+1E3];void 0===e&&1<=b&&26>=b&&(b+=64,e=S[b]&255|2048);if(void 0!==e){e==R.bs&&40==(a.kb&40)&&(e=R["num-del"]);d=65<=b&&90>=b||97<=b&&122>=b;b=[];for(b.push(e&255|(c?0:128));e>>=8;){var f=0,k=e&255;2==k?a.kb&3||a.kb&256&&d||(f=R.shift):8==k?a.kb&12||(f=R.ctrl):32==k&&(a.kb&48||(f=R.alt));f&&(c?b.unshift(f):b.push(f|128))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(Pi)];this.zg=b;this.Oa=e[2];this.xb=e[3];this.Fc=d||e[4];65536<=this.Fc&&720896<=this.Oa&&(this.xb=Math.min(this.Fc>>2,32768));this.ec=c[0];this.nc=c[1];this.ef=c[2];this.Qf=c[3];this.vc=c[4]&255;this.yg=c[4]>>8&255;this.$b=c[5];this.Sh=Pi;if(5==b){this.Sh=Qi;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.Oa,this.xb,this.Fc],Array(this.Fc>> -2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.Ad=b[0];this.ge=b[1];this.Pd=b[2];this.$i=b[3];this.Dg=b[4];this.Ih=b[5];this.Ge=b[6];this.Xf=b[7];this.Lh=b[8];this.Mh=b[9];this.Fe=b[10];this.ue=b[11];this.nb=b[12];d=b[13];"number"==typeof d&&(d=[this.Oa,this.xb,d]);this.Oa=d[0];this.xb=d[1];d=this.Fc>>2;if((this.Ud=b[14])&&this.Ud.length>8&255)} -var Y=[,,function(a){a+=this.offset;return(this.ea.nb=this.pa[a])>>this.ea.Mi&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];Y[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ea.Uh&this.ea.Vh,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ea.Xa|(b|b<<8|b<<16|b<<24)&this.ea.Xa;d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d&=this.ea.nb;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d|=this.ea.nb;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d^=this.ea.nb;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Xa&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[d]!=c&&(this.pa[d]=c,this.Za=!0)}; -Y[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ea.Xa|this.ea.nb&this.ea.Xa;this.pa[a]!=b&&(this.pa[a]=b,this.Za=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=Mi[b&15],d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=Mi[b&15],d=d&this.ea.nb,d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -Y[40960]=function(a,b){var c=a+this.offset,d=Mi[b&15],d=d|this.ea.nb,d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=Mi[b&15],d=d^this.ea.nb,d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.nb&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; -function Ti(a){var b=[];if(void 0!==a.zg){b[0]=a.ec;b[1]=a.nc;b[2]=a.ef;b[3]=a.Qf;b[4]=a.vc|a.yg<<8;b[5]=a.$b;if(5==a.zg){var c=[];c[0]=a.Ad;c[1]=a.ge;c[2]=a.Pd;c[3]=a.$i;c[4]=a.Dg;c[5]=a.Ih;c[6]=a.Ge;c[7]=a.Xf;c[8]=a.Lh;c[9]=a.Mh;c[10]=a.Fe;c[11]=a.ue;c[12]=a.nb;c[13]=[a.Oa,a.xb,a.Fc];var d;a:if(d=a.Ud){var e=0,f=[];if(void 0!==d[0])for(var k=0;2>k;k++)for(var g=k;g>1;f[e++]=m;g=n}if(f.length>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Xa(this.qa,b,c|d<<8);fb(this,!0)}};function $i(a){a.ma.Dg&1?(a.Ec=a.ph,a.Vb=a.ma):(a.Ec=a.ma,a.Vb=a.jg)}h.save=function(){var a=new H(this);a.set(0,Ti(this.ph));a.set(1,Ti(this.jg));a.set(2,[this.Gd,this.Tc,this.Fd]);a.set(3,Ti(this.ma));return a.data()}; -h.restore=function(a){var b=a[2];this.Gd=b[0];this.Tc=b[1];this.Fd=b[2];this.Ca=null;this.Ec=this.ph=new Ni(this,1,a[0]);this.Vb=this.jg=new Ni(this,3,a[1]);this.ma=new Ni(this,5,a[3],this.Fc);this.ma.ec&&$i(this);aj(this);if(!cj(this))return!1;dj(this);return!0}; -h.Sm=function(a,b,c){if(c)this.za("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){s("Empty font ROM image: "+a);return}if(1==d.length){s(d[0]);return}if(8192==d.length)ti(this,d,[0,6144]);else{this.za("Unrecognized font data length ("+d.length+")");return}}catch(e){this.za("Font ROM data error: "+e.message);return}this.Ma()}}; -function ej(a,b){if(1==b)return a.Wc[0]=V[0],a.Wc[1]=V[7],a.Wc;if(2==b){var c=a.Ca.ef;if(a.Ca===a.ma){var d=a.ma.Pd[0],c=d&7;d&16&&(c|=8);18!=a.ma.Pd[1]&&(c|=32)}a.Wc[0]=V[c&15];c=c&32?Ki:Ji;for(d=0;dkb||!ba?kb:8,qd=Xh.createImageData(n.cc,n.dc),va=0;256>va;va++){for(Ua= -0;Ua=kb-2,hk=uc[Ua>(8<=wb&&176<=va&&223>=va?7:wb)?u:pd;hj(qd,Yh,Zh,$h);O&&hj(qd,Yh+1,Zh,$h)}Xh.putImageData(qd,(va&15)*n.cc,(va>>4)*n.dc)}n.te[C]="#"+p(u[0],2)+p(u[1],2)+p(u[2],2);n.jj[C]=u;n.dh[C]=vc;n=!0}}a.pd[b]=x;return n}function ij(a){0a.ae&&(a.ae=0):a.ae=-1} -function dj(a){if(a.Fb){for(var b=10;15>=b;b++)if(null==a.Ca.$b[b])return;var c=a.Ca.$b[10],b=c&31,d=a.Ca.$b[11]&31,e=a.Ca.$b[9]&31,f=!1;a.Ca===a.ma&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)jj(a);else{c=a.Ca.$b[15]+((a.Ca.$b[14]&63)<<8);a.wc!=c&&(jj(a),a.wc=c);d=d-b+1;if(a.il!=b||a.vj!=d)a.il=b,a.vj=d;a.yd=e+1;ij(a)}}} -function jj(a){if(0<=a.wc){if(void 0!==a.Ub){var b=a.Ub[a.wc];if(b&131072){var b=b&-131073,c=a.wc%a.ob,d=Math.floor(a.wc/a.ob);a.Fb&&a.pd[a.Fb]&&(a.Ae&&kj(a,c,d,b,a.Ae),kj(a,c,d,b));a.Ub[a.wc]=b}}a.wc=-1}} -function lj(a){var b;a=a.Ca;var c=a.ue[5];if(null!=c){b=2;var d=512,e=a.ue[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Sc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}h.pe=function(a){var b=this.Ca;null!=a&&b&&a!=b.Rh&&(b.Xg(a),this.qa.Xg(b.Oa,b.xb,b.Xe))}; -function cj(a,b){var c,d=a.Fd,e=a.Ca;if(e)if(1==e.zg)d=Ei;else if(5==e.zg){var d=null,f=e.Fc>>2,k=32768f&&(d=c?13:14):c&&(d-=2));c=lj(a)}}else e.nc&8&&(e.nc&2?(d=e.nc&16?6:5,e.nc&4||(d-=1)):(d=e.nc&1?3:1,e.nc&4&&(d-= -1)));else a.Fd=null,null==d&&(d=a.Tc);if(!bj(a,d,b))return!1;a.pe(c);return!0} -function bj(a,b,c){if(null!=b&&(b!=a.Fd||c)){a.pl=0;a.Fd=b;b=a.Ca||(b==Ei?a.Ec:a.Vb);if(b!=a.Ca||b.Oa!=a.Oa||b.xb!=a.xb){jj(a);if(a.Oa){if(!Sa(a.qa,a.Oa,a.xb))return!1;a.Ca&&(a.Ca.ec=!1)}a.Ca=b;b.ec=!0;a.Oa=b.Oa;a.xb=b.xb;if(!Qa(a.qa,b.Oa,b.xb,!1,b===a.ma?b:null))return!1}a.Fb=0;a.ob=a.Jg;a.gc=a.Zh;a.Th=U[Ei][2];b=0;var d=U[a.Fd];d&&(a.ob=d[0],a.gc=d[1],a.Th=d[2],b=d[3]||0,a.Fb=d[4],4==a.Gd&&a.Ca===a.ma&&3==a.Fb&&(7==a.ma.$b[9]?a.gc=43:a.Fb=5));a.Oj=a.ob*a.gc;a.Gg=a.Oj/a.Th;a.qh=(a.Gg<<1)+b;a.tj= -b?a.qh+b>>1:0;13<=a.Fd&&(a.Gg<<=1);a.pd.length&&(a.bd=Math.floor(a.ad/a.ob),a.cd=Math.floor(a.zd/a.gc),a.Fb?(b=a.pd[a.Fb],d=a.pd[a.Fb<<1],a.Dl&&80==a.ob?d&&a.bd>=3*d.cc>>2&&(a.Fb<<=1,b=d):(d&&a.bd>=d.cc&&(a.Fb<<=1,b=d),b&&(a.bd=b.cc,a.cd=b.dc)),a.hf=a.jf=0,b&&(a.hf=a.ob*b.cc,a.jf=a.gc*b.dc)):(a.bd=a.cd=1,a.hf=a.ob,a.jf=a.gc),a.Ag=a.Gc.createImageData(a.hf,a.jf),a.ze=window.document.createElement("canvas"),a.ze.width=a.hf,a.ze.height=a.jf,a.Ae=a.ze.getContext("2d"),a.cj=a.dj=0,a.th=a.ad,a.uh=a.zd, -b=a.ad-a.ob*a.bd,d=a.zd-a.gc*a.cd,0>1,a.th-=b),0>1,a.uh-=d),b||d)&&(a.Gc.fillStyle=a.tb.style.backgroundColor,a.Gc.fillRect(0,0,a.ad,a.zd));!1!==c?fb(a,!0):mj(a,!0)}return!0}function hj(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function mj(a,b){var c;if(b){if(c=a.Gg,void 0===a.Ub||a.Ub.length!=c)a.Ub=Array(c)}else{if(void 0===a.Ub)return;c=a.Ub.length}for(var d=0;d>8;d=k&15;var g=a.pd[a.Fb];g.Ue&&(d=g.Ue[d]);var m=k>>4&15;g.Ue&&(m=g.Ue[m]);e?(b*=g.cc,c*=g.dc,e.fillStyle=g.te[m],e.fillRect(b,c,g.cc,g.dc)):(b=b*a.bd+a.cj,c=c*a.cd+a.dj,a.Gc.fillStyle=g.te[m],a.Gc.fillRect(b,c,a.bd,a.cd));k&256&&(m=(f&15)*g.cc,f=(f>>4)*g.dc,e?e.drawImage(g.dh[d],m,f,g.cc,g.dc,b,c,g.cc,g.dc):a.Gc.drawImage(g.dh[d],m,f,g.cc,g.dc,b,c,a.bd,a.cd));k&512&&(f=a.il,k=a.vj,e?(a.yd&&a.yd!==g.dc&&(f=Math.floor(f*g.dc/a.yd),k=Math.floor(k*g.dc/a.yd)), -e.fillStyle=g.te[d],e.fillRect(b,c+f,g.cc,k)):(a.yd&&a.yd!==a.cd&&(f=Math.floor(f*a.cd/a.yd),k=Math.floor(k*a.cd/a.yd)),a.Gc.fillStyle=g.te[d],a.Gc.fillRect(b,c+f,a.bd,k)))} -function fb(a,b){if(a.na.Db){var c=!1;a.Ca&&(a.Ca===a.ma?a.ma.ge&32&&(c=!0):a.Ca.nc&8&&(c=!0));if(c||b){if(b)mj(a,!0);else if(void 0===a.Ub)return;var d=!1;!(b||++a.pl&15)&&0<=a.ae&&(a.ae++,d=!0);var e=0,f=a.Oj,c=a.Ca.Oa,k=c+a.Ca.xb,g=(a.Ca.$b[12]<<8)+a.Ca.$b[13];a.Fb&&(g<<=1);var c=c+g,m=a.qh;c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(g=!b){for(var g=a.qa,n=!0,r=c>>g.Nb;0a.wc)return;e=a.wc;f= -e+1}}if(a.Fb){if(a.pd[a.Fb]){d=0;g=a.$d=0;m=1048575;a.Ca.nc&32&&(g=32768,m&=~g,a.ae&2||(m&=-65537));for(c+=e<<1;c>8|(x&255)<<8;u=g;var kb=16;r>=m))>>(kb-=m);hj(a.Ag,r++,C,n[pd])}r>W&&(W=r);C=ca&&(ca=C+1)}e+=2;k++;if(r>=a.ob){r=0;C+=2;if(C>a.gc)break;C==a.gc&&(C=1,e=c+a.tj)}}Oba;ba++)ca=W&2155905152,0>ca&&(ca+=4294967296),ca=X[ca]||0,hj(a.Ag,g++,m,k[ca]),W<<=1;g>r&&(r=g);m=O&&(O=m+1)}e++;if(g>=a.ob&&(g=0,++m>a.gc))break}n>2),a=this.ma.$i&-17|(this.ag&1<e&&(e=0);e%b.Wh>b.Nm&&(c|=1);e%=b.Rj;e>b.Pm&&(c|=8);b.ci=d-e;b===a.ma?(c|=b.Qf&48^48,b.Ad=!1):c=(b.Qf^=9)|240;return b.Qf=c} -var Ui={948:T.prototype.qm,949:T.prototype.pm,952:T.prototype.rm,954:T.prototype.sm,980:T.prototype.Zl,981:T.prototype.Yl,984:T.prototype.$l,985:T.prototype.Xl,986:T.prototype.am},Vi={948:T.prototype.zn,949:T.prototype.yn,952:T.prototype.An,980:T.prototype.kn,981:T.prototype.jn,984:T.prototype.ln,985:T.prototype.hn},Wi={960:T.prototype.Kj,961:T.prototype.Kj,962:T.prototype.Cm,964:T.prototype.Bm,965:T.prototype.Am,970:T.prototype.jm,972:T.prototype.im,974:T.prototype.hm,975:T.prototype.gm},Xi={954:T.prototype.Uk, -960:T.prototype.Tk,961:T.prototype.Tk,962:T.prototype.Cn,964:T.prototype.Jn,965:T.prototype.In,970:T.prototype.un,972:T.prototype.tn,974:T.prototype.sn,975:T.prototype.rn,986:T.prototype.Uk}; -t(function(){for(var a=B(window.document,"pcjs","video"),b=0;bMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; +function fi(a,b,c){var d=a.Lb[b];if(d.Be&&(2!=b||a.kc&1)){var e=pb(a.la,a.wg),f=(e-d.Kd)/a.Tk|0;0>f&&(d.Kd=e,f=0);var k=hi(a,b),g=a.Lb[b],m=g.Hc[1]<<8|g.Hc[0];m||(m=1==g.ce?256:65536);g=m-f;0==d.mode?(0>=g&&(g=0),g||(d.Pc=!0,d.Be=!1,b||bi(a,0))):4==d.mode?(d.Pc=1!=g,0>=g&&(g=k+g,0>=g&&(g=k),d.Hc[0]=g&255,d.Hc[1]=g>>8,d.Kd=e,!b&&d.Pc&&bi(a,0))):6==d.mode&&(g-=f,0>=g&&(d.Pc=!d.Pc,g=k+g,0>=g&&(g=k),d.Hc[0]=g&255,d.Hc[1]=g>>8,d.Kd=e,!b&&d.Pc&&bi(a,0)));d.Wb[0]=g&255;d.Wb[1]=g>>8;c&&(a.Kd=0)}return d} +function rb(a,b){for(var c=0;c=lh){var c=0,d=a.la.ba.jd,e=pb(a.la,a.wg);if(0<=a.qf&&(c=e-a.qf,Math.floor(c/d)&&60<=++a.oa[0]&&(a.oa[0]=0,60<=++a.oa[2]&&(a.oa[2]=0,24<=++a.oa[4])))){a.oa[4]=0;a.oa[6]=a.oa[6]%7+1;var f=a.oa[9],k=ja[a.oa[8]-1];28==k&&0===f%4&&(f%100||0===f%400)&&k++;++a.oa[7]>k&&(a.oa[7]=1,12<++a.oa[8]&&(a.oa[8]=1,a.oa[9]=(a.oa[9]+1)%100))}a.qf=e-c%d}}h.vm=function(){var a=this.gg;this.bf&16&&(this.kc&128?a=this.Lc:this.Ra&&(a=ii(this.Ra)));return a}; +h.Gn=function(a,b){this.gg=b};h.wm=function(){return this.kc};h.Hn=function(a,b){ji(this,b);this.Ra&&ki(this.Ra,b&128?!1:!0,b&64?!0:!1)};function ji(a,b){var c=!!(b&2),d=!!(a.kc&2);a.kc=b;c!=d&&qb(a,c)}h.xm=function(){var a=0,a=this.Da==gh?this.kc&4?a|this.re&15:a|this.re>>4&1:this.kc&8?a|this.Lc>>4:a|this.Lc&15;this.kc&1&&fi(this,2).Pc&&(a=this.kc&2?a|32:a|16);return a};h.In=function(a,b){this.mh=b};h.ym=function(){return this.bf};h.Jn=function(a,b){this.bf=b}; +h.Ml=function(){var a=this.ag;this.cb&=-258;var b=this.Ra&&ii(this.Ra,!0);b&&li(this,b);return a};h.Zm=function(a,b){if(this.cb&8)switch(this.Yc){case 96:mi(this,b);break;case 209:ni(this,b);break;default:if(mi(this,this.Mc&-17),this.Ra){var c=-1;switch(b){case 255:var c=250,d=this.Ra;d.ac=[170];d.ja&&oi(d.ja)}li(this,c)}}this.Yc=b;this.cb&=-9};h.Nl=function(){return this.kc&-209|(pb(this.la)&64?16:0)};h.$m=function(a,b){ji(this,b)}; +h.Ol=function(){var a=this.cb&255;this.cb&256&&(this.cb|=1,this.cb&=-257);return a};h.Ym=function(a,b){this.Yc=b;this.cb|=8;var c=0;240<=this.Yc&&(c=this.Yc^15,this.Yc=240);switch(this.Yc){case 192:li(this,this.Vd);break;case 173:mi(this,this.Mc|16);break;case 174:mi(this,this.Mc&-17);break;case 170:this.Ra&&pi(this.Ra,!0);mi(this,this.Mc|16);li(this,85);ni(this,3);break;case 224:li(this,this.Mc&16?0:1);break;case 240:c&1&&fc(this.la)}}; +function mi(a,b){var c=!(a.Mc&16);a.Mc=b;a.cb=a.cb&-5|b&4;if(a.Ra){var d=!(b&16);ki(a.Ra,!!(b&8),d)&&li(a,ii(a.Ra,!0));!c&&d&&ii(a.Ra)&&oi(a)}}function li(a,b){0<=b&&(a.ag=b,a.cb&=-2,a.cb|=256)}function ni(a,b){a.kh=b;Pa(a.qa,!!(b&2));b&1||fc(a.la)}function oi(a){a.Da=a){var b=this.oa[a];if(10>a){var c=!1;4!=a&&5!=a||this.oa[11]&2||(b=12>b?b?b:12:(b-=12)?b+128:140,c=!0);this.oa[11]&4||(c&&128=c){if(e=b,10>c){var f=!1;this.oa[11]&4||(e=10*(e>>4)+(e&15),f=!0);if(4==c||5==c)f&&12=e?e=12==e?0:e:(e-=116,e=24==e?12:e))}}else e=b;d[c]=e};h.tm=function(){return this.dg}; +h.Dn=function(a,b){this.dg=b};h.Fn=function(a,b){this.fg=b};function hh(a,b){if(void 0===a)return b;for(var c=0,d=1,e=0;ec||2E4>8&255,this.nb[c++]=f[b]>>16&255,this.nb[c++]=f[b]>>24&255;else this.nb=d;this.ih=d.symbols;if(!this.nb.length){s("Empty ROM: "+a);return}if(1==this.nb.length){s(this.nb[0]);return}}catch(k){this.za("ROM data error: "+ +k.message);return}else for(a=b.replace(/\n/gm," ").replace(/ +$/,"").split(" "),this.nb=Array(a.length),d=0;dthis.$f?21:23,c=a.oa[b]|a.oa[b+1]<<8,c=c+(this.nd>>10);a.oa[b]=c&255;a.oa[b+1]=c>>8;Ch(a)}}else s("No RAM allocated")}; +u(function(){for(var a=C(window.document,"pcjs","ram"),b=0;b":62,"?":63,"@":64,io:65,jo:66,fj:67,kl:68,E:69,po:70,so:71,gj:72,uo:73,vo:74,wo:75,xo:76,yo:77,dh:78,Ao:79,Bo:80,Do:81,ij:82,Ho:83,Ro:84,Vo:85,Wo:86,Xo:87,Zo:88,$o:89,ap:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,bp:97,dp:98,fp:99,gp:100,hp:101,ip:102,jp:103,kp:104,lp:105,mp:106,np:107,op:108, +pp:109,rp:110,tp:111,vp:112,wp:113,xp:114,yp:115,zp:116,Ap:117,Cp:118,Dp:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},wi={16:2,17:8,18:32,20:256},xi={tab:1009,esc:1027,"right-shift":3016,shift:1016,ctrl:1017,alt:1018,"caps-lock":1020,f1:1112,f2:1113,f3:1114,f4:1115,f5:1116,f6:1117,f7:1118,f8:1119,f9:1120,f10:1121,left:1037,up:1038,right:1039,down:1040,"ctrl-c":4003,"ctrl-break":4063,"ctrl-alt-del":4081},yi={esc:1,1:2,2:3,3:4,4:5,5:6,6:7,7:8,8:9,9:10,0:11,"-":12,"=":13,bs:14,tab:15,q:16, +w:17,e:18,r:19,t:20,y:21,u:22,i:23,o:24,p:25,"[":26,"]":27,enter:28,ctrl:29,a:30,s:31,d:32,f:33,g:34,h:35,j:36,k:37,l:38,";":39,quote:40,"`":41,shift:42,"\\":43,z:44,x:45,c:46,v:47,b:48,n:49,m:50,",":51,".":52,"/":53,"right-shift":54,prtsc:55,alt:56,space:57,"caps-lock":58,f1:59,f2:60,f3:61,f4:62,f5:63,f6:64,f7:65,f8:66,f9:67,f10:68,"num-lock":69,"scroll-lock":70,"num-home":71,"num-up":72,"num-pgup":73,"num-sub":74,"num-left":75,"num-center":76,"num-right":77,"num-add":78,"num-end":79,"num-down":80, +"num-pgdn":81,"num-ins":82,"num-del":83,sysreq:84,pause:84,f11:87,f12:88,"num-enter":7392,"right-ctrl":7648,"num-div":13792,"num-mul":14304,"right-alt":14560,home:18400,up:18656,pgup:18912,left:19424,right:19936,end:20448,down:20704,pgdn:20960,ins:21216,del:21472,win:23520,"right-win":23776,menu:24032},S={1027:2};S[R["1"]]=2;S[R["!"]]=10754;S[R["2"]]=3;S[R["@"]]=10755;S[R["3"]]=4;S[R["#"]]=10756;S[R["4"]]=5;S[R.$]=10757;S[R["5"]]=6;S[R["%"]]=10758;S[R["6"]]=7;S[R["^"]]=10759;S[R["7"]]=8; +S[R["&"]]=10760;S[R["8"]]=9;S[R["*"]]=10761;S[R["9"]]=10;S[R["("]]=10762;S[R["0"]]=11;S[R[")"]]=10763;S[R["-"]]=12;S[R._]=10764;S[R["="]]=13;S[R["+"]]=10765;S[1008]=14;S[1009]=15;S[113]=16;S[81]=10768;S[119]=17;S[87]=10769;S[101]=18;S[69]=10770;S[114]=19;S[82]=10771;S[116]=20;S[84]=10772;S[121]=21;S[89]=10773;S[117]=22;S[85]=10774;S[105]=23;S[73]=10775;S[111]=24;S[79]=10776;S[112]=25;S[80]=10777;S[R["["]]=26;S[R["{"]]=10778;S[R["]"]]=27;S[R["}"]]=10779;S[13]=28;S[1017]=29;S[97]=30;S[65]=10782; +S[115]=31;S[83]=10783;S[100]=32;S[68]=10784;S[102]=33;S[70]=10785;S[103]=34;S[71]=10786;S[104]=35;S[72]=10787;S[106]=36;S[74]=10788;S[107]=37;S[75]=10789;S[108]=38;S[76]=10790;S[R[";"]]=39;S[R[":"]]=10791;S[R["'"]]=40;S[R['"']]=10792;S[R["`"]]=41;S[R["~"]]=10793;S[1016]=42;S[R["\\"]]=43;S[R["|"]]=10795;S[122]=44;S[90]=10796;S[120]=45;S[88]=10797;S[99]=46;S[67]=10798;S[118]=47;S[86]=10799;S[98]=48;S[66]=10800;S[110]=49;S[78]=10801;S[109]=50;S[77]=10802;S[R[","]]=51;S[R["<"]]=10803;S[R["."]]=52; +S[R[">"]]=10804;S[R["/"]]=53;S[R["?"]]=10805;S[3016]=54;S[1018]=56;S[R[" "]]=57;S[1020]=58;S[1112]=59;S[1113]=60;S[1114]=61;S[1115]=62;S[1116]=63;S[1117]=64;S[1118]=65;S[1119]=66;S[1120]=67;S[1121]=68;S[1036]=71;S[1038]=72;S[1033]=73;S[1037]=75;S[1039]=77;S[1035]=79;S[1040]=80;S[1034]=81;S[1045]=82;S[1046]=83;S[1122]=87;S[1123]=88;S[4003]=7470;S[4063]=7494;S[4081]=3677523;h=vi.prototype; +h.wb=function(a,b,c,d){var e=this;a=b+"-"+c;if(void 0===this.sa[a])switch(c){case "kbd":return this.sa[a]=d,d.onkeydown=function(a){return zi(e,a,!0)},d.onkeypress=function(a){var b=!0;a=a||window.event;a=a.which||a.keyCode;8==a||9==a?b=!1:e.kb&64?e.kb&=-65:b=e.kb&40?!1:!Ai(e,a);return b},d.onkeyup=function(a){return zi(e,a,!1)},!0;default:if(void 0!==xi[c]&&"button"==b)return this.sa[a]=d,d.onclick=function(a,b,c){return function(){a.la&&a.la.Pe();return!Ai(a,c)}}(this,c,xi[c]),!0;if(void 0!==yi[c])return this.sa[a]= +d,b=function(a,b,c){return function(){Bi(a,c)}}(this,c,yi[c]),c=function(a,b,c){return function(){Bi(a,c)}}(this,c,yi[c]|128),"ontouchstart"in window?(d.ontouchstart=b,d.ontouchend=c):(d.onmousedown=b,d.onmouseup=d.onmouseout=c),!0}return!1};h.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Pa=d;this.ja=D(a,"ChipSet")};h.Ma=function(){this.Cl=(this.Ll=qa("iOS"))||qa("Android");return v.prototype.Ma.call(this)}; +function ki(a,b,c){var d=!1;a.Dh!==c&&(a.Dh=a.Hh=c);a.tg!==b&&(a.tg=b)&&!a.Hh&&pi(a);a.tg&&a.Hh&&(a.ac=[170],a.ja&&oi(a.ja),a.Hh=!1,d=!0);return d}function ii(a,b){var c=0;a.ac.length&&(c=a.ac[0],b&&pi(a));return c}function pi(a,b){0a.ac.length){if(!(!d&&!a.hh[c]||d&&a.hh[c])){a.hh[c]=d;a.ac.push(b);1==a.ac.length&&a.ja&&oi(a.ja);for(var e in yi)if(yi[e]==c){(c=a.sa["key-"+e])&&void 0!==d&&(c.style.color=d?"#ffffff":"#000000",c.style.backgroundColor=d?"#000000":"#ffffff");break}}}else 20==a.ac.length&&a.ac.push(255)}function Ci(a,b){var c=b?a.Nm:a.Mm;a.la&&a.la.ba.Qc&&(c/=a.la.ba.Qc);return c} +function Di(a,b){!a.me||void 0!==b&&b==a.me||(clearTimeout(a.Vc[a.me]),Ei(a,a.me,!1))}function zi(a,b,c){var d,e=!c,f=b.keyCode,k=f;c&&(a.Wk=f);if(S[f+1E3]){var k=k+1E3,g=wi[f]||0;if(g)2==b.location&&(g>>=1,k+=2E3),a.kb&=~g,c&&(a.kb|=g),20==f?d=Ai(a,k):e=!1;else if(8==f||9==f||27==f)8==f&&8==(a.kb&40)&&(k=4063),d=c?!Ai(a,k):!1}else 91==f?(a.kb&=-65,c&&(a.kb|=64),e=!1,d=!0):b.altKey||b.ctrlKey?65<=f&&90>=f&&(k+=32):d=!0;e&&(a.kb&=-65,a.Cl||f!=a.Wk||Di(a));void 0===d&&(d=!Ei(a,k,c));return d} +function Ai(a,b,c){var d=!1;Di(a,b);Ei(a,b,!0)&&(c?Ei(a,b,!1):(c=!1,a.Vc[b]&&(clearTimeout(a.Vc[b]),c=!0),c=Ci(a,c),a.Vc[a.me=b]=setTimeout(function(a){return function(){Ei(a,b,!1)}}(a),c)),d=!0);return d} +function Ei(a,b,c){var d=!1;c||(a.Vc[b]=null,a.me==b&&(a.me=0));var e=S[b]||S[b+1E3];if(void 0!==e){14==e&&40==(a.kb&40)&&(e=83);var d=[],f=e&255;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var k=0,g=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==g?a.kb&3||a.kb&256&&b||(k=g):29==g?a.kb&12||(k=g):56==g?a.kb&48||(k=g):d.push(f|(c?0:128)),k&&(c?d.unshift(k):d.push(k|128)))}for(c=0;cc.length)c=[!1,0,null,null,0,Array(Qi)];this.Ag=b;this.Oa=e[2];this.xb=e[3];this.Fc=d||e[4];65536<=this.Fc&&720896<=this.Oa&&(this.xb=Math.min(this.Fc>>2,32768));this.ec=c[0];this.nc=c[1];this.ff=c[2];this.Qf=c[3];this.vc=c[4]&255;this.zg=c[4]>>8&255;this.$b=c[5];this.Th=Qi;if(5==b){this.Th=Ri;b=c[6];void 0===b&&(b=[!1,0,Array(20),0,3==f?0:1,0,0,Array(5),0,0,0,Array(9),0,[this.Oa,this.xb,this.Fc],Array(this.Fc>> +2),771,0,4294967295,0,4294967295,0,4294967295,0,0,0]);this.Ad=b[0];this.ge=b[1];this.Pd=b[2];this.aj=b[3];this.Eg=b[4];this.Jh=b[5];this.He=b[6];this.Yf=b[7];this.Mh=b[8];this.Nh=b[9];this.Ge=b[10];this.ue=b[11];this.ob=b[12];d=b[13];"number"==typeof d&&(d=[this.Oa,this.xb,d]);this.Oa=d[0];this.xb=d[1];d=this.Fc>>2;if((this.Ud=b[14])&&this.Ud.length>8&255)} +var Y=[,,function(a){a+=this.offset;return(this.ea.ob=this.pa[a])>>this.ea.Ni&255},function(a){a+=this.offset;var b=a&-2;return(a&1?this.pa[b]>>8:this.pa[b])&255}];Y[16]=function(a){a+=this.offset;a=this.pa[a];for(var b=this.ea.Vh&this.ea.Wh,c=0,d=128;d;)(a&b)==b&&(c|=d),b>>>=1,d>>=1;return c};Y[512]=function(a,b){var c=a+this.offset,d;d=this.pa[c]&~this.ea.Xa|(b|b<<8|b<<16|b<<24)&this.ea.Xa;d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; +Y[1024]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; +Y[1536]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d&=this.ea.ob;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; +Y[2560]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d|=this.ea.ob;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; +Y[3584]=function(a,b){var c=a+this.offset;b=b>>this.ea.Sc|b<<8-this.ea.Sc&255;var d;d=(b|b<<8|b<<16|b<<24)&this.ea.Jd|this.ea.je;d^=this.ea.ob;d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa;d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};Y[768]=function(a,b){a+=this.offset;var c,d=a&-2;c=this.ea.Xa&(d==a?16711935:4278255360);c=(b|b<<8|b<<16|b<<24)&c|this.pa[d]&~c;c=c&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[d]!=c&&(this.pa[d]=c,this.Za=!0)}; +Y[4096]=function(a){a+=this.offset;var b=this.pa[a]&~this.ea.Xa|this.ea.ob&this.ea.Xa;this.pa[a]!=b&&(this.pa[a]=b,this.Za=!0)};Y[8192]=function(a,b){var c=a+this.offset,d=Ni[b&15],d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};Y[24576]=function(a,b){var c=a+this.offset,d=Ni[b&15],d=d&this.ea.ob,d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; +Y[40960]=function(a,b){var c=a+this.offset,d=Ni[b&15],d=d|this.ea.ob,d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)};Y[57344]=function(a,b){var c=a+this.offset,d=Ni[b&15],d=d^this.ea.ob,d=d&this.ea.Xa|this.pa[c]&~this.ea.Xa,d=d&this.ea.ab|this.ea.ob&~this.ea.ab;this.pa[c]!=d&&(this.pa[c]=d,this.Za=!0)}; +function Ui(a){var b=[];if(void 0!==a.Ag){b[0]=a.ec;b[1]=a.nc;b[2]=a.ff;b[3]=a.Qf;b[4]=a.vc|a.zg<<8;b[5]=a.$b;if(5==a.Ag){var c=[];c[0]=a.Ad;c[1]=a.ge;c[2]=a.Pd;c[3]=a.aj;c[4]=a.Eg;c[5]=a.Jh;c[6]=a.He;c[7]=a.Yf;c[8]=a.Mh;c[9]=a.Nh;c[10]=a.Ge;c[11]=a.ue;c[12]=a.ob;c[13]=[a.Oa,a.xb,a.Fc];var d;a:if(d=a.Ud){var e=0,f=[];if(void 0!==d[0])for(var k=0;2>k;k++)for(var g=k;g>1;f[e++]=m;g=n}if(f.length>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8),Xa(this.qa,b,c|d<<8);fb(this,!0)}};function aj(a){a.ma.Eg&1?(a.Ec=a.qh,a.Vb=a.ma):(a.Ec=a.ma,a.Vb=a.kg)}h.save=function(){var a=new H(this);a.set(0,Ui(this.qh));a.set(1,Ui(this.kg));a.set(2,[this.Gd,this.Tc,this.Fd]);a.set(3,Ui(this.ma));return a.data()}; +h.restore=function(a){var b=a[2];this.Gd=b[0];this.Tc=b[1];this.Fd=b[2];this.Ca=null;this.Ec=this.qh=new Oi(this,1,a[0]);this.Vb=this.kg=new Oi(this,3,a[1]);this.ma=new Oi(this,5,a[3],this.Fc);this.ma.ec&&aj(this);bj(this);if(!dj(this))return!1;ej(this);return!0}; +h.Um=function(a,b,c){if(c)this.za("Unable to load font ROM image (error "+c+")");else{try{var d=eval("("+b+")");if(!d.length){s("Empty font ROM image: "+a);return}if(1==d.length){s(d[0]);return}if(8192==d.length)ti(this,d,[0,6144]);else{this.za("Unrecognized font data length ("+d.length+")");return}}catch(e){this.za("Font ROM data error: "+e.message);return}this.Ma()}}; +function fj(a,b){if(1==b)return a.Wc[0]=W[0],a.Wc[1]=W[7],a.Wc;if(2==b){var c=a.Ca.ff;if(a.Ca===a.ma){var d=a.ma.Pd[0],c=d&7;d&16&&(c|=8);18!=a.ma.Pd[1]&&(c|=32)}a.Wc[0]=W[c&15];c=c&32?Li:Ki;for(d=0;djb||!aa?jb:8,qd=Yh.createImageData(n.cc,n.dc),ua=0;256>ua;ua++){for(Ta= +0;Ta=jb-2,ik=uc[Ta>(8<=vb&&176<=ua&&223>=ua?7:vb)?t:pd;ij(qd,Zh,$h,ai);N&&ij(qd,Zh+1,$h,ai)}Yh.putImageData(qd,(ua&15)*n.cc,(ua>>4)*n.dc)}n.te[B]="#"+p(t[0],2)+p(t[1],2)+p(t[2],2);n.kj[B]=t;n.eh[B]=vc;n=!0}}a.qd[b]=w;return n}function jj(a){0a.ae&&(a.ae=0):a.ae=-1} +function ej(a){if(a.Fb){for(var b=10;15>=b;b++)if(null==a.Ca.$b[b])return;var c=a.Ca.$b[10],b=c&31,d=a.Ca.$b[11]&31,e=a.Ca.$b[9]&31,f=!1;a.Ca===a.ma&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)kj(a);else{c=a.Ca.$b[15]+((a.Ca.$b[14]&63)<<8);a.wc!=c&&(kj(a),a.wc=c);d=d-b+1;if(a.jl!=b||a.wj!=d)a.jl=b,a.wj=d;a.yd=e+1;jj(a)}}} +function kj(a){if(0<=a.wc){if(void 0!==a.Ub){var b=a.Ub[a.wc];if(b&131072){var b=b&-131073,c=a.wc%a.pb,d=Math.floor(a.wc/a.pb);a.Fb&&a.qd[a.Fb]&&(a.Ae&&lj(a,c,d,b,a.Ae),lj(a,c,d,b));a.Ub[a.wc]=b}}a.wc=-1}} +function mj(a){var b;a=a.Ca;var c=a.ue[5];if(null!=c){b=2;var d=512,e=a.ue[3]&31;switch(c&3){case 0:if(e){d=1024;switch(e&24){case 8:d=1536;break;case 16:d=2560;break;case 24:d=3584}a.Sc=e&7}break;case 1:d=4096;break;case 2:switch(e&24){default:d=8192;break;case 8:d=24576;break;case 16:d=40960;break;case 24:d=57344}}c&8&&(b=16);c&16&&(b|=1,d|=256);b|=d}return b}h.pe=function(a){var b=this.Ca;null!=a&&b&&a!=b.Sh&&(b.Yg(a),this.qa.Yg(b.Oa,b.xb,b.Ye))}; +function dj(a,b){var c,d=a.Fd,e=a.Ca;if(e)if(1==e.Ag)d=Fi;else if(5==e.Ag){var d=null,f=e.Fc>>2,k=32768f&&(d=c?13:14):c&&(d-=2));c=mj(a)}}else e.nc&8&&(e.nc&2?(d=e.nc&16?6:5,e.nc&4||(d-=1)):(d=e.nc&1?3:1,e.nc&4&&(d-= +1)));else a.Fd=null,null==d&&(d=a.Tc);if(!cj(a,d,b))return!1;a.pe(c);return!0} +function cj(a,b,c){if(null!=b&&(b!=a.Fd||c)){a.pl=0;a.Fd=b;b=a.Ca||(b==Fi?a.Ec:a.Vb);if(b!=a.Ca||b.Oa!=a.Oa||b.xb!=a.xb){kj(a);if(a.Oa){if(!Sa(a.qa,a.Oa,a.xb))return!1;a.Ca&&(a.Ca.ec=!1)}a.Ca=b;b.ec=!0;a.Oa=b.Oa;a.xb=b.xb;if(!Qa(a.qa,b.Oa,b.xb,!1,b===a.ma?b:null))return!1}a.Fb=0;a.pb=a.Kg;a.gc=a.$h;a.Uh=U[Fi][2];b=0;var d=U[a.Fd];d&&(a.pb=d[0],a.gc=d[1],a.Uh=d[2],b=d[3]||0,a.Fb=d[4],4==a.Gd&&a.Ca===a.ma&&3==a.Fb&&(7==a.ma.$b[9]?a.gc=43:a.Fb=5));a.Pj=a.pb*a.gc;a.Hg=a.Pj/a.Uh;a.rh=(a.Hg<<1)+b;a.uj= +b?a.rh+b>>1:0;13<=a.Fd&&(a.Hg<<=1);a.qd.length&&(a.cd=Math.floor(a.bd/a.pb),a.dd=Math.floor(a.zd/a.gc),a.Fb?(b=a.qd[a.Fb],d=a.qd[a.Fb<<1],a.Dl&&80==a.pb?d&&a.cd>=3*d.cc>>2&&(a.Fb<<=1,b=d):(d&&a.cd>=d.cc&&(a.Fb<<=1,b=d),b&&(a.cd=b.cc,a.dd=b.dc)),a.jf=a.kf=0,b&&(a.jf=a.pb*b.cc,a.kf=a.gc*b.dc)):(a.cd=a.dd=1,a.jf=a.pb,a.kf=a.gc),a.Bg=a.Gc.createImageData(a.jf,a.kf),a.ze=window.document.createElement("canvas"),a.ze.width=a.jf,a.ze.height=a.kf,a.Ae=a.ze.getContext("2d"),a.dj=a.ej=0,a.uh=a.bd,a.vh=a.zd, +b=a.bd-a.pb*a.cd,d=a.zd-a.gc*a.dd,0>1,a.uh-=b),0>1,a.vh-=d),b||d)&&(a.Gc.fillStyle=a.tb.style.backgroundColor,a.Gc.fillRect(0,0,a.bd,a.zd));!1!==c?fb(a,!0):nj(a,!0)}return!0}function ij(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b+0]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function nj(a,b){var c;if(b){if(c=a.Hg,void 0===a.Ub||a.Ub.length!=c)a.Ub=Array(c)}else{if(void 0===a.Ub)return;c=a.Ub.length}for(var d=0;d>8;d=k&15;var g=a.qd[a.Fb];g.Ve&&(d=g.Ve[d]);var m=k>>4&15;g.Ve&&(m=g.Ve[m]);e?(b*=g.cc,c*=g.dc,e.fillStyle=g.te[m],e.fillRect(b,c,g.cc,g.dc)):(b=b*a.cd+a.dj,c=c*a.dd+a.ej,a.Gc.fillStyle=g.te[m],a.Gc.fillRect(b,c,a.cd,a.dd));k&256&&(m=(f&15)*g.cc,f=(f>>4)*g.dc,e?e.drawImage(g.eh[d],m,f,g.cc,g.dc,b,c,g.cc,g.dc):a.Gc.drawImage(g.eh[d],m,f,g.cc,g.dc,b,c,a.cd,a.dd));k&512&&(f=a.jl,k=a.wj,e?(a.yd&&a.yd!==g.dc&&(f=Math.floor(f*g.dc/a.yd),k=Math.floor(k*g.dc/a.yd)), +e.fillStyle=g.te[d],e.fillRect(b,c+f,g.cc,k)):(a.yd&&a.yd!==a.dd&&(f=Math.floor(f*a.dd/a.yd),k=Math.floor(k*a.dd/a.yd)),a.Gc.fillStyle=g.te[d],a.Gc.fillRect(b,c+f,a.cd,k)))} +function fb(a,b){if(a.na.Db){var c=!1;a.Ca&&(a.Ca===a.ma?a.ma.ge&32&&(c=!0):a.Ca.nc&8&&(c=!0));if(c||b){if(b)nj(a,!0);else if(void 0===a.Ub)return;var d=!1;!(b||++a.pl&15)&&0<=a.ae&&(a.ae++,d=!0);var e=0,f=a.Pj,c=a.Ca.Oa,k=c+a.Ca.xb,g=(a.Ca.$b[12]<<8)+a.Ca.$b[13];a.Fb&&(g<<=1);var c=c+g,m=a.rh;c+m>k&&(m=k-c,0>m&&(m=0));k=c+m;if(g=!b){for(var g=a.qa,n=!0,q=c>>g.Nb;0a.wc)return;e=a.wc;f= +e+1}}if(a.Fb){if(a.qd[a.Fb]){d=0;g=a.$d=0;m=1048575;a.Ca.nc&32&&(g=32768,m&=~g,a.ae&2||(m&=-65537));for(c+=e<<1;c>8|(w&255)<<8;t=g;var jb=16;q>=m))>>(jb-=m);ij(a.Bg,q++,B,n[pd])}q>V&&(V=q);B=ba&&(ba=B+1)}e+=2;k++;if(q>=a.pb){q=0;B+=2;if(B>a.gc)break;B==a.gc&&(B=1,e=c+a.uj)}}Naa;aa++)ba=V&2155905152,0>ba&&(ba+=4294967296),ba=X[ba]||0,ij(a.Bg,g++,m,k[ba]),V<<=1;g>q&&(q=g);m=N&&(N=m+1)}e++;if(g>=a.pb&&(g=0,++m>a.gc))break}n>2),a=this.ma.aj&-17|(this.bg&1<e&&(e=0);e%b.Xh>b.Pm&&(c|=1);e%=b.Sj;e>b.Rm&&(c|=8);b.di=d-e;b===a.ma?(c|=b.Qf&48^48,b.Ad=!1):c=(b.Qf^=9)|240;return b.Qf=c} +var Vi={948:T.prototype.qm,949:T.prototype.pm,952:T.prototype.rm,954:T.prototype.sm,980:T.prototype.Zl,981:T.prototype.Yl,984:T.prototype.$l,985:T.prototype.Xl,986:T.prototype.am},Wi={948:T.prototype.Bn,949:T.prototype.An,952:T.prototype.Cn,980:T.prototype.mn,981:T.prototype.ln,984:T.prototype.nn,985:T.prototype.kn},Xi={960:T.prototype.Lj,961:T.prototype.Lj,962:T.prototype.Cm,964:T.prototype.Bm,965:T.prototype.Am,970:T.prototype.jm,972:T.prototype.im,974:T.prototype.hm,975:T.prototype.gm},Yi={954:T.prototype.Vk, +960:T.prototype.Uk,961:T.prototype.Uk,962:T.prototype.En,964:T.prototype.Ln,965:T.prototype.Kn,970:T.prototype.wn,972:T.prototype.vn,974:T.prototype.un,975:T.prototype.tn,986:T.prototype.Vk}; +u(function(){for(var a=C(window.document,"pcjs","video"),b=0;bMissing <canvas> support; try a new web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.setAttribute("contenteditable","true");e.setAttribute("autocapitalize","off");e.setAttribute("autocorrect","off");e.style.backgroundColor=d.screenColor; e.style.height=c.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(e.style.height=(c.clientWidth*d.screenHeight/d.screenWidth|0)+"px",c.onresize=function(a,b,c,d){return function(){b.style.height=(a.clientWidth*d/c|0)+"px"}}(c,e,d.screenWidth,d.screenHeight));c.appendChild(e);var f=e.getContext("2d"),d=new T(d,e,f);A(d,c)}}); -function Z(a){this.Gj=a.adapter;switch(this.Gj){case 1:this.Si=1016;this.Af=4;break;case 2:this.Si=760;this.Af=3;break;default:s("Unrecognized serial adapter #"+this.Gj);return}this.wd=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=qj;b&&(void 0===c&&(c="Panel"),(c=Ha(c,this.id))&&(b=c.sa[b])&&this.wb(null,null,a,b))}y(v,Z);var qj="buffer";h=Z.prototype;h.mj=function(a,b){return a==this.Oh?(this.Lj=b,this):null}; -h.wb=function(a,b,c,d){var e=this;switch(c){case qj:return this.sa[c]=this.wd=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),rj(e,[b]))},d.onkeypress=function(a){a=a||window.event;rj(e,[a.which||a.keyCode])},!0}return!1};h.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Pa=d;this.ja=D(a,"ChipSet");Za(b,this,sj,this.Si);ab(b,this,tj,this.Si);this.Ma()}; -h.Qb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};h.Pb=function(a){return a&&this.save?this.save():!0};h.reset=function(){this.Cd()};h.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.mh;c[b++]=this.qj;c[b++]=this.se;c[b++]=this.bg;c[b++]=this.rd;c[b++]=this.Xd;c[b++]=this.Nc;c[b++]=this.oc;c[b++]=this.oj;c[b]=this.Ve;a.set(0,c);return a.data()};h.restore=function(a){return this.Cd(a[0])}; -h.Cd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.mh=a[b++];this.qj=a[b++];this.se=a[b++];this.bg=a[b++];this.rd=a[b++];this.Xd=a[b++];this.Nc=a[b++];this.oc=a[b++];this.oj=a[b++];this.Ve=a[b];return!0};function rj(a,b){a.Ve=a.Ve.concat(b);uj(a)}function uj(a){0>8:this.bg};h.lm=function(){return this.rd};h.mm=function(){return this.Xd};h.om=function(){return this.Nc};h.nm=function(){return this.oc};h.um=function(){return this.oj}; -h.Kn=function(a,b){if(this.Xd&128)this.se=this.se&-256|b;else{this.qj=b;this.oc&=-97;var c;this.wd?(13!=b&&(8==b?this.wd.value=this.wd.value.slice(0,-1):(this.wd.value+=String.fromCharCode(b),this.wd.scrollTop=this.wd.scrollHeight)),c=!0):c=!1;c&&(this.oc|=96)}};h.vn=function(a,b){this.Xd&128?this.se=this.se&255|b<<8:this.bg=b};h.wn=function(a,b){this.Xd=b}; -h.xn=function(a,b){var c=this.Nc;this.Nc=b;if(this.Lj&&(c^b)&3){var c=this.Lj,d=this.Nc,e=3==(d&3);if(e){if(!c.ec){var f=!1;c.Nc&2||(c.reset(),f=!0);c.Nc&1||(f=!0);f&&rj(c.ff,[77]);vj(c,c.tb);c.ec=e}}else c.ec&&(wj(c.tb),c.ec=e);c.Nc=d}};var sj={0:Z.prototype.zm,1:Z.prototype.km,2:Z.prototype.lm,3:Z.prototype.mm,4:Z.prototype.om,5:Z.prototype.nm,6:Z.prototype.um},tj={0:Z.prototype.Kn,1:Z.prototype.vn,3:Z.prototype.wn,4:Z.prototype.xn}; -t(function(){for(var a=B(window.document,"pcjs","serial"),b=0;ba.Rf||0>a.Sf)a.Rf=b.clientX,a.Sf=b.clientY;a.Pe=b.clientX-a.Rf;a.Qe=b.clientY-a.Sf;(a.Pe||a.Qe)&&yj(a);a.Rf=b.clientX;a.Sf=b.clientY}},!1),b.addEventListener("mousedown",function(b){zj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){zj(a,b.button,!1)},!1),a.Bh=!0),b.style.cursor="none")}function wj(a){a&&(a.style.cursor="auto")} -function zj(a,b,c){if(a.ec&&a.la&&a.la.na.uc)switch(b){case 0:a.og!=c&&(a.og=c,yj(a));break;case 2:a.pg!=c&&(a.pg=c,yj(a))}}function yj(a){rj(a.ff,[64|(a.og?32:0)|(a.pg?16:0)|(a.Qe&192)>>4|(a.Pe&192)>>6,a.Pe&63,a.Qe&63]);a.Pe=a.Qe=0}t(function(){for(var a=B(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?e=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Eb+":"+this.Gb+":"+this.Ob+":"+this.ub,a+="&machine="+this.ea.Ee(),a+="&user="+this.ea.Bd(),e=la()+"/api/v1/disk?"+a,this.tg=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)? -(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),e=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Ce?"":d)+"&format=json")),q(e,!0,null,this,this.vl,b))}; -h.vl=function(a,b,c,d){var e=null;this.De=!1;var f=0>c&&this.La&&!this.La.na.Db;if(this.tg)c?this.ea.za('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.dd=!0,e=this);else if(c)this.ea.za('Unable to load disk "'+this.ld+'" (error '+c+")",f);else try{if(0k&&0b.indexOf("0x")&& -'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(g.length)if(1==g.length)s(g[0]);else{for(b=a=0;b>2,r=m.pattern;void 0===r&&(r=m.pattern=0);var x=m.data;if(void 0===x){var u=m.bytes;if(void 0!==u&&u.length){for(var f=n<<2,C=u.length;Cb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=k>>16&255;c[d++]=k>>24&255}return c}function Ij(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} -h.write=function(a,b,c){if(this.De)return!1;if(b>2;b=(b&3)<<3;for(var k=d.length;k<=f;k++)d[k]=e;a.qc?f=a.Jc+a.qc&&(a.qc+=f-(a.Jc+a.qc)+1):(a.Jc=f,a.qc=1);d[f]=d[f]&~(255<=this.ib.length||m>=this.ib[g].length||n>=this.ib[g][m].length){c="sector "+g+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.De){c="unable to modify write-protected disk";b=-1;break}e= -k[f++];f=k[f++];k=e+f.length;if(g=this.ib[g][m][n]){for(m=g.data.length;mb&&this.ea.za("unable to restore disk '"+this.ld+": "+c);return b}; -function Jj(a){v.call(this,"FDC",a,Jj);this.dmaRead=this.vh;this.dmaWrite=this.wh;this.dmaFormat=this.sl;this.le=null;if(a.autoMount&&(this.le=a.autoMount,"string"==typeof this.le))try{this.le=eval("("+a.autoMount+")")}catch(b){s("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.le=null}this.ic=[]}y(v,Jj);l={};aa={}; -var Kj={3:{Zc:3,vd:0,name:aa.Ko},4:{Zc:2,vd:1,name:aa.Io},5:{Zc:9,vd:7,name:aa.Wo},6:{Zc:9,vd:7,name:aa.Co},7:{Zc:2,vd:0,name:aa.Eo},8:{Zc:1,vd:2,name:aa.Jo},10:{Zc:2,vd:7,name:aa.Do},13:{Zc:6,vd:7,name:aa.oo},15:{Zc:3,vd:0,name:aa.Ho}};h=Jj.prototype; +function Z(a){this.Hj=a.adapter;switch(this.Hj){case 1:this.Ti=1016;this.Af=4;break;case 2:this.Ti=760;this.Af=3;break;default:s("Unrecognized serial adapter #"+this.Hj);return}this.wd=null;v.call(this,"SerialPort",a,Z);var b=a.binding,c;a=rj;b&&(void 0===c&&(c="Panel"),(c=Ha(c,this.id))&&(b=c.sa[b])&&this.wb(null,null,a,b))}y(v,Z);var rj="buffer";h=Z.prototype;h.nj=function(a,b){return a==this.Ph?(this.Mj=b,this):null}; +h.wb=function(a,b,c,d){var e=this;switch(c){case rj:return this.sa[c]=this.wd=d,d.onkeydown=function(a){a=a||window.event;var b=a.keyCode;8===b&&(a.preventDefault&&a.preventDefault(),sj(e,[b]))},d.onkeypress=function(a){a=a||window.event;sj(e,[a.which||a.keyCode])},!0}return!1};h.mc=function(a,b,c,d){this.qa=b;this.la=c;this.Pa=d;this.ja=D(a,"ChipSet");Za(b,this,tj,this.Ti);ab(b,this,uj,this.Ti);this.Ma()}; +h.Qb=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};h.Pb=function(a){return a&&this.save?this.save():!0};h.reset=function(){this.Cd()};h.save=function(){var a=new H(this),b=0,c=[];c[b++]=this.nh;c[b++]=this.rj;c[b++]=this.se;c[b++]=this.cg;c[b++]=this.sd;c[b++]=this.Xd;c[b++]=this.Nc;c[b++]=this.oc;c[b++]=this.pj;c[b]=this.We;a.set(0,c);return a.data()};h.restore=function(a){return this.Cd(a[0])}; +h.Cd=function(a){var b=0;void 0===a&&(a=[0,0,384,0,1,0,0,96,48,[]]);this.nh=a[b++];this.rj=a[b++];this.se=a[b++];this.cg=a[b++];this.sd=a[b++];this.Xd=a[b++];this.Nc=a[b++];this.oc=a[b++];this.pj=a[b++];this.We=a[b];return!0};function sj(a,b){a.We=a.We.concat(b);vj(a)}function vj(a){0>8:this.cg};h.lm=function(){return this.sd};h.mm=function(){return this.Xd};h.om=function(){return this.Nc};h.nm=function(){return this.oc};h.um=function(){return this.pj}; +h.Mn=function(a,b){if(this.Xd&128)this.se=this.se&-256|b;else{this.rj=b;this.oc&=-97;var c;this.wd?(13!=b&&(8==b?this.wd.value=this.wd.value.slice(0,-1):(this.wd.value+=String.fromCharCode(b),this.wd.scrollTop=this.wd.scrollHeight)),c=!0):c=!1;c&&(this.oc|=96)}};h.xn=function(a,b){this.Xd&128?this.se=this.se&255|b<<8:this.cg=b};h.yn=function(a,b){this.Xd=b}; +h.zn=function(a,b){var c=this.Nc;this.Nc=b;if(this.Mj&&(c^b)&3){var c=this.Mj,d=this.Nc,e=3==(d&3);if(e){if(!c.ec){var f=!1;c.Nc&2||(c.reset(),f=!0);c.Nc&1||(f=!0);f&&sj(c.gf,[77,77]);wj(c,c.tb);c.ec=e}}else c.ec&&(xj(c.tb),c.ec=e);c.Nc=d}};var tj={0:Z.prototype.zm,1:Z.prototype.km,2:Z.prototype.lm,3:Z.prototype.mm,4:Z.prototype.om,5:Z.prototype.nm,6:Z.prototype.um},uj={0:Z.prototype.Mn,1:Z.prototype.xn,3:Z.prototype.yn,4:Z.prototype.zn}; +u(function(){for(var a=C(window.document,"pcjs","serial"),b=0;ba.Rf||0>a.Sf)a.Rf=b.clientX,a.Sf=b.clientY;a.Qe=b.clientX-a.Rf;a.Re=b.clientY-a.Sf;(a.Qe||a.Re)&&zj(a);a.Rf=b.clientX;a.Sf=b.clientY}},!1),b.addEventListener("mousedown",function(b){Aj(a,b.button,!0)},!1),b.addEventListener("mouseup",function(b){Aj(a,b.button,!1)},!1),a.Ch=!0),b.style.cursor="none")}function xj(a){a&&(a.style.cursor="auto")} +function Aj(a,b,c){if(a.ec&&a.la&&a.la.na.uc)switch(b){case 0:a.pg!=c&&(a.pg=c,zj(a));break;case 2:a.qg!=c&&(a.qg=c,zj(a))}}function zj(a){sj(a.gf,[64|(a.pg?32:0)|(a.qg?16:0)|(a.Re&192)>>4|(a.Qe&192)>>6,a.Qe&63,a.Re&63]);a.Qe=a.Re=0}u(function(){for(var a=C(window.document,"pcjs","mouse"),b=0;bb.indexOf("/api/v1/dump")&&(a=ea(b),"json"==a?e=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(a="action=open&volume="+b+("&mode="+this.mode),a+="&chs="+this.Eb+":"+this.Gb+":"+this.Ob+":"+this.ub,a+="&machine="+this.ea.Ee(),a+="&user="+this.ea.Bd(),e=la()+"/api/v1/disk?"+a,this.ug=!0):(c="path",d="&mbhd=10",!b.indexOf("http:")||!b.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(a)? +(c="disk",d="&mbhd=0"):-1!==b.indexOf("/",b.length-1)&&(c="dir"),e=la()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.Ce?"":d)+"&format=json")),r(e,!0,null,this,this.vl,b))}; +h.vl=function(a,b,c,d){var e=null;this.De=!1;var f=0>c&&this.La&&!this.La.na.Db;if(this.ug)c?this.ea.za('Unable to connect to disk "'+d+'" (error '+c+": "+b+")",f):(this.ed=!0,e=this);else if(c)this.ea.za('Unable to load disk "'+this.md+'" (error '+c+")",f);else try{if(0k&&0b.indexOf("0x")&& +'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(g.length)if(1==g.length)s(g[0]);else{for(b=a=0;b>2,q=m.pattern;void 0===q&&(q=m.pattern=0);var w=m.data;if(void 0===w){var t=m.bytes;if(void 0!==t&&t.length){for(var f=n<<2,B=t.length;Bb&&(b=0);2E3>2,e=Array(d),f=0;f>2,e=a.data;a=a.pattern;for(var f=0;f>8&255;c[d++]=k>>16&255;c[d++]=k>>24&255}return c}function Jj(a,b){var c=-1;if(b>2,c=(d>((b&3)<<3)&255;return c} +h.write=function(a,b,c){if(this.De)return!1;if(b>2;b=(b&3)<<3;for(var k=d.length;k<=f;k++)d[k]=e;a.qc?f=a.Jc+a.qc&&(a.qc+=f-(a.Jc+a.qc)+1):(a.Jc=f,a.qc=1);d[f]=d[f]&~(255<=this.ib.length||m>=this.ib[g].length||n>=this.ib[g][m].length){c="sector "+g+":"+m+":"+n+" out of range ("+b+" changes applied)";b=-1;break}if(this.De){c="unable to modify write-protected disk";b=-1;break}e= +k[f++];f=k[f++];k=e+f.length;if(g=this.ib[g][m][n]){for(m=g.data.length;mb&&this.ea.za("unable to restore disk '"+this.md+": "+c);return b}; +function Kj(a){v.call(this,"FDC",a,Kj);this.dmaRead=this.wh;this.dmaWrite=this.xh;this.dmaFormat=this.sl;this.le=null;if(a.autoMount&&(this.le=a.autoMount,"string"==typeof this.le))try{this.le=eval("("+a.autoMount+")")}catch(b){s("FDC auto-mount error: "+b.message+" ("+a.autoMount+")"),this.le=null}this.ic=[]}y(v,Kj);l={};ca={}; +var Lj={3:{$c:3,vd:0,name:ca.Mo},4:{$c:2,vd:1,name:ca.Ko},5:{$c:9,vd:7,name:ca.Yo},6:{$c:9,vd:7,name:ca.Eo},7:{$c:2,vd:0,name:ca.Go},8:{$c:1,vd:2,name:ca.Lo},10:{$c:2,vd:7,name:ca.Fo},13:{$c:6,vd:7,name:ca.qo},15:{$c:3,vd:0,name:ca.Jo}};h=Kj.prototype; h.wb=function(a,b,c,d){switch(c){case "listDisks":return this.sa[c]=d,a=window.document.createElement("option"),a.value="?",a.innerHTML="User-defined URL...",d.appendChild(a),d.onchange=function(a,b){return function(){var c=a.sa.descDisk;if(c){var d=b.options[b.selectedIndex];if(d){var m={};if(d=d.getAttribute("data-value"))try{m=eval("({"+d+"})")}catch(n){s("FDC option error: "+(n.message||n))}d=m.desc;void 0===d&&(d="");m=m.href;void 0!==m&&(d=''+d+"");c.innerHTML= -d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||Lj(a,c)}}(this,d),!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(a){return function(){var b,c=a.sa.listDisks,d=a.sa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.ta.restore(f)&&(e=!1);e&&a.ta&&void 0!==a.Wa&&(a.Ka=a.ta.seek(a.eb,a.Ja,a.Ua));return e};h.Yi=function(){for(var a=0,b=[],c=0;ca.Eb||e[1]>a.Gb)&&(this.za('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Va)),b=null);b&&(a.ta=b,a.al=c,a.ne=d,Sj(this,c,d,b),this.Ld|=128,this.za('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Va),a.fe),a.Kg=e[0],a.yf=e[1],a.zf=e[2]);a.fe&&(a.fe=!1,--this.Zd||this.Ma());Lj(this,a.Va)}; -function Lj(a,b){if(0<=b&&b=this.Ya&&(this.wa&=-81,this.lb=this.Ya=0);return a}; -h.pn=function(a,b){this.Ya=Kj[c].Zc){var d=!1;this.lb=0;var c=this.Ia(),e,f,k,g,m,n=c&31;switch(n){case 3:this.Ia(l.Lo);this.Ia(l.ro);this.Cb();break;case 4:f=this.Ia(l.Re);this.Va=f&3;e=this.xa[this.Va];this.Cb();this.Rb((e.Sa&4278190080)>>>24,l.Oo);break;case 5:case 6:f=this.Ia(l.Re);d=f>>2&1;this.Va=f&3;e=this.xa[this.Va];e.Ja=d;f=e.eb=this.Ia(l.ej);k=this.Ia(l.fj);g=e.Ua=this.Ia(l.hj);m=this.Ia(l.bh);e.bb=128<< -m;e.td=this.Ia(l.mo);this.Ia(l.kl);this.Ia(l.lo);6==n?this.xh(e):this.yh(e);Tj(this,e,c,d,f,k,g,m);d=!0;break;case 7:f=this.Ia(l.Re);this.Va=f&3;e=this.xa[this.Va];e.eb=e.qd=0;e.Sa=268435488;this.Cb();d=!0;break;case 8:e=this.xa[this.Va];e.Ja=0;this.Cb();this.Rb(e.Va|e.Ja<<2|e.Sa&255,l.ml);this.Rb(e.eb,l.Ao);this.Va=this.Va+1&3;break;case 10:f=this.Ia(l.Re);d=f>>2&1;this.Va=f&3;e=this.xa[this.Va];f=e.eb;k=e.Ja=d;g=e.Ua=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.eb,e.Ja,e.Ua))?m=e.Ka.length:e.Sa=1088;Tj(this, -e,c,d,f,k,g,m);d=!0;break;case 13:f=this.Ia(l.Re);d=f>>2&1;this.Va=f&3;e=this.xa[this.Va];f=e.eb;k=e.Ja=d;g=1;m=this.Ia(l.bh);e.bb=128<>2&1,f=this.Ia(l.xo),e.eb+=f-e.qd,0>e.eb&&(e.eb=0),e.eb>=e.Eb&&(e.eb=e.Eb-1),e.qd=f,e.Sa=32,0==e.eb&&(e.Sa|=268435456),this.Cb(),d=!0}0>>8,l.Mo);a.Rb((b.Sa&16711680)>>>16,l.No);var m=0;if(e!=b.eb||f!=b.Ja)m=k=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.ej);a.Rb(f,l.fj);a.Rb(k,l.hj);a.Rb(g,l.bh)}h.Ia=function(){var a=this.Sb[this.lb];this.lb++;return a};h.Cb=function(){this.lb=this.Ya=0};h.Rb=function(a){this.Sb[this.Ya++]=a}; -h.vh=function(a,b,c){void 0===b||0>b?this.xc(a,c):c(-1,!1)};h.wh=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};h.sl=function(a,b){return void 0!==b&&0<=b?this.bj(a,b):-1};h.xh=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(Sh(this.ja,2,this,"dmaRead",a),Oh(this.ja,2)))};h.yh=function(a){a.Sa=72;a.ta&&(a.ta.De?a.Sa=576:(a.Ka=null,a.Sa=0,this.ja&&(Sh(this.ja,2,this,"dmaWrite",a),Oh(this.ja,2))))}; -h.wj=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(a.be=0,a.jc=Array(4),a.Ze=!0,a.df=0,Sh(this.ja,2,this,"dmaFormat",a),Oh(this.ja,2),a.Ze=!1))};h.xc=function(a,b){var c=-1;if(!a.Sa&&a.ta){do{if(a.Ka&&0<=(c=Ij(a.Ka,a.Wa++)))break;a.Ka=a.ta.seek(a.eb,a.Ja,a.Ua);if(!a.Ka){a.Sa=1088;break}a.Wa=0;this.We(a)}while(1)}b(c,!1)}; -h.Ac=function(a,b){if(a.Sa||!a.ta)return-1;do{if(a.Ka&&a.ta.write(a.Ka,a.Wa++,b))break;a.Ka=a.ta.seek(a.eb,a.Ja,a.Ua);if(!a.Ka){a.Sa=8256;b=-1;break}a.Wa=0;this.We(a)}while(1);return b};h.We=function(a){a.Ua++;a.Ua>=a.zf+1&&(a.Ua=1,a.Ja++,a.Ja>=a.yf&&(a.Ja=0,a.eb++))};h.bj=function(a,b){if(a.Sa)return-1;a.jc[a.be++]=b;if(a.be==a.jc.length){a.eb=a.jc[0];a.Ja=a.jc[1];a.Ua=a.jc[2];a.bb=128<this.Ac(a,a.nj))return-1;a.df++}a.df>=a.td&&(b=-1);return b}; -var Oj={1012:Jj.prototype.fm,1013:Jj.prototype.dm,1015:Jj.prototype.em},Pj={1010:Jj.prototype.qn,1013:Jj.prototype.pn,1015:Jj.prototype.on};t(function(){for(var a=B(window.document,"pcjs","fdc"),b=0;b=e&&(this.Jf|=(f.type&3)<<(1-e<<1))}return d}; -h.Wi=function(){var a=0,b=[];this.ee?(b[a++]=this.kd,b[a++]=this.$k,b[a++]=this.Md,b[a++]=this.Ug,b[a++]=this.Sg,b[a++]=this.Rg,b[a++]=this.Le,b[a++]=this.wa,b[a++]=this.Ui,b[a++]=this.Tg):(b[a++]=this.Jf,b[a++]=this.wa,b[a++]=this.Sb,b[a++]=this.lb,b[a++]=this.Ya,b[a++]=this.Zk,b[a++]=this.Yk,b[a++]=this.Xk,b[a++]=this.nf);b[a]=this.Yi();return b}; -h.Ph=function(a,b,c,d,e){var f=0,k=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Va=a;b.errorCode=d[f++];b.el=d[f++];b.Ce=d[f++];b.ve=d[f++];b.we=d[f++];b.Ja=d[f++];b.Gb=d[f++];b.Od=d[f++];b.Ua=d[f++];b.td=d[f++];b.bb=d[f++];b.hg=this.ee?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.Bd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Uj[this.of][b.type])b.type=this.Jl;c=Uj[this.of][b.type]; -b.Ob=c[2]||17;b.ub=c[3]||512;if(e&&this.ja&&(e=this.ja,c=b.type,e.oa)){var g=e.oa[18],g=a?g&240|c:g&15|c<<4;e.oa&&(e.oa[18]=g,Ch(e))}void 0===b.ta&&(b.ta=null,this.za("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));Zj(this,b);b.Wa=d[f++];b.Ka=null;b.ta&&(a=d[f],void 0!==a&&0>b.ta.restore(a)&&(k=!1),k&&void 0!==b.Wa&&(b.Ka=b.ta.seek(b.Od,b.Ja,b.Ua+b.hg)));return k};h.Yi=function(){for(var a=0,b=[],c=0;c=this.Ya&&(this.lb=this.Ya=0,this.wa&=-15);return a};h.Mn=function(a,b){this.Ya=c&&(this.wa|=2,this.wa&=-2,ak(this))}; -h.Gm=function(){var a=this.wa;this.lb=this.Qa.ub){var b=this;this.xc(this.Qa,function(a){0<=a?bk(b):(b.wa=1,b.kd=16)},!1)}else this.wa=80;return a}; -h.bn=function(a,b){this.Qa&&this.Qa.bb>=this.Qa.ub&&(0>this.Ac(this.Qa,b)?(this.wa=1,this.kd=16):this.Qa.Wa==this.Qa.ub&&(this.Qa.bb-=this.Qa.ub,this.Md=this.Md-1&255,bk(this),this.Qa.bb>=this.Qa.ub||(this.wa=80)))};h.Tl=function(){return this.kd};h.gn=function(a,b){this.$k=b};h.Ul=function(){return this.Md};h.en=function(a,b){this.Md=b};h.Vl=function(){return this.Ug};h.fn=function(a,b){this.Ug=b};h.Ql=function(){return this.Sg};h.an=function(a,b){this.Sg=b};h.Pl=function(){return this.Rg}; -h.$m=function(a,b){this.Rg=b};h.Sl=function(){return this.Le};h.cn=function(a,b){this.Le=b;this.wa=this.xa[this.Le&16?1:0]?this.wa|64:this.wa&-65};h.Wl=function(){return this.wa};h.Zm=function(a,b){this.Ui=b;this.ja&&ci(this.ja,14);ck(this)};h.dn=function(a,b){this.Tg&4&&!(b&4)&&(this.kd=1);this.Tg=b}; -function ck(a){var b=!1,c=a.Ui,d=a.Le&16?1:0,e=a.Le&15,f=a.Sg|(a.Rg&3)<<8,k=a.Ug,g=a.Md||256;a.Qa=null;a.kd=0;a.wa=80;(d=a.xa[d])?(d.Od=f,d.Ja=e,d.Ua=k,d.bb=g*d.ub,c=144<=c?c:c&240,d.Ka=null,d.errorCode=0,a.Qa=d):c=-1;switch(c&240){case 32:a.xc(d,function(b){0<=b&&a.ja?(bk(a),a.wa=136):(a.wa=1,a.kd=16)},!1);break;case 48:a.ja?(bk(a),a.wa=136):(a.wa=1,a.kd=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.kd=1;b=!0;break;case 145:d.Gb=e+1,d.Ob=g,b=!0}b&&bk(a)} -function bk(a){!a.ja||a.Tg&2||bi(a.ja,14)} -function ak(a){a.lb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,k=a.Ia(),g=a.Ia(),m=k<<2&768|g,n=k&63,r=a.Ia(),x=a.Ia(),u=a.xa[e];u&&(u.Od=m,u.Ja=f,u.Ua=n,u.bb=r*u.ub);switch(b){case 3:a.Cb(u?u.errorCode:4);a.Rb(c);a.Rb(k);a.Rb(g);a.Rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)u&&cb?this.xc(a,c):c(-1,!1)}; -h.wh=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};h.tl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Wa=a.Ob+b&&(a.Ua=b,a.Ja++,a.Ja>=a.Gb&&(a.Ja=0,a.Od++))}; -h.bj=function(a,b){if(a.errorCode)return-1;a.jc[a.be++]=b;if(a.be==a.jc.length){a.Od=a.jc[0];a.Ja=a.jc[1];a.Ua=a.jc[2];a.bb=128<this.Ac(a,a.nj))return-1;a.df++}a.df>=a.td&&(b=-1);return b}; -var Wj={800:$.prototype.Fm,801:$.prototype.Gm,802:$.prototype.Em},Vj={496:$.prototype.Rl,497:$.prototype.Tl,498:$.prototype.Ul,499:$.prototype.Vl,500:$.prototype.Ql,501:$.prototype.Pl,502:$.prototype.Sl,503:$.prototype.Wl},Yj={800:$.prototype.Mn,801:$.prototype.Pn,802:$.prototype.On,803:$.prototype.Nn,807:$.prototype.Pi,811:$.prototype.Pi,815:$.prototype.Pi},Xj={496:$.prototype.bn,497:$.prototype.gn,498:$.prototype.en,499:$.prototype.fn,500:$.prototype.an,501:$.prototype.$m,502:$.prototype.cn,503:$.prototype.Zm, -1014:$.prototype.dn};t(function(){for(var a=B(window.document,"pcjs","hdc"),b=0;bkk){if(d.load(this.Nf)){this.qe=new H(this,"1.15.9","failsafe");this.qe.load()&&(ok(this,d),a=2,fk(this.qe));this.qe.set("timestamp",ia());ik(this.qe);var e=this.yc&&!this.wg;if(1==a||ma("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),k=d.get("data");f&&("ok"==f?d.load(k):("error"== -f&&"no machine state"!=k?(this.za("Error: "+k),"unable to verify user"==k&&(pa("user",""),this.zc=null)):this.hc(f+": "+k),fk(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&nk(this,c?d:null)}else 2==a&&d.clear()}else nk(this);delete this.Nf;delete this.Zg}e=Fa(this.id);for(f=0;fa[1];a=a[2];this.na.Db=!0;this.Aj||(this.hc("PCjs v1.15.9\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.Aj=!0);this.la&&pk(this,this.la,b,c,a);this.Cj&&(ok(this,b),b.clear());!c&&this.qe&&(this.qe.clear(),delete this.qe)}; -function ok(a,b){if(ma("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Bd(),d=b.toString(),e={app:"PCjs",ver:"1.15.9"};e.url=a.url;e.user=c;e.type="bug";e.data=d;q("http://www.pcjs.org/api/v1/report",!0,e)}} -function qk(a,b,c){var d,e="none",f=new H(a,"1.15.9"),k=new H(a,"1.15.9","validate"),g=ia();k.set("timestamp",g);f.set("timestamp",g);f.set("version","1.15.9");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.la&&a.la.Pb&&(c&&jb(a.la),d=a.la.Pb(b,c),"object"===typeof d&&f.set(a.la.id,d),c&&(a.la.na.Db=!1,!1===d&&(e=null)));for(var g=Fa(a.id),m=0;mg.indexOf("/")&&(g=window.location.pathname+g);a=a.replace(/(]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(g?" url=$2"+g+"$2":""))}g=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(x){g= -null,a=x.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");q(e,!0,null,null,function(f,k,g){if(g||!k)c(a,"unable to resolve XML reference: "+d[0]+" ("+g+")");else{if(f=d[3])if(g=k.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var m=g[0],n,r=/( [a-z]+=)(['"])(.*?)\2/g;n=r.exec(f);)m=0>m.indexOf(n[1])?m.replace(">",n[0]+">"):m.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);g[0]!=m&&(k=k.replace(g[0],m))}else{c(a,"missing <"+d[1]+"> in "+e);return}k=k.replace(/<\?xml[^>]*>[\r\n]*/, -"");a=a.replace(d[0],k);wk(a,b,c)}})}else c(a,null)} -function xk(a,b,c,d){function e(a){if(void 0===m){var b=g&&B(g,"machine-warning");m=b&&b[0]||g}m&&(m.innerHTML=ga(a))}function f(a){e("Error: "+a);n&&k();n=!1}function k(){0==--tk&&xa(!0)}var g,m,n=!0;tk++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.15.9/components.xsl");var r=function(a,d){if(d){var m=function(a,m){if(m)if(m)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(m);n?(g.outerHTML=n,k()):f("transformNodeToObject failed")}else window.document.implementation&& -window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(m),(n=n.transformToFragment(d,window.document))?(g.parentNode.replaceChild(n,g),k()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?uk(c,null,null,!1,e,m):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?uk(b,a,d,!0,e,r):vk(b,null,a,d,!1,e,r)}else f("failed to find machine element: "+a)}catch(x){f(x.message)}return n} -window.embedPC=function(a,b,c,d){return xk(a,b,c,d)};window.enableEvents=xa;window.sendEvent=ya;xa(!1);})(); +d}}}}(this,d),!0;case "descDisk":case "listDrives":return this.sa[c]=d,d.onchange=function(a,b){return function(){var c=parseInt(b.value,10);isNaN(c)||Mj(a,c)}}(this,d),!0;case "loadDrive":return this.sa[c]=d,d.onclick=function(a){return function(){var b,c=a.sa.listDisks,d=a.sa.listDrives;if(c&&d&&!isNaN(b=parseInt(d.value,10))&&0<=b&&ba.ta.restore(f)&&(e=!1);e&&a.ta&&void 0!==a.Wa&&(a.Ka=a.ta.seek(a.eb,a.Ja,a.Ua));return e};h.Zi=function(){for(var a=0,b=[],c=0;ca.Eb||e[1]>a.Gb)&&(this.za('Diskette "'+c+'" too large for drive '+String.fromCharCode(65+a.Va)),b=null);b&&(a.ta=b,a.bl=c,a.ne=d,Tj(this,c,d,b),this.Ld|=128,this.za('Mounted diskette "'+c+'" in drive '+String.fromCharCode(65+a.Va),a.fe),a.Lg=e[0],a.yf=e[1],a.zf=e[2]);a.fe&&(a.fe=!1,--this.Zd||this.Ma());Mj(this,a.Va)}; +function Mj(a,b){if(0<=b&&b=this.Ya&&(this.wa&=-81,this.lb=this.Ya=0);return a}; +h.rn=function(a,b){this.Ya=Lj[c].$c){var d=!1;this.lb=0;var c=this.Ia(),e,f,k,g,m,n=c&31;switch(n){case 3:this.Ia(l.No);this.Ia(l.to);this.Cb();break;case 4:f=this.Ia(l.Se);this.Va=f&3;e=this.xa[this.Va];this.Cb();this.Rb((e.Sa&4278190080)>>>24,l.Qo);break;case 5:case 6:f=this.Ia(l.Se);d=f>>2&1;this.Va=f&3;e=this.xa[this.Va];e.Ja=d;f=e.eb=this.Ia(l.fj);k=this.Ia(l.gj);g=e.Ua=this.Ia(l.ij);m=this.Ia(l.dh);e.bb=128<< +m;e.td=this.Ia(l.oo);this.Ia(l.ll);this.Ia(l.no);6==n?this.yh(e):this.zh(e);Uj(this,e,c,d,f,k,g,m);d=!0;break;case 7:f=this.Ia(l.Se);this.Va=f&3;e=this.xa[this.Va];e.eb=e.rd=0;e.Sa=268435488;this.Cb();d=!0;break;case 8:e=this.xa[this.Va];e.Ja=0;this.Cb();this.Rb(e.Va|e.Ja<<2|e.Sa&255,l.nl);this.Rb(e.eb,l.Co);this.Va=this.Va+1&3;break;case 10:f=this.Ia(l.Se);d=f>>2&1;this.Va=f&3;e=this.xa[this.Va];f=e.eb;k=e.Ja=d;g=e.Ua=1;m=0;e.Sa=0;e.ta&&(e.Ka=e.ta.seek(e.eb,e.Ja,e.Ua))?m=e.Ka.length:e.Sa=1088;Uj(this, +e,c,d,f,k,g,m);d=!0;break;case 13:f=this.Ia(l.Se);d=f>>2&1;this.Va=f&3;e=this.xa[this.Va];f=e.eb;k=e.Ja=d;g=1;m=this.Ia(l.dh);e.bb=128<>2&1,f=this.Ia(l.zo),e.eb+=f-e.rd,0>e.eb&&(e.eb=0),e.eb>=e.Eb&&(e.eb=e.Eb-1),e.rd=f,e.Sa=32,0==e.eb&&(e.Sa|=268435456),this.Cb(),d=!0}0>>8,l.Oo);a.Rb((b.Sa&16711680)>>>16,l.Po);var m=0;if(e!=b.eb||f!=b.Ja)m=k=1;c&128&&(f^=m,d||(m=0));a.Rb(e+m,l.fj);a.Rb(f,l.gj);a.Rb(k,l.ij);a.Rb(g,l.dh)}h.Ia=function(){var a=this.Sb[this.lb];this.lb++;return a};h.Cb=function(){this.lb=this.Ya=0};h.Rb=function(a){this.Sb[this.Ya++]=a}; +h.wh=function(a,b,c){void 0===b||0>b?this.xc(a,c):c(-1,!1)};h.xh=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};h.sl=function(a,b){return void 0!==b&&0<=b?this.cj(a,b):-1};h.yh=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(Sh(this.ja,2,this,"dmaRead",a),Oh(this.ja,2)))};h.zh=function(a){a.Sa=72;a.ta&&(a.ta.De?a.Sa=576:(a.Ka=null,a.Sa=0,this.ja&&(Sh(this.ja,2,this,"dmaWrite",a),Oh(this.ja,2))))}; +h.xj=function(a){a.Sa=72;a.ta&&(a.Ka=null,a.Sa=0,this.ja&&(a.be=0,a.jc=Array(4),a.$e=!0,a.ef=0,Sh(this.ja,2,this,"dmaFormat",a),Oh(this.ja,2),a.$e=!1))};h.xc=function(a,b){var c=-1;if(!a.Sa&&a.ta){do{if(a.Ka&&0<=(c=Jj(a.Ka,a.Wa++)))break;a.Ka=a.ta.seek(a.eb,a.Ja,a.Ua);if(!a.Ka){a.Sa=1088;break}a.Wa=0;this.Xe(a)}while(1)}b(c,!1)}; +h.Ac=function(a,b){if(a.Sa||!a.ta)return-1;do{if(a.Ka&&a.ta.write(a.Ka,a.Wa++,b))break;a.Ka=a.ta.seek(a.eb,a.Ja,a.Ua);if(!a.Ka){a.Sa=8256;b=-1;break}a.Wa=0;this.Xe(a)}while(1);return b};h.Xe=function(a){a.Ua++;a.Ua>=a.zf+1&&(a.Ua=1,a.Ja++,a.Ja>=a.yf&&(a.Ja=0,a.eb++))};h.cj=function(a,b){if(a.Sa)return-1;a.jc[a.be++]=b;if(a.be==a.jc.length){a.eb=a.jc[0];a.Ja=a.jc[1];a.Ua=a.jc[2];a.bb=128<this.Ac(a,a.oj))return-1;a.ef++}a.ef>=a.td&&(b=-1);return b}; +var Pj={1012:Kj.prototype.fm,1013:Kj.prototype.dm,1015:Kj.prototype.em},Qj={1010:Kj.prototype.sn,1013:Kj.prototype.rn,1015:Kj.prototype.qn};u(function(){for(var a=C(window.document,"pcjs","fdc"),b=0;b=e&&(this.Jf|=(f.type&3)<<(1-e<<1))}return d}; +h.Xi=function(){var a=0,b=[];this.ee?(b[a++]=this.ld,b[a++]=this.al,b[a++]=this.Md,b[a++]=this.Vg,b[a++]=this.Tg,b[a++]=this.Sg,b[a++]=this.Me,b[a++]=this.wa,b[a++]=this.Vi,b[a++]=this.Ug):(b[a++]=this.Jf,b[a++]=this.wa,b[a++]=this.Sb,b[a++]=this.lb,b[a++]=this.Ya,b[a++]=this.$k,b[a++]=this.Zk,b[a++]=this.Yk,b[a++]=this.Fe);b[a]=this.Zi();return b}; +h.Qh=function(a,b,c,d,e){var f=0,k=!0;void 0===d&&(d=[0,0,!1,Array(8)]);b.Va=a;b.errorCode=d[f++];b.fl=d[f++];b.Ce=d[f++];b.ve=d[f++];b.we=d[f++];b.Ja=d[f++];b.Gb=d[f++];b.Od=d[f++];b.Ua=d[f++];b.td=d[f++];b.bb=d[f++];b.ig=this.ee?0:1;b.name=c.name;void 0===b.name&&(b.name="Hard Drive");b.path=c.path;b.mode=c.mode||(b.path?"preload":"local");"demandro"!=b.mode&&"demandrw"!=b.mode||this.Bd()||(b.mode="local");b.type=c.type;if(void 0===b.type||void 0===Vj[this.of][b.type])b.type=this.Jl;c=Vj[this.of][b.type]; +b.Ob=c[2]||17;b.ub=c[3]||512;if(e&&this.ja&&(e=this.ja,c=b.type,e.oa)){var g=e.oa[18],g=a?g&240|c:g&15|c<<4;e.oa&&(e.oa[18]=g,Ch(e))}void 0===b.ta&&(b.ta=null,this.za("Type "+b.type+' "'+b.name+'" is fixed disk '+a,!0));ak(this,b);b.Wa=d[f++];b.Ka=null;b.ta&&(a=d[f],void 0!==a&&0>b.ta.restore(a)&&(k=!1),k&&void 0!==b.Wa&&(b.Ka=b.ta.seek(b.Od,b.Ja,b.Ua+b.ig)));return k};h.Zi=function(){for(var a=0,b=[],c=0;c=this.Ya&&(this.lb=this.Ya=0,this.wa&=-15);return a};h.On=function(a,b){this.Ya=c&&(this.wa|=2,this.wa&=-2,bk(this))}; +h.Gm=function(){var a=this.wa;this.lb=this.Qa.ub){var b=this;this.xc(this.Qa,function(a){0<=a?ck(b):(b.wa=1,b.ld=16)},!1)}else this.wa=80;return a}; +h.dn=function(a,b){this.Qa&&this.Qa.bb>=this.Qa.ub&&(0>this.Ac(this.Qa,b)?(this.wa=1,this.ld=16):this.Qa.Wa==this.Qa.ub&&(this.Qa.bb-=this.Qa.ub,this.Md=this.Md-1&255,ck(this),this.Qa.bb>=this.Qa.ub||(this.wa=80)))};h.Tl=function(){return this.ld};h.jn=function(a,b){this.al=b};h.Ul=function(){return this.Md};h.gn=function(a,b){this.Md=b};h.Vl=function(){return this.Vg};h.hn=function(a,b){this.Vg=b};h.Ql=function(){return this.Tg};h.cn=function(a,b){this.Tg=b};h.Pl=function(){return this.Sg}; +h.bn=function(a,b){this.Sg=b};h.Sl=function(){return this.Me};h.en=function(a,b){this.Me=b;this.wa=this.xa[this.Me&16?1:0]?this.wa|64:this.wa&-65};h.Wl=function(){return this.wa};h.an=function(a,b){this.Vi=b;this.ja&&ci(this.ja,14);dk(this)};h.fn=function(a,b){this.Ug&4&&!(b&4)&&(this.ld=1);this.Ug=b}; +function dk(a){var b=!1,c=a.Vi,d=a.Me&16?1:0,e=a.Me&15,f=a.Tg|(a.Sg&3)<<8,k=a.Vg,g=a.Md||256;a.Qa=null;a.ld=0;a.wa=80;(d=a.xa[d])?(d.Od=f,d.Ja=e,d.Ua=k,d.bb=g*d.ub,c=144<=c?c:c&240,d.Ka=null,d.errorCode=0,a.Qa=d):c=-1;switch(c&240){case 32:a.xc(d,function(b){0<=b&&a.ja?(ck(a),a.wa=136):(a.wa=1,a.ld=16)},!1);break;case 48:a.ja?(ck(a),a.wa=136):(a.wa=1,a.ld=4);break;case 16:b=!0;break;case 64:b=!0;break;case 144:a.ld=1;b=!0;break;case 145:d.Gb=e+1,d.Ob=g,b=!0}b&&ck(a)} +function ck(a){!a.ja||a.Ug&2||bi(a.ja,14)} +function bk(a){a.lb=0;var b=a.Ia(),c=a.Ia(),d=c&32,e=d>>5,f=c&31,k=a.Ia(),g=a.Ia(),m=k<<2&768|g,n=k&63,q=a.Ia(),w=a.Ia(),t=a.xa[e];t&&(t.Od=m,t.Ja=f,t.Ua=n,t.bb=q*t.ub);switch(b){case 3:a.Cb(t?t.errorCode:4);a.Rb(c);a.Rb(k);a.Rb(g);a.Rb(0|d);b=-1;break;case 12:for(c=0;0<=(b=a.Ia());)t&&cb?this.xc(a,c):c(-1,!1)}; +h.xh=function(a,b){return void 0!==b&&0<=b?this.Ac(a,b):-1};h.tl=function(a,b){var c;void 0!==b&&0<=b?(c=b,a.Wa=a.Ob+b&&(a.Ua=b,a.Ja++,a.Ja>=a.Gb&&(a.Ja=0,a.Od++))}; +h.cj=function(a,b){if(a.errorCode)return-1;a.jc[a.be++]=b;if(a.be==a.jc.length){a.Od=a.jc[0];a.Ja=a.jc[1];a.Ua=a.jc[2];a.bb=128<this.Ac(a,a.oj))return-1;a.ef++}a.ef>=a.td&&(b=-1);return b};h.Hm=function(){var a=this.la.K&255;!(this.la.H>>8)&&128>8)||(a=!this.ja)||(a=!(this.ja.mb[0].Zc&64));return a?!0:!1}; +var Xj={800:$.prototype.Fm,801:$.prototype.Gm,802:$.prototype.Em},Wj={496:$.prototype.Rl,497:$.prototype.Tl,498:$.prototype.Ul,499:$.prototype.Vl,500:$.prototype.Ql,501:$.prototype.Pl,502:$.prototype.Sl,503:$.prototype.Wl},Zj={800:$.prototype.On,801:$.prototype.Rn,802:$.prototype.Qn,803:$.prototype.Pn,807:$.prototype.Qi,811:$.prototype.Qi,815:$.prototype.Qi},Yj={496:$.prototype.dn,497:$.prototype.jn,498:$.prototype.gn,499:$.prototype.hn,500:$.prototype.cn,501:$.prototype.bn,502:$.prototype.en,503:$.prototype.an, +1014:$.prototype.fn};u(function(){for(var a=C(window.document,"pcjs","hdc"),b=0;blk){if(d.load(this.Nf)){this.qe=new H(this,"1.15.9","failsafe");this.qe.load()&&(pk(this,d),a=2,gk(this.qe));this.qe.set("timestamp",ia());jk(this.qe);var e=this.yc&&!this.xg;if(1==a||ma("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=d.parse()){var f=d.get("code"),k=d.get("data");f&&("ok"==f?d.load(k):("error"== +f&&"no machine state"!=k?(this.za("Error: "+k),"unable to verify user"==k&&(pa("user",""),this.zc=null)):this.hc(f+": "+k),gk(d),d.load()?(c=d.parse(),e=!0):c=!1))}e&&ok(this,c?d:null)}else 2==a&&d.clear()}else ok(this);delete this.Nf;delete this.$g}e=Fa(this.id);for(f=0;fa[1];a=a[2];this.na.Db=!0;this.Bj||(this.hc("PCjs v1.15.9\nCopyright \u00a9 2012-2014 Jeff Parsons \nLicense: GPL version 3 or later "),this.Bj=!0);this.la&&qk(this,this.la,b,c,a);this.Dj&&(pk(this,b),b.clear());!c&&this.qe&&(this.qe.clear(),delete this.qe)}; +function pk(a,b){if(ma("There may be a problem with your PCjs machine.\n\nTo help us diagnose it, click OK to send this PCjs machine state to http://www.pcjs.org.")){var c=a.Bd(),d=b.toString(),e={app:"PCjs",ver:"1.15.9"};e.url=a.url;e.user=c;e.type="bug";e.data=d;r("http://www.pcjs.org/api/v1/report",!0,e)}} +function rk(a,b,c){var d,e="none",f=new H(a,"1.15.9"),k=new H(a,"1.15.9","validate"),g=ia();k.set("timestamp",g);f.set("timestamp",g);f.set("version","1.15.9");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.la&&a.la.Pb&&(c&&kb(a.la),d=a.la.Pb(b,c),"object"===typeof d&&f.set(a.la.id,d),c&&(a.la.na.Db=!1,!1===d&&(e=null)));for(var g=Fa(a.id),m=0;mg.indexOf("/")&&(g=window.location.pathname+g);a=a.replace(/(]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" state=$2"+d+"$2":"")+(g?" url=$2"+g+"$2":""))}g=null;if("<"==a.charAt(0))try{window.ActiveXObject||"ActiveXObject"in window?(e||(a=a.replace(/\s*/g,"")),g=new window.ActiveXObject("Microsoft.XMLDOM"),g.async=!1,g.loadXML(a)):g=(new window.DOMParser).parseFromString(a,"text/xml")}catch(w){g= +null,a=w.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");r(e,!0,null,null,function(f,k,g){if(g||!k)c(a,"unable to resolve XML reference: "+d[0]+" ("+g+")");else{if(f=d[3])if(g=k.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var m=g[0],n,q=/( [a-z]+=)(['"])(.*?)\2/g;n=q.exec(f);)m=0>m.indexOf(n[1])?m.replace(">",n[0]+">"):m.replace(new RegExp(n[1]+"(['\"])(.*?)\\1"),n[0]);g[0]!=m&&(k=k.replace(g[0],m))}else{c(a,"missing <"+d[1]+"> in "+e);return}k=k.replace(/<\?xml[^>]*>[\r\n]*/, +"");a=a.replace(d[0],k);xk(a,b,c)}})}else c(a,null)} +function yk(a,b,c,d){function e(a){if(void 0===m){var b=g&&C(g,"machine-warning");m=b&&b[0]||g}m&&(m.innerHTML=ga(a))}function f(a){e("Error: "+a);n&&k();n=!1}function k(){0==--uk&&xa(!0)}var g,m,n=!0;uk++;try{if(g=window.document.getElementById(a)){c||(c="/versions/pcjs/1.15.9/components.xsl");var q=function(a,d){if(d){var m=function(a,m){if(m)if(m)if(e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window){var n=d.transformNode(m);n?(g.outerHTML=n,k()):f("transformNodeToObject failed")}else window.document.implementation&& +window.document.implementation.createDocument?(n=new XSLTProcessor,n.importStylesheet(m),(n=n.transformToFragment(d,window.document))?(g.parentNode.replaceChild(n,g),k()):f("transformToFragment failed")):f("unable to transform XML: unsupported browser");else f("failed to load XSL file: "+c);else f(a)};d?vk(c,null,null,!1,e,m):f("failed to load XML file: "+b)}else f(a)};"<"!=b.charAt(0)?vk(b,a,d,!0,e,q):wk(b,null,a,d,!1,e,q)}else f("failed to find machine element: "+a)}catch(w){f(w.message)}return n} +window.embedPC=function(a,b,c,d){return yk(a,b,c,d)};window.enableEvents=xa;window.sendEvent=ya;xa(!1);})();