Speed up page load times by "compiling" the disk library manifests

This commit is contained in:
Jeff Parsons 2016-02-05 16:19:49 -08:00
commit 1b9350f86f
39 changed files with 785 additions and 275 deletions

View file

@ -312,7 +312,7 @@ module.exports = function(grunt) {
"c1pxsl": {
files: [
{
cwd: "./modules/shared/templates/",
cwd: "modules/shared/templates/",
src: ["common.css", "common.xsl", "document.css", "document.xsl", "machine.xsl", "manifest.xsl", "outline.xsl"],
dest: "versions/c1pjs/<%= pkg.version %>/",
expand: true
@ -330,7 +330,7 @@ module.exports = function(grunt) {
"pcxsl": {
files: [
{
cwd: "./modules/shared/templates/",
cwd: "modules/shared/templates/",
src: ["common.css", "common.xsl", "document.css", "document.xsl", "machine.xsl", "manifest.xsl", "outline.xsl"],
dest: "versions/pcjs/<%= pkg.version %>/",
expand: true
@ -348,7 +348,7 @@ module.exports = function(grunt) {
"c1pjs": {
files: [
{
cwd: "./modules/c1pjs/templates/",
cwd: "modules/c1pjs/templates/",
src: ["components.*"],
dest: "versions/c1pjs/<%= pkg.version %>/",
expand: true
@ -365,7 +365,7 @@ module.exports = function(grunt) {
"pcjs": {
files: [
{
cwd: "./modules/pcjs/templates/",
cwd: "modules/pcjs/templates/",
src: ["components.*"],
dest: "versions/pcjs/<%= pkg.version %>/",
expand: true
@ -393,6 +393,48 @@ module.exports = function(grunt) {
return content.replace(/\/versions\/\{\$APPCLASS}\/\{\$APPVERSION}\//g, "");
}
}
},
"manifests": {
files: [
{
cwd: "disks/pc/",
src: ["library.xml", "samples.xml"],
dest: "disks/pc/compiled/",
expand: true
}
],
options: {
process: function(content, srcPath) {
var contentOrig = content;
var reManifest = /([ \t]*)<manifest.*? ref="(.*?)".*?\/>/g, matchManifest;
while ((matchManifest = reManifest.exec(contentOrig))) {
var sManifest = grunt.file.read(path.join('.', matchManifest[2]));
if (!sManifest) continue;
var sDefaultName = "", match;
match = sManifest.match(/<title.*?>(.*?)<\/title>/);
if (match) {
sDefaultName = match[1];
match = sManifest.match(/<version.*?>(.*?)<\/version>/);
if (match) sDefaultName += ' ' + match[1];
}
var reDisk, matchDisk, sDisks = "";
reDisk = /<disk.*? href="([^"]*)".*?\/>/g;
while ((matchDisk = reDisk.exec(sManifest))) {
if (sDisks) sDisks += "\n";
sDisks += matchManifest[1] + "<disk path=\"" + matchDisk[1] + "\">" + sDefaultName + "</disk>";
}
reDisk = /<disk.*? href="([^"]*)".*?>([\S\s]*?)<\/disk>/g;
while ((matchDisk = reDisk.exec(sManifest))) {
if (sDisks) sDisks += "\n";
var matchName = matchDisk[2].match(/<name.*?>(.*?)<\/name>/);
var sName = matchName && matchName[1] || sDefaultName;
sDisks += matchManifest[1] + "<disk path=\"" + matchDisk[1] + "\">" + sName + "</disk>";
}
content = content.replace(matchManifest[0], sDisks);
}
return content;
}
}
}
},
run: {

View file

@ -11,7 +11,7 @@
<video ref="/devices/pc/video/ibm/cga/ibm-cga-960.xml"/>
<keyboard ref="/devices/pc/keyboard/keyboard-us83.xml"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5150" sw1="01001001" sw2="10100000" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="switches" label="SW2" binding="sw2" left="0px"/>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-us83.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/default.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01001001" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01001001" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-us83.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01001001" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01001001" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-us83.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px" automount='{A:{name:"MS-DOS 4.0M (Disk 1)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK1.json"}, B:{name:"MS-DOS 4.0M (Disk 2)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK2.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px" automount='{A:{name:"MS-DOS 4.0M (Disk 1)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK1.json"}, B:{name:"MS-DOS 4.0M (Disk 2)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK2.json"}}'/>
<chipset id="chipset" model="5160" sw1="01001001" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -13,7 +13,7 @@
<control type="button" binding="reset">Reset</control>
</cpu>
<keyboard ref="/devices/pc/keyboard/keyboard-minimal.xml"/>
<fdc ref="/disks/pc/library.xml" pos="right"/>
<fdc ref="/disks/pc/compiled/library.xml" pos="right"/>
<hdc id="hdcXT" drives='[{name:"10Mb Hard Disk",type:3}]'/>
<chipset id="chipset" model="5160" sw1="01001001"/>
</machine>

View file

@ -13,7 +13,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01001101" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -13,7 +13,7 @@
<cpu id="cpu8088" model="8088">
<control type="button" binding="setSpeed">Fast</control>
</cpu>
<fdc ref="/disks/pc/library.xml"/>
<fdc ref="/disks/pc/compiled/library.xml"/>
<chipset id="chipset" model="5160" sw1="01001101"/>
<hdc ref="/disks/pc/fixed/win101-ega.xml"/>
<serial id="com2" adapter="2"/>

View file

@ -13,7 +13,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01001101" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -11,7 +11,7 @@
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
<video ref="/devices/pc/video/ibm/ega/ibm-ega-128kb-autolockfs.xml"/>
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<fdc ref="/disks/pc/library.xml"/>
<fdc ref="/disks/pc/compiled/library.xml"/>
<chipset id="chipset" model="5160" sw1="01001101"/>
<hdc ref="/disks/pc/fixed/win101-ega.xml"/>
<serial id="com2" adapter="2"/>

View file

@ -13,7 +13,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01001101" pos="left" padleft="8px" padbottom="8px">
<control type="switches" label="SW1" binding="sw1" left="0px"/>
<control type="description" binding="swdesc" left="0px"/>

View file

@ -13,7 +13,7 @@
<cpu id="cpu8088" model="8088">
<control type="button" binding="setSpeed">Fast</control>
</cpu>
<fdc ref="/disks/pc/library.xml" pos="right"/>
<fdc ref="/disks/pc/compiled/library.xml" pos="right"/>
<chipset id="chipset" model="5160" sw1="01001101"/>
<hdc ref="/disks/pc/fixed/win101-ega.xml"/>
<serial id="com2" adapter="2"/>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal.xml"/>
<debugger id="debugger"/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="320px"/>
<fdc ref="/disks/pc/compiled/library.xml" width="320px"/>
<chipset id="chipset" model="5160" sw1="01000001"/>
<hdc id="hdcXT" drives='[{name:"10Mb Hard Disk",type:3}]'/>
</machine>

View file

@ -10,7 +10,7 @@
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
<video ref="/devices/pc/video/ibm/mda/ibm-mda.xml"/>
<keyboard ref="/devices/pc/keyboard/keyboard-minimal.xml"/>
<fdc ref="/disks/pc/library.xml"/>
<fdc ref="/disks/pc/compiled/library.xml"/>
<chipset id="chipset" model="5160" sw1="01000001"/>
<hdc id="hdcXT" drives='[{name:"10Mb Hard Disk",type:3}]'/>
</machine>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger" messages="fault" commands=""/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="340px" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" width="340px" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
<hdc id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2}]'/>
<chipset id="chipset" model="5170" floppies="[1200,1200]"/>
<serial id="com1" adapter="1"/>

View file

@ -11,7 +11,7 @@
<video ref="/devices/pc/video/ibm/ega/ibm-ega-128kb-autolockfs.xml"/>
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger" messages="fault" commands=""/>
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.20 (Disk 1)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK1.json"}, B: {name: "PC-DOS 3.20 (Disk 2)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK2.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" automount='{A: {name: "PC-DOS 3.20 (Disk 1)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK1.json"}, B: {name: "PC-DOS 3.20 (Disk 2)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK2.json"}}'/>
<panel ref="/devices/pc/panel/btpanel.xml"/>
<hdc id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2}]'/>
<chipset id="chipset" model="5170" floppies="[1440,1200]" monitor="ega"/>

View file

@ -11,7 +11,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger" messages="fault" commands=""/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" width="340px" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" width="340px" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
<chipset id="chipset" model="5170" floppies="[1200,1200]"/>
<serial id="com1" adapter="1"/>
<serial id="com2" adapter="2" binding="print"/>

View file

@ -9,7 +9,7 @@
<rom id="romBIOS" addr="0xf0000" size="0x10000" alias="0xff0000" file="/devices/pc/bios/5170/1984-01-10.json"/>
<video ref="/devices/pc/video/ibm/ega/ibm-ega-128kb-autolockfs.xml"/>
<keyboard ref="/devices/pc/keyboard/keyboard-minimal.xml"/>
<fdc ref="/disks/pc/library.xml" pos="right" automount='{A: {name: "MS-DOS 4.00 (Disk 1)", path: "/disks/pc/dos/microsoft/4.00/MSDOS400-DISK1.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" pos="right" automount='{A: {name: "MS-DOS 4.00 (Disk 1)", path: "/disks/pc/dos/microsoft/4.00/MSDOS400-DISK1.json"}}'/>
<chipset id="chipset" model="5170" floppies="[1200,1200]"/>
<serial id="com1" adapter="1"/>
<serial id="com2" adapter="2" binding="print"/>

View file

@ -13,7 +13,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-arrows.xml"/>
<debugger id="debugger" messages="" commands=""/>
<panel ref="/devices/pc/panel/wide386.xml"/>
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.30 (Disk 1)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK1.json"}, B: {name: "PC-DOS 3.30 (Disk 2)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK2.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" automount='{A: {name: "PC-DOS 3.30 (Disk 1)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK1.json"}, B: {name: "PC-DOS 3.30 (Disk 2)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK2.json"}}'/>
<hdc id="hdcAT" type="at" drives='[{name: "20Mb Hard Disk", type: 2, path: "/disks/pc/fixed/20mb/pcdos330-empty.json"}]'/>
<chipset id="chipset" model="deskpro386" floppies="[1200,1200]"/>
<serial id="com1" adapter="1"/>

View file

@ -13,7 +13,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-arrows.xml"/>
<debugger id="debugger" messages="" commands=""/>
<panel ref="/devices/pc/panel/wide386.xml"/>
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.30 (Disk 1)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK1.json"}, B: {name: "PC-DOS 3.30 (Disk 2)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK2.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" automount='{A: {name: "PC-DOS 3.30 (Disk 1)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK1.json"}, B: {name: "PC-DOS 3.30 (Disk 2)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK2.json"}}'/>
<hdc id="hdcAT" type="at" drives='[{name: "20Mb Hard Disk", type: 2, path: "/disks/pc/fixed/20mb/pcdos330-empty.json"}]'/>
<chipset id="chipset" model="deskpro386" floppies="[1200,1200]"/>
<serial id="com1" adapter="1"/>

View file

@ -13,7 +13,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger" messages="fault|port" commands=""/>
<panel ref="/devices/pc/panel/btpanel.xml"/>
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
<hdcNone id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2}]'/>
<chipset id="chipset" model="deskpro386" floppies="[1200,1200]"/>
<serial id="com1" adapter="1"/>

View file

@ -11,7 +11,7 @@
<rom id="romBIOS" addr="0xf8000" size="0x8000" alias="[0xf0000,0xffff0000,0xffff8000]" file="/devices/pc/bios/compaq/deskpro386/1988-01-28/1988-01-28.json"/>
<video ref="/devices/pc/video/ibm/vga/ibm-vga-autolockfs.xml"/>
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.30 (Disk 1)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK1.json"}, B: {name: "VGA Tests (Black Book)", path: "/tests/pc/vga/VGABIN.json"}}'/>
<fdc ref="/disks/pc/compiled/library.xml" automount='{A: {name: "PC-DOS 3.30 (Disk 1)", path: "/disks/pc/dos/ibm/3.30/PCDOS330-DISK1.json"}, B: {name: "VGA Tests (Black Book)", path: "/tests/pc/vga/VGABIN.json"}}'/>
<debugger id="debugger" messages="fault|int" commands=""/>
<panel ref="/devices/pc/panel/btpanel.xml"/>
<hdc id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2}]'/>

View file

@ -11,7 +11,7 @@
<rom id="romBIOS" addr="0xf8000" size="0x8000" alias="[0xf0000,0xffff0000,0xffff8000]" file="/devices/pc/bios/compaq/deskpro386/1988-01-28/1988-01-28.json"/>
<video ref="/devices/pc/video/ibm/vga/ibm-vga-lockfs.xml"/>
<keyboard id="keyboard"/>
<fdc ref="/disks/pc/library.xml" automount=''/>
<fdc ref="/disks/pc/compiled/library.xml" automount=''/>
<debugger id="debugger" messages="" commands=''/>
<panel ref="/devices/pc/panel/wide386.xml"/>
<hdc id="hdcAT" type="at" drives='[{name:"68Mb Hard Disk",type:4,path:"http://archive.pcjs.org/devices/pc/machine/compaq/deskpro386/vga/4096kb/WIN95-68Mb.json"}]'/>

View file

@ -0,0 +1,434 @@
<?xml version="1.0" encoding="UTF-8"?>
<fdc id="fdcNEC" automount='{A:{name:"PC-DOS 2.00 (Disk 1)",path:"/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json"}, B:{name:"PC-DOS 2.00 (Disk 2)",path:"/disks/pc/dos/ibm/2.00/PCDOS200-DISK2.json"}}' pos="left" padleft="8px" padbottom="8px">
<control type="list" binding="listDrives"/>
<control type="list" binding="listDisks">
<disk path="">None</disk>
<disk path="/disks/pc/cpm/1.1b/cpm86-disk1.json">CP/M-86 (Disk 1)</disk>
<disk path="/disks/pc/cpm/1.1b/cpm86-disk2.json">CP/M-86 (Disk 2)</disk>
<disk path="/disks/pc/diags/ibm/2.20/5150_5155_5160_ADVDIAG_220.json">IBM Advanced Diagnostics 2.20</disk>
<disk path="/disks/pc/dos/ibm/1.00/PCDOS100.json">PC-DOS 1.00</disk>
<disk path="/disks/pc/dos/ibm/1.10/PCDOS110.json">PC-DOS 1.10</disk>
<disk path="/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json">PC-DOS 2.00 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/2.00/PCDOS200-DISK2.json">PC-DOS 2.00 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/2.10/PCDOS210-DISK1.json">PC-DOS 2.10 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/2.10/PCDOS210-DISK2.json">PC-DOS 2.10 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json">PC-DOS 3.00 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json">PC-DOS 3.00 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/3.10/PCDOS310-DISK1.json">PC-DOS 3.10 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/3.10/PCDOS310-DISK2.json">PC-DOS 3.10 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/3.20/PCDOS320-DISK1.json">PC-DOS 3.20 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/3.20/PCDOS320-DISK2.json">PC-DOS 3.20 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/3.30/PCDOS330-DISK1.json">PC-DOS 3.30 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/3.30/PCDOS330-DISK2.json">PC-DOS 3.30 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/3.30/PCDOS330-DISK1-720K.json">PC-DOS 3.30 (720K Disk)</disk>
<disk path="/disks/pc/dos/ibm/4.00/PCDOS400-DISK1.json">PC-DOS 4.00 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/4.00/PCDOS400-DISK2.json">PC-DOS 4.00 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/4.00/PCDOS400-DISK3.json">PC-DOS 4.00 (Disk 3)</disk>
<disk path="/disks/pc/dos/ibm/4.00/PCDOS400-DISK4.json">PC-DOS 4.00 (Disk 4)</disk>
<disk path="/disks/pc/dos/ibm/4.00/PCDOS400-DISK5.json">PC-DOS 4.00 (Disk 5)</disk>
<disk path="/disks/pc/dos/ibm/5.00/PCDOS500-DISK1-720K.json">PC-DOS 5.00 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/5.00/PCDOS500-DISK2-720K.json">PC-DOS 5.00 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/5.00/PCDOS500-DISK3-720K.json">PC-DOS 5.00 (Disk 3)</disk>
<disk path="/disks/pc/dos/ibm/6.10/PCDOS610-DISK1-1440K.json">PC-DOS 6.10 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/6.10/PCDOS610-DISK2-1440K.json">PC-DOS 6.10 (Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/6.10/PCDOS610-DISK3-1440K.json">PC-DOS 6.10 (Disk 3)</disk>
<disk path="/disks/pc/dos/ibm/6.10/PCDOS610-DISK4-1440K.json">PC-DOS 6.10 (Disk 4)</disk>
<disk path="/disks/pc/dos/ibm/6.10/PCDOS610-DISK5-1440K.json">PC-DOS 6.10 (Disk 5)</disk>
<disk path="/disks/pc/dos/ibm/7.00/PCDOS700-DISK1.json">PC-DOS 7.00 (SETUP Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/7.00/PCDOS700-DISK2.json">PC-DOS 7.00 (SETUP Disk 2)</disk>
<disk path="/disks/pc/dos/ibm/7.00/PCDOS700-DISK3.json">PC-DOS 7.00 (SETUP Disk 3)</disk>
<disk path="/disks/pc/dos/ibm/7.00/PCDOS700-DISK4.json">PC-DOS 7.00 (SETUP Disk 4)</disk>
<disk path="/disks/pc/dos/ibm/7.00/PCDOS700-DISK5.json">PC-DOS 7.00 (SETUP Disk 5)</disk>
<disk path="/disks/pc/dos/ibm/7.00/PCDOS700-1200K.json">PC-DOS 7.00 (1.2M Disk)</disk>
<disk path="/disks/pc/dos/ibm/7.00/PCDOS700-1440K.json">PC-DOS 7.00 (1.44M Disk)</disk>
<disk path="/disks/pc/dos/microsoft/3.20/MSDOS320-DISK1.json">MS-DOS 3.20 (Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/3.20/MSDOS320-DISK2.json">MS-DOS 3.20 (Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/3.20/MSDOS320-DISK3-PROGREF1.json">MS-DOS 3.20 (ProgRef 1)</disk>
<disk path="/disks/pc/dos/microsoft/3.20/MSDOS320-DISK4-PROGREF2.json">MS-DOS 3.20 (ProgRef 2)</disk>
<disk path="/disks/pc/dos/microsoft/3.21/MSDOS321-DISK1.json">MS-DOS 3.21 (Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/3.21/MSDOS321-DISK2.json">MS-DOS 3.21 (Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/3.30/MSDOS330-DISK1.json">MS-DOS 3.30 (Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/3.30/MSDOS330-DISK2.json">MS-DOS 3.30 (Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/3.31/MSDOS331-1440K.json">MS-DOS 3.31 (1440K Disk)</disk>
<disk path="/disks/pc/dos/microsoft/4.00/MSDOS400-DISK1.json">MS-DOS 4.00 (Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/4.00/MSDOS400-DISK2.json">MS-DOS 4.00 (Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/4.00/MSDOS400-DISK3.json">MS-DOS 4.00 (Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/4.00/MSDOS400-DISK4.json">MS-DOS 4.00 (Disk 4)</disk>
<disk path="/disks/pc/dos/microsoft/4.00/MSDOS400-DISK5.json">MS-DOS 4.00 (Disk 5)</disk>
<disk path="/disks/pc/dos/microsoft/4.00/MSDOS400-DISK6.json">MS-DOS 4.00 (Disk 6)</disk>
<disk path="/disks/pc/dos/microsoft/4.01/MSDOS401-DISK1.json">MS-DOS 4.01 (Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/4.01/MSDOS401-DISK2.json">MS-DOS 4.01 (Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/4.01/MSDOS401-DISK3.json">MS-DOS 4.01 (Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/4.01/MSDOS401-DISK4.json">MS-DOS 4.01 (Disk 4)</disk>
<disk path="/disks/pc/dos/microsoft/4.01/MSDOS401-DISK5.json">MS-DOS 4.01 (Disk 5)</disk>
<disk path="/disks/pc/dos/microsoft/4.01/MSDOS401-DISK6.json">MS-DOS 4.01 (Disk 6)</disk>
<disk path="/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK1.json">MS-DOS 4.0M (Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK2.json">MS-DOS 4.0M (Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK1.json">MS-DOS 5.00 (360K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK2.json">MS-DOS 5.00 (360K Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK3.json">MS-DOS 5.00 (360K Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK4.json">MS-DOS 5.00 (360K Disk 4)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/360K/MSDOS500-DISK5.json">MS-DOS 5.00 (360K Disk 5)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK1.json">MS-DOS 5.00 (720K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK2.json">MS-DOS 5.00 (720K Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/5.00/720K/MSDOS500-DISK3.json">MS-DOS 5.00 (720K Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/6.00/1200K/MSDOS600-DISK1.json">MS-DOS 6.00 (1200K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.00/1200K/MSDOS600-DISK2.json">MS-DOS 6.00 (1200K Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/6.00/1200K/MSDOS600-DISK3.json">MS-DOS 6.00 (1200K Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/6.00/1200K/MSDOS600-DISK4.json">MS-DOS 6.00 (1200K Disk 4)</disk>
<disk path="/disks/pc/dos/microsoft/6.00/1440K/MSDOS600-DISK1.json">MS-DOS 6.00 (1440K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.00/1440K/MSDOS600-DISK2.json">MS-DOS 6.00 (1440K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.00/1440K/MSDOS600-DISK3.json">MS-DOS 6.00 (1440K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1200K/MSDOS620-DISK1.json">MS-DOS 6.20 (1200K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1200K/MSDOS620-DISK2.json">MS-DOS 6.20 (1200K Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1200K/MSDOS620-DISK3.json">MS-DOS 6.20 (1200K Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1200K/MSDOS620-DISK4.json">MS-DOS 6.20 (1200K Disk 4)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1200K/MSDOS620-SUPPDISK.json">MS-DOS 6.20 (1200K Supp Disk)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1440K/MSDOS620-DISK1.json">MS-DOS 6.20 (1440K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1440K/MSDOS620-DISK2.json">MS-DOS 6.20 (1440K Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1440K/MSDOS620-DISK3.json">MS-DOS 6.20 (1440K Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/6.20/1440K/MSDOS620-SUPPDISK.json">MS-DOS 6.20 (1440K Supp Disk)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1200K/MSDOS622-DISK1.json">MS-DOS 6.22 (1200K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1200K/MSDOS622-DISK2.json">MS-DOS 6.22 (1200K Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1200K/MSDOS622-DISK3.json">MS-DOS 6.22 (1200K Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1200K/MSDOS622-DISK4.json">MS-DOS 6.22 (1200K Disk 4)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1440K/MSDOS622-DISK1.json">MS-DOS 6.22 (1440K Disk 1)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1440K/MSDOS622-DISK2.json">MS-DOS 6.22 (1440K Disk 2)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1440K/MSDOS622-DISK3.json">MS-DOS 6.22 (1440K Disk 3)</disk>
<disk path="/disks/pc/dos/microsoft/6.22/1440K/MSDOS622-SUPPDISK.json">MS-DOS 6.22 (1440K Supp Disk)</disk>
<disk path="/disks/pc/dos/compaq/1.11/COMPAQ-DOS111.json">COMPAQ MS-DOS 1.11</disk>
<disk path="/disks/pc/dos/compaq/1.12/COMPAQ-DOS112.json">COMPAQ MS-DOS 1.12</disk>
<disk path="/disks/pc/dos/microsoft/2.00/COMPAQ-DOS212.json">COMPAQ MS-DOS 2.12</disk>
<disk path="/disks/pc/dos/compaq/3.10/COMPAQ-DOS310-DISK1.json">COMPAQ MS-DOS 3.10 (Disk 1)</disk>
<disk path="/disks/pc/dos/compaq/3.10/COMPAQ-DOS310-DISK2.json">COMPAQ MS-DOS 3.10 (Disk 2)</disk>
<disk path="/disks/pc/dos/compaq/3.10/COMPAQ-DOS310-PERSONAL.json">COMPAQ MS-DOS 3.10 (Personal)</disk>
<disk path="/disks/pc/dos/compaq/3.10/COMPAQ-PCDOS320-SUPP.json">COMPAQ PC-DOS 3.20 Support</disk>
<disk path="/disks/pc/dos/compaq/3.10/COMPAQ-DESKPRO386-SUPP-1986-08-08.json">COMPAQ DESKPRO 386 (1986)</disk>
<disk path="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK1.json">COMPAQ MS-DOS 3.31 (Disk 1)</disk>
<disk path="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK2.json">COMPAQ MS-DOS 3.31 (Disk 2)</disk>
<disk path="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK3.json">COMPAQ MS-DOS 3.31 (Disk 3)</disk>
<disk path="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK4.json">COMPAQ MS-DOS 3.31 (Disk 4)</disk>
<disk path="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DISK5.json">COMPAQ MS-DOS 3.31 (Disk 5)</disk>
<disk path="/disks/pc/dos/compaq/3.31/COMPAQ-DOS331-DIAG.json">COMPAQ MS-DOS 3.31 (Diagnostics)</disk>
<disk path="/disks/pc/os2/ibm/1.0/OS210-INSTALL.json">IBM OS/2 1.0 (1.44M Install)</disk>
<disk path="/disks/pc/os2/ibm/1.0/OS210-DISK1.json">IBM OS/2 1.0 (1.44M Disk 1)</disk>
<disk path="/disks/pc/os2/ibm/1.0/OS210-DISK2.json">IBM OS/2 1.0 (1.44M Disk 2)</disk>
<disk path="/disks/pc/os2/ibm/1.0/OS210-DISK3.json">IBM OS/2 1.0 (1.44M Disk 3)</disk>
<disk path="/disks/pc/os2/ibm/1.1/OS211-INSTALLATION.json">IBM OS/2 1.1 (1.44M Install Disk)</disk>
<disk path="/disks/pc/os2/ibm/1.1/OS211-DISK01.json">IBM OS/2 1.1 (1.44M Disk 1)</disk>
<disk path="/disks/pc/os2/ibm/1.1/OS211-DISK02.json">IBM OS/2 1.1 (1.44M Disk 2)</disk>
<disk path="/disks/pc/os2/ibm/1.1/OS211-DISK03.json">IBM OS/2 1.1 (1.44M Disk 3)</disk>
<disk path="/disks/pc/os2/ibm/1.1/OS211-DISK04.json">IBM OS/2 1.1 (1.44M Disk 4)</disk>
<disk path="/disks/pc/os2/ibm/1.1/OS211-DEVICES.json">IBM OS/2 1.1 (1.44M Devices Disk)</disk>
<disk path="/disks/pc/os2/ibm/1.1/OS211-PRINTERS.json">IBM OS/2 1.1 (1.44M Printers Disk)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK01.json">IBM OS/2 1.3 (1.44M Disk 1)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK02.json">IBM OS/2 1.3 (1.44M Disk 2)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK03.json">IBM OS/2 1.3 (1.44M Disk 3)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK04.json">IBM OS/2 1.3 (1.44M Disk 4)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK05.json">IBM OS/2 1.3 (1.44M Disk 5)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK06.json">IBM OS/2 1.3 (1.44M Disk 6)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK07.json">IBM OS/2 1.3 (1.44M Disk 7)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK08.json">IBM OS/2 1.3 (1.44M Disk 8)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK09.json">IBM OS/2 1.3 (1.44M Disk 9)</disk>
<disk path="/disks/pc/os2/ibm/1.3/OS213-DISK10.json">IBM OS/2 1.3 (1.44M Disk 10)</disk>
<disk path="/disks/pc/os2/microsoft/1.0/MSOS210-INSTALL.json">MS OS/2 1.0 (1.2M Install)</disk>
<disk path="/disks/pc/os2/microsoft/1.0/MSOS210-PROGRAM.json">MS OS/2 1.0 (1.2M Program)</disk>
<disk path="/disks/pc/os2/microsoft/1.0/MSOS210-SUPP.json">MS OS/2 1.0 (1.2M Supplemental)</disk>
<disk path="/disks/pc/os2/misc/cpdos/286DOS-76800.json">OS/2 CP-DOS (v7.68)</disk>
<disk path="/disks/pc/os2/misc/football/FOOTBALL-76817.json">OS/2 FOOTBALL (v7.68.17)</disk>
<disk path="/disks/pc/os2/misc/football/FOOTBALL-44100.json">OS/2 FOOTBALL (v4.41.00)</disk>
<disk path="/disks/pc/os2/misc/1.0/OS210-88286.json">OS/2 1.0 Debugger</disk>
<disk path="/disks/pc/os2/misc/cpdos/SIZZLE-76818-19870107.json">OS/2 SIZZLE (v7.68.18)</disk>
<disk path="/disks/pc/os2/misc/cpdos/SIZZLE-76818-19870107-DEBUG.json">OS/2 SIZZLE (v7.68.18 DEBUG)</disk>
<disk path="/disks/pc/windows/1.00/WIN100-DISK1.json">Windows 1.00 (SETUP)</disk>
<disk path="/disks/pc/windows/1.00/WIN100-DISK2.json">Windows 1.00 (BUILD)</disk>
<disk path="/disks/pc/windows/1.00/WIN100-DISK3.json">Windows 1.00 (UTILITY)</disk>
<disk path="/disks/pc/windows/1.00/WIN100-DISK4.json">Windows 1.00 (APPS)</disk>
<disk path="/disks/pc/windows/1.01/WIN101-DISK1-SETUP.json">Windows 1.01 (SETUP)</disk>
<disk path="/disks/pc/windows/1.01/WIN101-DISK2-BUILD.json">Windows 1.01 (BUILD)</disk>
<disk path="/disks/pc/windows/1.01/WIN101-DISK3-UTILITY.json">Windows 1.01 (UTILITY)</disk>
<disk path="/disks/pc/windows/1.01/WIN101-DISK4-APPS.json">Windows 1.01 (APPS)</disk>
<disk path="/disks/pc/windows/1.01/WIN101-DISK5-WRITE.json">Windows 1.01 (WRITE)</disk>
<disk path="/disks/pc/windows/1.02/WIN102-DISK1-SETUP.json">Windows 1.02 (SETUP)</disk>
<disk path="/disks/pc/windows/1.02/WIN102-DISK2-BUILD.json">Windows 1.02 (BUILD)</disk>
<disk path="/disks/pc/windows/1.02/WIN102-DISK3-UTILITY.json">Windows 1.02 (UTILITY)</disk>
<disk path="/disks/pc/windows/1.02/WIN102-DISK4-FONT.json">Windows 1.02 (FONT)</disk>
<disk path="/disks/pc/windows/1.02/WIN102-DISK5-APPS.json">Windows 1.02 (APPS)</disk>
<disk path="/disks/pc/windows/1.02/WIN102-DISK6-WRITE.json">Windows 1.02 (WRITE)</disk>
<disk path="/disks/pc/windows/1.03/WIN103-DISK1-SETUP.json">Windows 1.03 (SETUP)</disk>
<disk path="/disks/pc/windows/1.03/WIN103-DISK2-BUILD.json">Windows 1.03 (BUILD)</disk>
<disk path="/disks/pc/windows/1.03/WIN103-DISK3-UTILITY.json">Windows 1.03 (UTILITY)</disk>
<disk path="/disks/pc/windows/1.03/WIN103-DISK4-FONT.json">Windows 1.03 (FONT)</disk>
<disk path="/disks/pc/windows/1.03/WIN103-DISK5-APPS.json">Windows 1.03 (APPS)</disk>
<disk path="/disks/pc/windows/1.03/WIN103-DISK6-PROGRAM.json">Windows 1.03 (PROGRAM)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK1-SETUP.json">Windows 1.03a (SETUP)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK2-BUILD.json">Windows 1.03a (BUILD)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK3-UTILITY.json">Windows 1.03a (UTILITY)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK4-FONT.json">Windows 1.03a (FONT)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK5-APPS.json">Windows 1.03a (APPS)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK6-PROGRAM.json">Windows 1.03a (PROGRAM)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK7-SYMBOLSA.json">Windows 1.03a (SYMBOLS A)</disk>
<disk path="/disks/pc/windows/1.03a/WIN103A-DISK8-SYMBOLSB.json">Windows 1.03a (SYMBOLS B)</disk>
<disk path="/disks/pc/windows/1.03b/WIN103-DISK1-SETUP.json">Windows 1.03b (SETUP)</disk>
<disk path="/disks/pc/windows/1.03b/WIN103-DISK2-BUILD.json">Windows 1.03b (BUILD)</disk>
<disk path="/disks/pc/windows/1.03b/WIN103-DISK3-UTILITY.json">Windows 1.03b (UTILITY)</disk>
<disk path="/disks/pc/windows/1.03b/WIN103-DISK4-FONT.json">Windows 1.03b (FONT)</disk>
<disk path="/disks/pc/windows/1.03b/WIN103-DISK5-APPS.json">Windows 1.03b (APPS)</disk>
<disk path="/disks/pc/windows/1.03b/WIN103-DISK6-PROGRAM.json">Windows 1.03b (PROGRAM)</disk>
<disk path="/disks/pc/windows/1.04/WIN104-DISK1-SETUP.json">Windows 1.04 (SETUP)</disk>
<disk path="/disks/pc/windows/1.04/WIN104-DISK2-BUILD.json">Windows 1.04 (BUILD)</disk>
<disk path="/disks/pc/windows/1.04/WIN104-DISK3-UTILITY.json">Windows 1.04 (UTILITY)</disk>
<disk path="/disks/pc/windows/1.04/WIN104-DISK4-FONT.json">Windows 1.04 (FONT)</disk>
<disk path="/disks/pc/windows/1.04/WIN104-DISK5-APPS.json">Windows 1.04 (APPS)</disk>
<disk path="/disks/pc/windows/1.04/WIN104-DISK6-PROGRAM.json">Windows 1.04 (PROGRAM)</disk>
<disk path="/disks/pc/windows/1.04/WIN104-DISK7-SUPPDRV.json">Windows 1.04 (SUPP)</disk>
<disk path="/disks/pc/windows/2.01/WIN201-386-DISK1.json">Windows/386 2.01 (Disk 1)</disk>
<disk path="/disks/pc/windows/2.01/WIN201-386-DISK2.json">Windows/386 2.01 (Disk 2)</disk>
<disk path="/disks/pc/windows/2.01/WIN201-386-DISK3.json">Windows/386 2.01 (Disk 3)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK1-SETUP.json">Windows 2.03 (SETUP)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK2-BUILD.json">Windows 2.03 (BUILD)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK3-DISPLAYS.json">Windows 2.03 (DISPLAYS)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK4-UTILS1.json">Windows 2.03 (UTILS 1)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK5-UTILS2.json">Windows 2.03 (UTILS 2)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK6-FONTS1.json">Windows 2.03 (FONTS 1)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK7-FONTS2.json">Windows 2.03 (FONTS 2)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK8-APPS.json">Windows 2.03 (APPS)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-DISK9-PROGRAM.json">Windows 2.03 (PROGRAM)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-386-DISK1.json">Windows/386 2.03 (SETUP)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-386-DISK2.json">Windows/386 2.03 (UTILITY)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-386-DISK3.json">Windows/386 2.03 (FONTS)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-386-DISK4.json">Windows/386 2.03 (PROGRAM)</disk>
<disk path="/disks/pc/windows/2.03/WIN203-386-DISK5.json">Windows/386 2.03 (UTILITY 2)</disk>
<disk path="/disks/pc/windows/2.10/WIN210-386-DISK1.json">Windows/386 2.10 (SETUP)</disk>
<disk path="/disks/pc/windows/2.10/WIN210-386-DISK2.json">Windows/386 2.10 (UTILS 1)</disk>
<disk path="/disks/pc/windows/2.10/WIN210-386-DISK3.json">Windows/386 2.10 (UTILS 2)</disk>
<disk path="/disks/pc/windows/2.10/WIN210-386-DISK4.json">Windows/386 2.10 (DISPLAYS)</disk>
<disk path="/disks/pc/windows/2.10/WIN210-386-DISK5.json">Windows/386 2.10 (FONTS)</disk>
<disk path="/disks/pc/windows/2.10/WIN210-386-DISK6.json">Windows/386 2.10 (APPS)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-286-DISK1.json">Windows/286 2.11 (SETUP)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-286-DISK2.json">Windows/286 2.11 (UTIL 1)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-286-DISK3.json">Windows/286 2.11 (UTIL 2)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-286-DISK4.json">Windows/286 2.11 (APPS)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-386-DISK1.json">Windows/386 2.11 (SETUP)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-386-DISK2.json">Windows/386 2.11 (UTIL 1)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-386-DISK3.json">Windows/386 2.11 (UTIL 2)</disk>
<disk path="/disks/pc/windows/2.11/WIN211-386-DISK4.json">Windows/386 2.11 (APPS)</disk>
<disk path="/disks/pc/windows/3.00/WIN300-DISK1.json">Windows 3.00 (Disk 1)</disk>
<disk path="/disks/pc/windows/3.00/WIN300-DISK2.json">Windows 3.00 (Disk 2)</disk>
<disk path="/disks/pc/windows/3.00/WIN300-DISK3.json">Windows 3.00 (Disk 3)</disk>
<disk path="/disks/pc/windows/3.00/WIN300-DISK4.json">Windows 3.00 (Disk 4)</disk>
<disk path="/disks/pc/windows/3.00/WIN300-DISK5.json">Windows 3.00 (Disk 5)</disk>
<disk path="/disks/pc/windows/3.10/WIN310-DISK1.json">Windows 3.10 (Disk 1)</disk>
<disk path="/disks/pc/windows/3.10/WIN310-DISK2.json">Windows 3.10 (Disk 2)</disk>
<disk path="/disks/pc/windows/3.10/WIN310-DISK3.json">Windows 3.10 (Disk 3)</disk>
<disk path="/disks/pc/windows/3.10/WIN310-DISK4.json">Windows 3.10 (Disk 4)</disk>
<disk path="/disks/pc/windows/3.10/WIN310-DISK5.json">Windows 3.10 (Disk 5)</disk>
<disk path="/disks/pc/windows/3.10/WIN310-DISK6.json">Windows 3.10 (Disk 6)</disk>
<disk path="/disks/pc/windows/3.10/WIN310-DISK7.json">Windows 3.10 (Disk 7)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK1.json">Windows 3.11 (Disk 1)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK2.json">Windows 3.11 (Disk 2)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK3.json">Windows 3.11 (Disk 3)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK4.json">Windows 3.11 (Disk 4)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK5.json">Windows 3.11 (Disk 5)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK6.json">Windows 3.11 (Disk 6)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK7.json">Windows 3.11 (Disk 7)</disk>
<disk path="/disks/pc/windows/3.11/WFW311_DISK8.json">Windows 3.11 (Disk 8)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK01.json">Windows 95 (Build 499 Disk 1)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK02.json">Windows 95 (Build 499 Disk 2)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK03.json">Windows 95 (Build 499 Disk 3)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK04.json">Windows 95 (Build 499 Disk 4)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK05.json">Windows 95 (Build 499 Disk 5)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK06.json">Windows 95 (Build 499 Disk 6)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK07.json">Windows 95 (Build 499 Disk 7)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK08.json">Windows 95 (Build 499 Disk 8)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK09.json">Windows 95 (Build 499 Disk 9)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK10.json">Windows 95 (Build 499 Disk 10)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK11.json">Windows 95 (Build 499 Disk 11)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK12.json">Windows 95 (Build 499 Disk 12)</disk>
<disk path="/disks/pc/windows/win95/4.00.499/WIN95-DISK13.json">Windows 95 (Build 499 Disk 13)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-BOOT.json">Windows 95 (Boot)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK01.json">Windows 95 (Disk 1)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK02.json">Windows 95 (Disk 2)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK03.json">Windows 95 (Disk 3)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK04.json">Windows 95 (Disk 4)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK05.json">Windows 95 (Disk 5)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK06.json">Windows 95 (Disk 6)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK07.json">Windows 95 (Disk 7)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK08.json">Windows 95 (Disk 8)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK09.json">Windows 95 (Disk 9)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK10.json">Windows 95 (Disk 10)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK11.json">Windows 95 (Disk 11)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK12.json">Windows 95 (Disk 12)</disk>
<disk path="/disks/pc/windows/win95/4.00.950/WIN95-DISK13.json">Windows 95 (Disk 13)</disk>
<disk path="/disks/pc/minix/1.1/MINIX11-DISK1-BOOT.json">Minix Boot (Disk 1)</disk>
<disk path="/disks/pc/minix/1.1/MINIX11-DISK2-ROOT.json">Minix Root Filesystem (Disk 2)</disk>
<disk path="/disks/pc/minix/1.1/MINIX11-DISK3-USR.json">Minix User Files (Disk 3)</disk>
<disk path="/disks/pc/minix/1.1/MINIX11-DISK4-KERNEL.json">Minix Kernel (Disk 4)</disk>
<disk path="/disks/pc/minix/1.1/MINIX11-DISK5-TOOLS.json">Minix Tools (Disk 5)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/01MAINT.json">PC/IX 1.0 (MAINT)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/02CORE1.json">PC/IX 1.0 (CORE1)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/03CORE2.json">PC/IX 1.0 (CORE2)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/04CORE3.json">PC/IX 1.0 (CORE3)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/05CORE4.json">PC/IX 1.0 (CORE4)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/06CORE5.json">PC/IX 1.0 (CORE5)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/07CORE6.json">PC/IX 1.0 (CORE6)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/08CORE7.json">PC/IX 1.0 (CORE7)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/09CORE8.json">PC/IX 1.0 (CORE8)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/10PROG1.json">PC/IX 1.0 (PROG1)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/11PROG2.json">PC/IX 1.0 (PROG2)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/12PROG3.json">PC/IX 1.0 (PROG3)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/13PROG4.json">PC/IX 1.0 (PROG4)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/14COMMS.json">PC/IX 1.0 (COMMS)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/15SCCS.json">PC/IX 1.0 (SCCS)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/16TEXT.json">PC/IX 1.0 (TEXT)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/17SPECIA.json">PC/IX 1.0 (SPECIA)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/18GAMES.json">PC/IX 1.0 (GAMES)</disk>
<disk path="/disks/pc/unix/ibm/pcix/1.0/19ACCNT.json">PC/IX 1.0 (ACCNT)</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK01.json">Boot Disk</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK02.json">Runtime Disk 1</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK03.json">Runtime Disk 2</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK04.json">Runtime Disk 3</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK05.json">Runtime Utility Disk</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK06.json">Runtime System Vision</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK07.json">Runtime Link Kit Disk</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK08.json">Software Dev Disk 1</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK09.json">Software Dev Disk 2</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK10.json">Software Dev Disk 3</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK11.json">Software Dev Disk 4</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK12.json">Software Dev Upgrade</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK13.json">Text Prep Disk 1</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK14.json">Text Prep Disk 2</disk>
<disk path="/disks/pc/unix/microport/system-v/2.3/SYSTEMV23-DISK15.json">Text Prep Disk 3</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/N1.json">SCO Xenix 8086 (N1)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/N2.json">SCO Xenix 8086 (N2)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/N3.json">SCO Xenix 8086 (N3)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/N4.json">SCO Xenix 8086 (N4)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/N5.json">SCO Xenix 8086 (N5)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/N6.json">SCO Xenix 8086 (N6)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/B1.json">SCO Xenix 8086 (B1)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/B2.json">SCO Xenix 8086 (B2)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/B3.json">SCO Xenix 8086 (B3)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/X1.json">SCO Xenix 8086 (X1)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/X2.json">SCO Xenix 8086 (X2)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/X3.json">SCO Xenix 8086 (X3)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/X4.json">SCO Xenix 8086 (X4)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/X5.json">SCO Xenix 8086 (X5)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/X6.json">SCO Xenix 8086 (X6)</disk>
<disk path="/disks/pc/xenix/sco/8086/2.1.3/GAMES.json">SCO Xenix 8086 (GAMES)</disk>
<disk path="/disks/pc/apps/lotus/123/1.0a/123-DISK1-SYSTEM.json">Lotus 1-2-3 (System)</disk>
<disk path="/disks/pc/apps/lotus/123/1.0a/123-DISK2-UTILITY.json">Lotus 1-2-3 (Utility)</disk>
<disk path="/disks/pc/apps/lotus/123/1.0a/123-DISK3-GRAPH.json">Lotus 1-2-3 (Graph)</disk>
<disk path="/disks/pc/apps/lotus/123/1.0a/123-DISK4-TUTORIAL.json">Lotus 1-2-3 (Tutorial)</disk>
<disk path="/disks/pc/apps/microsoft/chart/2.02/CHART202.json">MS Chart 2.02 (Unofficial)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.0/WORD30-DISK1-PROGRAM.json">MS Word 3.0 (Disk 1)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.0/WORD30-DISK2-SPELL.json">MS Word 3.0 (Disk 2)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.0/WORD30-DISK3-UTILITIES.json">MS Word 3.0 (Disk 3)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.0/WORD30-DISK4-PRINTER.json">MS Word 3.0 (Disk 4)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.0/WORD30-DISK5-LEARNMOU.json">MS Word 3.0 (Disk 5)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.0/WORD30-DISK6-LEARNKBD.json">MS Word 3.0 (Disk 6)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK1-PROGRAM.json">MS Word 3.1 (Disk 1)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK2-SPELL.json">MS Word 3.1 (Disk 2)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK3-THESAURUS.json">MS Word 3.1 (Disk 3)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK4-UTILITIES.json">MS Word 3.1 (Disk 4)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK5-PRINTER.json">MS Word 3.1 (Disk 5)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK6-PRINTER.json">MS Word 3.1 (Disk 6)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK7-LEARNMOU.json">MS Word 3.1 (Disk 7)</disk>
<disk path="/disks/pc/apps/microsoft/word/3.1/WORD31-DISK8-LEARNKBD.json">MS Word 3.1 (Disk 8)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-PROGRAM1.json">MS Word 5.0 (Program 1)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-PROGRAM2.json">MS Word 5.0 (Program 2)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-SPELL.json">MS Word 5.0 (Spell)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-THESAURUS.json">MS Word 5.0 (Thesaurus)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-UTILITIES1.json">MS Word 5.0 (Utilities 1)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-UTILITIES2.json">MS Word 5.0 (Utilities 2)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-UTILITIES3.json">MS Word 5.0 (Utilities 3)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-UTILPRINT.json">MS Word 5.0 (Utilities/Print)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-PRINTERS1.json">MS Word 5.0 (Printers 1)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-PRINTERS2.json">MS Word 5.0 (Printers 2)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-LEARNKBD.json">MS Word 5.0 (Learning Kbd)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-LEARNMOU.json">MS Word 5.0 (Learning Mouse)</disk>
<disk path="/disks/pc/apps/microsoft/word/5.0/WORD50-LEARNADV.json">MS Word 5.0 (Learning Adv)</disk>
<disk path="/disks/pc/apps/microsoft/winword/2.0c/WINWORD20-DISK1.json">Word for Windows 2.0c (Disk 1)</disk>
<disk path="/disks/pc/apps/microsoft/winword/2.0c/WINWORD20-DISK2.json">Word for Windows 2.0c (Disk 2)</disk>
<disk path="/disks/pc/apps/microsoft/winword/2.0c/WINWORD20-DISK3.json">Word for Windows 2.0c (Disk 3)</disk>
<disk path="/disks/pc/apps/microsoft/winword/2.0c/WINWORD20-DISK4.json">Word for Windows 2.0c (Disk 4)</disk>
<disk path="/disks/pc/apps/microsoft/winword/2.0c/WINWORD20-DISK5.json">Word for Windows 2.0c (Disk 5)</disk>
<disk path="/disks/pc/apps/microsoft/winword/2.0c/WINWORD20-DISK6.json">Word for Windows 2.0c (Disk 6)</disk>
<disk path="/disks/pc/tools/borland/pascal/3.00b/TURBO-PASCAL-300B.json">Borland Turbo Pascal 3.00B</disk>
<disk path="/disks/pc/tools/borland/pascal/3.01a/TURBO-PASCAL-301A.json">Borland Turbo Pascal 3.01A</disk>
<disk path="/disks/pc/tools/microsoft/basic/BASCOM536.json">MS BASIC (Compiler v5.36)</disk>
<disk path="/disks/pc/tools/microsoft/basic/QUICKBASIC-DISK1.json">MS BASIC (QuickBASIC v2.0)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK1-COMPILER.json">MS C 4.00 (Disk 1)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK2-UTILITIES.json">MS C 4.00 (Disk 2)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK3-LIBSMALL.json">MS C 4.00 (Disk 3)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK4-LIBMEDIUM.json">MS C 4.00 (Disk 4)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK5-LIBLARGE.json">MS C 4.00 (Disk 5)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK6-STARTUP.json">MS C 4.00 (Disk 6)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK7-CODEVIEW.json">MS C 4.00 (Disk 7)</disk>
<disk path="/disks/pc/tools/microsoft/c/4.00/MSC-048014-400-DISK8-DEVKIT.json">MS C 4.00 (Disk 8)</disk>
<disk path="/disks/pc/tools/microsoft/masm/4.00/MASM-016014-400.json">MS MASM 4.00</disk>
<disk path="/disks/pc/tools/microsoft/mouse/5.00/MSMOUSE-000199-500-DISK1-SYSTEM.json">MS Mouse 5.00 (System)</disk>
<disk path="/disks/pc/tools/microsoft/mouse/5.00/MSMOUSE-000199-500-DISK2-PROGRAM.json">MS Mouse 5.00 (Program)</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK04.json">MS OS/2 SDK 1.02: TOOLKIT1</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK05.json">MS OS/2 SDK 1.02: TOOLKIT2</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK06.json">MS OS/2 SDK 1.02: UTILITY1</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK07.json">MS OS/2 SDK 1.02: UTILITY2</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK08.json">MS OS/2 SDK 1.02: CBIN1</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK09.json">MS OS/2 SDK 1.02: CBIN2</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK10.json">MS OS/2 SDK 1.02: CLIB1</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK11.json">MS OS/2 SDK 1.02: CLIB2</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK12.json">MS OS/2 SDK 1.02: MASM</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK13.json">MS OS/2 SDK 1.02: EXAMPLE1</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK14.json">MS OS/2 SDK 1.02: EXAMPLE2</disk>
<disk path="/disks/pc/tools/microsoft/os2/sdk/1.02/MSOS2-SDK102-DISK15.json">MS OS/2 SDK 1.02: NETWORK</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINRUN101-DISK1-SETUP.json">Win101 Runtime (SETUP)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINRUN101-DISK2-BUILD.json">Win101 Runtime (BUILD)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINRUN101-DISK3-UTILITIES.json">Win101 Runtime (UTILITIES)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINRUN101-DISK4-SAMPLES.json">Win101 Runtime (SAMPLES)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-DISK1-UTILITIES.json">Win101 SDK (UTILITIES)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-DISK2-LIBSMALL.json">Win101 SDK (LIB SMALL)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-DISK3-LIBMEDIUM.json">Win101 SDK (LIB MEDIUM)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-DISK4-LIBLARGE.json">Win101 SDK (LIB LARGE)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-DISK5-LIBPASCAL.json">Win101 SDK (LIB PASCAL)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-DISK6-INCPIF.json">Win101 SDK (INC PIC)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-DISK7-SAMPLES.json">Win101 SDK (SAMPLES)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.01/WINSDK101-CUPDATE.json">Win101 SDK (C UPDATE)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.03/WINSDK103-DISK1-UTILS1.json">Win103 SDK (UTIL1)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.03/WINSDK103-DISK2-UTILS2.json">Win103 SDK (UTIL2)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.03/WINSDK103-DISK3-LIBC.json">Win103 SDK (LIB C)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.03/WINSDK103-DISK4-LIBPASCAL.json">Win103 SDK (LIB PASCAL)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.03/WINSDK103-DISK5-SYMBOLS.json">Win103 SDK (SYMBOLS)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.03/WINSDK103-DISK6-SAMPLES1.json">Win103 SDK (SAMPLE1)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.03/WINSDK103-DISK7-SAMPLES2.json">Win103 SDK (SAMPLE2)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.04/WINSDK104-DISK1-UTILS1.json">Win104 SDK (UTIL 1)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.04/WINSDK104-DISK2-UTILS2.json">Win104 SDK (UTIL 2)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.04/WINSDK104-DISK3-LIBC.json">Win104 SDK (LIB C)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.04/WINSDK104-DISK4-LIBPASCAL.json">Win104 SDK (LIB PASCAL)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.04/WINSDK104-DISK5-SYMBOLS.json">Win104 SDK (SYMBOLS)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.04/WINSDK104-DISK6-SAMPLES1.json">Win104 SDK (SAMPLE1)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/1.04/WINSDK104-DISK7-SAMPLES2.json">Win104 SDK (SAMPLE2)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/2.03/WINSDK203-DISK1-DEV.json">Win203 SDK (1200K Disk 1)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/2.03/WINSDK203-DISK2-UTILS.json">Win203 SDK (1200K Disk 2)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/2.03/WINSDK203-DISK3-SAMPLES.json">Win203 SDK (1200K Disk 3)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK01.json">Win300 SDK (720K Disk 1)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK02.json">Win300 SDK (720K Disk 2)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK03.json">Win300 SDK (720K Disk 3)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK04.json">Win300 SDK (720K Disk 4)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK05.json">Win300 SDK (720K Disk 5)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK06.json">Win300 SDK (720K Disk 6)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK07.json">Win300 SDK (720K Disk 7)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK08.json">Win300 SDK (720K Disk 8)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK09.json">Win300 SDK (720K Disk 9)</disk>
<disk path="/disks/pc/tools/microsoft/windows/sdk/3.00/WIN30SDK_DISK10.json">Win300 SDK (720K Disk 10)</disk>
<disk path="/disks/pc/games/microsoft/flightsim/1984/flightsim-1984.json">MS Flight Simulator (1984)</disk>
<disk path="/disks/pc/games/id/wolf3d/1WOLF14.json">Wolfenstein 3D (v1.4)</disk>
<disk path="/apps/pc/1981/visicalc/disk.json">VisiCalc</disk>
<disk path="/apps/pc/1982/esuite/disk.json">Executive Suite (1982)</disk>
<disk path="/apps/pc/1985/rogue/disk.json">Rogue (1985)</disk>
<disk path="/apps/pc/1987/thinktank/disk.json">ThinkTank 2.41NP</disk>
<disk path="/apps/pc/1992/moria/disk.json">Moria 5.5</disk>
<disk path="/tests/pc/vga/VGABIN.json">VGA Tests (Black Book)</disk>
</control>
<control type="button" binding="loadDrive" padright="8px">Load</control>
<control type="description" binding="descDisk" padright="8px"/>
<control type="file" binding="mountDrive"/>
</fdc>

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<fdc id="fdcNEC" automount='{A:{name:"PC-DOS 2.00 (Disk 1)",path:"/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json"}, B:{name:"PC-DOS 2.00 (Disk 2)",path:"/disks/pc/dos/ibm/2.00/PCDOS200-DISK2.json"}}' pos="left" padleft="8px" padbottom="8px">
<control type="list" binding="listDrives"/>
<control type="list" binding="listDisks">
<disk path="">None</disk>
<disk path="/disks/pc/dos/ibm/1.00/PCDOS100.json">PC-DOS 1.00</disk>
<disk path="/disks/pc/dos/ibm/1.10/PCDOS110.json">PC-DOS 1.10</disk>
<disk path="/disks/pc/dos/ibm/2.00/PCDOS200-DISK1.json">PC-DOS 2.00 (Disk 1)</disk>
<disk path="/disks/pc/dos/ibm/2.00/PCDOS200-DISK2.json">PC-DOS 2.00 (Disk 2)</disk>
<disk path="/disks/pc/games/microsoft/adventure/adventure-1981.json">Microsoft Adventure</disk>
<disk path="/apps/pc/1981/visicalc/disk.json">VisiCalc</disk>
</control>
<control type="button" binding="loadDrive" padright="8px">Load</control>
<control type="description" binding="descDisk" padright="8px"/>
<control type="file" binding="mountDrive"/>
</fdc>

View file

@ -12,7 +12,7 @@
<keyboard ref="/devices/pc/keyboard/keyboard-minimal-functions.xml"/>
<debugger id="debugger" messages="fault" commands=""/>
<panel ref="/devices/pc/panel/wide.xml"/>
<fdc ref="/disks/pc/library.xml" automount=''/>
<fdc ref="/disks/pc/compiled/library.xml" automount=''/>
<hdc id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2,path:"/disks/pc/os2/ibm/1.0/OS210-HDISK.json"}]'/>
<chipset id="chipset" model="5170" floppies="[1440,1200]"/>
<serial id="com1" adapter="1"/>

View file

@ -15,6 +15,17 @@ of OS/2 when it was still a work-in-progress. Not all of the disks run properly
The [OS/2 CP-DOS Boot Disk (v7.68)](/disks/pc/os2/misc/cpdos/86295/) contained a pre-1.0 version of OS/2 built on
October 22, 1986.
* **OS/2 SIZZLE Boot Disk (v7.68.18)**
The [OS/2 SIZZLE Boot Disk (v7.68.18)](/disks/pc/os2/misc/cpdos/87007/) contained a pre-1.0 version of OS/2
built on January 7, 1987, which was based on an interim source code fork known as "SIZZLE", the code-name for a
collection of changes intended to improve overall OS/2 performance.
* **OS/2 SIZZLE Boot Disk (v7.68.18 DEBUG)**
The [OS/2 SIZZLE Boot Disk (v7.68.18 DEBUG)](/disks/pc/os2/misc/cpdos/87007/debug/) was largely identical to the
previous disk, with the exception of a *DEBUG* kernel (with built-in debugger) and a different assortment of tools.
* **OS/2 FOOTBALL Boot Disk (v7.68.17)**
The [OS/2 FOOTBALL Boot Disk (v7.68.17)](/disks/pc/os2/misc/football/87058/) contained a prototype version of OS/2
@ -27,17 +38,6 @@ of OS/2 when it was still a work-in-progress. Not all of the disks run properly
It was built in December 1987, using final OS/2 1.0 sources merged with assorted FOOTBALL changes, and although
it was originally assigned version number 1.3, this version of OS/2 would ultimately become 2.0.
* **OS/2 SIZZLE Boot Disk (v7.68.18)**
The [OS/2 SIZZLE Boot Disk (v7.68.18)](/disks/pc/os2/misc/cpdos/87007/) contained a pre-1.0 version of OS/2
built on January 7, 1987, which was based on an interim source code fork known as "SIZZLE", the code-name for a
collection of changes intended to improve overall OS/2 performance.
* **OS/2 SIZZLE Boot Disk (v7.68.18 DEBUG)**
The [OS/2 SIZZLE Boot Disk (v7.68.18 DEBUG)](/disks/pc/os2/misc/cpdos/87007/debug/) was largely identical to the
previous disk, with the exception of a *DEBUG* kernel (with built-in debugger) and a different assortment of tools.
* **OS/2 1.0 Debugger Boot Disk**
The [OS/2 1.0 Debugger Boot Disk](/disks/pc/os2/misc/1.0/88286/) contained a version of OS/2 1.0 built on

View file

@ -9,7 +9,7 @@ machines:
automount:
A:
path: /disks/pc/os2/misc/football/FOOTBALL-76817.json
messages: disk
messages: warn
---
OS/2 FOOTBALL Boot Disk (v7.68.17)

View file

@ -715,6 +715,12 @@
<xsl:otherwise/>
</xsl:choose>
</xsl:variable>
<xsl:variable name="charBOL">
<xsl:choose>
<xsl:when test="@charbol"><xsl:value-of select="@charbol"/></xsl:when>
<xsl:otherwise>0</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="tabSize">
<xsl:choose>
<xsl:when test="@tabsize"><xsl:value-of select="@tabsize"/></xsl:when>
@ -724,7 +730,7 @@
<xsl:call-template name="component">
<xsl:with-param name="machine" select="$machine"/>
<xsl:with-param name="class">serial</xsl:with-param>
<xsl:with-param name="parms">,adapter:<xsl:value-of select="$adapter"/>,binding:'<xsl:value-of select="$binding"/>',tabSize:<xsl:value-of select="$tabSize"/></xsl:with-param>
<xsl:with-param name="parms">,adapter:<xsl:value-of select="$adapter"/>,binding:'<xsl:value-of select="$binding"/>',tabSize:<xsl:value-of select="$tabSize"/>,charBOL:<xsl:value-of select="$charBOL"/></xsl:with-param>
</xsl:call-template>
</xsl:template>

View file

@ -68,8 +68,8 @@ var Lc=[],fc=[Ob.prototype.Ba,Ob.prototype.lb,Ob.prototype.Ra,Ob.prototype.Zb,Ob
if(xb)var ec=[Ob.prototype.ta,Ob.prototype.eb,Ob.prototype.Ma,Ob.prototype.Hb,Ob.prototype.sd,Ob.prototype.ce],dc=[Ob.prototype.za,Ob.prototype.Yb,Ob.prototype.Qa,Ob.prototype.Ub,Ob.prototype.ud,Ob.prototype.Vc],Mc=[Ob.prototype.Da,Ob.prototype.qb,Ob.prototype.Ta,Ob.prototype.cc,Ob.prototype.Gd,Ob.prototype.Xc];
function Nc(a,b){Xa.call(this,"CPU",a,Nc,1);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Jd=c;this.ba.Ud=d;this.ba.sg=Math.round(this.ba.Jd/1E4)/100;this.ba.Ce=this.ba.sg*this.ba.Ud;this.ra.Ob=!1;this.ra.gh=!1;this.ra.bh=a.autoStart;this.ra.Oi=!1;c=ab.autostart;void 0!==c&&(this.ra.bh="true"==c?!0:"false"==c?!1:null);this.ra.We=!1;this.ba.Ef=this.ba.gf=0;this.ba.Ff=a.csStart;this.ba.ff=a.csInterval;this.ba.hf=a.csStop;this.gd=[];this.Qg=this.Ie.bind(this);ub(this)}gb(Nc);
var Oc=["power","reset"];h=Nc.prototype;h.Lc=function(a,b,c,d){this.ia=a;this.ja=b;this.ma=d;for(b=0;b<Oc.length;b++)(c=this.ya[Oc[b]])&&this.ia.Xb(null,Oc[b],c);this.Yb=Gb(a,"FPU");for(b=null;b=Gb(a,"Video",b);)this.gd.push(b);this.R=Gb(a,"ChipSet");ub(this)};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};
h.qc=function(a,b){if(!b){if(a&&this.restore){Pc(this);if(!this.restore(a))return!1;Qc(this)}else this.reset();this.ma?this.ma.jh():this.U("No debugger detected")}Rc(this);return!0};h.pc=function(a){return a?this.save():!0};function Sc(a){(!0===a.ra.bh||null===a.ra.bh&&!a.ma&&void 0===a.ya.run)&&a.Ie()}h.Qi=function(){return 0};
function Qc(a){void 0===a.ba.Ff&&(a.ba.Ff=0);void 0===a.ba.ff&&(a.ba.ff=-1);void 0===a.ba.hf&&(a.ba.hf=-1);a.ra.We=0<=a.ba.Ff&&0<a.ba.ff;a.ra.We&&(a.ba.Ef=0,a.ba.gf=a.ba.Ff-a.Zb)}function Uc(a,b){if(a.ra.We){var c=!1;a.ba.Ef=a.ba.Ef+a.Qi()|0;a.ba.gf-=b;0>=a.ba.gf&&(a.ba.gf+=a.ba.ff,c=!0);0<=a.ba.hf&&a.ba.hf<=Xc(a)&&(a.ba.ff=a.ba.hf=-1,Qc(a),a.bc(),c=!0);c&&a.U(Xc(a)+" cycles: checksum="+l(a.ba.Ef))}}h.qd=function(){this.ia&&this.ia.Xd&&this.ia.Xd.qd()};
h.qc=function(a,b){if(!b){if(a&&this.restore){Pc(this);if(!this.restore(a))return!1;Qc(this)}else this.reset();this.ma?this.ma.jh():this.U("No debugger detected")}Rc(this);return!0};h.pc=function(a){return a?this.save():!0};function Tc(a){(!0===a.ra.bh||null===a.ra.bh&&!a.ma&&void 0===a.ya.run)&&a.Ie()}h.Qi=function(){return 0};
function Qc(a){void 0===a.ba.Ff&&(a.ba.Ff=0);void 0===a.ba.ff&&(a.ba.ff=-1);void 0===a.ba.hf&&(a.ba.hf=-1);a.ra.We=0<=a.ba.Ff&&0<a.ba.ff;a.ra.We&&(a.ba.Ef=0,a.ba.gf=a.ba.Ff-a.Zb)}function Wc(a,b){if(a.ra.We){var c=!1;a.ba.Ef=a.ba.Ef+a.Qi()|0;a.ba.gf-=b;0>=a.ba.gf&&(a.ba.gf+=a.ba.ff,c=!0);0<=a.ba.hf&&a.ba.hf<=Xc(a)&&(a.ba.ff=a.ba.hf=-1,Qc(a),a.bc(),c=!0);c&&a.U(Xc(a)+" cycles: checksum="+l(a.ba.Ef))}}h.qd=function(){this.ia&&this.ia.Xd&&this.ia.Xd.qd()};
function Yc(a,b){for(var c=0;c<a.gd.length;c++)Zc(a.gd[c],b);if(a.ia&&a.ia.Xd&&(c=a.ia.Xd,c.Ra)){Kb(c,18,c.da,c.Qa);if(c.qb){var d=c.ja,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={ah:0,Qd:0,Sg:[]});var k=f>>>d.Pa;f=f+g-1>>>d.Pa;e.ah=0;for(e.Qd=0;k<=f;)g=d.xa[k],e.ah+=g.size,g.size&&(e.Sg.push(wa(Jb,k,0,0,g.type)),e.Qd++),k++;c.A=e;c.Ha=c.A.Qd*c.ja.Rb/691200;d=0;c.A.Bi=0;c.A.xf||(c.A.xf=[]);var e=-1,k=0,q=-1;for(f=0;f<c.A.Qd;f++){var r=c.A.Sg[f];g=xa(Jb.type,r);r=xa(Jb.$j,r);if(g!=e||
r!=q+1)(q=f-k)&&(d+=Mb(c,k,q,e)),e=g,k=f;q=r}d+=Mb(c,k,f-k,e);e=c.A.Ok!=d;c.A.Ok=d;if(e){e=new Db(0,0,c.da.width,c.da.height);c.A.Ne=[];k=c.A.Qd;for(d=0;d<c.A.Bi;d++)f=c.A.xf[d].Qd,c.A.Ne.push(Eb(e,f,k,!d)),k-=f;for(d=0;d<c.A.Ne.length;d++)e=c.A.xf[d],k=f=c.A.Ne[d],g=c.Qa,(q=zc[e.type])||(q=new Cb),g.strokeStyle="black",g.strokeRect(k.x,k.y,k.ad,k.A),g.fillStyle="string"==typeof q?q:q.toString(),g.fillRect(k.x,k.y,k.ad,k.A),k=c,g=f,k.la=k.Ba,k.X=k.Da,f=g.x+(g.ad>>1),q=g.y+(g.A>>1),r=g.A,g.ad<g.A&&
(r=g.ad,k.za=!0,k.R.save(),k.R.translate(f,q),k.R.rotate(-Math.PI/2),f=q=0),r<k.X&&(k.X=r,k.la=k.X+"px Monaco, Lucida Console, Courier New"),g=q,k.C=f,k.W=g,k=c,e=uc[e.type]+" ("+(e.Qd*c.ja.Rb/1024|0)+"Kb)",k.R.font=k.la,k.C-=k.R.measureText(e).width>>1,k.W+=(k.X>>1)-2,Lb(k,e),k.za&&(k.R.restore(),k.za=!1)}}else Lb(c,"This space intentionally left blank");c.context.drawImage(c.da,0,0,c.da.width,c.da.height,c.Hb,c.Ub,c.ib,c.lb);c.Ra=!1}}h.Uc=function(){this.gd.length&&this.gd[0].Uc()};
@ -78,7 +78,7 @@ a=!0;break;case "speed":this.ya[b]=c;a=!0;break;case "setSpeed":this.ya[b]=c,c.o
function cd(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ba.Ud&&a.ba.ne&&(d=a.ba.ne/a.ba.sg);a.ba.Xi=Math.round(1E3/30);a.ba.km=Math.floor(a.ba.Jd/c*d);a.ba.th=Math.floor(a.ba.Jd/30*d);a.ba.Zi=Math.floor(a.ba.Jd/60*d);a.ba.Yi=Math.floor(a.ba.Jd/2*d);b||(a.ba.jf=a.ba.th,a.ba.Hf=a.ba.Zi,a.ba.Gf=a.ba.Yi);a.ba.uh=0}function Xc(a,b){var c=a.Zb+a.Ib+a.eb-a.A;b&&1<a.ba.Ud&&a.ba.ne>a.ba.sg&&(c=Math.round(c/a.ba.Ud));return c}function Pc(a){a.ba.ne=0;a.Zb=a.Ib=a.eb=a.A=0;Qc(a);$c(a,1)}
function $c(a,b,c){var d=!1;if(void 0!==b){.8>a.ba.ne/a.ba.Ce?b=1:d=!0;a.ba.Ud=b;b=a.ba.sg*a.ba.Ud;if(a.ba.Ce!=b){a.ba.Ce=b;b=a.ba.Ce.toFixed(2)+"Mhz";var e=a.ya.setSpeed;e&&(e.textContent=b);a.U("target speed: "+b)}c&&a.Uc()}bd(a,a.Ib);a.Ib=0;a.ba.ef=sa();a.ba.De=0;cd(a);return d}
h.Ie=function(a){if(qb(this,!0)){if(!this.ra.Ob){$c(this);this.ia&&this.ia.start(this.ba.ef,Xc(this));this.ra.Ob=!0;this.ra.gh=!0;this.R&&dd(this.R);var b=this.ya.run;b&&(b.textContent="Halt");this.qd(!0);a&&this.Uc()}this.ba.uh>=this.ba.Jd&&cd(this,!0);this.ba.If=0;this.ba.tg=sa();this.ba.De&&(a=this.ba.tg-this.ba.De,a>this.ba.Xi&&(this.ba.ef+=a,this.ba.ef>this.ba.tg&&(this.ba.ef=this.ba.tg)));try{do{var c=this.ra.We?1:this.ba.km;if(this.R){ed(this.R);var d=this.R;a=c;var e=d.O[0];if(e.xe){var f=
(Xc(d.M,d.wa)-e.zd)/d.xb|0,g=fd(d,0)-f;6==e.mode&&(g-=f);var k=g*d.xb|0;6==e.mode&&(k>>=1);a>k&&(a=k)}var c=a,q=this.R;a=c;if(q.A&&q.A[11]&64){var r=q.Ja-Xc(q.M,q.wa);0<r&&a>r&&(a=r)}c=a}try{this.sf(c)}catch(B){if("number"!=typeof B)throw B;}var x=this.eb-this.A;this.Ib+=x;this.ba.If+=x;bd(this,0,!0);Uc(this,x);this.ba.Hf-=x;0>=this.ba.Hf&&(this.ba.Hf+=this.ba.Zi,Yc(this));this.ba.Gf-=x;0>=this.ba.Gf&&(this.ba.Gf+=this.ba.Yi,this.qd());this.ba.jf-=x;if(0>=this.ba.jf){this.ba.jf+=this.ba.th;break}}while(this.ra.Ob)}catch(B){this.bc();
(Xc(d.M,d.wa)-e.zd)/d.xb|0,g=fd(d,0)-f;6==e.mode&&(g-=f);var k=g*d.xb|0;6==e.mode&&(k>>=1);a>k&&(a=k)}var c=a,q=this.R;a=c;if(q.A&&q.A[11]&64){var r=q.Ja-Xc(q.M,q.wa);0<r&&a>r&&(a=r)}c=a}try{this.sf(c)}catch(B){if("number"!=typeof B)throw B;}var x=this.eb-this.A;this.Ib+=x;this.ba.If+=x;bd(this,0,!0);Wc(this,x);this.ba.Hf-=x;0>=this.ba.Hf&&(this.ba.Hf+=this.ba.Zi,Yc(this));this.ba.Gf-=x;0>=this.ba.Gf&&(this.ba.Gf+=this.ba.Yi,this.qd());this.ba.jf-=x;if(0>=this.ba.jf){this.ba.jf+=this.ba.th;break}}while(this.ra.Ob)}catch(B){this.bc();
Rc(this);this.ia&&this.ia.stop(sa(),Xc(this));qb(this,!1);wb(this,B.stack||B.message);return}c=setTimeout;d=this.Qg;this.ba.De=sa();e=this.ba.Xi;this.ba.If&&(e=Math.round(e*this.ba.If/this.ba.th));e-=this.ba.De-this.ba.tg;if(f=this.ba.De-this.ba.ef)this.ba.ne=Math.round(this.Ib/(10*f))/100,864E5<=f&&(this.Zb=0,this.R&&ed(this.R,!0),$c(this));if(0>e||this.ba.ne<this.ba.Ce)e=0;this.ba.uh+=this.ba.If;this.ba.De+=e;c(d,e)}else Rc(this),this.ia&&this.ia.stop(sa(),Xc(this))};h.sf=function(){return 0};
h.bc=function(a){rb(this,!0);this.eb-=this.A;this.A=0;bd(this,this.Ib);this.Ib=0;if(this.ra.Ob){this.ra.Ob=!1;this.R&&dd(this.R);var b=this.ya.run;b&&(b.textContent="Run")}this.ra.Sd=a};function Rc(a,b){Yc(a,b);a.qd()}
function gd(a,b,c,d){this.M=a;this.ma=a.ma;this.id=b;this.kc=c||"";this.ga=0;this.Za=65535;this.ec=this.Za+1;this.$b=this.Kc=this.ext=this.Bb=this.type=this.Ea=0;this.dc=-1;this.fa=this.fd=2;this.B=this.Fa=65535;this.ya=this.nh;this.O=this.Ei;this.ja=this.Gi;this.A={ga:-1,Ea:0,Za:0,Bb:0,type:0,ext:0,dc:-1};1==this.id&&(this.Sf=0,this.R=null,this.af=!1,this.P=Array(32),this.C=[]);hd(this,!0,d)}function id(a,b){a.C.push(b);return[a.C.length,1]}h=gd.prototype;
@ -187,8 +187,8 @@ function Qi(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;pf(this,a,-2147483648,d&1
function Wi(a,b){var c=a-b|0;hf(this,a,b,c,this.Ja|63,!0);this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return c&this.B}function Xi(a,b){pf(this,a&b,128);this.A-=-1===this.Z?-1===this.Y?this.C.ci:this.C.Pf:this.C.Pf;this.V|=2;return a}function Yi(a,b){pf(this,a&b,this.Ja);this.A-=-1===this.Z?-1===this.Y?this.C.ci:this.C.Pf:this.C.Pf;this.V|=2;return a}function Zi(a,b){var c=this.F&this.B,d=(1<<(this.G&31))-1;return a&~(d<<c)|(b&d)<<c}
function $i(a,b){return b>>(this.F&this.B)&(1<<(this.G&31))-1&this.B}function aj(a,b){if(-1===this.Y){switch(this.mc&7){case 0:this.F=this.F&-256|a;break;case 1:this.G=this.G&-256|a;break;case 2:this.H=this.H&-256|a;break;case 3:this.D=this.D&-256|a;break;case 4:this.F=this.F&-65281|a<<8;break;case 5:this.G=this.G&-65281|a<<8;break;case 6:this.H=this.H&-65281|a<<8;break;case 7:this.D=this.D&-65281|a<<8}this.A-=this.C.ei}else this.Z=this.Y,P(this,a),this.A-=this.C.di;return b}
function bj(a,b){if(-1===this.Y){switch(this.mc&7){case 0:this.F=this.F&~this.B|a;break;case 1:this.G=this.G&~this.B|a;break;case 2:this.H=this.H&~this.B|a;break;case 3:this.D=this.D&~this.B|a;break;case 4:t(this,u(this)&~this.B|a);break;case 5:this.K=this.D&~this.B|a;break;case 6:this.J=this.J&~this.B|a;break;case 7:this.I=this.I&~this.B|a}this.A-=this.C.ei}else this.Z=this.Y,Q(this,a),this.A-=this.C.di;return b}
function cj(a,b){var c=a^b;pf(this,c,128);this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return c}function dj(a,b){this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return pf(this,a^b,this.Ja)&this.B}function ej(a){p.call(this,13,0);return a}function he(a){p.call(this,6);return a}function fj(a){ke.call(this);return a}function gj(){8086==this.na?(this.lb=-1,Lh.call(this,0,null,2)):p.call(this,0,null,2)}function hj(){this.A-=-1===this.Y?2:this.C.Yj;return 1}
function ij(){var a=this.G&255;this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function jj(){var a=this.ca();this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function kj(){return null}function lj(){return this.xb}function Mf(a,b){this.lb=a;void 0===b&&(b=11);Lh.call(this,a,null,b)}
function cj(a,b){var c=a^b;pf(this,c,128);this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return c}function dj(a,b){this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return pf(this,a^b,this.Ja)&this.B}function ej(a){if(80186>this.na)return fj.call(this,a);p.call(this,13,0);return a}function he(a){p.call(this,6);return a}function fj(a){ke.call(this);return a}function gj(){8086==this.na?(this.lb=-1,Lh.call(this,0,null,2)):p.call(this,0,null,2)}
function hj(){this.A-=-1===this.Y?2:this.C.Yj;return 1}function ij(){var a=this.G&255;this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function jj(){var a=this.ca();this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function kj(){return null}function lj(){return this.xb}function Mf(a,b){this.lb=a;void 0===b&&(b=11);Lh.call(this,a,null,b)}
function p(a,b,c,d){var e=!1;this.ra.Sd?80186<=this.na&&(e=!0,0>this.lb?(-1!=this.Jc&&(this.Ca.$b=3,cf(this,this.Jc),this.Jc=-1),ef(this,this.Ge),-1!=this.rd&&(nd(this,this.rd),this.rd=-1),-1!==this.X&&(t(this,this.ib&~this.Aa.Fa|this.X-this.Aa.Ea),this.X=-1)):8!=this.lb?(b=0,a=8):(b=0,a=-1,te(this),e=d=!1)):ef(this,this.Ge);var f=a,g=b,k=32,q=Cf(this,this.Na);204!=q||this.Pd||(d=!1);this.ea&131072&&(6==f&&99==q||13==f&&205==q)&&(d=!1);!1===d&&(k|=1);983040<=this.Na&&1048575>=this.Na&&(d=!1);n(this,
k|-2147483648)&&(d=!0);if(n(this,k)||d){var r=this.ra.Ob,f="Fault "+ha(f)+(null!=g?" ("+ia(g)+")":"")+" on opcode "+ha(q);d&&r&&(f+=" (blocked by PCjs Debugger)");this.ma?(pb(this,f,d||k,!0),d&&(d=r,this.ma.bc())):(this.Va(f),this.bc())}if(d&&e)throw-1;if(e)throw this.lb=a,Lh.call(this,a,b,c),this.Ge=this.Na,this.V=1==a?this.V|8192:this.V|4096,a;}function we(a,b,c){this.qe=a;a=0;b&&(a|=1);c&&(a|=2);3==this.ta&&(a|=4);p.call(this,14,a)}function ie(){this.Ub[this.ca()].call(this)}
function le(){zd(this,u(this)&this.B);this.A-=this.C.Sc}function Kd(){this.X=this.ka;var a=u(this)&this.B;zd(this,this.F&this.B);zd(this,this.G&this.B);zd(this,this.H&this.B);zd(this,this.D&this.B);zd(this,a);zd(this,this.K&this.B);zd(this,this.J&this.B);zd(this,this.I&this.B);this.A-=this.C.Sj;this.X=-1}
@ -254,7 +254,7 @@ a;var c=(b=this.F&65535)/a;if(255<c)return gj.call(this),a;this.la=c&255|(b%a&25
a;this.la|=0;this.Ba|=0}this.Ua=!0;this.A-=-1===this.Y?this.C.mj:this.C.lj;this.V|=2;return a},function(a,b){if(2==this.fa){if(!a)return gj.call(this),a;var c=a<<16>>16,d=(b=this.H<<16|this.F&65535)/c|0;if(d!=d<<16>>16||8086==this.na&&-32768==d)return gj.call(this),a;this.la=d&65535;this.Ba=b%c&65535}else{var c=this.F,d=this.H,e=a,f=0,g=0;0>e&&(e=-e|0,f=1-f);0>d&&(c=-c|0,d=~d+(c?0:1)|0,g=1,f=1-f);!Ch.call(this,c,d,e)||this.la>2147483647+f||this.Ba>2147483647+g?c=!1:(f&&(this.la=-this.la),g&&(this.Ba=
-this.Ba),c=!0);if(!c)return gj.call(this),a;this.la|=0;this.Ba|=0}this.Ua=!0;this.A-=-1===this.Y?this.C.qj:this.C.pj;this.V|=2;return a}],Gd=[function(a){var b=a+1|0;hf(this,a,1,b,190);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&255},function(a){var b=a-1|0;hf(this,a,1,b,190,!0);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&255},fj,fj,fj,fj,fj,fj],Hd=[function(a){var b=a+1|0;hf(this,a,1,b,this.Ja|62);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&this.B},function(a){var b=a-1|0;hf(this,
a,1,b,this.Ja|62,!0);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&this.B},function(a){zd(this,v(this));df(this,a);this.A-=-1===this.Y?this.C.ij:this.C.hj;this.V|=2;return a},function(a){if(-1===this.Y)return fj.call(this,a);this.X=this.ka;xh.call(this,a,this.va(this.Y+this.fa));this.A-=this.C.fj;this.V|=2;this.X=-1;return a},function(a){df(this,a);this.A-=-1===this.Y?this.C.Dj:this.C.Cj;this.V|=2;return a},function(a){if(-1===this.Y)return fj.call(this,a);Cd(this,a,this.va(this.Y+this.fa));this.A-=
this.C.Aj;this.V|=2;return a},function(a){var b=a;this.V&512&&(a=a-2&65535,80286>this.na&&(b=a));zd(this,b);this.A-=-1===this.Y?this.C.Sc:this.C.Tj;this.V|=2;return a},ej];function re(){this.da[this.ca()].call(this,$i);this.A-=-1===this.Y?6:13}function se(){this.qa[this.ca()].call(this,Zi);this.A-=-1===this.Y?12:19}var je=Array(256);je[0]=function(){var a=this.ca();16>(a&56)&&(this.V|=1);this.Oa[a].call(this,this.Ng,kj)};je[1]=function(){var a=this.ca();a&16||(this.V|=1);this.Oa[a].call(this,Tj,kj)};
this.C.Aj;this.V|=2;return a},function(a){var b=a;this.V&512&&(a=a-2&65535,80286>this.na&&(b=a));zd(this,b);this.A-=-1===this.Y?this.C.Sc:this.C.Tj;this.V|=2;return a},fj];function re(){this.da[this.ca()].call(this,$i);this.A-=-1===this.Y?6:13}function se(){this.qa[this.ca()].call(this,Zi);this.A-=-1===this.Y?12:19}var je=Array(256);je[0]=function(){var a=this.ca();16>(a&56)&&(this.V|=1);this.Oa[a].call(this,this.Ng,kj)};je[1]=function(){var a=this.ca();a&16||(this.V|=1);this.Oa[a].call(this,Tj,kj)};
je[2]=function(){!(this.bb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Mh)};je[3]=function(){!(this.bb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Th)};
je[5]=function(){this.ta?p.call(this,13,0,0,!0):(Af(this,this.va(2054)),this.I=this.va(2086),this.J=this.va(2088),this.K=this.va(2090),this.D=this.va(2094),this.H=this.va(2096),this.G=this.va(2098),this.F=this.va(2100),ld(this.cb,2102,this.va(2084)),ld(this.Ca,2108,this.va(2082)),ld(this.Aa,2114,this.va(2080)),ld(this.Ab,2120,this.va(2078)),Bd(this,this.va(2072)),df(this,this.va(2074)),t(this,this.va(2092)),this.Dc=this.va(2126)|this.Wa(2128)<<16,this.Bd=this.Dc+this.va(2130),this.Oc=this.va(2138)|
this.Wa(2140)<<16,this.Pd=this.Oc+this.va(2142),ld(this.Ac,2132,this.va(2076)),ld(this.Ya,2144,this.va(2070)),this.A-=195)};je[6]=function(){this.ta?p.call(this,13,0):(this.bb&=-9,this.A-=2)};je[11]=Jd;je[166]=Jd;je[255]=Jd;var w=[];w[5]=Jd;
@ -877,17 +877,17 @@ Z[1009]=15;Z[113]=16;Z[81]=10768;Z[119]=17;Z[87]=10769;Z[101]=18;Z[69]=10770;Z[1
Z[X[";"]]=39;Z[X[":"]]=10791;Z[X["'"]]=40;Z[X['"']]=10792;Z[X["`"]]=41;Z[X["~"]]=10793;Z[1016]=42;Z[X["\\"]]=43;Z[X["|"]]=10795;Z[122]=44;Z[90]=10796;Z[120]=45;Z[88]=10797;Z[99]=46;Z[67]=10798;Z[118]=47;Z[86]=10799;Z[98]=48;Z[66]=10800;Z[110]=49;Z[78]=10801;Z[109]=50;Z[77]=10802;Z[X[","]]=51;Z[X["<"]]=10803;Z[X["."]]=52;Z[X[">"]]=10804;Z[X["/"]]=53;Z[X["?"]]=10805;Z[3016]=54;Z[1044]=55;Z[1018]=56;Z[1032]=57;Z[1020]=58;Z[1112]=59;Z[1113]=60;Z[1114]=61;Z[1115]=62;Z[1116]=63;Z[1117]=64;Z[1118]=65;
Z[1119]=66;Z[1120]=67;Z[1121]=68;Z[1144]=69;Z[1145]=70;Z[1036]=71;Z[1038]=72;Z[1033]=73;Z[1109]=74;Z[1037]=75;Z[1101]=76;Z[1039]=77;Z[1107]=78;Z[1035]=79;Z[1040]=80;Z[1034]=81;Z[1045]=82;Z[1046]=83;Z[4027]=84;Z[1122]=87;Z[1123]=88;Z[1091]=91;Z[1093]=93;Z[1224]=91;Z[4003]=7470;Z[4008]=7494;Z[4046]=3677523;h=El.prototype;
h.Xb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.ya[f])switch(b){case "kbd":return c.onkeydown=function(a){return Nl(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.O="";var b=!Z[a]||!!(e.wc&128);b||Ol(e,a,!0);return b},c.onkeyup=function(a){return Nl(e,a,!1)},!0;case "caps-lock":return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1020,!0)},!0;case "num-lock":return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1144,!0)},!0;case "scroll-lock":return this.ya[f]=
c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1145,!0)},!0;case "test":return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();d&&!e.O&&(e.O=d,Pl(e,300))},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==Kl[g]&&"button"==a)return this.ya[f]=c,c.onclick=function(a,b,c){return function(){a.M&&a.M.Uc();Ql(a,c,!0);Ol(a,c,!0)}}(this,g,Kl[g]),!0;if(void 0!==Ll[b])return this.da++,this.ya[f]=c,a=function(a,b,c){return function(){Ol(a,c)}}(this,b,Ll[b]),b=function(a,b,c){return function(){Rl(a,c)}}(this,
b,Ll[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};function Sl(a,b,c){if(a.da){for(var d in Il)if(b==Il[d]){b=+d;(d=Hl[d])&&(b=d);break}for(var e in Ll)if((d=Ll[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Ll[e]==d),d){(a=a.ya["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}h.Lc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.R=Gb(a,"ChipSet")};
c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1145,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==Kl[g]&&"button"==a)return this.ya[f]=c,c.onclick=function(a,b,c){return function(){a.M&&a.M.Uc();Pl(a,c,!0);Ol(a,c,!0)}}(this,g,Kl[g]),!0;if(void 0!==Ll[b])return this.da++,this.ya[f]=c,a=function(a,b,c){return function(){Ol(a,c)}}(this,b,Ll[b]),b=function(a,b,c){return function(){Ql(a,c)}}(this,b,Ll[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
c.onmouseout=b),!0;if(d)return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();d&&!e.O&&(e.O=d,Rl(e,300))},!0}return!1};function Sl(a,b,c){if(a.da){for(var d in Il)if(b==Il[d]){b=+d;(d=Hl[d])&&(b=d);break}for(var e in Ll)if((d=Ll[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Ll[e]==d),d){(a=a.ya["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}h.Lc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.R=Gb(a,"ChipSet")};
function Fl(a,b){var c=0;a.na=null;b&&(a.na=b.toUpperCase(),c=Gl.indexOf(a.na),0>c&&(c=0));b=Gl[c];a.ta=parseInt(b.substr(2),10)}function nl(a,b){pb(a,"keyboard reset",65792);a.A=[170];a.ia=!0;b&&a.R&&pl(a.R,a.A[0])}function jl(a,b,c){a.W!==c&&(a.W=a.X=c)&&(a.ia=!0);a.Z!==b&&(a.Z=b)&&!a.X&&ql(a,!0);a.Z&&a.X&&(nl(a,!0),a.X=!1)}function kl(a){var b=0;a.A.length&&a.ia&&(b=a.A[0],a.R&&pl(a.R,b));n(a)&&pb(a,"scan code "+ha(b)+" available")}
function ql(a,b){0<a.A.length&&(a.A.shift(),(a.ia=b)&&(a.A.length&&a.R?pl(a.R,a.A[0]):b=!1),n(a)&&pb(a,"scan codes shifted, notify "+(b?"true":"false")))}h.qc=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};h.pc=function(a){return a?this.save():!0};h.reset=function(){if(!this.na&&this.R)switch(this.R.na){case Xj:case 5160:Fl(this,Gl[0]);break;default:Fl(this,Gl[1])}Tl(this);this.wc=this.P=0;this.A=[];this.ia=!0;this.O=""};
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.W;c[b]=this.Z;af(a,0,c);return a.data()};h.restore=function(a){return Tl(this,a[0])};function Tl(a,b){var c=0;void 0===b&&(b=[]);a.W=a.ia=b[c++];a.Z=b[c];return!0}function Pl(a,b){if(0<a.O.length){var c=a.O.charCodeAt(0);10==c&&(c=13);a.O=a.O.substr(1);Ol(a,c,!0)}0<a.O.length&&setTimeout(function(a){return function(){Pl(a,b)}}(a),b)}
function Ql(a,b,c,d){if(Z[b]){var e=Math.floor(b/1E3)&2;if(b=Jl[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.P:a.wc)&b):d||b&255&&(b=255);if(c){a.P&=~b;d&&(a.P|=b);c=b;var f,g;for(g in Ml)d="led-"+g,e=Ml[g],c&&c!=e||!(f=a.ya[d])||(f.style.backgroundColor=a.P&e?"#00ff00":"#000000")}else a.wc&=~b,d&&(a.wc|=b);return!0}}return!1}
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.W;c[b]=this.Z;af(a,0,c);return a.data()};h.restore=function(a){return Tl(this,a[0])};function Tl(a,b){var c=0;void 0===b&&(b=[]);a.W=a.ia=b[c++];a.Z=b[c];return!0}function Rl(a,b){if(0<a.O.length){var c=a.O.charCodeAt(0);10==c&&(c=13);a.O=a.O.substr(1);Ol(a,c,!0)}0<a.O.length&&setTimeout(function(a){return function(){Rl(a,b)}}(a),b)}
function Pl(a,b,c,d){if(Z[b]){var e=Math.floor(b/1E3)&2;if(b=Jl[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.P:a.wc)&b):d||b&255&&(b=255);if(c){a.P&=~b;d&&(a.P|=b);c=b;var f,g;for(g in Ml)d="led-"+g,e=Ml[g],c&&c!=e||!(f=a.ya[d])||(f.style.backgroundColor=a.P&e?"#00ff00":"#000000")}else a.wc&=~b,d&&(a.wc|=b);return!0}}return!1}
function Ol(a,b,c){if(Z[b]&&a.M&&a.M.ra.Ob){Jl[b]&&a.C.length&&0<a.C[0].Kd&&(a.C[0].Kd=0);for(var d,e=0;e<a.C.length;e++)if(d=a.C[e],d.Ke==b){if(!c||0<=d.Kd){e=-1;break}0<e&&(0<a.C[0].Kd&&(a.C[0].Kd=0),a.C.splice(e,1));break}0>e||(e==a.C.length&&(d={},d.Ke=b,d.wc=a.wc,Sl(a,b,!0),e++),0<e&&a.C.splice(0,0,d),d.Af=!0,d.Kd=c?-1:Jl[b]?0:1,Ul(a,d))}}
function Rl(a,b,c){if(!Z[b]||!(c||a.M&&a.M.ra.Ob))return!1;for(var d=!1,e=0;e<a.C.length;e++){var f=a.C[e];if(f.Ke==b||f.Ke==Il[b]){a.C.splice(e,1);f.pk&&clearTimeout(f.pk);f.Af&&!c&&Vl(a,f.Ke,!1);Sl(a,b,!1);d=!0;break}}!a.C.length&&a.la&&(Ql(a,1020),a.la=!1);return d}function Ul(a,b){if(!a.M||!a.M.ra.Ob)Rl(a,b.Ke,!0);else if(Vl(a,b.Ke,b.Af)&&b.Kd){var c;if(0>b.Kd){if(!b.Af){Rl(a,b.Ke);return}b.Af=!1;c=a.wa}else c=1==b.Kd++?500:100;b.pk=setTimeout(function(a){return function(){Ul(a,b)}}(a),c)}}
function Ql(a,b,c){if(!Z[b]||!(c||a.M&&a.M.ra.Ob))return!1;for(var d=!1,e=0;e<a.C.length;e++){var f=a.C[e];if(f.Ke==b||f.Ke==Il[b]){a.C.splice(e,1);f.pk&&clearTimeout(f.pk);f.Af&&!c&&Vl(a,f.Ke,!1);Sl(a,b,!1);d=!0;break}}!a.C.length&&a.la&&(Pl(a,1020),a.la=!1);return d}function Ul(a,b){if(!a.M||!a.M.ra.Ob)Ql(a,b.Ke,!0);else if(Vl(a,b.Ke,b.Af)&&b.Kd){var c;if(0>b.Kd){if(!b.Af){Ql(a,b.Ke);return}b.Af=!1;c=a.wa}else c=1==b.Kd++?500:100;b.pk=setTimeout(function(a){return function(){Ul(a,b)}}(a),c)}}
function Wl(a,b,c){var d=b;if(65<=b&&90>=b)!(a.wc&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.wc&515)==c&&(d=b-32);else if(!!(a.wc&3)==c){if(a=Il[b])d=a}else if(a=Hl[b])d=a;return d}h.Fg=function(a){a||(this.wc&=-256)};
function Nl(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,k=Wl(a,g,!0);a.eh&&k==X["`"]&&(g=k=27);if(Z[g+1E3])if(k+=1E3,2==b.location&&(k+=2E3),Ql(a,k,!1,c)){if(20==g||144==g||145==g)a.qa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var q=0;q<a.C.length;q++){var r=a.C[q];r.Af=!1;0<r.Kd&&(r.Kd=0)}}else 8==g&&8==(a.wc&40)&&(k=4008),d=!1;else if(Z[k]&&a.wc&60&&(d=!1),d&&c||a.wc&192)f=!0;d||b.preventDefault();f||a.ka&&d||(c?Ol(a,k,e):Rl(a,k)||(b=Wl(a,g,!1),b!=k&&Rl(a,b)));return d}
function Vl(a,b,c){var d=!1;Ql(a,b,!0,c);var e=Z[b]||Z[b+1E3];if(void 0!==e){14==e&&40==(a.wc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ta)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,k=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==k?a.P&3||a.P&512&&b||(g=k):29==k?a.P&12||(g=k):56==k?a.P&48||(g=k):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(n(e)&&pb(e,"scan code "+ha(f)+" buffered"),e.A.push(f),
function Nl(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,k=Wl(a,g,!0);a.eh&&k==X["`"]&&(g=k=27);if(Z[g+1E3])if(k+=1E3,2==b.location&&(k+=2E3),Pl(a,k,!1,c)){if(20==g||144==g||145==g)a.qa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var q=0;q<a.C.length;q++){var r=a.C[q];r.Af=!1;0<r.Kd&&(r.Kd=0)}}else 8==g&&8==(a.wc&40)&&(k=4008),d=!1;else if(Z[k]&&a.wc&60&&(d=!1),d&&c||a.wc&192)f=!0;d||b.preventDefault();f||a.ka&&d||(c?Ol(a,k,e):Ql(a,k)||(b=Wl(a,g,!1),b!=k&&Ql(a,b)));return d}
function Vl(a,b,c){var d=!1;Pl(a,b,!0,c);var e=Z[b]||Z[b+1E3];if(void 0!==e){14==e&&40==(a.wc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ta)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,k=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==k?a.P&3||a.P&512&&b||(g=k):29==k?a.P&12||(g=k):56==k?a.P&48||(g=k):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(n(e)&&pb(e,"scan code "+ha(f)+" buffered"),e.A.push(f),
1==e.A.length&&e.R&&pl(e.R,f)):(20==e.A.length&&e.A.push(255),pb(e,"scan code buffer overflow")));d=!0}return d}Sa(function(){for(var a=mb(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=kb(c),d=new El(d);lb(d,c)}});
function Xl(a,b,c,d,e){Xa.call(this,"Video",a,Xl,262144);this.na=a.model;this.nb=Yl[this.na]||Zl;this.Ed=a.memory||0;this.Xf=a.switches;this.Da=a.mode;if(void 0===this.Da||void 0===$l[this.Da])this.Da=am;this.hd=a.charCols;this.je=a.charRows;if(void 0===this.hd||void 0===this.je)this.hd=$l[this.Da][0],this.je=$l[this.Da][1];this.Ba=a.screenWidth;this.Ma=a.screenHeight;this.Qg=a.scale;this.Pg=12<=Math.round(this.Ba/this.hd);this.wa=b;this.qa=c;this.ia=(this.Ak=d)||b||null;this.cg=a.touchScreen;this.ke=
bm;this.Z=null;this.Og=a.autoLock;this.sb=this.fc=0;this.Ua=[];this.Ja=Array(this.nb==vl?256:16);this.xb=!1;var f=this;this.nf=Ja("Gecko/");b=["","moz","webkit","ms"];if(this.la=e)if(this.la.Ue=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.la.Ue){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){cm(f,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
@ -934,7 +934,7 @@ function Qm(a,b){if(1==b)return a.Ja[0]=hm[0],a.Ja[1]=hm[7],a.Ja;if(2==b){var c=
(c.Tc[20]&12)<<4,c.Tc[16]&128&&(g&=-49,g|=(c.Tc[20]&3)<<4),g=d[g],k=g<<2&252,q=g>>4&252,g=g>>10&252):(k=(g&4?170:0)|(g&32?85:0),q=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ja[f]=[k,q,g,255]}a.xb=!0}return a.Ja}function ul(a,b,c,d){a.Jc=b;a.sd=c;a.rb=d}
function Mm(a,b){var c=!1;if(window&&a.Jc&&(!b||a.W)){var d=0,e=a.rb?a.rb:8,f=Qm(a);Rm(a,3,a.sd[0],d,e,8,a.Jc,f)&&(c=!0);d=a.rb?0:2048;e=a.rb?a.rb:9;Rm(a,1,a.sd[1],d,e,14,a.Jc,fm,gm)&&(c=!0);a.rb&&Rm(a,a.nb,a.sd[1],0,a.rb,14,a.Jc,f)&&(c=!0)}return c}function Rm(a,b,c,d,e,f,g,k,q){var r=!1;null!=c&&(Sm(a,b,c,d,e,f,g,k,q)&&(r=!0),a.Pg&&Sm(a,b<<1,c,d,e,f,g,k,q)&&(r=!0));return r}
function Sm(a,b,c,d,e,f,g,k,q){var r=!1,x=b&1?0:1,B=a.Ua[b],y=16>k.length?k.length:16;B||(B={Qc:e<<x,Rc:f<<x,Me:Array(y),ui:k.slice(0,y),wf:q,Tg:Array(y)});for(q=0;q<y;q++){var J=k[q],U=B.Me[q]?B.ui[q]:[];if(J[0]!==U[0]||J[1]!==U[1]||J[2]!==U[2]){var r=B,U=q,F=x,O=c,V=d,Y=e,ga=f,da=g,bb=[0,0,0,0],ta=window.document.createElement("canvas");ta.width=r.Qc<<4;ta.height=r.Rc<<4;for(var pa=ta.getContext("2d"),Ma=void 0,$a=void 0,Ia=void 0,Vb=8>ga||!V?ga:8,Da=pa.createImageData(r.Qc,r.Rc),Ma=0;256>Ma;Ma++){for(Ia=
0;Ia<ga;Ia++)for(var Sd=r.wf&&U&1&&Ia>=ga-2,Tc=da[Ia<Vb?O+Ma*Vb+Ia:V+Ma*Vb+Ia-Vb],Td=0;Td<=F;Td++)for($a=0;$a<Y;$a++){var De=$a<<F,Ud=(Ia<<F)+Td,Ee=Sd||Tc&128>>(8<=$a&&192<=Ma&&223>=Ma?7:$a)?J:bb;Tm(Da,De,Ud,Ee);F&&Tm(Da,De+1,Ud,Ee)}pa.putImageData(Da,(Ma&15)*r.Qc,(Ma>>4)*r.Rc)}r.Me[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.ui[U]=J;r.Tg[U]=ta;r=!0}}a.Ua[b]=B;return r}function Um(a){0<a.eb||0<=a.ta?0>a.Yb&&(a.Yb=0):a.Yb=-1}
0;Ia<ga;Ia++)for(var Sd=r.wf&&U&1&&Ia>=ga-2,Sc=da[Ia<Vb?O+Ma*Vb+Ia:V+Ma*Vb+Ia-Vb],Td=0;Td<=F;Td++)for($a=0;$a<Y;$a++){var De=$a<<F,Ud=(Ia<<F)+Td,Ee=Sd||Sc&128>>(8<=$a&&192<=Ma&&223>=Ma?7:$a)?J:bb;Tm(Da,De,Ud,Ee);F&&Tm(Da,De+1,Ud,Ee)}pa.putImageData(Da,(Ma&15)*r.Qc,(Ma>>4)*r.Rc)}r.Me[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.ui[U]=J;r.Tg[U]=ta;r=!0}}a.Ua[b]=B;return r}function Um(a){0<a.eb||0<=a.ta?0>a.Yb&&(a.Yb=0):a.Yb=-1}
function Pm(a){if(a.W){for(var b=10;15>=b;b++)if(null==a.C.zb[b])return;var c=a.C.zb[10],b=c&31,d=a.C.zb[11]&31,e=a.C.zb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)qn(a);else{c=a.C.zb[15]+((a.C.zb[14]&63)<<8);a.ta!=c&&(qn(a),a.ta=c);d=d-b+1;if(a.eg!=b||a.ye!=d)a.eg=b,a.ye=d;a.ib=e+1;Um(a)}}}
function qn(a){if(0<=a.ta){if(void 0!==a.ka){var b=a.ka[a.ta];if(b&131072){var b=b&-131073,c=a.ta%a.O,d=a.ta/a.O|0;a.W&&a.Ua[a.W]&&(a.qb&&rn(a,c,d,b,a.qb),rn(a,c,d,b));a.ka[a.ta]=b}}a.ta=-1}}
function sn(a){var b,c=a.C;a.Be=!1;var d=c.Zd[5];if(null!=d){b=1024;var e=0,f=c.Zd[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.nb==vl&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.He[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.Be=!0));b|=e}return b}
@ -967,14 +967,14 @@ var Am={948:Xl.prototype.Gl,949:Xl.prototype.Fl,952:Xl.prototype.Hl,954:Xl.proto
960:Xl.prototype.dk,961:Xl.prototype.dk,962:Xl.prototype.Zm,964:Xl.prototype.gn,965:Xl.prototype.fn,970:Xl.prototype.Sm,972:Xl.prototype.Rm,974:Xl.prototype.Qm,975:Xl.prototype.Pm,986:Xl.prototype.ek},Gm={963:Xl.prototype.Tl,966:Xl.prototype.tl,967:Xl.prototype.ul,969:Xl.prototype.sl,970:Xl.prototype.Ul,972:Xl.prototype.Vl},Hm={963:Xl.prototype.jn,966:Xl.prototype.Hm,967:Xl.prototype.Im,968:Xl.prototype.Jm,969:Xl.prototype.Gm};
Sa(function(){for(var a=mb(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=kb(c),e=window.document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(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.onresize());c.appendChild(e);var f=window.document.createElement("textarea");Ja("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Xl(d,e,g,f,c);lb(d,c)}});
function Cn(a){this.Da=a.adapter;switch(this.Da){case 1:this.wa=1016;this.la=4;break;case 2:this.wa=760;this.la=3;break;default:Ba("Unrecognized serial adapter #"+this.Da);return}this.ia=this.W=null;this.Ha=a.tabSize;this.da=0;Xa.call(this,"SerialPort",a,Cn,4194304);var b=a.binding;if("console"==b)this.W="";else{var c;a=Dn;b&&(void 0===c&&(c="Panel"),(c=jb(c,this.id))&&(b=c.ya[b])&&this.Xb(null,a,b))}}gb(Cn);var Dn="buffer";h=Cn.prototype;h.yi=function(a,b){return a==this.ce?(this.Z=b,this):null};
h.Xb=function(a,b,c){var d=this;switch(b){case Dn:return this.ya[b]=this.ia=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),En(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;En(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
function Cn(a){this.Ha=a.adapter;switch(this.Ha){case 1:this.wa=1016;this.la=4;break;case 2:this.wa=760;this.la=3;break;default:Ba("Unrecognized serial adapter #"+this.Ha);return}this.ia=this.W=null;this.Ja=a.tabSize;this.Da=a.charBOL;this.X=0;Xa.call(this,"SerialPort",a,Cn,4194304);var b=a.binding;if("console"==b)this.W="";else{var c;a=Dn;b&&(void 0===c&&(c="Panel"),(c=jb(c,this.id))&&(b=c.ya[b])&&this.Xb(null,a,b))}}gb(Cn);var Dn="buffer";h=Cn.prototype;
h.yi=function(a,b){return a==this.ce?(this.Z=b,this):null};h.Xb=function(a,b,c){var d=this;switch(b){case Dn:return this.ya[b]=this.ia=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),En(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;En(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
h.Lc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.R=Gb(a,"ChipSet");jc(b,this,Fn,this.wa);nc(b,this,Gn,this.wa);ub(this)};h.qc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};h.pc=function(a){return a?this.save():!0};h.reset=function(){Hn(this)};
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.ta;c[b++]=this.Ba;c[b++]=this.X;c[b++]=this.qa;c[b++]=this.O;c[b++]=this.C;c[b++]=this.P;c[b++]=this.A;c[b++]=this.za;c[b]=this.ka;af(a,0,c);return a.data()};h.restore=function(a){return Hn(this,a[0])};function Hn(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ta=b[c++];a.Ba=b[c++];a.X=b[c++];a.qa=b[c++];a.O=b[c++];a.C=b[c++];a.P=b[c++];a.A=b[c++];a.za=b[c++];a.ka=b[c];return!0}function En(a,b){a.ka=a.ka.concat(b);In(a)}
function In(a){0<a.ka.length&&!(a.A&1)&&(a.ta=a.ka.shift(),a.A|=1);var b=-1;a.A&1&&a.qa&1&&(b=4);0<=b?(a.O&=-8,a.O|=b,a.R&&a.la&&Wf(a.R,a.la,100)):(a.O|=1,a.R&&a.la&&Vf(a.R,a.la))}h.Pl=function(a,b){var c=this.C&128?this.X&255:this.ta;m(this,a,null,b,this.C&128?"DLL":"RBR",c);this.A&=-2;In(this);return c};h.Al=function(a,b){var c=this.C&128?this.X>>8:this.qa;m(this,a,null,b,this.C&128?"DLM":"IER",c);return c};h.Bl=function(a,b){var c=this.O;m(this,a,null,b,"IIR",c);return c};
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.ta;c[b++]=this.Ba;c[b++]=this.da;c[b++]=this.qa;c[b++]=this.O;c[b++]=this.C;c[b++]=this.P;c[b++]=this.A;c[b++]=this.za;c[b]=this.ka;af(a,0,c);return a.data()};h.restore=function(a){return Hn(this,a[0])};function Hn(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ta=b[c++];a.Ba=b[c++];a.da=b[c++];a.qa=b[c++];a.O=b[c++];a.C=b[c++];a.P=b[c++];a.A=b[c++];a.za=b[c++];a.ka=b[c];return!0}function En(a,b){a.ka=a.ka.concat(b);In(a)}
function In(a){0<a.ka.length&&!(a.A&1)&&(a.ta=a.ka.shift(),a.A|=1);var b=-1;a.A&1&&a.qa&1&&(b=4);0<=b?(a.O&=-8,a.O|=b,a.R&&a.la&&Wf(a.R,a.la,100)):(a.O|=1,a.R&&a.la&&Vf(a.R,a.la))}h.Pl=function(a,b){var c=this.C&128?this.da&255:this.ta;m(this,a,null,b,this.C&128?"DLL":"RBR",c);this.A&=-2;In(this);return c};h.Al=function(a,b){var c=this.C&128?this.da>>8:this.qa;m(this,a,null,b,this.C&128?"DLM":"IER",c);return c};h.Bl=function(a,b){var c=this.O;m(this,a,null,b,"IIR",c);return c};
h.Cl=function(a,b){var c=this.C;m(this,a,null,b,"LCR",c);return c};h.El=function(a,b){var c=this.P;m(this,a,null,b,"MCR",c);return c};h.Dl=function(a,b){var c=this.A;m(this,a,null,b,"LSR",c);return c};h.Jl=function(a,b){var c=this.za;m(this,a,null,b,"MSR",c);return c};
h.hn=function(a,b,c){m(this,a,b,c,this.C&128?"DLL":"THR");if(this.C&128)this.X=this.X&-256|b;else{this.Ba=b;this.A&=-97;if(this.ia)13==b?this.da=0:8==b?(this.ia.value=this.ia.value.slice(0,-1),0<this.da&&this.da--):(a=String.fromCharCode(b),c=32<=b?1:0,9==b&&(b=this.Ha||8,c=b-this.da%b,this.Ha&&(a=oa("",c))),this.ia.value+=a,this.ia.scrollTop=this.ia.scrollHeight,this.da+=c),b=!0;else if(null!=this.W){if(10==b||1024<=this.W.length)this.U(this.W),this.W="";10!=b&&(this.W+=String.fromCharCode(b));b=
!0}else b=!1;b&&(this.A|=96)}};h.Tm=function(a,b,c){m(this,a,b,c,this.C&128?"DLM":"IER");this.C&128?this.X=this.X&255|b<<8:this.qa=b};h.Um=function(a,b,c){m(this,a,b,c,"LCR");this.C=b};
h.hn=function(a,b,c){m(this,a,b,c,this.C&128?"DLL":"THR");if(this.C&128)this.da=this.da&-256|b;else{this.Ba=b;this.A&=-97;if(this.ia)13==b?this.X=0:8==b?(this.ia.value=this.ia.value.slice(0,-1),0<this.X&&this.X--):(a=String.fromCharCode(b),c=32<=b?1:0,9==b&&(b=this.Ja||8,c=b-this.X%b,this.Ja&&(a=oa("",c))),this.Da&&!this.X&&c&&(a=String.fromCharCode(this.Da)+a),this.ia.value+=a,this.ia.scrollTop=this.ia.scrollHeight,this.X+=c),b=!0;else if(null!=this.W){if(10==b||1024<=this.W.length)this.U(this.W),
this.W="";10!=b&&(this.W+=String.fromCharCode(b));b=!0}else b=!1;b&&(this.A|=96)}};h.Tm=function(a,b,c){m(this,a,b,c,this.C&128?"DLM":"IER");this.C&128?this.da=this.da&255|b<<8:this.qa=b};h.Um=function(a,b,c){m(this,a,b,c,"LCR");this.C=b};
h.Vm=function(a,b,c){var d=this.P;m(this,a,b,c,"MCR");this.P=b;this.Z&&(d^b)&3&&(a=this.Z,b=this.P,(c=3==(b&3))?a.Hc||(d=!1,a.P&2||(a.reset(),pb(a,"serial mouse reset"),d=!0),a.P&1||(pb(a,"serial mouse ID requested"),d=!0),d&&(En(a.R,[77,77]),pb(a,"serial mouse ID sent")),Jn(a),a.Hc=c):a.Hc&&(pb(a,"serial mouse inactive"),Kn(a),a.Hc=c),a.P=b)};
var Fn={0:Cn.prototype.Pl,1:Cn.prototype.Al,2:Cn.prototype.Bl,3:Cn.prototype.Cl,4:Cn.prototype.El,5:Cn.prototype.Dl,6:Cn.prototype.Jl},Gn={0:Cn.prototype.hn,1:Cn.prototype.Tm,3:Cn.prototype.Um,4:Cn.prototype.Vm};Sa(function(){for(var a=mb(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=kb(c),d=new Cn(d);lb(d,c)}});function Ln(a){Xa.call(this,"Mouse",a,Ln,33554432);if(this.ta=a.serial)this.wa="SerialPort";this.qa=this.la=this.Hc=!1;this.C=[];this.A=[];ub(this)}gb(Ln);var Km=0;h=Ln.prototype;
h.Lc=function(a,b,c,d){this.ia=a;this.ja=b;this.M=c;this.ma=d;for(b=null;b=Gb(a,"Video",b);)this.C.push(b)};h.qc=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.wa&&!this.R){for(var c=null;(c=Gb(this.ia,this.wa,c))&&(!c.yi||!(this.R=c.yi(this.ta,this))););if(this.R)for(this.A=[],c=0;c<this.C.length;c++){var d;d=this.C[c];d.Z=this;(d=d.ia)&&this.A.push(d)}else Ba(this.id+": "+this.wa+" "+this.ta+" unavailable")}this.Hc?Jn(this):Kn(this)}return!0};
@ -1129,7 +1129,7 @@ function oq(a,b){b=gq(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=lq(b,c+1),
function Qj(a,b,c,d){var e,f;if(!d&&(d=n(a,1)&&0>vp.indexOf(b),!d)){var g=up[b];g&&(d=n(a,g)?!0:524288==g&&n(a,g=1048576))}d&&(e=a.M.F>>8&255,f=a.M.H&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Ab[b])&&g[e]||"")&&(g=" "+oq(a,g)),a.message("INT "+ha(b)+": AH="+ha(e)+" at "+Rp(c-2-a.M.Ca.Ea,a.M.Ca.ga)+g));return d}
function ob(a,b,c,d,e,f,g,k){k|=256;if(null==e||(a.vc&k)==k)k=null,null!=e&&(k=a.M.Ca.ga,e-=a.M.Ca.Ea),a.message(b.ce+"."+(null!=d?"outPort":"inPort")+"("+ia(c)+","+(f?f:"unknown")+(null!=d?","+ha(d):"")+")"+(null!=g?": "+ha(g):"")+(null!=e?" at "+Rp(e,k):""))}h.jh=function(){this.U("Type ? for help with PCjs Debugger commands");this.qd();if(this.rb){var a=this.rb;this.rb=null;tp(this,a)}};
function rp(a,b){var c;if(Kf(a)){if(!a.qa||!a.qa.length){a.qa=Array(1E3);for(c=0;c<a.qa.length;c++)a.qa[c]=pp(a);a.Oa=0;b||a.U("instruction history buffer allocated")}if(!a.X||!a.X.length)for(a.X=Array(256),c=0;c<a.X.length;c++)a.X[c]=[c,0]}else a.qa&&a.qa.length&&!b&&a.U("instruction history buffer freed"),a.Oa=0,a.qa=[],a.X=[]}h.Ie=function(a){if(!pq(this))return!1;this.M.Ie(a);return!0};
h.sf=function(a,b,c){if(!pq(this))return!1;this.ka=0;do{a||Kf(this)&&Nf(this,this.M.Na,0);try{var d=this.M.sf(a);0<d&&(this.ka+=d,bd(this.M,d,!0),Uc(this.M,d),this.wa++)}catch(f){if("number"!=typeof f){var e=f;this.ka=0;wb(this.M,e.stack||e.message)}}}while(this.M.V&3312);!1!==c&&Rc(this.M);this.qd(b||!1);return 0<this.ka};h.bc=function(a){this.M&&this.M.bc(a)};h.qd=function(a){void 0===a&&(a=!0);this.da=pp(this,v(this.M),this.M.Ca.ga);a&&1!=this.P?qq(this):rq(this)};
h.sf=function(a,b,c){if(!pq(this))return!1;this.ka=0;do{a||Kf(this)&&Nf(this,this.M.Na,0);try{var d=this.M.sf(a);0<d&&(this.ka+=d,bd(this.M,d,!0),Wc(this.M,d),this.wa++)}catch(f){if("number"!=typeof f){var e=f;this.ka=0;wb(this.M,e.stack||e.message)}}}while(this.M.V&3312);!1!==c&&Rc(this.M);this.qd(b||!1);return 0<this.ka};h.bc=function(a){this.M&&this.M.bc(a)};h.qd=function(a){void 0===a&&(a=!0);this.da=pp(this,v(this.M),this.M.Ca.ga);a&&1!=this.P?qq(this):rq(this)};
function pq(a){var b;if(b=a.M&&vb(a.M))b=a.M,b.ra.gc?b=!0:(b.U(b.toString()+" not powered"),b=!1);b&&!rb(a.M)?(a=a.M,a.ra.wd?(a.U(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}h.qc=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};h.pc=function(a,b){b&&this.U(a?"suspending":"shutting down");return a?this.save():!0};h.reset=function(a){rp(this);this.wa=this.Ha=0;this.eb=null;this.ka=0;this.da=pp(this,v(this.M),this.M.Ca.ga);this.ra.Ob=!1;sq(this);a||this.qd()};
h.save=function(){var a=new $e(this);af(a,0,cq(this.da));af(a,1,cq(this.Ba));af(a,2,[this.O,this.Ma,this.vc]);af(a,3,this.C);return a.data()};h.restore=function(a){var b=0;void 0!==a[2]&&(this.da=dq(a[b++]),this.Ba=dq(a[b++]),this.O=a[b][0],"string"==typeof this.O&&(this.O=[this.O]),this.Ma=a[b][1],this.vc|=a[b][2]);a[3]&&(this.C=a[3]);return!0};h.start=function(a,b){this.P||this.U("running");this.ra.Ob=!0;this.mc=a;this.zd=b};
h.stop=function(a,b){if(this.ra.Ob){this.ra.Ob=!1;this.ka=b-this.zd;if(!this.P){var c="stopped";if(this.ka){var d=a-this.mc,e=0<d?Math.round(1E3*this.ka/d):0,c=c+" (";Kf(this)&&(c+=this.wa+" opcodes, ",this.Ha-=this.wa,this.wa=0);c+=this.ka+" cycles, "+d+" ms, "+e+" hz)"}this.U(c)}this.qd(!0);this.Uc();sq(this,this.M.Na)}};function Kf(a){return 1<a.A.length||!!a.Ua||n(a,16)}
@ -1178,18 +1178,18 @@ fq(a,g[1],!0);if(B)if(a.Ba=B,void 0===g[2])a.U("begin assemble at "+Zp(B)),a.Ma=
a.U("\tbc [a]\tclear breakpoint at addr [a]"),a.U("\tbl\tlist all breakpoints"),a.U("\tbn [n]\tbreak after [n] instruction(s)");else{var V=U.charAt(1);if("l"==V){var Y=0,Y=Y+wq(a,a.A),Y=Y+wq(a,a.za);(Y+=wq(a,a.la))||a.U("no breakpoints")}else if("n"==V)a.Ua=Lp(a,F),a.U("break after "+a.Ua+" instruction(s)");else if(void 0===F)a.U("missing breakpoint address");else{var ga={};if("*"!=F&&(ga=fq(a,F,!0,!0),!ga))break a;F=null==ga.Xa?F:ia(ga.Xa);"c"==V?null==ga.Xa?(qp(a),a.U("all breakpoints cleared")):
Yp(a,a.A,ga)||Yp(a,a.za,ga)||Yp(a,a.la,ga)||a.U("breakpoint missing: "+Zp(ga)):"i"==V?a.U("breakpoint "+(ic(a.ja,ga.Xa)?"enabled":"cleared")+": port "+F+" (input)"):"o"==V?a.U("breakpoint "+(mc(a.ja,ga.Xa)?"enabled":"cleared")+": port "+F+" (output)"):null!=ga.Xa&&(iq(a,ga,O),"p"==V?a.Od(a.A,ga):"r"==V?a.Od(a.za,ga):"w"==V?a.Od(a.la,ga):a.U("unknown breakpoint command: "+V))}}}break;case "c":Mq(a);break;case "d":a:{var da=g,bb,ta=da[0],pa=da[1],Ma=da[2],$a=da[3];if("?"==pa){var Ia="";for(bb in Dp)a.ib[bb]&&
(Ia&&(Ia+=","),Ia+=bb);Ia+=",state,symbols";a.U("dump memory commands:");a.U("\tdb [a] [#] dump # bytes at address a");a.U("\tdw [a] [#] dump # words at address a");a.U("\tdd [a] [#] dump # dwords at address a");a.U("\tdh [#] [#] dump # instructions from history");a.U("\tds [#] dump descriptor info for selector #");Ia.length&&a.U("dump extension commands:\n\t"+Ia)}else if("state"==pa){var Vb=Uq(a.ia,!0);"console"==Ma?console.log(Vb):(Mq(a),a.U(Vb))}else if("symbols"==pa)for(var Da=
0;Da<a.C.length;Da++){var Sd=a.C[Da],Tc;for(Tc in Sd.Nd)if("."!=Tc.charAt(0)){var Td=Sd.Nd[Tc],De=Td.o;if(void 0!==De){var Ud=Td.s;void 0===Ud&&(Ud=Sd.ga);var Ee=Sd.Nd[Tc].l;Ee&&(Tc=Ee);a.U(Rp(De,Ud)+" "+Tc)}}}else{if("ds"==ta||"dg"==ta||"dl"==ta)ta="d",da=[ta,"desc",pa];"d"==ta&&"page"==pa&&(ta="dp",da.shift());if("dp"==ta){da.shift();var hi=da[0];if(hi){var Qe=a.hc(fq(a,hi));if(-1===Qe)a.U("invalid address: "+hi);else{var Yd,Ka=null;if(80386<=a.M.na){var Zd=a.ja,Ka={};Ka.bk=(Qe&-4194304)>>>20;Ka.wi=
0;Da<a.C.length;Da++){var Sd=a.C[Da],Sc;for(Sc in Sd.Nd)if("."!=Sc.charAt(0)){var Td=Sd.Nd[Sc],De=Td.o;if(void 0!==De){var Ud=Td.s;void 0===Ud&&(Ud=Sd.ga);var Ee=Sd.Nd[Sc].l;Ee&&(Sc=Ee);a.U(Rp(De,Ud)+" "+Sc)}}}else{if("ds"==ta||"dg"==ta||"dl"==ta)ta="d",da=[ta,"desc",pa];"d"==ta&&"page"==pa&&(ta="dp",da.shift());if("dp"==ta){da.shift();var hi=da[0];if(hi){var Qe=a.hc(fq(a,hi));if(-1===Qe)a.U("invalid address: "+hi);else{var Yd,Ka=null;if(80386<=a.M.na){var Zd=a.ja,Ka={};Ka.bk=(Qe&-4194304)>>>20;Ka.wi=
a.M.Md+Ka.bk;Ka.Db=Zd.xa[(Ka.wi&Zd.Lb)>>>Zd.Pa];Ka.Ui=Ka.Db.Yd(Ka.bk);Ka.ck=(Qe&4190208)>>>10;Ka.xi=(Ka.Ui&-4096)+Ka.ck;Ka.Eb=Zd.xa[(Ka.xi&Zd.Lb)>>>Zd.Pa];Ka.Vi=Ka.Eb.Yd(Ka.ck);Ka.Jk=(Ka.Vi&-4096)+(Qe&4095)}if(Yd=Ka){a.U("linear PDE addr PDE PTE addr PTE physical");a.U("--------- ---------- -------- ---------- -------- ----------");var rd="%"+l(Qe),rd=rd+(" %%"+kq(Yd.wi,Yd.Ui)),rd=rd+(" %%"+kq(Yd.xi,Yd.Vi,!0)),rd=rd+(" %%"+l(Yd.Jk));a.U(rd)}else a.U("unsupported operation")}}else a.U("missing address")}else{if("d"==
ta){if("disk"==pa){da[0]="l";da[1]="json";Qq(a,da);break a}for(bb in Dp)if(da[1]==bb){var Vm=a.ib[bb];Vm?(da.shift(),da.shift(),Vm(da)):a.U("no dump registered for "+pa);break a}pa||(ta=a.Jc||"db")}else a.Jc=ta;if("dh"==ta){var Wm=pa,Xm=Ma,Ym="",Zm=0,sb=a.Oa,vc=a.qa;if(vc.length){var Fb=+Wm||a.Zb,$d=+Xm||10;isNaN(Fb)?Fb=$d:Ym="more ";Fb>vc.length&&(a.U("note: only "+vc.length+" available"),Fb=vc.length);sb-=Fb;0>sb&&(null==vc[vc.length-1].ga?(Fb=sb+Fb,sb=0):sb+=vc.length);var ii=[];"call"==Xm&&($d=
1E5,ii=["CALL"]);for(void 0!==Wm&&a.U(Fb+" instructions earlier:");0<$d&&sb!=a.Oa;){var tb=vc[sb++];if(null==tb.ga)break;var tb=pp(a,tb.Xa,tb.ga,tb.Ia,tb.type,tb.Wb,tb.oc),$m=yq(a,tb,"history",Fb--);(!ii.length||0<=$m.indexOf(ii[0]))&&a.U($m);tb.Qe&&(sb+=tb.Qe,$d-=tb.Qe,Fb-=tb.Qe);sb>=vc.length&&(sb=0);a.Zb=Fb;Zm++;$d--}}Zm||(a.U("no "+Ym+"history available"),a.Zb=void 0)}else if("di"==ta)da.shift(),a.U("no information");else{var ae=fq(a,pa);if(ae&&(null!=ae.ga||null!=ae.Ia)){var pg=0;Ma&&("l"==Ma.charAt(0)&&
(Ma=Ma.substr(1)||$a),pg=Lp(a,Ma)>>>0,65536<pg&&(pg=65536));for(var sd="",mr=(pg||128)+15>>4||1,ji="dd"==ta?4:"dw"==ta?2:1,an=0;an<mr;an++){for(var qg=0,ki=0,Re="",li="",pa=Zp(ae),mi=0;16>mi;mi++){var rg=a.Wa(ae,1),qg=qg|rg<<(ki++<<3);ki==ji&&(Re+=l(qg,2*ji),Re+=1==ji?7==mi?"-":" ":" ",qg=ki=0);li+=32<=rg&&128>rg?String.fromCharCode(rg):"."}sd&&(sd+="\n");sd+=pa+" "+Re+" "+li}sd&&a.U(sd);a.Ib=ae}}}}}break;case "e":if("else"==g[0])break;var sg=1,bn=255,cn=a.Wa,dn=a.sc;"ew"==g[0]&&(sg=2,bn=65535,
cn=a.va,dn=a.pb);var en=sg<<1,fn=g[1];if(null==fn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),a.U("\tew [a] [...] edit words at address a");else{var tg=fq(a,fn);if(tg)for(var ug=2;ug<g.length;ug++){var Se=hq(a,g[ug]);if(void 0===Se){a.U("unrecognized value: "+g[ug]);break}Se&~bn&&a.U("warning: "+l(Se)+" exceeds "+sg+"-byte value");var nr=cn.call(a,tg);a.U("changing "+Zp(tg)+" from 0x"+l(nr,en)+" to 0x"+l(Se,en));dn.call(a,tg,Se,sg)}}break;case "f":Nq(a,g[1]);break;
case "g":a:{var gn=g[1],or=b;"gt"==g[0]&&(a.lb=!0);if(void 0!==gn){var ni=fq(a,gn,!0);if(!ni)break a;iq(a,ni,or);a.Od(a.A,ni,!0)}a.Ie(!0)||c||a.U("cpu busy or unavailable, run command ignored")}break;case "h":var oi;a.ra.Ob?(oi="halting",a.bc()):oi="already halted";c||a.U(oi);break;case "i":if("if"==g[0]){var pi;var Te=b.substr(2),Te=qa(Te);hq(a,Te)?(c||a.U("true: "+Te),pi=!0):(c||a.U("false: "+Te),pi=!1);pi||(d=!1);break}if("int"==g[0]){var vg;a:switch(Lp(a,g[1])){case 19:Qj(a,19,a.M.Na,!0);a.Ha=
a.wa;vg=!0;break a;case 33:Qj(a,33,a.M.Na,!0);a.Ha=a.wa;vg=!0;break a;default:vg=!1}vg||(d=!1);break}var qi=g[1];if(qi&&"?"!=qi){var ri=Lp(a,qi);if(void 0!==ri){var pr=kc(a.ja,ri,1);a.U(ia(ri)+": "+ha(pr))}}else a.U("input commands:"),a.U("\ti [p]\tread port [p]"),a.U("warning: port accesses can affect hardware state");break;case "k":var qr=g[0];if("?"==g[1])a.U("stack trace commands:"),a.U("\tk\tshow frame addresses"),a.U("\tks\tshow symbol information");else{var si=0,hn=a.M.Ca.ga,Ue=pp(a),Vc=pp(a,
u(a.M),a.M.Aa.ga);for(a.U("stack trace for "+Zp(Vc));10>si;){for(var wc=null,rr=256;Vc.Xa>>>0<a.M.Kg>>>0;){Ue.Xa=a.vb(Vc,!0);if(null==Vc.Ia||!rr--)break;Ue.ga=hn;if(wc=Sq(a,Ue))break;Ue.ga=a.vb(Vc);if(wc=Sq(a,Ue,!0)){hn=a.vb(Vc,!0);0<wc.indexOf("INT")&&a.vb(Vc,!0);break}}if(!wc||null==wc)break;var jn=null;if("ks"==qr){var kn=wc.match(/[0-9A-F]+$/);kn&&(jn=Pq(a,kn[0]))}wc=oa(wc,50)+" ;"+(jn||"stack="+Zp(Vc));a.U(wc);si++}si||a.U("no return addresses found")}break;case "l":if("ln"==g[0]){Pq(a,g[1],
a.wa;vg=!0;break a;case 33:Qj(a,33,a.M.Na,!0);a.Ha=a.wa;vg=!0;break a;default:vg=!1}vg||(d=!1);break}var qi=g[1];if(qi&&"?"!=qi){var ri=Lp(a,qi);if(void 0!==ri){var pr=kc(a.ja,ri,1);a.U(ia(ri)+": "+ha(pr))}}else a.U("input commands:"),a.U("\ti [p]\tread port [p]"),a.U("warning: port accesses can affect hardware state");break;case "k":var qr=g[0];if("?"==g[1])a.U("stack trace commands:"),a.U("\tk\tshow frame addresses"),a.U("\tks\tshow symbol information");else{var si=0,hn=a.M.Ca.ga,Ue=pp(a),Uc=pp(a,
u(a.M),a.M.Aa.ga);for(a.U("stack trace for "+Zp(Uc));10>si;){for(var wc=null,rr=256;Uc.Xa>>>0<a.M.Kg>>>0;){Ue.Xa=a.vb(Uc,!0);if(null==Uc.Ia||!rr--)break;Ue.ga=hn;if(wc=Sq(a,Ue))break;Ue.ga=a.vb(Uc);if(wc=Sq(a,Ue,!0)){hn=a.vb(Uc,!0);0<wc.indexOf("INT")&&a.vb(Uc,!0);break}}if(!wc||null==wc)break;var jn=null;if("ks"==qr){var kn=wc.match(/[0-9A-F]+$/);kn&&(jn=Pq(a,kn[0]))}wc=oa(wc,50)+" ;"+(jn||"stack="+Zp(Uc));a.U(wc);si++}si||a.U("no return addresses found")}break;case "l":if("ln"==g[0]){Pq(a,g[1],
!0);break}Qq(a,g);break;case "m":if("mouse"==g[0]){var ti=g[1],wg=g[2];if(a.Z){var ln=1;"-"==wg.charAt(0)&&(ln=-1,wg=wg.substr(1));var td=Lp(a,wg,ti);if(void 0!==td)switch(td=td*ln|0,ti){case "x":a.Z.Df(td,0);break;case "y":a.Z.Df(0,td);break;case "click":a.Z.he(td,!0);a.Z.he(td,!1);break;default:a.U("unknown action: "+ti)}}else a.U("no mouse");break}a:{var xc,yc=null,Ua=g[1];"?"==Ua&&(Ua=void 0);if(void 0!==Ua){var ud=0;if("all"==Ua)ud=1610481663,Ua=null;else if("on"==Ua)yc=!0,Ua=null;else if("off"==
Ua)yc=!1,Ua=null;else{"keys"==Ua&&(Ua="key");"kbd"==Ua&&(Ua="keyboard");for(xc in Dp)if(Ua==xc){ud=Dp[xc];yc=!!(a.vc&ud);break}if(!ud){a.U("unknown message category: "+Ua);break a}}ud&&("on"==g[2]?(a.vc|=ud,yc=!0):"off"==g[2]&&(a.vc&=~ud,yc=!1))}var sr=0,Wc="";for(xc in Dp)if(!Ua||Ua==xc){var tr=!!(a.vc&Dp[xc]);if(null===yc||yc==tr)Wc&&(Wc+=","),++sr%10||(Wc+="\n\t"),"key"==xc&&(xc="keys"),Wc+=xc}void 0===Ua&&a.U("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.U((null!==yc?
yc?"messages on: ":"messages off: ":"message categories:\n\t")+(Wc||"none"));rp(a)}break;case "o":var ui=g[1],ur=g[2];if(ui&&"?"!=ui){var vi=Lp(a,ui,"port #"),wi=Lp(a,ur);void 0!==vi&&void 0!==wi&&(oc(a.ja,vi,1,wi),a.U(ia(vi)+": "+ha(wi)))}else a.U("output commands:"),a.U("\to [p] [b]\twrite byte [b] to port [p]"),a.U("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Rq(a,b.substr(5));break}var mn="pr"==g[0]?1:0,be=1+mn;if(a.P)a.U("step in progress");else{var xg,
Ua)yc=!1,Ua=null;else{"keys"==Ua&&(Ua="key");"kbd"==Ua&&(Ua="keyboard");for(xc in Dp)if(Ua==xc){ud=Dp[xc];yc=!!(a.vc&ud);break}if(!ud){a.U("unknown message category: "+Ua);break a}}ud&&("on"==g[2]?(a.vc|=ud,yc=!0):"off"==g[2]&&(a.vc&=~ud,yc=!1))}var sr=0,Vc="";for(xc in Dp)if(!Ua||Ua==xc){var tr=!!(a.vc&Dp[xc]);if(null===yc||yc==tr)Vc&&(Vc+=","),++sr%10||(Vc+="\n\t"),"key"==xc&&(xc="keys"),Vc+=xc}void 0===Ua&&a.U("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.U((null!==yc?
yc?"messages on: ":"messages off: ":"message categories:\n\t")+(Vc||"none"));rp(a)}break;case "o":var ui=g[1],ur=g[2];if(ui&&"?"!=ui){var vi=Lp(a,ui,"port #"),wi=Lp(a,ur);void 0!==vi&&void 0!==wi&&(oc(a.ja,vi,1,wi),a.U(ia(vi)+": "+ha(wi)))}else a.U("output commands:"),a.U("\to [p] [b]\twrite byte [b] to port [p]"),a.U("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Rq(a,b.substr(5));break}var mn="pr"==g[0]?1:0,be=1+mn;if(a.P)a.U("step in progress");else{var xg,
nn=!1,nb=pp(a,v(a.M),a.M.Ca.ga);do switch(xg=!1,a.Wa(nb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:aq(a,nb,1);xg=!0;break;case 204:case 206:a.P=be;aq(a,nb,1);break;case 205:case 224:case 225:case 226:a.P=be;aq(a,nb,nb.Wb?4:2);break;case 232:a.P=be;aq(a,nb,nb.Wb?5:3);break;case 154:a.P=be;aq(a,nb,nb.Wb?7:5);break;case 255:var on=a.vb(nb)&14591;if(4351==on||6399==on)a.P=be,yq(a,nb);break;case 243:case 242:aq(a,nb,1);nn=xg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:nn&&
(a.P=be,aq(a,nb,1))}while(xg);a.P?(a.Od(a.A,nb,!0),a.Ie()||(a.M.Uc(),a.P=0)):Tq(a,mn?"tr":"t")}break;case "r":if("reset"==b){a.ia&&a.ia.reset();break}qq(a,g);break;case "t":Tq(a,g[0],g[1]);break;case "u":rq(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Oq(a,b.substr(3))||(d=!1);break}a.U("PCjs version 1.20.8 ("+a.M.na+",RELEASE,NOPREFETCH"+(xb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var Ve;void 0!==g[3]&&(Ve=+g[3]);switch(g[2]){case "int":a.M.ba.ff=
Ve;break;case "start":a.M.ba.Ff=Ve;break;case "stop":a.M.ba.hf=Ve;break;default:a.U("unknown cs option");break a}void 0!==Ve&&Qc(a.M);a.U("checksums "+(a.M.ra.We?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&($c(a.M,+g[2])||a.U("warning: using 1x multiplier, previous target not reached"));a.U("target speed: "+(a.M.ba.Ce.toFixed(2)+"Mhz")+" ("+a.M.ba.Ud+"x)");break;default:a.U("unknown option: "+g[1])}else a.U("execution options:"),a.U("\tcs int #\tset checksum cycle interval to #"),a.U("\tcs start #\tset checksum cycle start count to #"),
@ -1204,12 +1204,12 @@ function dr(a,b,c){for(var d=hb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]
h.Vf=function(a){void 0===a&&(a=this.Nc||(this.O?1:ar));if(!this.C){this.C++;var b=!1,c=!1;this.X=!1;var d=this.ia||new $e(this,cr);if(-1==a)b=!0;else if(a>ar){if(d.load(this.O)){this.R=new $e(this,cr,"failsafe");this.R.load()&&(fr(this,d),a=2,Wq(this.R));af(this.R,"timestamp",ua());Xq(this.R);var e=this.Nc&&!this.P;if(1==a||Ca("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=Yq(d)){var f=Zq(d,"code"),g=Zq(d,"data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=
g?(this.Va("Error: "+g),"unable to verify user"==g&&(Ha("user",""),this.A=null)):this.U(f+": "+g),Wq(d),d.load()?(c=Yq(d),e=!0):c=!1))}e&&er(this,c?d:null)}else 2==a&&d.clear()}else er(this);delete this.O;delete this.ia}e=hb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.M&&(c=gr(this,g,d,b,c));b=[d,a,c];-1!=a?dr(this,this.Ji,b):this.Ji(b)}};
function gr(a,b,c,d,e){if(!b.ra.gc){b.ra.gc=!0;if(b.qc){var f=null;e&&((f=Zq(c,b.id))||(f=Zq(c,b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.qc(f,d)&&f&&(Ba("Unable to restore state for "+b.type),a.W&&!a.da?(c.clear(),a.Nc=ar,window&&window.location.reload()):a.X=!0,b.qc(null),e=!1)}if(!d&&b.rk)for(a=b.rk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
h.Ji=function(a){var b=a[0],c=0>a[1];a=a[2];this.ra.gc=!0;var d=this.ya.power;d&&(d.textContent="On");this.sk||(this.U("PCjs v"+cr+"\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.sk=!0);this.M&&(gr(this,this.M,b,c,a),Sc(this.M));this.X&&(fr(this,b),b.clear());!c&&this.R&&(this.R.clear(),delete this.R);this.C=0};
h.Ji=function(a){var b=a[0],c=0>a[1];a=a[2];this.ra.gc=!0;var d=this.ya.power;d&&(d.textContent="On");this.sk||(this.U("PCjs v"+cr+"\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.sk=!0);this.M&&(gr(this,this.M,b,c,a),Tc(this.M));this.X&&(fr(this,b),b.clear());!c&&this.R&&(this.R.clear(),delete this.R);this.C=0};
function fr(a,b){if(Ca("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.qa,d=a.ie(),e=b.toString(),f={app:"PCjs"};f.ver=cr;f.url=c;f.user=d;f.type="bug";f.data=e;za("http://www.pcjs.org/api/v1/report",!0,f)}}
function Uq(a,b,c){var d,e="none";if(a.C)return null;a.C--;var f=new $e(a,cr),g=new $e(a,cr,"validate"),k=ua();af(g,"timestamp",k);af(f,"timestamp",k);af(f,"version","1.20.8");af(f,"url",window?window.location.href:null);af(f,"browser",window?window.navigator.userAgent:"");a.M&&a.M.pc&&(c&&a.M.bc(),d=a.M.pc(b,c),"object"===typeof d&&af(f,a.M.id,d),c&&(a.M.ra.gc=!1,!1===d&&(e=null)));for(var k=hb(a.id),q=0;q<k.length;q++){var r=k[q];r.ra.gc&&(r.pc&&(d=r.pc(b,c),"object"===typeof d&&af(f,r.id,d)),c&&
(r.ra.gc=!1,!1===d&&(e=null)))}e&&(c?(k=d=!1,b?(a.A&&hr(a,a.A,f.toString()),Xq(g)&&Xq(f)||(e=null,d=k=!0)):a.Nc&&(d=!0,k=3==a.Nc),d&&f.clear(k)):e=f.toString());c&&(a.ra.gc=!1,b=a.ya.power)&&(b.textContent="Off");a.C=0;return e}h.reset=function(){this.ja&&this.ja.reset&&(pb(this,"Resetting "+this.ja.type),this.ja.reset());for(var a=hb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ja&&c.reset&&(pb(this,"Resetting "+c.type),c.reset())}};
h.start=function(a,b){for(var c=hb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};h.stop=function(a,b){for(var c=hb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
h.Xb=function(a,b,c){var d=this;switch(b){case "power":return this.ya[b]=c,c.onclick=function(){d.C||(d.ra.gc?Uq(d,!1,!0):dr(d,d.Vf))},!0;case "reset":return this.ya[b]=c,c.onclick=function(){if(d.ra.gc&&!d.C)if(d.Nc&&!d.Dg){var a=Ca("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Uq(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.fh=!0),d.Vf(ar),d.fh=!1)}else d.reset(),d.M&&Sc(d.M)},!0;case "save":return this.ya[b]=c,c.onclick=
h.Xb=function(a,b,c){var d=this;switch(b){case "power":return this.ya[b]=c,c.onclick=function(){d.C||(d.ra.gc?Uq(d,!1,!0):dr(d,d.Vf))},!0;case "reset":return this.ya[b]=c,c.onclick=function(){if(d.ra.gc&&!d.C)if(d.Nc&&!d.Dg){var a=Ca("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Uq(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.fh=!0),d.Vf(ar),d.fh=!1)}else d.reset(),d.M&&Tc(d.M)},!0;case "save":return this.ya[b]=c,c.onclick=
function(){var a=br(d,!0);if(a){var b=!!(d.Nc&&!d.Dg||d.W),c=Uq(d,b);b?hr(d,a,c):d.Va("Resume disabled, machine state not saved")}},!0}return!1};function br(a,b){var c=a.A;c||(c=Ga("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c&&((c=ir(a,c))||a.Va("The user ID is invalid."))):b&&a.Va("Browser local storage is not available"));return c}
function ir(a,b){a.A=null;var c=za(Aa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(Ha("user",c.data),a.A=c.data)}catch(e){Ba(e.message+" ("+d+")")}return a.A}
function hr(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Vq(a,cr);d.data=c;b=za(Aa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Va("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Va(c),Ha("user",""),a.A=null)}}

View file

@ -21,10 +21,10 @@ var ab="undefined"!==typeof ArrayBuffer,bb={Nf:4,V:5,za:6,ea:7,fa:8,M:9,O:11,P:1
Xi:16,Qd:10,Oc:2,zg:18,Ag:7,Bg:15,Gg:12,Hg:7,Ig:11,Og:18,Pg:7,Qg:15,Tg:15,Ug:7,Vg:13,Zg:11,$g:7,ah:8,Yi:8,aj:12,Zi:18,$i:17,bj:15,Xg:8,Wg:20,Yg:2,eh:3,Xe:9,dh:5,bh:11,gh:4,fh:17,cj:11},cb={Nf:0,V:0,za:0,ea:0,fa:0,M:0,O:1,P:1,Pd:3,ci:14,di:16,Yb:2,Db:7,nc:7,Mf:0,hi:7,ji:13,li:7,ki:11,ii:16,fi:3,Cg:6,gi:2,ei:13,Eg:5,Dg:5,Ue:2,Te:7,Ai:23,Bi:0,Ci:1,Di:3,zi:17,Fg:7,Fi:11,Ra:7,Sa:3,Hi:7,Gi:11,Ei:15,Mb:2,Ii:3,ve:7,Ji:8,Kg:8,Ki:8,Jg:4,Lg:4,Pi:2,Oi:3,Mi:5,Ni:2,Li:3,Mg:5,Ng:3,ni:14,pi:22,mi:17,oi:25,si:17,
ui:25,ri:20,ti:28,Ri:13,Ti:21,Qi:16,Si:24,wi:13,yi:21,vi:16,xi:24,We:2,Ve:7,Sg:5,Rg:5,Ui:19,Zb:5,Vi:5,Wi:17,zc:3,Xi:5,Qd:3,Oc:0,zg:8,Ag:5,Bg:9,Gg:5,Hg:5,Ig:4,Og:5,Pg:5,Qg:4,Tg:7,Ug:5,Vg:8,Zg:3,$g:4,ah:3,Yi:11,aj:11,Zi:15,$i:15,bj:7,Xg:5,Wg:8,Yg:0,eh:2,Xe:6,dh:3,bh:6,gh:3,fh:5,cj:5};function db(a){Ia.call(this,"Panel",a,db);this.J=this.K=this.S=-1}Qa(db);
function eb(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}eb.prototype.toString=function(){this.B||(this.B="#"+da(this.A[0],2)+da(this.A[1],2)+da(this.A[2],2));return this.B};function fb(a,b,c,d){this.x=a;this.y=b;this.Ec=c;this.A=d}fb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.Ec&&b>=this.y&&b<this.y+this.A};
function gb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new fb(a.x,a.y,a.Ec,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new fb(a.x,a.y,a.Ec*b/c|0,a.A),a.x+=b.Ec,a.Ec-=b.Ec);return b}f=db.prototype;f.Fb=function(a,b,c,d){return this.ta&&this.ta.Fb(a,b,c,d)||this.A&&this.A.Fb(a,b,c,d)||this.D&&this.D.Fb(a,b,c,d)?!0:this.parent.Fb.call(this,a,b,c,d)};f.yc=function(a,b,c,d){this.ta=a;this.na=b;this.A=c;this.Ta=d;this.D=hb(a,"Keyboard")};f.ac=function(a,b){b||ib();return!0};f.$b=function(){return!0};
function gb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new fb(a.x,a.y,a.Ec,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new fb(a.x,a.y,a.Ec*b/c|0,a.A),a.x+=b.Ec,a.Ec-=b.Ec);return b}f=db.prototype;f.Fb=function(a,b,c,d){return this.ua&&this.ua.Fb(a,b,c,d)||this.A&&this.A.Fb(a,b,c,d)||this.D&&this.D.Fb(a,b,c,d)?!0:this.parent.Fb.call(this,a,b,c,d)};f.yc=function(a,b,c,d){this.ua=a;this.na=b;this.A=c;this.Ta=d;this.D=hb(a,"Keyboard")};f.ac=function(a,b){b||ib();return!0};f.$b=function(){return!0};
f.ie=function(a,b){a.button||(this.S=b?0:-1,jb(this,a,b))};f.pg=function(a){jb(this,a)};
function jb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,k=null.getBoundingClientRect(),d=(b.clientX-k.left)*d|0;b=(b.clientY-k.top)*e|0;null==c&&(a.S||(a.S=Math.abs(a.J-d)>Math.abs(a.K-b)?1:2),1==a.S?b=a.K:2==a.S&&(d=a.J));a.J=d;a.K=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.B&&a.B.be)for(k=0;k<a.B.be.length;k++)if(e=a.B.be[k],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.B.Fe[k],l=oa(kb.dj,a.B.bg[d.Oj]),k=l*a.na.yb,d=(l+d.cd)*a.na.yb-1;0<b&&(k+=e.Ec*(b-1)*a.sa);k+=c*a.sa;k|=0;k>d&&
(k=d);c=k;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ua)){b=c;if(a.context&&a.Z&&a.da){e=a.Z.width;a.da.fillStyle="black";a.da.fillRect(0,360,e,360);lb(a,378,a.Z,a.da);a.ha=a.va.width/24|0;if(null==b)mb(a,"Mouse over memory to dump");else for(mb(a,"0x"+da(b),null,0,1),k=1;16>=k;k++){d="";for(l=1;8>=l;l++){var p;p=a.na;var q=b++;p=p.W[(q&p.La)>>>p.ha].Cd(q&p.B,q);mb(a,da(p,2),null,1);d+=32<=p&&128>p?String.fromCharCode(p):"."}mb(a,d,null,0,1)}a.context.drawImage(a.Z,0,360,e,360,a.Ua,a.ab,a.Ia,a.La)}a.ua=
(k=d);c=k;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ta)){b=c;if(a.context&&a.Z&&a.da){e=a.Z.width;a.da.fillStyle="black";a.da.fillRect(0,360,e,360);lb(a,378,a.Z,a.da);a.ha=a.va.width/24|0;if(null==b)mb(a,"Mouse over memory to dump");else for(mb(a,"0x"+da(b),null,0,1),k=1;16>=k;k++){d="";for(l=1;8>=l;l++){var p;p=a.na;var q=b++;p=p.W[(q&p.La)>>>p.ha].Cd(q&p.B,q);mb(a,da(p,2),null,1);d+=32<=p&&128>p?String.fromCharCode(p):"."}mb(a,d,null,0,1)}a.context.drawImage(a.Z,0,360,e,360,a.Ua,a.ab,a.Ia,a.La)}a.ta=
c}}}f.Wd=function(){};function nb(a,b,c,d){a.B.Fe[a.B.Kh++]={Oj:b,cd:c,type:d};return na(kb,b,c,0,d)}function lb(a,b,c,d){var e,k=null.style.color,l=a.Fa=10;a.F=l;a.N=b;a.T=a.pa=18;e||(e=a.oa||a.pa+"px Monaco, Lucida Console, Courier New");a.W=a.oa=e;c&&(a.va=c);d&&(a.H=d,a.xa=k||"white")}
function mb(a,b,c,d,e){a.H.font=a.W;a.H.fillStyle=a.xa;a.H.fillText(b,a.F,a.N);a.F+=a.ha;null!=c&&(16!=a.Qa?b=c.toString():(b=8>a.Da?"0x":"",b+=da(c,a.Da)),a.H.fillText(b,a.F,a.N),a.F+=a.ha);d&&(a.F+=a.ha*d);e&&(a.F=a.Fa,a.N+=(a.T+2)*(e||1))}function ib(){for(var a=!1,b=Wa(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=Ua(d),k=Sa(e.id);k||(a=!0,k=new db(e));Va(k,d);a&&Ya(k)}}Ea(ib);
function ob(a,b,c){Ia.call(this,"Bus",a,ob);this.A=b;this.Ta=c;this.F=a.buswidth||20;this.T=Math.pow(2,this.F);this.na=this.La=this.T-1|0;this.ha=32==this.F||20>=this.F?12:24>=this.F?14:15;this.yb=1<<this.ha;this.Z=this.yb>>2;this.B=this.yb-1;this.J=this.T/this.yb|0;this.D=this.J-1;this.K=[];this.N=[];this.R=[];this.S=[];a=new g;pb(a,this.Ta);this.W=Array(this.J);for(b=0;b<this.J;b++)this.W[b]=a;a=this.A;b=this.W;c=this.ha;a.tc=a.W=b;a.ha=c;a.yb=1<<a.ha;a.ab=a.yb-1;a.nf=b.length;a.Yd=a.nf-1;a=this.A;
@ -40,31 +40,31 @@ function Kb(a,b,c,d){for(var e=0,k=0;0<c;){var l=a.K[b],p=a.R[b]||1,q=1==p?255:2
function Mb(a,b,c,d,e){for(var k=0;0<c;){var l=a.N[b],p=a.S[b]||1,q=1==p?255:2==p?65535:-1,q=(d>>>=k)&q;if(void 0!==l&&l[0])l[0](b,q,e);k+=p<<3;b+=p;c-=p}}function wb(a,b,c,d,e){b="Memory block error ("+b+": "+da(c)+","+da(d)+")";e?a.log(b):ra(b);return!1}var Nb;if(ab){var Ob=new ArrayBuffer(2);(new DataView(Ob)).setUint16(0,256,!0);Nb=256===(new Uint16Array(Ob))[0]}else Nb=!1;var Db=Nb;
function g(a,b,c,d,e,k){this.id=Pb+=2;this.aa=null;this.J=0;this.ee=a;this.Be=b;this.size=c||0;this.type=d||Qb;this.K=d==Cb;this.controller=null;this.A=k;pb(this);this.Oa=this.Rh=!1;if(c)if(e)this.controller=e,a=e.Wh(a),this.aa=a[0],this.J=a[1],zb(this,e.ng());else if(ab)this.S=new ArrayBuffer(c),this.R=new DataView(this.S,0,c),this.Pa=new Uint8Array(this.S,0,c),this.td=new Uint16Array(this.S,0,c>>1),this.aa=new Int32Array(this.S,0,c>>2),zb(this,Db?Eb:Fb);else{this.aa=Array(c>>2);for(e=0;e<this.aa.length;e++)this.aa[e]=
0;zb(this,Gb)}else zb(this)}var Qb=0,Cb=2,Rb="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Sb=["black","blue","green","cyan"],Pb=0;function Tb(a){ab&&!Db&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
g.prototype={constructor:g,parent:null,Qk:function(a){this.ee=a},save:function(){var a,b;if(this.controller)a=null;else if(ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.R.getInt32(b<<2,!0);else a=this.aa;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(ab)for(b=0;b<a.length;b++)this.R.setInt32(b<<2,a[b],!0);else this.aa=a;return this.Oa=!0}return!1},ha:function(){return 255},qa:function(){},ta:function(a,b){return this.bc(a++,b++)|
this.bc(a,b)<<8},da:function(a,b){return this.bc(a++,b++)|this.bc(a++,b++)<<8|this.bc(a++,b++)<<16|this.bc(a,b)<<24},na:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a,b>>8,c)},Z:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a++,b>>8&255,c++);this.cc(a++,b>>16&255,c++);this.cc(a,b>>>24,c)},ua:function(a){return this.aa[a>>2]>>>((a&3)<<3)&255},Va:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b]>>a;return 24>a?c&65535:c&255|(this.aa[b+1]&255)<<8},Ia:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b];
g.prototype={constructor:g,parent:null,Qk:function(a){this.ee=a},save:function(){var a,b;if(this.controller)a=null;else if(ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.R.getInt32(b<<2,!0);else a=this.aa;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(ab)for(b=0;b<a.length;b++)this.R.setInt32(b<<2,a[b],!0);else this.aa=a;return this.Oa=!0}return!1},ha:function(){return 255},qa:function(){},ua:function(a,b){return this.bc(a++,b++)|
this.bc(a,b)<<8},da:function(a,b){return this.bc(a++,b++)|this.bc(a++,b++)<<8|this.bc(a++,b++)<<16|this.bc(a,b)<<24},na:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a,b>>8,c)},Z:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a++,b>>8&255,c++);this.cc(a++,b>>16&255,c++);this.cc(a,b>>>24,c)},ta:function(a){return this.aa[a>>2]>>>((a&3)<<3)&255},Va:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b]>>a;return 24>a?c&65535:c&255|(this.aa[b+1]&255)<<8},Ia:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b];
a&&(c=c>>>a|this.aa[b+1]<<32-a);return c},Eb:function(a,b){var c=a>>2,d=(a&3)<<3;this.aa[c]=this.aa[c]&~(255<<d)|b<<d;this.Oa=!0},wc:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.aa[c]=this.aa[c]&~(65535<<d)|b<<d:(this.aa[c]=this.aa[c]&16777215|b<<24,c++,this.aa[c]=this.aa[c]&-256|b>>8);this.Oa=!0},kc:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.aa[c]=this.aa[c]&~e|b<<d;c++;this.aa[c]=this.aa[c]&e|b>>>32-d}else this.aa[c]=b;this.Oa=!0},pa:function(a,b){this.A&&Ub(this.A,b,1,!1);return this.Cd(a,
b)},Qa:function(a,b){this.A&&Ub(this.A,b,2,!1);return this.df(a,b)},Da:function(a,b){this.A&&Ub(this.A,b,4,!1);return this.kh(a,b)},vb:function(a,b,c){this.A&&Ub(this.A,c,1,!0);this.K||this.hf(a,b,c)},uc:function(a,b,c){this.A&&Ub(this.A,c,2,!0);this.K||this.qh(a,b,c)},Ob:function(a,b,c){this.A&&Ub(this.A,c,4,!0);this.K||this.la(a,b,c)},xa:function(a,b){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.N;return this.T.bc(a,b)},fb:function(a,b){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.N;return this.T.cf(a,
b)},La:function(a,b){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.N;return this.T.Sd(a,b)},Ib:function(a,b,c){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.W;this.T.cc(a,b,c)},Fc:function(a,b,c){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.W;this.T.kf(a,b,c)},lc:function(a,b,c){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.W;this.T.jf(a,b,c)},ya:function(a,b){return Vb(this.A,b,!1).bc(a,b)},jb:function(a,b){return Vb(this.A,b,!1).cf(a,b)},Ma:function(a,b){return Vb(this.A,b,!1).Sd(a,
b)},pc:function(a,b,c){Vb(this.A,c,!0).cc(a,b,c)},Gc:function(a,b,c){Vb(this.A,c,!0).kf(a,b,c)},mc:function(a,b,c){Vb(this.A,c,!0).jf(a,b,c)},oa:function(a){return this.Pa[a]},sa:function(a){return this.Pa[a]},va:function(a){this.B.aa[this.F]|=32;this.D.aa[this.H]|=32;return this.Pa[a]},Na:function(a){return this.R.getUint16(a,!0)},Ua:function(a){return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.td[a>>1]},ab:function(a){this.B.aa[this.F]|=32;this.D.aa[this.H]|=32;return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.td[a>>
1]},Ca:function(a){return this.R.getInt32(a,!0)},Fa:function(a){return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.aa[a>>2]},Ja:function(a){this.B.aa[this.F]|=32;this.D.aa[this.H]|=32;return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.aa[a>>2]},ub:function(a,b){this.Pa[a]=b;this.Oa=!0},Ab:function(a,b){this.Pa[a]=b;this.Oa=!0},Hb:function(a,b){this.Pa[a]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0},tc:function(a,b){this.R.setUint16(a,
b,!0);this.Oa=!0},vc:function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.td[a>>1]=b;this.Oa=!0},xc:function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.td[a>>1]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0},Nb:function(a,b){this.R.setInt32(a,b,!0);this.Oa=!0},Sb:function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.aa[a>>2]=b;this.Oa=!0},jc:function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.aa[a>>
2]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0}};function pb(a,b,c){a.Ta=b;a.fe=a.ge=0;c&&(c.A&&(a.A=c.A),(a.fe=c.fe)&&Wb(a,Xb,!1),(a.ge=c.ge)&&Yb(a,Xb,!1))}function Yb(a,b,c){c&&a.ge||(a.cc=!a.K&&b[3]||a.qa,a.kf=!a.K&&b[4]||a.na,a.jf=!a.K&&b[5]||a.Z);if(c||void 0===c)a.hf=b[3]||a.qa,a.qh=b[4]||a.na,a.la=b[5]||a.Z}function Wb(a,b,c){c&&a.fe||(a.bc=b[0]||a.ha,a.cf=b[1]||a.ta,a.Sd=b[2]||a.da);if(c||void 0===c)a.Cd=b[0]||a.ha,a.df=b[1]||a.ta,a.kh=b[2]||a.da}
function zb(a,b,c){b||(b=5==a.type?Zb:6==a.type?$b:bc);Wb(a,b,c);Yb(a,b,c)}var bc=[],Gb=[g.prototype.ua,g.prototype.Va,g.prototype.Ia,g.prototype.Eb,g.prototype.wc,g.prototype.kc],Xb=[g.prototype.pa,g.prototype.Qa,g.prototype.Da,g.prototype.vb,g.prototype.uc,g.prototype.Ob],$b=[g.prototype.xa,g.prototype.fb,g.prototype.La,g.prototype.Ib,g.prototype.Fc,g.prototype.lc],Zb=[g.prototype.ya,g.prototype.jb,g.prototype.Ma,g.prototype.pc,g.prototype.Gc,g.prototype.mc];
2]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0}};function pb(a,b,c){a.Ta=b;a.fe=a.ge=0;c&&(c.A&&(a.A=c.A),(a.fe=c.fe)&&Wb(a,Xb,!1),(a.ge=c.ge)&&Yb(a,Xb,!1))}function Yb(a,b,c){c&&a.ge||(a.cc=!a.K&&b[3]||a.qa,a.kf=!a.K&&b[4]||a.na,a.jf=!a.K&&b[5]||a.Z);if(c||void 0===c)a.hf=b[3]||a.qa,a.qh=b[4]||a.na,a.la=b[5]||a.Z}function Wb(a,b,c){c&&a.fe||(a.bc=b[0]||a.ha,a.cf=b[1]||a.ua,a.Sd=b[2]||a.da);if(c||void 0===c)a.Cd=b[0]||a.ha,a.df=b[1]||a.ua,a.kh=b[2]||a.da}
function zb(a,b,c){b||(b=5==a.type?Zb:6==a.type?ac:bc);Wb(a,b,c);Yb(a,b,c)}var bc=[],Gb=[g.prototype.ta,g.prototype.Va,g.prototype.Ia,g.prototype.Eb,g.prototype.wc,g.prototype.kc],Xb=[g.prototype.pa,g.prototype.Qa,g.prototype.Da,g.prototype.vb,g.prototype.uc,g.prototype.Ob],ac=[g.prototype.xa,g.prototype.fb,g.prototype.La,g.prototype.Ib,g.prototype.Fc,g.prototype.lc],Zb=[g.prototype.ya,g.prototype.jb,g.prototype.Ma,g.prototype.pc,g.prototype.Gc,g.prototype.mc];
if(ab)var Fb=[g.prototype.oa,g.prototype.Na,g.prototype.Ca,g.prototype.ub,g.prototype.tc,g.prototype.Nb],Eb=[g.prototype.sa,g.prototype.Ua,g.prototype.Fa,g.prototype.Ab,g.prototype.vc,g.prototype.Sb],cc=[g.prototype.va,g.prototype.ab,g.prototype.Ja,g.prototype.Hb,g.prototype.xc,g.prototype.jc];
function dc(a,b){Ia.call(this,"CPU",a,dc);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.$c=c;this.Y.Ad=d;this.Y.Ff=Math.round(this.Y.$c/1E4)/100;this.Y.se=this.Y.Ff*this.Y.Ad;this.ja.Qb=!1;this.ja.Th=!1;this.ja.ig=a.autoStart;this.ja.Sh=!1;c=La.autostart;void 0!==c&&(this.ja.ig="true"==c?!0:"false"==c?!1:null);this.ja.Bf=!1;this.Y.Hf=this.Y.ue=0;this.Y.If=a.csStart;this.Y.Ke=a.csInterval;this.Y.Le=a.csStop;this.Xd=[];this.Bj=this.oh.bind(this);Ya(this)}Qa(dc);var ec=["power","reset"];f=dc.prototype;
f.yc=function(a,b,c,d){this.ta=a;this.na=b;this.Ta=d;for(b=0;b<ec.length;b++)(c=this.qa[ec[b]])&&this.ta.Fb(null,ec[b],c);this.nd=hb(a,"FPU");for(b=null;b=hb(a,"Video",b);)this.Xd.push(b);this.T=hb(a,"ChipSet");Ya(this)};f.reset=function(){};f.save=function(){return null};f.restore=function(){return!1};f.ac=function(a,b){if(!b){if(a&&this.restore){fc(this);if(!this.restore(a))return!1;gc(this)}else this.reset();this.ic("No debugger detected")}hc(this);return!0};
f.$b=function(a){return a?this.save():!0};function ic(a){(!0===a.ja.ig||null===a.ja.ig&&void 0===a.qa.run)&&a.oh()}f.Vh=function(){return 0};function gc(a){void 0===a.Y.If&&(a.Y.If=0);void 0===a.Y.Ke&&(a.Y.Ke=-1);void 0===a.Y.Le&&(a.Y.Le=-1);a.ja.Bf=0<=a.Y.If&&0<a.Y.Ke;a.ja.Bf&&(a.Y.Hf=0,a.Y.ue=a.Y.If-a.Gc)}f.Wd=function(){this.ta&&this.ta.md&&this.ta.md.Wd()};
function jc(a,b){for(var c=0;c<a.Xd.length;c++)kc(a.Xd[c],b);if(a.ta&&a.ta.md&&(c=a.ta.md,c.Ca)){lb(c,18,c.R,c.ya);if(c.Na){var d=c.na,e=c.B,k,l;null==k&&(k=0);null==l&&(l=d.T-k|0);null==e&&(e={gg:0,cd:0,bg:[]});var p=k>>>d.ha;k=k+l-1>>>d.ha;e.gg=0;for(e.cd=0;p<=k;)l=d.W[p],e.gg+=l.size,l.size&&(e.bg.push(na(kb,p,0,0,l.type)),e.cd++),p++;c.B=e;c.sa=c.B.cd*c.na.yb/691200;d=0;c.B.Kh=0;c.B.Fe||(c.B.Fe=[]);var e=-1,p=0,q=-1;for(k=0;k<c.B.cd;k++){var w=c.B.bg[k];l=oa(kb.type,w);w=oa(kb.dj,w);if(l!=e||
f.yc=function(a,b,c,d){this.ua=a;this.na=b;this.Ta=d;for(b=0;b<ec.length;b++)(c=this.qa[ec[b]])&&this.ua.Fb(null,ec[b],c);this.nd=hb(a,"FPU");for(b=null;b=hb(a,"Video",b);)this.Xd.push(b);this.T=hb(a,"ChipSet");Ya(this)};f.reset=function(){};f.save=function(){return null};f.restore=function(){return!1};f.ac=function(a,b){if(!b){if(a&&this.restore){fc(this);if(!this.restore(a))return!1;gc(this)}else this.reset();this.ic("No debugger detected")}hc(this);return!0};
f.$b=function(a){return a?this.save():!0};function ic(a){(!0===a.ja.ig||null===a.ja.ig&&void 0===a.qa.run)&&a.oh()}f.Vh=function(){return 0};function gc(a){void 0===a.Y.If&&(a.Y.If=0);void 0===a.Y.Ke&&(a.Y.Ke=-1);void 0===a.Y.Le&&(a.Y.Le=-1);a.ja.Bf=0<=a.Y.If&&0<a.Y.Ke;a.ja.Bf&&(a.Y.Hf=0,a.Y.ue=a.Y.If-a.Gc)}f.Wd=function(){this.ua&&this.ua.md&&this.ua.md.Wd()};
function jc(a,b){for(var c=0;c<a.Xd.length;c++)kc(a.Xd[c],b);if(a.ua&&a.ua.md&&(c=a.ua.md,c.Ca)){lb(c,18,c.R,c.ya);if(c.Na){var d=c.na,e=c.B,k,l;null==k&&(k=0);null==l&&(l=d.T-k|0);null==e&&(e={gg:0,cd:0,bg:[]});var p=k>>>d.ha;k=k+l-1>>>d.ha;e.gg=0;for(e.cd=0;p<=k;)l=d.W[p],e.gg+=l.size,l.size&&(e.bg.push(na(kb,p,0,0,l.type)),e.cd++),p++;c.B=e;c.sa=c.B.cd*c.na.yb/691200;d=0;c.B.Kh=0;c.B.Fe||(c.B.Fe=[]);var e=-1,p=0,q=-1;for(k=0;k<c.B.cd;k++){var w=c.B.bg[k];l=oa(kb.type,w);w=oa(kb.dj,w);if(l!=e||
w!=q+1)(q=k-p)&&(d+=nb(c,p,q,e)),e=l,p=k;q=w}d+=nb(c,p,k-p,e);e=c.B.Fj!=d;c.B.Fj=d;if(e){e=new fb(0,0,c.R.width,c.R.height);c.B.be=[];p=c.B.cd;for(d=0;d<c.B.Kh;d++)k=c.B.Fe[d].cd,c.B.be.push(gb(e,k,p,!d)),p-=k;for(d=0;d<c.B.be.length;d++)e=c.B.Fe[d],p=k=c.B.be[d],l=c.ya,(q=Sb[e.type])||(q=new eb),l.strokeStyle="black",l.strokeRect(p.x,p.y,p.Ec,p.A),l.fillStyle="string"==typeof q?q:q.toString(),l.fillRect(p.x,p.y,p.Ec,p.A),p=c,l=k,p.W=p.oa,p.T=p.pa,k=l.x+(l.Ec>>1),q=l.y+(l.A>>1),w=l.A,l.Ec<l.A&&(w=
l.Ec,p.la=!0,p.H.save(),p.H.translate(k,q),p.H.rotate(-Math.PI/2),k=q=0),w<p.T&&(p.T=w,p.W=p.T+"px Monaco, Lucida Console, Courier New"),l=q,p.F=k,p.N=l,p=c,e=Rb[e.type]+" ("+(e.cd*c.na.yb/1024|0)+"Kb)",p.H.font=p.W,p.F-=p.H.measureText(e).width>>1,p.N+=(p.T>>1)-2,mb(p,e),p.la&&(p.H.restore(),p.la=!1)}}else mb(c,"This space intentionally left blank");c.context.drawImage(c.R,0,0,c.R.width,c.R.height,c.Va,c.fb,c.Ja,c.Ma);c.Ca=!1}}f.Tc=function(){this.Xd.length&&this.Xd[0].Tc()};
f.Fb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.ta)if(a=d.ta,a.ja.Pb)a=!0;else{var b=null,c,p=Ra(a.id);for(c=0;c<p.length&&(b=p[c],b===a||b.ja.me);c++);if(c==p.length)for(c=0;c<p.length&&(b=p[c],b===a||b.ja.Pb);c++);c==p.length&&(b=a);ra("The "+b.type+" component ("+b.id+") is not "+(b.ja.me?"powered yet":"ready yet"+(b.Df?" (waiting for notification)":""))+".");a=!1}a&&(d.ja.Qb?lc(d,!0):d.oh(!0))};
f.Fb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.ua)if(a=d.ua,a.ja.Pb)a=!0;else{var b=null,c,p=Ra(a.id);for(c=0;c<p.length&&(b=p[c],b===a||b.ja.me);c++);if(c==p.length)for(c=0;c<p.length&&(b=p[c],b===a||b.ja.Pb);c++);c==p.length&&(b=a);ra("The "+b.type+" component ("+b.id+") is not "+(b.ja.me?"powered yet":"ready yet"+(b.Df?" (waiting for notification)":""))+".");a=!1}a&&(d.ja.Qb?lc(d,!0):d.oh(!0))};
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){mc(d,d.Y.Ad<<1,!0)},c.textContent=this.Y.se.toFixed(2)+"Mhz",a=!0}return a};function nc(a,b){if(a.ja.Qb){var c=a.A-b;a.A-=c;a.kc-=c}}function oc(a,b,c){a.Gc+=b;c&&(a.kc=a.A=0)}
function pc(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Ad&&a.Y.zd&&(d=a.Y.zd/a.Y.Ff);a.Y.$h=Math.round(1E3/30);a.Y.Xk=Math.floor(a.Y.$c/c*d);a.Y.vg=Math.floor(a.Y.$c/30*d);a.Y.bi=Math.floor(a.Y.$c/60*d);a.Y.ai=Math.floor(a.Y.$c/2*d);b||(a.Y.Oe=a.Y.vg,a.Y.Ne=a.Y.bi,a.Y.Me=a.Y.ai);a.Y.wg=0}function qc(a,b){var c=a.Gc+a.xc+a.kc-a.A;b&&1<a.Y.Ad&&a.Y.zd>a.Y.Ff&&(c=Math.round(c/a.Y.Ad));return c}function fc(a){a.Y.zd=0;a.Gc=a.xc=a.kc=a.A=0;gc(a);mc(a,1)}
function mc(a,b,c){if(void 0!==b){.8>a.Y.zd/a.Y.se&&(b=1);a.Y.Ad=b;b=a.Y.Ff*a.Y.Ad;if(a.Y.se!=b){a.Y.se=b;b=a.Y.se.toFixed(2)+"Mhz";var d=a.qa.setSpeed;d&&(d.textContent=b);a.ic("target speed: "+b)}c&&a.Tc()}oc(a,a.xc);a.xc=0;a.Y.te=ia();a.Y.Od=0;pc(a)}
f.oh=function(a){if(Xa(this,!0)){if(!this.ja.Qb){mc(this);this.ta&&this.ta.start(this.Y.te,qc(this));this.ja.Qb=!0;this.ja.Th=!0;this.T&&rc(this.T);var b=this.qa.run;b&&(b.textContent="Halt");this.Wd(!0);a&&this.Tc()}this.Y.wg>=this.Y.$c&&pc(this,!0);this.Y.Pe=0;this.Y.Gf=ia();this.Y.Od&&(a=this.Y.Gf-this.Y.Od,a>this.Y.$h&&(this.Y.te+=a,this.Y.te>this.Y.Gf&&(this.Y.te=this.Y.Gf)));try{do{var c=this.ja.Bf?1:this.Y.Xk;if(this.T){sc(this.T);var d=this.T;a=c;var e=d.N[0];if(e.Ld){var k=(qc(d.A,d.la)-
e.gd)/d.Qa|0,l=tc(d,0)-k;6==e.mode&&(l-=k);var p=l*d.Qa|0;6==e.mode&&(p>>=1);a>p&&(a=p)}var c=a,q=this.T;a=c;if(q.B&&q.B[11]&64){var w=q.ua-qc(q.A,q.la);0<w&&a>w&&(a=w)}c=a}try{this.nj(c)}catch(G){if("number"!=typeof G)throw G;}var B=this.kc-this.A;this.xc+=B;this.Y.Pe+=B;oc(this,0,!0);a=B;this.ja.Bf&&(b=!1,this.Y.Hf=this.Y.Hf+this.Vh()|0,this.Y.ue-=a,0>=this.Y.ue&&(this.Y.ue+=this.Y.Ke,b=!0),0<=this.Y.Le&&this.Y.Le<=qc(this)&&(this.Y.Ke=this.Y.Le=-1,gc(this),lc(this),b=!0),b&&this.ic(qc(this)+" cycles: checksum="+
da(this.Y.Hf)));this.Y.Ne-=B;0>=this.Y.Ne&&(this.Y.Ne+=this.Y.bi,jc(this));this.Y.Me-=B;0>=this.Y.Me&&(this.Y.Me+=this.Y.ai,this.Wd());this.Y.Oe-=B;if(0>=this.Y.Oe){this.Y.Oe+=this.Y.vg;break}}while(this.ja.Qb)}catch(G){lc(this);hc(this);this.ta&&this.ta.stop(ia(),qc(this));Xa(this,!1);$a(this,G.stack||G.message);return}c=setTimeout;d=this.Bj;this.Y.Od=ia();e=this.Y.$h;this.Y.Pe&&(e=Math.round(e*this.Y.Pe/this.Y.vg));e-=this.Y.Od-this.Y.Gf;if(k=this.Y.Od-this.Y.te)this.Y.zd=Math.round(this.xc/(10*
k))/100,864E5<=k&&(this.Gc=0,this.T&&sc(this.T,!0),mc(this));if(0>e||this.Y.zd<this.Y.se)e=0;this.Y.wg+=this.Y.Pe;this.Y.Od+=e;c(d,e)}else hc(this),this.ta&&this.ta.stop(ia(),qc(this))};f.nj=function(){return 0};function lc(a,b){a.ja.Nc&&(a.ja.jg=!0);a.kc-=a.A;a.A=0;oc(a,a.xc);a.xc=0;if(a.ja.Qb){a.ja.Qb=!1;a.T&&rc(a.T);var c=a.qa.run;c&&(c.textContent="Run")}a.ja.Ie=b}function hc(a){jc(a,void 0);a.Wd()}
f.oh=function(a){if(Xa(this,!0)){if(!this.ja.Qb){mc(this);this.ua&&this.ua.start(this.Y.te,qc(this));this.ja.Qb=!0;this.ja.Th=!0;this.T&&rc(this.T);var b=this.qa.run;b&&(b.textContent="Halt");this.Wd(!0);a&&this.Tc()}this.Y.wg>=this.Y.$c&&pc(this,!0);this.Y.Pe=0;this.Y.Gf=ia();this.Y.Od&&(a=this.Y.Gf-this.Y.Od,a>this.Y.$h&&(this.Y.te+=a,this.Y.te>this.Y.Gf&&(this.Y.te=this.Y.Gf)));try{do{var c=this.ja.Bf?1:this.Y.Xk;if(this.T){sc(this.T);var d=this.T;a=c;var e=d.N[0];if(e.Ld){var k=(qc(d.A,d.la)-
e.gd)/d.Qa|0,l=tc(d,0)-k;6==e.mode&&(l-=k);var p=l*d.Qa|0;6==e.mode&&(p>>=1);a>p&&(a=p)}var c=a,q=this.T;a=c;if(q.B&&q.B[11]&64){var w=q.ta-qc(q.A,q.la);0<w&&a>w&&(a=w)}c=a}try{this.nj(c)}catch(G){if("number"!=typeof G)throw G;}var B=this.kc-this.A;this.xc+=B;this.Y.Pe+=B;oc(this,0,!0);a=B;this.ja.Bf&&(b=!1,this.Y.Hf=this.Y.Hf+this.Vh()|0,this.Y.ue-=a,0>=this.Y.ue&&(this.Y.ue+=this.Y.Ke,b=!0),0<=this.Y.Le&&this.Y.Le<=qc(this)&&(this.Y.Ke=this.Y.Le=-1,gc(this),lc(this),b=!0),b&&this.ic(qc(this)+" cycles: checksum="+
da(this.Y.Hf)));this.Y.Ne-=B;0>=this.Y.Ne&&(this.Y.Ne+=this.Y.bi,jc(this));this.Y.Me-=B;0>=this.Y.Me&&(this.Y.Me+=this.Y.ai,this.Wd());this.Y.Oe-=B;if(0>=this.Y.Oe){this.Y.Oe+=this.Y.vg;break}}while(this.ja.Qb)}catch(G){lc(this);hc(this);this.ua&&this.ua.stop(ia(),qc(this));Xa(this,!1);$a(this,G.stack||G.message);return}c=setTimeout;d=this.Bj;this.Y.Od=ia();e=this.Y.$h;this.Y.Pe&&(e=Math.round(e*this.Y.Pe/this.Y.vg));e-=this.Y.Od-this.Y.Gf;if(k=this.Y.Od-this.Y.te)this.Y.zd=Math.round(this.xc/(10*
k))/100,864E5<=k&&(this.Gc=0,this.T&&sc(this.T,!0),mc(this));if(0>e||this.Y.zd<this.Y.se)e=0;this.Y.wg+=this.Y.Pe;this.Y.Od+=e;c(d,e)}else hc(this),this.ua&&this.ua.stop(ia(),qc(this))};f.nj=function(){return 0};function lc(a,b){a.ja.Nc&&(a.ja.jg=!0);a.kc-=a.A;a.A=0;oc(a,a.xc);a.xc=0;if(a.ja.Qb){a.ja.Qb=!1;a.T&&rc(a.T);var c=a.qa.run;c&&(c.textContent="Run")}a.ja.Ie=b}function hc(a){jc(a,void 0);a.Wd()}
function uc(a,b,c,d){this.A=a;this.Ta=a.Ta;this.id=b;this.Vf=c||"";this.ra=0;this.cb=65535;this.D=this.cb+1;this.Cb=this.sc=this.ext=this.ob=this.type=this.Ea=0;this.ec=-1;this.ba=this.Uc=2;this.C=this.wa=65535;this.T=this.Zh;this.K=this.Mh;this.N=this.Oh;this.B={ra:-1,Ea:0,cb:0,ob:0,type:0,ext:0,ec:-1};1==this.id&&(this.$e=0,this.F=null,this.oe=!1,this.J=Array(32),this.H=[]);vc(this,!0,d)}f=uc.prototype;f.Zh=function(a){this.ra=a&65535;return this.Ea=this.ra<<4};
f.Ef=function(a,b){var c,d,e=this.A;a&=65535;a&4?(c=e.Ob.Ea,d=c+e.Ob.cb|0):(c=e.jb,d=e.vc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,wc(this,c,a,b);6>this.id&&h.call(e,b&&3==this.id?10:13,a&65532)}return-1};f.Uk=function(a){var b=this.A;a=b.Ab+(a<<2);var c=b.ma(a);b.ca&=-769;return this.load(b.ma(a+2))+c|0};f.Tk=function(a){var b=this.A;a<<=3;var c=b.Ab+a|0;if(7<=(b.wc-c|0))return this.F=!0,a=wc(this,c,a),-1!==a&&(a+=this.$e),a;h.call(b,13,a|2);return-1};f.Mh=function(a){return this.Ea+a|0};
f.Oh=function(a){return this.Ea+a|0};f.Lh=function(a,b){return(a>>>0)+b<=this.D?this.Ea+a|0:this.yf()};f.Dj=function(a,b){return(a>>>0)+b>this.D?this.Ea+a|0:this.yf()};f.yf=function(){h.call(this.A,13,0);return-1};f.Nh=function(a,b){return(a>>>0)+b<=this.D?this.Ea+a|0:this.zf()};f.Ej=function(a,b){return(a>>>0)+b>this.D?this.Ea+a|0:this.zf()};f.zf=function(){h.call(this.A,13,0);return-1};
@ -85,11 +85,11 @@ this.pa[101]=Rc,this.pa[102]=Rc,this.pa[103]=Rc,this.pa[104]=Vc,this.pa[105]=Wc,
196608;this.pa[100]=od;this.pa[101]=pd;this.pa[102]=qd;this.pa[103]=rd;for(c in v)this.Fc[+c]=v[c];80546<=this.kd&&80562>=this.kd&&(this.Fc[166]=sd,this.Fc[167]=td)}}this.pf=[];this.vh=[];this.Yf=0;fc(this);this.ja.Ie=this.ja.Nj=!1;this.Ah=0;this.tc=this.W=[];this.ha=this.yb=this.ab=this.nf=this.Yd=this.La=this.jc=0;ud(this)}Qa(Lc,dc);
function vd(a){var b;if(a.W===a.tc){a.W=Array(a.nf);a.qf=new g(null,0,0,5,null,a);pb(a.qf,a.Ta);for(b=0;b<a.nf;b++)a.W[b]=a.qf;a.Zd=new g;a.uh=Array(512);a.rf=0}else for(var c=0;c<a.of.length;c++){b=a.of[c];var d=a.W[b];512>a.rf&&(a.uh[a.rf++]=d);a.W[b]=a.qf}a.of=[]}
function Vb(a,b,c,d){var e=(b&-4194304)>>>20,k=a.tc[(a.Zc+e&a.La)>>>a.ha],l=k.Sd(e);if(!(l&1))return d||wd.call(a,b,!1,c),a.Zd;if(!(l&4)&&3==a.Fa)return d||wd.call(a,b,!0,c),a.Zd;var p=(b&4190208)>>>10,l=a.tc[((l&-4096)+p&a.La)>>>a.ha],q=l.Sd(p);if(!(q&1))return d||wd.call(a,b,!1,c),a.Zd;if(!(q&4)&&3==a.Fa)return d||wd.call(a,b,!0,c),a.Zd;c=a.tc[((q&-4096)+(b&4095)&a.La)>>>a.ha];if(d)return c;d=b>>>a.ha;q=a.W[d];b=b&-4096;var w;0<a.rf?(w=a.uh[--a.rf],w.Qk(b)):w=new g(b,0,0,6);b=w;b.T=c;b.B=k;b.F=
e>>2;b.D=l;b.H=p>>2;ab&&Db&&c.aa&&!c.controller&&!c.fe&&!c.ge?(b.Pa=c.Pa,b.td=c.td,b.aa=c.aa,zb(b,cc)):(b.N=c?Tb(32):0,b.W=c?Tb(96):0,zb(b,$b));pb(b,a.Ta,q);a.W[d]=b;a.of.push(d);return b}function xd(a){a.W!==a.tc&&(a.W=a.tc,a.qf=null,a.of=null,a.Zd=null)}f=Lc.prototype;f.reset=function(){this.ja.Qb&&lc(this);ud(this);fc(this);this.ja.Yc=!1};
e>>2;b.D=l;b.H=p>>2;ab&&Db&&c.aa&&!c.controller&&!c.fe&&!c.ge?(b.Pa=c.Pa,b.td=c.td,b.aa=c.aa,zb(b,cc)):(b.N=c?Tb(32):0,b.W=c?Tb(96):0,zb(b,ac));pb(b,a.Ta,q);a.W[d]=b;a.of.push(d);return b}function xd(a){a.W!==a.tc&&(a.W=a.tc,a.qf=null,a.of=null,a.Zd=null)}f=Lc.prototype;f.reset=function(){this.ja.Qb&&lc(this);ud(this);fc(this);this.ja.Yc=!1};
function yd(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.F;break;case 2:c=a.I;break;case 3:c=a.B;break;case 4:c=r(a);break;case 5:c=a.K;break;case 6:c=a.J;break;case 7:c=a.H}return c}function zd(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.F=c;break;case 2:a.I=c;break;case 3:a.B=c;break;case 4:n(a,c);break;case 5:a.K=c;break;case 6:a.J=c;break;case 7:a.H=c}}
function ud(a){a.G=0;a.B=0;a.F=0;a.I=0;a.Nb=0;a.K=0;a.J=0;a.H=0;a.Ib=!1;a.ya=a.Ma=0;a.mc=0;a.zh=0;a.ld=0;a.Ya=65520;a.Ab=0;a.wc=1023;a.ca=a.Eb=0;a.rd=a.Hd=a.qd=a.Ed=0;a.Sb=-1;a.od=a.$d=-1;a.Rd=a.sa=-1;a.Ha=new uc(a,1,"CS");a.Ca=new uc(a,2,"DS");a.va=new uc(a,2,"ES");a.Z=new uc(a,3,"SS");n(a,0);zc(a,0);if(80386<=a.ia){switch(a.kd){case 80562:case 80563:a.I=771;break;case 80578:a.I=772;break;case 80594:a.I=773;break;case 80595:case 80596:a.I=776}a.Ya=16;a.Fh=0;a.pd=0;a.Zc=0;a.fb=[0,0,0,0,null,null,
0,0];a.sf=[null,null,null,null,null,null,0,0];a.Qa=new uc(a,2,"FS");a.Ua=new uc(a,2,"GS");xd(a)}a.ag=new uc(a,0,"NULL");a.R=a.Ca;a.S=a.Z;a.N=a.Ba=0;a.U=a.oa=-1;a.Pc=a.ag;a.Ja=0;if(80286>a.ia)Jc(a,0,65535);else{a.jb=0;a.vc=65535;a.Ob=new uc(a,5,"LDT",!0);a.la=new uc(a,4,"TSS",!0);a.Na=new uc(a,6,"VER",!0);Jc(a,65520,61440);var b,c=u(a);b=a.Ha;var d=-65536;80386>b.A.ia&&(d&=16777215);b=b.Ea=d;a.da=b+c|0;a.Zf=b+a.Ha.cb|0}Ic(a,0);Bc(a)}
function Ad(a,b){b.ra&65528&&b.sc<a.Fa&&7168!=(b.ob&7168)&&b.load(0)}function Bd(a){2==a.Uc?(a.Dh=a.ma,a.vb=x,a.Hb=Cd,a.uc=Dd,a.ua=y,a.Da=Ed,a.ub=Fd):(a.Dh=a.ka,a.vb=z,a.Hb=Gd,a.uc=Hd,a.ua=A,a.Da=Id,a.ub=Jd)}function Cc(a,b){a.ba!=b&&(a.Ba|=1024,a.ba=b,a.C=2==b?65535:-1,Kd(a))}function Kd(a){2==a.ba?(a.Va=32768,a.Lb=a.ma,a.Rb=a.gb):(a.Va=-2147483648,a.Lb=a.ka,a.Rb=a.$a)}function Ld(a){a.Uc=a.Ha.Uc;a.wa=a.Ha.wa;Bd(a);a.ba=a.Ha.ba;a.C=a.Ha.C;Kd(a);a.Ba&=-3073}
function Ad(a,b){b.ra&65528&&b.sc<a.Fa&&7168!=(b.ob&7168)&&b.load(0)}function Bd(a){2==a.Uc?(a.Dh=a.ma,a.vb=x,a.Hb=Cd,a.uc=Dd,a.ta=y,a.Da=Ed,a.ub=Fd):(a.Dh=a.ka,a.vb=z,a.Hb=Gd,a.uc=Hd,a.ta=A,a.Da=Id,a.ub=Jd)}function Cc(a,b){a.ba!=b&&(a.Ba|=1024,a.ba=b,a.C=2==b?65535:-1,Kd(a))}function Kd(a){2==a.ba?(a.Va=32768,a.Lb=a.ma,a.Rb=a.gb):(a.Va=-2147483648,a.Lb=a.ka,a.Rb=a.$a)}function Ld(a){a.Uc=a.Ha.Uc;a.wa=a.Ha.wa;Bd(a);a.ba=a.Ha.ba;a.C=a.Ha.C;Kd(a);a.Ba&=-3073}
f.Vh=function(){var a=this.G+this.B+this.F+this.I+r(this)+this.K+this.J+this.H|0;return a=a+u(this)+this.Ha.ra+this.Ca.ra+this.Z.ra+this.va.ra+Hc(this)|0};function Md(a,b,c){void 0===a.pf[b]&&(a.pf[b]=[]);a.pf[b].push(c)}function Nd(a,b){var c=a.vh[b];null!=c&&(c(--a.Yf),delete a.vh[b])}
function Od(a,b){for(var c=a.fb[7],d=c>>16,e=0;4>e;e++){if(c&3){var k=!!(d&1),l=a.fb[e],l=l&~(d>>2&3);if(b){var l=a.W[l>>>a.ha],p=a;k?0===l.ge++&&(p&&(l.A=p),Yb(l,Xb,!1)):0===l.fe++&&(p&&(l.A=p),Wb(l,Xb,!1))}else l=a.W[l>>>a.ha],k?0===--l.ge&&(k=l,k.cc=k.K?k.qa:k.hf,k.kf=k.K?k.na:k.qh,k.jf=k.K?k.Z:k.la):0===--l.fe&&(k=l,k.bc=k.Cd,k.cf=k.df,k.Sd=k.kh)}c>>=2;d>>=4}}
function Ub(a,b,c,d){if(!(a.N&8192)&&a.fb[7]&255){c--;var e=a.fb[7],k=e>>16;d=d?1:0==d?3:0;for(var l=0;4>l;l++){if(e&3&&(k&3)==d){var p=k>>2;if(b+c>=a.fb[l]&&b<=a.fb[l]+p){a.fb[6]|=1<<l;a.Ja|=2;break}}e>>=2;k>>=4}}}function Bc(a,b,c){void 0===b&&(b=!!(a.Ya&1));void 0===c&&(c=!!(a.ca&131072));a.yh=b&&!c?Pd:Qc;vc(a.Ha,!1,b,c);vc(a.Ca,!1,b,c);vc(a.Z,!1,b,c);vc(a.va,!1,b,c);80386<=a.ia&&(vc(a.Qa,!1,b,c),vc(a.Ua,!1,b,c));Ld(a)}
@ -118,14 +118,14 @@ f.Wd=function(a){if(this.Ah&&(a||!this.ja.Qb||this.ja.Sh)){ye(this,"EAX",this.G)
ye(this,"A",b&16);ye(this,"P",b&4);ye(this,"C",b&1);80386==this.ia&&(ye(this,"FS",this.Qa.ra),ye(this,"GS",this.Ua.ra),ye(this,"CR0",this.Ya),ye(this,"CR2",this.pd),ye(this,"CR3",this.Zc))}if(b=this.qa.speed)b.textContent=this.ja.Qb&&this.Y.zd?this.Y.zd.toFixed(2)+"Mhz":"Stopped";this.parent.Wd.call(this,a)};
f.nj=function(a){this.ja.Ie=!0;this.ja.Nj=!1;this.ja.Th=!1;this.kc=this.A=a;this.T&&!a&&sc(this.T);a||(this.N|=4);do{if(a=this.N&3312)this.Ba|=a;else if(this.Rd=this.da,this.R=this.Ca,this.S=this.Z,this.U=this.oa=-1,this.Ba&3072&&Ld(this),this.Ba=this.N&256,this.Ja){a:if(!(this.N&4)){a=80286>this.ia?0:1;for(var b=0;2>b;b++){switch(a){case 0:if(this.Ja&1&&this.ca&512){var c=ze(this.T);if(-1<=c&&(this.Ja&=-2,0<=c)){this.Ja&=-5;Ae.call(this,c);break a}}break;case 1:if(this.Ja&2){this.Ja&=-3;80386<=this.ia&&
(this.fb[6]|=16384);Ae.call(this,1);break a}}a=1-a}}if(this.Ja&4){this.N=this.A=0;break}}this.N=0;this.pa[this.X()].call(this)}while(0<this.A);return this.ja.Ie?this.kc-this.A:void 0===this.ja.Ie?0:-1};Ea(function(){for(var a=Wa(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new Lc(d);Va(d,c)}});
function Be(a){Ia.call(this,"FPU",a,Be);this.ia=a.model||8087;(a=a.stepping)&&ca(a,16);this.N=new Float64Array(8);this.la=new Int32Array(this.N.buffer);this.ta=new Float32Array(1);this.pa=new Int32Array(this.ta.buffer);this.W=new Float64Array(1);this.K=new Int32Array(this.W.buffer);this.H=Array(3);this.Z=this.na=-1;this.R=this.S=this.da=this.B=0;this.ha=new Float64Array(1);this.oa=new Int32Array(this.ha.buffer);this.oa[0]=0;this.oa[1]=268402688;Ce(this)}Qa(Be);f=Be.prototype;
function Be(a){Ia.call(this,"FPU",a,Be);this.ia=a.model||8087;(a=a.stepping)&&ca(a,16);this.N=new Float64Array(8);this.la=new Int32Array(this.N.buffer);this.ua=new Float32Array(1);this.pa=new Int32Array(this.ua.buffer);this.W=new Float64Array(1);this.K=new Int32Array(this.W.buffer);this.H=Array(3);this.Z=this.na=-1;this.R=this.S=this.da=this.B=0;this.ha=new Float64Array(1);this.oa=new Int32Array(this.ha.buffer);this.oa[0]=0;this.oa[1]=268402688;Ce(this)}Qa(Be);f=Be.prototype;
f.yc=function(a,b,c){this.A=c;this.T=hb(a,"ChipSet");Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)Ce(this);else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};f.save=function(){var a=new Qd(this),b=[],c=0;b[c++]=this.J;b[c++]=this.ga|this.D<<11;b[c++]=De(this);for(var d=0;d<this.N.length;d++)b[c++]=this.N[d];D(a,0,b);return a.data()};
f.restore=function(a){a=a[0];var b=0;this.J=a[b++]&-57409;var c=a[b++];this.ga=c&-14337;this.D=(c&14336)>>11;Ee(this);Fe(this,a[b++]);for(c=0;c<this.N.length;c++)this.N[c]=a[b++];return!0};function Ce(a){a.F=0;a.J=959;a.ga=0;a.D=0;a.T&&(a=a.T,a.ia>=Ge&&He(a,13))}function Ee(a){a.ga&=-129;a.ga&~a.J&63&&(a.ga|=128);if(a.ga&128&&!(a.J&128))return a=a.T,a.ia>=Ge?Ie(a,13):a.va&0||Ae.call(a.A,2),!0;a=a.T;a.ia>=Ge&&He(a,13);return!1}function Je(a,b){80387<=a.ia||(b&=-65);a.ga|=b;return Ee(a)}
function Ke(a,b){return isFinite(b)?!0:!Je(a,Infinity===b?8:16)}function Le(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,Ke(a,d)||(d=null));return d}function Me(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,Ke(a,d)||(d=null));return d}function Ne(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,Ke(a,d)||(d=null));return d}function Oe(a,b,c){var d=null;null==b||null==c||!c&&Je(a,2)||(d=b/c,Ke(a,d)||(d=null));return d}
function Pe(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:0===b&&(d=16384));a.ga=a.ga&-18177|d;return!0}return!1}function Qe(a,b,c){if(null==b)return null;var d=a.J&3072;0==d?(d=Math.round(b),.5===d-b&&d%2&&d--):d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b);if(c){if(d>=c){if(Je(a,1))return null;d=-c}else if(d<-c){if(Je(a,1))return null;d=-c}a.K[0]=d|0;2147483648<c&&(a.K[1]=d/4294967296|0,!a.K[1]&&0>d&&(a.K[1]=-1))}return d}
function Re(a,b){var c=3;if(a.F&1<<b){var d=a.N[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function De(a){for(var b=0,c=a.N.length-1;0<=c;c--)b<<=2,b|=Re(a,c);return b}function Fe(a,b){a.F=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.F|=c),b>>=2}function Se(a){var b=a.D+0&7;return a.F&1<<b?(a.ta[0]=a.N[b],!0):Je(a,1)?!1:(a.ta[0]=a.ha[0],!0)}function Te(a){var b=a.D+0&7;return a.F&1<<b?(a.W[0]=a.N[b],!0):Je(a,1)?!1:(a.W[0]=a.ha[0],!0)}
function Re(a,b){var c=3;if(a.F&1<<b){var d=a.N[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function De(a){for(var b=0,c=a.N.length-1;0<=c;c--)b<<=2,b|=Re(a,c);return b}function Fe(a,b){a.F=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.F|=c),b>>=2}function Se(a){var b=a.D+0&7;return a.F&1<<b?(a.ua[0]=a.N[b],!0):Je(a,1)?!1:(a.ua[0]=a.ha[0],!0)}function Te(a){var b=a.D+0&7;return a.F&1<<b?(a.W[0]=a.N[b],!0):Je(a,1)?!1:(a.W[0]=a.ha[0],!0)}
function T(a,b){var c=null,d=a.D+b&7;a.F&1<<d?c=a.N[d]:Je(a,1)||(c=a.ha[0]);return c}function U(a,b,c){return null!=c&&(isNaN(c)?!Je(a,1):1)?(b=a.D+b&7,a.N[b]=c,a.F|=1<<b,!0):!1}function Ue(a,b,c){var d=null;b=a.D+b&7;if(c||a.F&1<<b||!Je(a,1)){d=b<<1;c=a.la[d];d=a.la[d+1];b=d>>20&2047;var e=2147483648|(d&1048575)<<11|c>>>21;2047==b?b=32767:b?b+=15360:e&=2147483647;a.H[0]=c<<11;a.H[1]=e;a.H[2]=d>>16&32768|b;d=a.H}return d}function Ve(a){return a.A.ma(a.A.U)<<16>>16}
function We(a){return a.A.ka(a.A.U)}function Xe(a){a.pa[0]=a.A.ka(a.A.U);return a.ta[0]}function Ye(a){a.K[0]=a.A.ka(a.A.U);a.K[1]=a.A.ka(a.A.U+4);return a.W[0]}function Ze(a){a.H[0]=a.A.ka(a.A.U);a.H[1]=a.A.ka(a.A.U+4);a.H[2]=a.A.ma(a.A.U+8);return a.H}f.ph=function(){this.A.$a(this.A.U,this.K[0])};f.kj=function(){this.A.$a(this.A.U,this.K[0]);this.A.$a(this.A.U+4,this.K[1])};f.mj=Be.prototype.ph;f.lj=Be.prototype.kj;
function We(a){return a.A.ka(a.A.U)}function Xe(a){a.pa[0]=a.A.ka(a.A.U);return a.ua[0]}function Ye(a){a.K[0]=a.A.ka(a.A.U);a.K[1]=a.A.ka(a.A.U+4);return a.W[0]}function Ze(a){a.H[0]=a.A.ka(a.A.U);a.H[1]=a.A.ka(a.A.U+4);a.H[2]=a.A.ma(a.A.U+8);return a.H}f.ph=function(){this.A.$a(this.A.U,this.K[0])};f.kj=function(){this.A.$a(this.A.U,this.K[0]);this.A.$a(this.A.U+4,this.K[1])};f.mj=Be.prototype.ph;f.lj=Be.prototype.kj;
function $e(a){a.A.$a(a.A.U,a.H[0]);a.A.$a(a.A.U+4,a.H[1]);a.A.gb(a.A.U+8,a.H[2])}function af(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767,k=b[0]>>>11|c<<21,c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,k=c=0));a.K[0]=k;a.K[1]=c|(d|e)<<20;return a.W[0]}function bf(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function cf(a,b){for(var c=0,d=0;b--;)c|=a%10<<d,a/=10,d+=4;return c}
function df(a){var b=null,c=1<<a.D;if(!(a.F&c)&&(a.ga&=-513,Je(a,65)))return b;a.F&=~c;b=a.N[a.D];a.D=a.D+1&7;return b}function ef(a,b){if(null!=b){var c=a.D-1&7,d=1<<c;if(a.F&d&&(a.ga|=512,Je(a,65)))return;if(isNaN(b)&&Je(a,1)){if(Je(a,1))return;b=NaN}a.N[a.D=c]=b;a.F|=d}}
function ff(a,b){var c,d=a.A;c=d.Lb(b);a.J=c&-57409;c=d.Lb(b+=d.ba);a.ga=c&-14337;a.D=(c&14336)>>11;Ee(a);Fe(a,d.Lb(b+=d.ba));!(d.Ya&1)||d.ca&131072?(a.R=d.Lb(b+=d.ba),c=d.Lb(b+=d.ba),a.da=c&2047,a.R|=(c&-4096)<<4,a.Z=-1,a.S=d.Lb(b+=d.ba),a.S|=(d.Lb(b+=d.ba)&-4096)<<4,a.na=-1):(a.R=d.Lb(b+=d.ba),c=d.Lb(b+=d.ba),a.Z=c&65535,a.da=c>>16&2047,a.S=d.Lb(b+=d.ba),a.na=d.Lb(b+=d.ba)&65535);return b+d.ba}
@ -169,13 +169,13 @@ function dh(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;ce(this,a,-2147483648,d&1
function jh(a,b){var c=a-b|0;Wd(this,a,b,c,this.Va|63,!0);this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return c&this.C}function kh(a,b){ce(this,a&b,128);this.A-=-1===this.oa?-1===this.U?this.D.eh:this.D.Xe:this.D.Xe;this.N|=2;return a}function lh(a,b){ce(this,a&b,this.Va);this.A-=-1===this.oa?-1===this.U?this.D.eh:this.D.Xe:this.D.Xe;this.N|=2;return a}function mh(a,b){var c=this.G&this.C,d=(1<<(this.F&31))-1;return a&~(d<<c)|(b&d)<<c}
function nh(a,b){return b>>(this.G&this.C)&(1<<(this.F&31))-1&this.C}function oh(a,b){if(-1===this.U){switch(this.ld&7){case 0:this.G=this.G&-256|a;break;case 1:this.F=this.F&-256|a;break;case 2:this.I=this.I&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&-65281|a<<8;break;case 5:this.F=this.F&-65281|a<<8;break;case 6:this.I=this.I&-65281|a<<8;break;case 7:this.B=this.B&-65281|a<<8}this.A-=this.D.gh}else this.oa=this.U,P(this,a),this.A-=this.D.fh;return b}
function ph(a,b){if(-1===this.U){switch(this.ld&7){case 0:this.G=this.G&~this.C|a;break;case 1:this.F=this.F&~this.C|a;break;case 2:this.I=this.I&~this.C|a;break;case 3:this.B=this.B&~this.C|a;break;case 4:n(this,r(this)&~this.C|a);break;case 5:this.K=this.B&~this.C|a;break;case 6:this.J=this.J&~this.C|a;break;case 7:this.H=this.H&~this.C|a}this.A-=this.D.gh}else this.oa=this.U,Q(this,a),this.A-=this.D.fh;return b}
function qh(a,b){var c=a^b;ce(this,c,128);this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return c}function rh(a,b){this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return ce(this,a^b,this.Va)&this.C}function sh(a){h.call(this,13,0);return a}function hd(a){h.call(this,6);return a}function th(a){kd.call(this);return a}function uh(){8086==this.ia?(this.Sb=-1,qg.call(this,0,null,2)):h.call(this,0,null,2)}function vh(){this.A-=-1===this.U?2:this.D.bj;return 1}
function wh(){var a=this.F&255;this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function xh(){var a=this.X();this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function yh(){return null}function zh(){return this.mc}function Ae(a,b){this.Sb=a;void 0===b&&(b=11);qg.call(this,a,null,b)}
function qh(a,b){var c=a^b;ce(this,c,128);this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return c}function rh(a,b){this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return ce(this,a^b,this.Va)&this.C}function sh(a){if(80186>this.ia)return th.call(this,a);h.call(this,13,0);return a}function hd(a){h.call(this,6);return a}function th(a){kd.call(this);return a}function uh(){8086==this.ia?(this.Sb=-1,qg.call(this,0,null,2)):h.call(this,0,null,2)}
function vh(){this.A-=-1===this.U?2:this.D.bj;return 1}function wh(){var a=this.F&255;this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function xh(){var a=this.X();this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function yh(){return null}function zh(){return this.mc}function Ae(a,b){this.Sb=a;void 0===b&&(b=11);qg.call(this,a,null,b)}
function h(a,b,c,d){var e=!1;this.ja.Ie?80186<=this.ia&&(e=!0,0>this.Sb?(-1!=this.od&&(this.Ha.Cb=3,Sd(this,this.od),this.od=-1),Td(this,this.Rd),-1!=this.$d&&(zc(this,this.$d),this.$d=-1),-1!==this.sa&&(n(this,this.Nb&~this.Z.wa|this.sa-this.Z.Ea),this.sa=-1)):8!=this.Sb?(b=0,a=8):(b=0,a=-1,ud(this),e=d=!1)):Td(this,this.Rd);var k=a,l=b,p=pe(this,this.da);204!=p||this.wc||(d=!1);this.ca&131072&&(6==k&&99==p||13==k&&205==p)&&(d=!1);983040<=this.da&&1048575>=this.da&&(d=!1);if(d){var q=this.ja.Qb,
k="Fault 0x"+da(k,2)+(null!=l?" (0x"+da(l,4)+")":"")+" on opcode "+("0x"+da(p,2));d&&q&&(k+=" (blocked by PCjs Debugger)");this.Ka(k);lc(this)}if(d&&e)throw-1;if(e)throw this.Sb=a,qg.call(this,a,b,c),this.Rd=this.da,this.N=1==a?this.N|8192:this.N|4096,a;}function wd(a,b,c){this.pd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Fa&&(a|=4);h.call(this,14,a)}function id(){this.Fc[this.X()].call(this)}function ld(){t(this,r(this)&this.C);this.A-=this.D.zc}
function Sc(){this.sa=this.xa;var a=r(this)&this.C;t(this,this.G&this.C);t(this,this.F&this.C);t(this,this.I&this.C);t(this,this.B&this.C);t(this,a);t(this,this.K&this.C);t(this,this.J&this.C);t(this,this.H&this.C);this.A-=this.D.Wi;this.sa=-1}
function Tc(){this.sa=this.xa;this.H=this.H&~this.C|m(this);this.J=this.J&~this.C|m(this);this.K=this.K&~this.C|m(this);n(this,r(this)+this.ba);this.B=this.B&~this.C|m(this);this.I=this.I&~this.C|m(this);this.F=this.F&~this.C|m(this);this.G=this.G&~this.C|m(this);this.A-=this.D.Ui;this.sa=-1}function Uc(){this.ua[this.X()].call(this,Sf)}function md(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.Da[this.X()].call(this,Rf)}function od(){this.N|=20;this.R=this.S=this.Qa;this.A-=this.D.Oc}
function pd(){this.N|=20;this.R=this.S=this.Ua;this.A-=this.D.Oc}function qd(){this.N|=1024;this.Ba&1024||(this.ba^=6,this.C^=-65536,Kd(this));this.A-=this.D.Oc}function rd(){this.N|=2048;this.Ba&2048||(this.Uc^=6,this.wa^=-65536,Bd(this));this.A-=this.D.Oc}function Vc(){t(this,this.Ga());this.A-=this.D.zc}function Wc(){this.ua[this.X()].call(this,lg)}function Xc(){t(this,this.L());this.A-=this.D.zc}function Yc(){this.ua[this.X()].call(this,jg)}
function Tc(){this.sa=this.xa;this.H=this.H&~this.C|m(this);this.J=this.J&~this.C|m(this);this.K=this.K&~this.C|m(this);n(this,r(this)+this.ba);this.B=this.B&~this.C|m(this);this.I=this.I&~this.C|m(this);this.F=this.F&~this.C|m(this);this.G=this.G&~this.C|m(this);this.A-=this.D.Ui;this.sa=-1}function Uc(){this.ta[this.X()].call(this,Sf)}function md(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.Da[this.X()].call(this,Rf)}function od(){this.N|=20;this.R=this.S=this.Qa;this.A-=this.D.Oc}
function pd(){this.N|=20;this.R=this.S=this.Ua;this.A-=this.D.Oc}function qd(){this.N|=1024;this.Ba&1024||(this.ba^=6,this.C^=-65536,Kd(this));this.A-=this.D.Oc}function rd(){this.N|=2048;this.Ba&2048||(this.Uc^=6,this.wa^=-65536,Bd(this));this.A-=this.D.Oc}function Vc(){t(this,this.Ga());this.A-=this.D.zc}function Wc(){this.ta[this.X()].call(this,lg)}function Xc(){t(this,this.L());this.A-=this.D.zc}function Yc(){this.ta[this.X()].call(this,jg)}
function Zc(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;oe(this,e,1)&&(e=Kb(this.na,e,1,this.da-b-1),this.Kc(this.va.gc(this.H&c,1),e),this.H=this.H&~c|this.H+(this.ca&1024?-1:1)&c,this.F=this.F&~c|this.F-b&c,this.A-=d,a&&(Vd(this),this.N|=256))}}
function $c(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;oe(this,e,this.ba)&&(e=Kb(this.na,e,this.ba,this.da-b-1),this.Rb(this.va.gc(this.H&c,this.ba),e),this.H=this.H&~c|this.H+(this.ca&1024?-this.ba:this.ba)&c,this.F=this.F&~c|this.F-b&c,this.A-=d,a&&(Vd(this),this.N|=256))}}
function ad(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;if(oe(this,e,1)){var k=this.Kb(this.Ca.fc(this.J&c,1));Mb(this.na,e,1,k,this.da-b-1);this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c;this.F=this.F&~c|this.F-b&c;this.A-=d;a&&(Vd(this),this.N|=256)}}}
@ -185,22 +185,22 @@ function Gh(){var a=this.L();Xd(this)||$d(this)?(E(this,u(this)+a),this.A-=this.
function Lh(){var a=this.L();Yd(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}function Mh(){var a=this.L();!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}function Nh(){var a=this.L();!ae(this)==!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}function Oh(){var a=this.L();$d(this)||!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}
function Ph(){var a=this.L();$d(this)||!ae(this)!=!be(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}function Qh(){this.uc[this.X()].call(this,Rh,this.X);this.A-=-1===this.oa?1:this.D.Mf}function cd(){this.uc[this.X()].call(this,Sh,xh)}function dd(){this.ub[this.X()].call(this,2==this.ba?Th:Uh,xh)}function Vh(){var a=we(this),b=m(this);E(this,b);a&&n(this,r(this)+a);this.A-=this.D.aj}function Wh(){var a=m(this);E(this,a);this.A-=this.D.Yi}
function ed(){this.sa=this.xa;var a=we(this),b=this.X()&31;this.A-=11;t(this,this.K);var c=r(this)&this.C;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.K=this.K&~this.C|this.K-this.ba&this.C,t(this,Dc(this,this.Z,this.K&this.C));t(this,c)}this.K=this.K&~this.C|c;n(this,r(this)&~this.Z.wa|r(this)-a&this.Z.wa);this.sa=-1}function fd(){this.sa=this.xa;n(this,r(this)&~this.Z.wa|this.K&this.Z.wa);this.K=this.K&~this.C|m(this)&this.C;this.A-=5;this.sa=-1}
function Xh(){Eg.call(this,we(this));this.A-=this.D.$i}function Yh(){Eg.call(this,0);this.A-=this.D.Zi}function Zh(a){this.zh=a;this.ua[this.ld=this.X()].call(this,ig)}function $h(){this.N|=36;this.A-=this.D.Oc}function gd(){kd.call(this)}function Rc(){h.call(this,6)}function kd(){E(this,this.Rd-this.Ha.Ea);var a=this.Kb(this.da);$a(this,"Undefined opcode 0x"+da(a,2)+" at "+("0x"+da(this.da)));lc(this)}
var Nc=[function(){var a=this.X();this.Hb[a].call(this,Nf)},function(){this.Da[this.X()].call(this,Of)},function(){this.vb[this.X()].call(this,Nf)},function(){this.ua[this.X()].call(this,Of)},function(){this.G=this.G&-256|Nf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Of.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.va.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Gc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,
Cg)},function(){this.Da[this.X()].call(this,Dg)},function(){this.vb[this.X()].call(this,Cg)},function(){this.ua[this.X()].call(this,Dg)},function(){this.G=this.G&-256|Cg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Dg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ha.ra,this.ba,2);this.A-=this.D.Qd},function(){Sd(this,m(this));this.A-=this.D.Zb},function(){this.Hb[this.X()].call(this,Lf)},function(){this.Da[this.X()].call(this,Mf)},function(){this.vb[this.X()].call(this,
Lf)},function(){this.ua[this.X()].call(this,Mf)},function(){this.G=this.G&-256|Lf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Mf.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Z.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;zc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Fg)},function(){this.Da[this.X()].call(this,Gg)},function(){this.vb[this.X()].call(this,Fg)},function(){this.ua[this.X()].call(this,
Gg)},function(){this.G=this.G&-256|Fg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Gg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ca.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Fc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Pf)},function(){this.Da[this.X()].call(this,Qf)},function(){this.vb[this.X()].call(this,Pf)},function(){this.ua[this.X()].call(this,Qf)},function(){this.G=this.G&-256|Pf.call(this,
function Xh(){Eg.call(this,we(this));this.A-=this.D.$i}function Yh(){Eg.call(this,0);this.A-=this.D.Zi}function Zh(a){this.zh=a;this.ta[this.ld=this.X()].call(this,ig)}function $h(){this.N|=36;this.A-=this.D.Oc}function gd(){kd.call(this)}function Rc(){h.call(this,6)}function kd(){E(this,this.Rd-this.Ha.Ea);var a=this.Kb(this.da);$a(this,"Undefined opcode 0x"+da(a,2)+" at "+("0x"+da(this.da)));lc(this)}
var Nc=[function(){var a=this.X();this.Hb[a].call(this,Nf)},function(){this.Da[this.X()].call(this,Of)},function(){this.vb[this.X()].call(this,Nf)},function(){this.ta[this.X()].call(this,Of)},function(){this.G=this.G&-256|Nf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Of.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.va.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Gc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,
Cg)},function(){this.Da[this.X()].call(this,Dg)},function(){this.vb[this.X()].call(this,Cg)},function(){this.ta[this.X()].call(this,Dg)},function(){this.G=this.G&-256|Cg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Dg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ha.ra,this.ba,2);this.A-=this.D.Qd},function(){Sd(this,m(this));this.A-=this.D.Zb},function(){this.Hb[this.X()].call(this,Lf)},function(){this.Da[this.X()].call(this,Mf)},function(){this.vb[this.X()].call(this,
Lf)},function(){this.ta[this.X()].call(this,Mf)},function(){this.G=this.G&-256|Lf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Mf.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Z.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;zc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Fg)},function(){this.Da[this.X()].call(this,Gg)},function(){this.vb[this.X()].call(this,Fg)},function(){this.ta[this.X()].call(this,
Gg)},function(){this.G=this.G&-256|Fg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Gg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ca.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Fc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Pf)},function(){this.Da[this.X()].call(this,Qf)},function(){this.vb[this.X()].call(this,Pf)},function(){this.ta[this.X()].call(this,Qf)},function(){this.G=this.G&-256|Pf.call(this,
this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Qf.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.va;this.A-=this.D.Oc},function(){var a=this.G&255,b=Zd(this),c=Xd(this);if(9<(a&15)||b)a+=6,b=16;if(159<a||c)a+=96,c=1;a&=255;this.G=this.G&-256|a;ce(this,a,128);c?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,ih)},function(){this.Da[this.X()].call(this,jh)},function(){this.vb[this.X()].call(this,
ih)},function(){this.ua[this.X()].call(this,jh)},function(){this.G=this.G&-256|ih.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|jh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ha;this.A-=this.D.Oc},function(){var a=this.G&255,b=Zd(this),c=Xd(this);if(9<(a&15)||b)a-=6,b=16;if(159<a||c)a-=96,c=1;a&=255;this.G=this.G&-256|a;ce(this,a,128);c?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,
qh)},function(){this.Da[this.X()].call(this,rh)},function(){this.vb[this.X()].call(this,qh)},function(){this.ua[this.X()].call(this,rh)},function(){this.G=this.G&-256|qh.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|rh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Z;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c+=6,80286<=this.ia&&255<c&&d++,d++,a=b=1):a=b=0;this.G=this.G&-65536|(d<<8|c)&
65295;a?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,dg)},function(){this.Da[this.X()].call(this,eg)},function(){this.vb[this.X()].call(this,dg)},function(){this.ua[this.X()].call(this,eg)},function(){dg.call(this,this.G&255,this.X());this.A--},function(){eg.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ca;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c=c-6&15,d=d-1&
ih)},function(){this.ta[this.X()].call(this,jh)},function(){this.G=this.G&-256|ih.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|jh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ha;this.A-=this.D.Oc},function(){var a=this.G&255,b=Zd(this),c=Xd(this);if(9<(a&15)||b)a-=6,b=16;if(159<a||c)a-=96,c=1;a&=255;this.G=this.G&-256|a;ce(this,a,128);c?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,
qh)},function(){this.Da[this.X()].call(this,rh)},function(){this.vb[this.X()].call(this,qh)},function(){this.ta[this.X()].call(this,rh)},function(){this.G=this.G&-256|qh.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|rh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Z;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c+=6,80286<=this.ia&&255<c&&d++,d++,a=b=1):a=b=0;this.G=this.G&-65536|(d<<8|c)&
65295;a?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,dg)},function(){this.Da[this.X()].call(this,eg)},function(){this.vb[this.X()].call(this,dg)},function(){this.ta[this.X()].call(this,eg)},function(){dg.call(this,this.G&255,this.X());this.A--},function(){eg.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ca;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c=c-6&15,d=d-1&
255,a=b=1):a=b=0;this.G=this.G&-65536|d<<8|c;a?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.G=pg.call(this,this.G)},function(){this.F=pg.call(this,this.F)},function(){this.I=pg.call(this,this.I)},function(){this.B=pg.call(this,this.B)},function(){n(this,pg.call(this,r(this)))},function(){this.K=pg.call(this,this.K)},function(){this.J=pg.call(this,this.J)},function(){this.H=pg.call(this,this.H)},function(){this.G=fg.call(this,this.G)},function(){this.F=fg.call(this,this.F)},
function(){this.I=fg.call(this,this.I)},function(){this.B=fg.call(this,this.B)},function(){n(this,fg.call(this,r(this)))},function(){this.K=fg.call(this,this.K)},function(){this.J=fg.call(this,this.J)},function(){this.H=fg.call(this,this.H)},function(){t(this,this.G&this.C);this.A-=this.D.zc},function(){t(this,this.F&this.C);this.A-=this.D.zc},function(){t(this,this.I&this.C);this.A-=this.D.zc},function(){t(this,this.B&this.C);this.A-=this.D.zc},function(){t(this,r(this)-2&65535);this.A-=this.D.zc},
function(){t(this,this.K&this.C);this.A-=this.D.zc},function(){t(this,this.J&this.C);this.A-=this.D.zc},function(){t(this,this.H&this.C);this.A-=this.D.zc},function(){this.G=this.G&~this.C|m(this);this.A-=this.D.Zb},function(){this.F=this.F&~this.C|m(this);this.A-=this.D.Zb},function(){this.I=this.I&~this.C|m(this);this.A-=this.D.Zb},function(){this.B=this.B&~this.C|m(this);this.A-=this.D.Zb},function(){n(this,r(this)&~this.C|m(this));this.A-=this.D.Zb},function(){this.K=this.K&~this.C|m(this);this.A-=
this.D.Zb},function(){this.J=this.J&~this.C|m(this);this.A-=this.D.Zb},function(){this.H=this.H&~this.C|m(this);this.A-=this.D.Zb},Ah,Bh,Ch,Dh,Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Ah,Bh,Ch,Dh,Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,function(){this.ub[this.X()].call(this,ai,this.Ga);this.A-=-1===this.oa?1:this.D.Mf},Qh,function(){this.ub[this.X()].call(this,ai,this.L);this.A-=-1===this.oa?1:this.D.Mf},function(){this.Hb[this.X()].call(this,kh)},function(){this.Da[this.X()].call(this,lh)},function(){this.vb[this.ld=
this.X()].call(this,oh)},function(){this.ua[this.ld=this.X()].call(this,ph)},function(){this.N|=1;this.Hb[this.X()].call(this,zg)},function(){this.N|=1;this.Da[this.X()].call(this,zg)},function(){this.vb[this.X()].call(this,zg)},function(){this.ua[this.X()].call(this,zg)},function(){var a=this.X();switch((a&56)>>3){case 0:this.mc=this.va.ra;break;case 1:this.mc=this.Ha.ra;break;case 2:this.mc=this.Z.ra;break;case 3:this.mc=this.Ca.ra;break;case 4:if(80386<=this.ia){this.mc=this.Qa.ra;break}h.call(this,
6);return;case 5:if(80386<=this.ia){this.mc=this.Ua.ra;break}default:h.call(this,6);return}this.N|=1;this.Da[a].call(this,Bg)},function(){this.N|=1;this.R=this.S=this.ag;this.ua[this.X()].call(this,tg)},function(){var a,b;b=this.X();var c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.I;break;case 3:a=this.B;break;default:if(80286==this.ia||80386==this.ia&&4!=c&&5!=c){h.call(this,6);return}switch(c){case 1:a=this.F;break;case 4:a=r(this);break;case 5:a=this.K;break;case 6:a=this.J;break;
case 7:a=this.H}}this.ua[b].call(this,zg);switch(c){case 0:b=this.G;this.G=a;Gc(this,b);break;case 1:b=this.F;this.F=a;Sd(this,b);break;case 2:b=this.I;this.I=a;zc(this,b);break;case 3:b=this.B;this.B=a;Fc(this,b);break;case 4:b=r(this);n(this,a);80386<=this.ia?this.Qa.load(b):Gc(this,b);break;case 5:b=this.K;this.K=a;80386<=this.ia?this.Ua.load(b):Sd(this,b);break;case 6:b=this.J;this.J=a;zc(this,b);break;case 7:b=this.H,this.H=a,Fc(this,b)}},function(){this.N|=1;this.sa=this.xa;this.mc=m(this);
this.X()].call(this,oh)},function(){this.ta[this.ld=this.X()].call(this,ph)},function(){this.N|=1;this.Hb[this.X()].call(this,zg)},function(){this.N|=1;this.Da[this.X()].call(this,zg)},function(){this.vb[this.X()].call(this,zg)},function(){this.ta[this.X()].call(this,zg)},function(){var a=this.X();switch((a&56)>>3){case 0:this.mc=this.va.ra;break;case 1:this.mc=this.Ha.ra;break;case 2:this.mc=this.Z.ra;break;case 3:this.mc=this.Ca.ra;break;case 4:if(80386<=this.ia){this.mc=this.Qa.ra;break}h.call(this,
6);return;case 5:if(80386<=this.ia){this.mc=this.Ua.ra;break}default:h.call(this,6);return}this.N|=1;this.Da[a].call(this,Bg)},function(){this.N|=1;this.R=this.S=this.ag;this.ta[this.X()].call(this,tg)},function(){var a,b;b=this.X();var c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.I;break;case 3:a=this.B;break;default:if(80286==this.ia||80386==this.ia&&4!=c&&5!=c){h.call(this,6);return}switch(c){case 1:a=this.F;break;case 4:a=r(this);break;case 5:a=this.K;break;case 6:a=this.J;break;
case 7:a=this.H}}this.ta[b].call(this,zg);switch(c){case 0:b=this.G;this.G=a;Gc(this,b);break;case 1:b=this.F;this.F=a;Sd(this,b);break;case 2:b=this.I;this.I=a;zc(this,b);break;case 3:b=this.B;this.B=a;Fc(this,b);break;case 4:b=r(this);n(this,a);80386<=this.ia?this.Qa.load(b):Gc(this,b);break;case 5:b=this.K;this.K=a;80386<=this.ia?this.Ua.load(b):Sd(this,b);break;case 6:b=this.J;this.J=a;zc(this,b);break;case 7:b=this.H,this.H=a,Fc(this,b)}},function(){this.N|=1;this.sa=this.xa;this.mc=m(this);
this.ub[this.X()].call(this,bi,zh);this.sa=-1},function(){this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.F&this.C;this.F=this.F&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.I&this.C;this.I=this.I&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.B&this.C;this.B=this.B&~this.C|a&this.C;this.A-=3},function(){var a=this.G,b=r(this);this.G=this.G&~this.C|b&this.C;n(this,b&~this.C|a&this.C);this.A-=3},function(){var a=this.G;
this.G=this.G&~this.C|this.K&this.C;this.K=this.K&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.J&this.C;this.J=this.J&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.H&this.C;this.H=this.H&~this.C|a&this.C;this.A-=3},function(){this.G=2==this.ba?this.G&-65536|this.G<<24>>24&65535:this.G<<16>>16;this.A-=2},function(){this.I=2==this.ba?this.I&-65536|(this.G&32768?65535:0):this.G&-2147483648?-1:0;this.A-=this.D.gi},function(){cg.call(this,
this.Ga(),we(this));this.A-=this.D.ji},function(){this.A-=3},function(){var a=Hc(this);a&131072&&3>this.Eb?h.call(this,13,0):(t(this,a&-196609),this.A-=this.D.zc)},function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=m(this),a=a&65535|this.ca&-65536;Ic(this,a);this.A-=this.D.Zb}},function(){var a=this.G>>8&255;a&1?de(this):ee(this);a&4?(this.resultType&=-3,this.ca|=4):(this.resultType&=-3,this.ca&=-5);a&16?le(this):je(this);a&64?me(this):ke(this);a&128?(this.resultType&=-17,this.ca|=
@ -213,8 +213,8 @@ this.Ba&256||(this.A-=this.D.$g));if(a--){var e=this.G;this.Rb(this.va.gc(this.H
this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.D.Gg;this.Ba&192&&(a=this.F&c,b=1,d=this.D.Ig,this.Ba&256||(this.A-=this.D.Hg));if(a--){var e=Dc(this,this.R,this.J&c);this.G=this.G&~this.C|e;this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c;this.F=this.F&~c|this.F-b&c;this.A-=d;a&&(Vd(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.D.Tg;this.Ba&192&&(a=this.F&c,b=1,d=this.D.Vg,this.Ba&256||(this.A-=this.D.Ug));a--&&(dg.call(this,this.G&255,ue(this,this.va,this.H&c)),this.H=
this.H&~c|this.H+(this.ca&1024?-1:1)&c,this.F=this.F&~c|this.F-b&c,this.A-=d-this.D.Db,a&&$d(this)==(this.Ba&64)&&(Vd(this),this.N|=256))},function(){var a=1,b=0,c=this.wa,d=this.D.Tg;this.Ba&192&&(a=this.F&c,b=1,d=this.D.Vg,this.Ba&256||(this.A-=this.D.Ug));a--&&(eg.call(this,this.G&this.C,ve(this,this.va,this.H&c)),this.H=this.H&~c|this.H+(this.ca&1024?-this.ba:this.ba)&c,this.F=this.F&~c|this.F-b&c,this.A-=d-this.D.Db,a&&$d(this)==(this.Ba&64)&&(Vd(this),this.N|=256))},function(){this.G=this.G&
-256|this.X();this.A-=this.D.Mb},function(){this.F=this.F&-256|this.X();this.A-=this.D.Mb},function(){this.I=this.I&-256|this.X();this.A-=this.D.Mb},function(){this.B=this.B&-256|this.X();this.A-=this.D.Mb},function(){this.G=this.G&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.F=this.F&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.I=this.I&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.B=this.B&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.G=this.G&~this.C|this.Ga();
this.A-=this.D.Mb},function(){this.F=this.F&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.I=this.I&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.B=this.B&~this.C|this.Ga();this.A-=this.D.Mb},function(){n(this,r(this)&~this.C|this.Ga());this.A-=this.D.Mb},function(){this.K=this.K&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.J=this.J&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.H=this.H&~this.C|this.Ga();this.A-=this.D.Mb},Vh,Wh,Vh,Wh,function(){this.ua[this.X()].call(this,
ug)},function(){this.ua[this.X()].call(this,sg)},function(){this.N|=1;this.uc[this.X()].call(this,ci,this.X)},function(){this.N|=1;this.ub[this.X()].call(this,ci,this.Ga)},Xh,Yh,Xh,Yh,function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=this.D.Bi;this.Sb=-1;qg.call(this,3,null,a)}},function(){var a=this.X();if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var b;a:{b=this.pf[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.da)){b=!1;break a}b=!0}b?(this.Sb=-1,qg.call(this,
this.A-=this.D.Mb},function(){this.F=this.F&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.I=this.I&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.B=this.B&~this.C|this.Ga();this.A-=this.D.Mb},function(){n(this,r(this)&~this.C|this.Ga());this.A-=this.D.Mb},function(){this.K=this.K&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.J=this.J&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.H=this.H&~this.C|this.Ga();this.A-=this.D.Mb},Vh,Wh,Vh,Wh,function(){this.ta[this.X()].call(this,
ug)},function(){this.ta[this.X()].call(this,sg)},function(){this.N|=1;this.uc[this.X()].call(this,ci,this.X)},function(){this.N|=1;this.ub[this.X()].call(this,ci,this.Ga)},Xh,Yh,Xh,Yh,function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=this.D.Bi;this.Sb=-1;qg.call(this,3,null,a)}},function(){var a=this.X();if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var b;a:{b=this.pf[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.da)){b=!1;break a}b=!0}b?(this.Sb=-1,qg.call(this,
a,null,0)):this.A--}},function(){if(be(this))if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=this.D.Ci;this.Sb=-1;qg.call(this,4,null,a)}else this.A-=this.D.Di},function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{this.sa=this.xa;this.A-=this.D.zi;if(this.Ya&1&&this.ca&16384){var a=this.ma(this.la.Ea+0);Ac(this.Ha,a,!1)}else{var a=this.Fa,b=m(this),c=m(this),d=m(this);if(this.ca&131072)d=d&131071|this.ca&-131072;else if(d&131072){var e=m(this),k=m(this),l=m(this),p=m(this),q=m(this),
w=m(this);Bc(this,!0,!0);zc(this,k);n(this,e);Gc(this,l);Fc(this,p);this.Qa.load(q);this.Ua.load(w)}null!=Jc(this,b,c,!1)&&(Ic(this,d,a),this.Yf&&Nd(this,this.da))}this.sa=-1}},function(){this.uc[this.X()].call(this,Sh,vh)},function(){this.ub[this.X()].call(this,2==this.ba?Th:Uh,vh)},function(){this.uc[this.X()].call(this,Sh,wh)},function(){this.ub[this.X()].call(this,2==this.ba?Th:Uh,wh)},function(){var a=this.X();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;ce(this,this.G,128);this.A-=
this.D.di}},function(){var a=this.X();this.G=this.G&-65536|(this.G>>8&255)*a+this.G&255;ce(this,this.G,128);this.A-=this.D.ci},function(){this.G=this.G&-256|(Xd(this)?255:0);this.A-=2},function(){this.G=this.G&-256|qe(this,this.R,this.B+(this.G&255)&65535);this.A-=this.D.cj},function(){Zh.call(this,216)},function(){Zh.call(this,217)},function(){Zh.call(this,218)},function(){Zh.call(this,219)},function(){Zh.call(this,220)},function(){Zh.call(this,221)},function(){Zh.call(this,222)},function(){Zh.call(this,
@ -236,8 +236,8 @@ fe(this)):(ee(this),ge(this));this.Ib=!0;this.A-=-1===this.U?this.D.yi:this.D.xi
16,d=(b=this.I<<16|this.G&65535)/c|0;if(d!=d<<16>>16||8086==this.ia&&-32768==d)return uh.call(this),a;this.ya=d&65535;this.Ma=b%c&65535}else{var c=this.G,d=this.I,e=a,k=0,l=0;0>e&&(e=-e|0,k=1-k);0>d&&(c=-c|0,d=~d+(c?0:1)|0,l=1,k=1-k);!hg.call(this,c,d,e)||this.ya>2147483647+k||this.Ma>2147483647+l?c=!1:(k&&(this.ya=-this.ya),l&&(this.Ma=-this.Ma),c=!0);if(!c)return uh.call(this),a;this.ya|=0;this.Ma|=0}this.Ib=!0;this.A-=-1===this.U?this.D.ui:this.D.ti;this.N|=2;return a}],Oc=[function(a){var b=a+
1|0;Wd(this,a,1,b,190);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&255},function(a){var b=a-1|0;Wd(this,a,1,b,190,!0);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&255},th,th,th,th,th,th],Pc=[function(a){var b=a+1|0;Wd(this,a,1,b,this.Va|62);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&this.C},function(a){var b=a-1|0;Wd(this,a,1,b,this.Va|62,!0);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&this.C},function(a){t(this,u(this));E(this,a);this.A-=-1===this.U?this.D.li:this.D.ki;this.N|=
2;return a},function(a){if(-1===this.U)return th.call(this,a);this.sa=this.xa;cg.call(this,a,this.ma(this.U+this.ba));this.A-=this.D.ii;this.N|=2;this.sa=-1;return a},function(a){E(this,a);this.A-=-1===this.U?this.D.Hi:this.D.Gi;this.N|=2;return a},function(a){if(-1===this.U)return th.call(this,a);Jc(this,a,this.ma(this.U+this.ba));this.A-=this.D.Ei;this.N|=2;return a},function(a){var b=a;this.N&512&&(a=a-2&65535,80286>this.ia&&(b=a));t(this,b);this.A-=-1===this.U?this.D.zc:this.D.Xi;this.N|=2;return a},
sh];function sd(){this.ua[this.X()].call(this,nh);this.A-=-1===this.U?6:13}function td(){this.Da[this.X()].call(this,mh);this.A-=-1===this.U?12:19}var jd=Array(256);jd[0]=function(){var a=this.X();16>(a&56)&&(this.N|=1);this.ub[a].call(this,this.yh,yh)};jd[1]=function(){var a=this.X();a&16||(this.N|=1);this.ub[a].call(this,fi,yh)};jd[2]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ua[this.X()].call(this,rg)};
jd[3]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ua[this.X()].call(this,xg)};
th];function sd(){this.ta[this.X()].call(this,nh);this.A-=-1===this.U?6:13}function td(){this.Da[this.X()].call(this,mh);this.A-=-1===this.U?12:19}var jd=Array(256);jd[0]=function(){var a=this.X();16>(a&56)&&(this.N|=1);this.ub[a].call(this,this.yh,yh)};jd[1]=function(){var a=this.X();a&16||(this.N|=1);this.ub[a].call(this,fi,yh)};jd[2]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ta[this.X()].call(this,rg)};
jd[3]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ta[this.X()].call(this,xg)};
jd[5]=function(){this.Fa?h.call(this,13,0,0,!0):(ne(this,this.ma(2054)),this.H=this.ma(2086),this.J=this.ma(2088),this.K=this.ma(2090),this.B=this.ma(2094),this.I=this.ma(2096),this.F=this.ma(2098),this.G=this.ma(2100),yc(this.va,2102,this.ma(2084)),yc(this.Ha,2108,this.ma(2082)),yc(this.Z,2114,this.ma(2080)),yc(this.Ca,2120,this.ma(2078)),Ic(this,this.ma(2072)),E(this,this.ma(2074)),n(this,this.ma(2092)),this.jb=this.ma(2126)|this.Kb(2128)<<16,this.vc=this.jb+this.ma(2130),this.Ab=this.ma(2138)|
this.Kb(2140)<<16,this.wc=this.Ab+this.ma(2142),yc(this.Ob,2132,this.ma(2076)),yc(this.la,2144,this.ma(2070)),this.A-=195)};jd[6]=function(){this.Fa?h.call(this,13,0):(this.Ya&=-9,this.A-=2)};jd[11]=Rc;jd[166]=Rc;jd[255]=Rc;var v=[];v[5]=Rc;
v[7]=function(){if(this.Fa)h.call(this,13,0,0,!0);else{var a=this.va.fc(this.H&this.wa,204);if(-1!==a){this.Ya=this.ka(a);Bc(this);this.Ya&-2147483648?vd(this):xd(this);var b=this.ka(a+168),c=(b&24576)>>13;Ic(this,this.ka(a+4),c);this.jb=this.ka(a+112);this.vc=this.jb+this.ka(a+116);this.Ab=this.ka(a+100);this.wc=this.Ab+this.ka(a+104);xc(this.Ob,this.ka(a+56),this.ka(a+120),this.ka(a+124),this.ka(a+128));xc(this.la,this.ka(a+52),this.ka(a+84),this.ka(a+88),this.ka(a+92));this.H=this.ka(a+12);this.J=
@ -250,14 +250,14 @@ v[135]=function(){var a=this.Ga();Xd(this)||$d(this)?this.A-=this.D.Sa:(E(this,u
v[140]=function(){var a=this.Ga();!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[141]=function(){var a=this.Ga();!ae(this)==!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[142]=function(){var a=this.Ga();$d(this)||!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[143]=function(){var a=this.Ga();$d(this)||!ae(this)!=!be(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};v[144]=function(){Hg.call(this,Ig)};
v[145]=function(){Hg.call(this,Ig)};v[146]=function(){Hg.call(this,Jg)};v[147]=function(){Hg.call(this,Kg)};v[148]=function(){Hg.call(this,Lg)};v[149]=function(){Hg.call(this,Mg)};v[150]=function(){Hg.call(this,Ng)};v[151]=function(){Hg.call(this,Og)};v[152]=function(){Hg.call(this,Pg)};v[153]=function(){Hg.call(this,Qg)};v[154]=function(){Hg.call(this,Rg)};v[155]=function(){Hg.call(this,Sg)};v[156]=function(){Hg.call(this,Tg)};v[157]=function(){Hg.call(this,Ug)};v[158]=function(){Hg.call(this,Vg)};
v[159]=function(){Hg.call(this,Wg)};v[160]=function(){Ec(this,this.Qa.ra,this.ba,2);this.A-=this.D.Qd};v[161]=function(){this.sa=this.xa;var a=m(this);this.Qa.load(a);this.A-=this.D.Zb;this.sa=-1};v[163]=function(){this.Da[this.X()].call(this,Zf);-1!==this.U&&(this.A-=6)};v[164]=function(){this.Da[this.X()].call(this,2==this.ba?Zg:$g);this.A-=-1===this.U?3:7};v[165]=function(){this.Da[this.X()].call(this,2==this.ba?ah:bh);this.A-=-1===this.U?3:7};
v[168]=function(){Ec(this,this.Ua.ra,this.ba,2);this.A-=this.D.Qd};v[169]=function(){this.sa=this.xa;var a=m(this);this.Ua.load(a);this.A-=this.D.Zb;this.sa=-1};v[171]=function(){this.Da[this.X()].call(this,bg);-1!==this.U&&(this.A-=5)};v[172]=function(){this.Da[this.X()].call(this,2==this.ba?eh:fh);this.A-=-1===this.U?3:7};v[173]=function(){this.Da[this.X()].call(this,2==this.ba?gh:hh);this.A-=-1===this.U?3:7};v[175]=function(){this.ua[this.X()].call(this,2==this.ba?kg:mg)};
v[178]=function(){this.ua[this.X()].call(this,yg)};v[179]=function(){this.Da[this.X()].call(this,ag);-1!==this.U&&(this.A-=5)};v[180]=function(){this.ua[this.X()].call(this,vg)};v[181]=function(){this.ua[this.X()].call(this,wg)};
v[168]=function(){Ec(this,this.Ua.ra,this.ba,2);this.A-=this.D.Qd};v[169]=function(){this.sa=this.xa;var a=m(this);this.Ua.load(a);this.A-=this.D.Zb;this.sa=-1};v[171]=function(){this.Da[this.X()].call(this,bg);-1!==this.U&&(this.A-=5)};v[172]=function(){this.Da[this.X()].call(this,2==this.ba?eh:fh);this.A-=-1===this.U?3:7};v[173]=function(){this.Da[this.X()].call(this,2==this.ba?gh:hh);this.A-=-1===this.U?3:7};v[175]=function(){this.ta[this.X()].call(this,2==this.ba?kg:mg)};
v[178]=function(){this.ta[this.X()].call(this,yg)};v[179]=function(){this.Da[this.X()].call(this,ag);-1!==this.U&&(this.A-=5)};v[180]=function(){this.ta[this.X()].call(this,vg)};v[181]=function(){this.ta[this.X()].call(this,wg)};
v[182]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.vb[b].call(this,Ag);switch(c){case 0:this.G=this.G&~this.C|this.G&255;break;case 1:this.F=this.F&~this.C|this.F&255;break;case 2:this.I=this.I&~this.C|this.I&255;break;case 3:this.B=this.B&~this.C|this.B&255;break;case 4:this.Nb=this.Nb&~this.C|this.G>>8&255;this.G=a;break;case 5:this.K=this.K&~this.C|this.F>>8&255;this.F=a;break;case 6:this.J=this.J&~this.C|
this.I>>8&255;this.I=a;break;case 7:this.H=this.H&~this.C|this.B>>8&255,this.B=a}this.A-=-1===this.U?3:6};v[183]=function(){var a=this.X();Cc(this,2);this.ua[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G&65535;break;case 1:this.F=this.F&65535;break;case 2:this.I=this.I&65535;break;case 3:this.B=this.B&65535;break;case 4:this.Nb=this.Nb&65535;break;case 5:this.K=this.K&65535;break;case 6:this.J=this.J&65535;break;case 7:this.H=this.H&65535}this.A-=-1===this.U?3:6};
v[186]=function(){this.ub[this.X()].call(this,gi,this.X)};v[187]=function(){this.Da[this.X()].call(this,$f);-1!==this.U&&(this.A-=5)};v[188]=function(){this.ua[this.X()].call(this,Tf)};v[189]=function(){this.ua[this.X()].call(this,Uf)};
this.I>>8&255;this.I=a;break;case 7:this.H=this.H&~this.C|this.B>>8&255,this.B=a}this.A-=-1===this.U?3:6};v[183]=function(){var a=this.X();Cc(this,2);this.ta[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G&65535;break;case 1:this.F=this.F&65535;break;case 2:this.I=this.I&65535;break;case 3:this.B=this.B&65535;break;case 4:this.Nb=this.Nb&65535;break;case 5:this.K=this.K&65535;break;case 6:this.J=this.J&65535;break;case 7:this.H=this.H&65535}this.A-=-1===this.U?3:6};
v[186]=function(){this.ub[this.X()].call(this,gi,this.X)};v[187]=function(){this.Da[this.X()].call(this,$f);-1!==this.U&&(this.A-=5)};v[188]=function(){this.ta[this.X()].call(this,Tf)};v[189]=function(){this.ta[this.X()].call(this,Uf)};
v[190]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.vb[b].call(this,Ag);switch(c){case 0:this.G=this.G&~this.C|(this.G&255)<<24>>24&this.C;break;case 1:this.F=this.F&~this.C|(this.F&255)<<24>>24&this.C;break;case 2:this.I=this.I&~this.C|(this.I&255)<<24>>24&this.C;break;case 3:this.B=this.B&~this.C|(this.B&255)<<24>>24&this.C;break;case 4:this.Nb=this.Nb&~this.C|this.G<<16>>24&this.C;this.G=a;break;case 5:this.K=
this.K&~this.C|this.F<<16>>24&this.C;this.F=a;break;case 6:this.J=this.J&~this.C|this.I<<16>>24&this.C;this.I=a;break;case 7:this.H=this.H&~this.C|this.B<<16>>24&this.C,this.B=a}this.A-=-1===this.U?3:6};
v[191]=function(){var a=this.X();Cc(this,2);this.ua[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G<<16>>16;break;case 1:this.F=this.F<<16>>16;break;case 2:this.I=this.I<<16>>16;break;case 3:this.B=this.B<<16>>16;break;case 4:this.Nb=this.Nb<<16>>16;break;case 5:this.K=this.K<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.H=this.H<<16>>16}this.A-=-1===this.U?3:6};
v[191]=function(){var a=this.X();Cc(this,2);this.ta[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G<<16>>16;break;case 1:this.F=this.F<<16>>16;break;case 2:this.I=this.I<<16>>16;break;case 3:this.B=this.B<<16>>16;break;case 4:this.Nb=this.Nb<<16>>16;break;case 5:this.K=this.K<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.H=this.H<<16>>16}this.A-=-1===this.U?3:6};
var Pd=[function(){this.A-=2+(-1===this.U?0:1);return this.Ob.ra},function(){this.A-=2+(-1===this.U?0:1);return this.la.ra},function(a){this.N|=2;this.Ob.load(a);this.A-=17+(-1===this.U?0:2);return a},function(a){this.N|=2;-1!==this.la.load(a)&&(this.gb(this.la.ec+4,this.la.ob|=512),this.la.type|=512);this.A-=17+(-1===this.U?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.U?0:2);if(-1!==this.Na.load(a)&&2048!=(this.Na.ob&2560)&&(this.Na.sc>=this.Fa&&this.Na.sc>=(a&3)||7168==(this.Na.ob&
7168)))return me(this),a;ke(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.U?0:2);if(-1!==this.Na.load(a)&&512==(this.Na.ob&2560)&&this.Na.sc>=this.Fa&&this.Na.sc>=(a&3))return me(this),a;ke(this);return a},th,th],Qc=[hd,hd,hd,hd,hd,hd,th,th],fi=[function(a){if(-1===this.U)h.call(this,6);else{a=this.vc-this.jb;var b=this.jb;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.$a(this.U+2,b);this.A-=11}return a},function(a){if(-1===this.U)h.call(this,6);else{a=this.wc-
this.Ab;var b=this.Ab;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.$a(this.U+2,b);this.A-=12}return a},function(a){-1===this.U||this.ca&131072?h.call(this,6):(this.jb=this.ka(this.U+2)&(this.C|this.C<<8),a&=65535,this.vc=this.jb+a,this.N|=2,this.A-=11);return a},function(a){-1===this.U||this.ca&131072?h.call(this,6):(this.Ab=this.ka(this.U+2)&(this.C|this.C<<8),a&=65535,this.wc=this.Ab+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.U?0:1);return this.Ya},
@ -784,15 +784,15 @@ R(this)},function(){return this.J},function(){return this.H},function(){return t
function hi(a){Ia.call(this,"ChipSet",a,hi);this.ia=(this.ia=a.model)&&ii[this.ia]||ji;this.K=0;var b=a[ki];if(b)this.K=li(b,mi|ni.xj);else{this.ha=[360,360];(b=a.floppies)&&b.length&&(this.ha=b);if(b=this.ha.length)this.K|=oi.Xf,b--,this.K|=(b&3)<<oi.De;if(b=a.monitor||(this.ia<Ge?"mono":"ega"),void 0!==pi[b])this.K|=pi[b]<<ni.De}this.pa=li(a[qi]||"11110000",0);this.ub=this.ia==ji?16:64;this.Ma=this.ya=1;this.ia>=Ge&&(this.Ma=this.ya=2);this.la=a.scaleTimers||!1;this.vb=a.rtcDate;this.fb=!1;a.sound&&
(this.Va=this.Ca=null,window&&(this.Va=window.AudioContext||window.webkitAudioContext),this.Va&&(this.Ca=new this.Va));this.reset(!0);Ya(this)}Qa(hi);var ji=5150,Ge=5170,ii={5150:ji,5160:5160,5170:Ge,deskpro386:5180},ki="sw1",qi="sw2",pi={none:0,tv:1,color:2,mono:3,ega:0,vga:0},oi={Xf:1,ONE:0,Gm:64,Em:128,jm:192,Ce:192,De:6},mi=12,ni={Fm:16,cm:32,xj:48,Ce:48,De:4};f=hi.prototype;
f.Fb=function(a,b,c){switch(b){case ki:return this.qa[b]=c,ri(this,b,this.K,{0:this.ia==ji?"Bootable Floppy Drive":"Loop on POST",1:this.ia<ji?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case qi:if(this.ia==ji)return this.qa[b]=c,ri(this,b,this.pa,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ta=a;if(this.nd=hb(a,"FPU"))this.K|=2;this.D=hb(a,"Keyboard");this.Qa=c.Y.$c/1193181;Jb(b,this,si);Lb(b,this,ti);this.ia<Ge?(Jb(b,this,ui),Lb(b,this,vi)):(Jb(b,this,wi),Lb(b,this,xi))};f.ac=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ua=a;if(this.nd=hb(a,"FPU"))this.K|=2;this.D=hb(a,"Keyboard");this.Qa=c.Y.$c/1193181;Jb(b,this,si);Lb(b,this,ti);this.ia<Ge?(Jb(b,this,ui),Lb(b,this,vi)):(Jb(b,this,wi),Lb(b,this,xi))};f.ac=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.reset=function(a){var b;this.S=this.K;this.oa=this.pa;yi(this,ki,this.S);yi(this,qi,this.oa);zi(this);this.H=Array(this.Ma);for(b=0;b<this.Ma;b++)Ai(this,b);this.dc=Array(this.ya);Bi(this,0,32);1<this.ya&&Bi(this,1,160);this.ab=this.Ja=null;this.N=Array(5180==this.ia?6:3);for(b=0;b<this.N.length;b++)Ci(this,b);this.xa=this.Ua=this.R=this.La=null;this.va=0;if(this.ia>=Ge){this.F=16;this.Z=0;this.W=16;this.Fa=0;this.da=160;512<=Di(this)&&(this.da|=16);3==Ei(this)&&(this.da|=64);5180==this.ia&&(this.da|=
12);this.Ia=3;this.J=Array(8);this.sa=0;a&&(this.B=Array(64));Fi(this,this.vb);for(a=21;24>=a;a++)this.B[a]=0;for(a=14;46>a;a++)void 0===this.B[a]&&(this.B[a]=0);this.B[20]=this.S&(ni.Ce|2|oi.Xf|oi.Ce);this.B[16]=Gi(this,0)<<4|Gi(this,1);Hi(this)}};
function Fi(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ic("CMOS date invalid ("+b+"), using "+c)):b&&a.ic("CMOS date: "+c);a.B[0]=c.getSeconds();a.B[1]=0;a.B[2]=c.getMinutes();a.B[3]=0;a.B[4]=c.getHours();a.B[5]=0;a.B[6]=c.getDay()+1;a.B[7]=c.getDate();a.B[8]=c.getMonth()+1;c=c.getFullYear();a.B[9]=c%100;c/=100;a.B[50]=c%10|c/10<<4;a.B[10]=38;a.B[11]=2;a.B[12]=0;a.B[13]=128;a.Da=a.ua=0;a.jb=a.Na=null}
function Ii(a){var b;void 0===b&&(b=a.Na);a.ua=qc(a.A,a.la)+b;a.B[11]&64&&nc(a.A,b)}function Hi(a){for(var b=0,c=16;46>c;c++)b+=a.B[c];a.B[47]=b&255;a.B[46]=b>>8}
function Fi(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ic("CMOS date invalid ("+b+"), using "+c)):b&&a.ic("CMOS date: "+c);a.B[0]=c.getSeconds();a.B[1]=0;a.B[2]=c.getMinutes();a.B[3]=0;a.B[4]=c.getHours();a.B[5]=0;a.B[6]=c.getDay()+1;a.B[7]=c.getDate();a.B[8]=c.getMonth()+1;c=c.getFullYear();a.B[9]=c%100;c/=100;a.B[50]=c%10|c/10<<4;a.B[10]=38;a.B[11]=2;a.B[12]=0;a.B[13]=128;a.Da=a.ta=0;a.jb=a.Na=null}
function Ii(a){var b;void 0===b&&(b=a.Na);a.ta=qc(a.A,a.la)+b;a.B[11]&64&&nc(a.A,b)}function Hi(a){for(var b=0,c=16;46>c;c++)b+=a.B[c];a.B[47]=b&255;a.B[46]=b>>8}
f.save=function(){var a=new Qd(this);D(a,0,[this.K,this.pa,this.S,this.oa]);for(var b=[],c=0;c<this.H;c++){for(var d=this.H[c],e=d,k=[],l=0;l<e.Tb.length;l++){var p=e.Tb[l];k[l]=[p.Nd,p.uf,p.hc,p.kb,p.lb,p.mode,p.vf,p.Yl,p.Zl]}b[c]=[d.Mc,d.dg,d.Jh,d.Jb,k]}D(a,1,[b]);b=[];for(c=0;c<this.dc.length;c++)d=this.dc[c],b[c]=[d.Qe,d.Qc,d.hd,d.Vc,d.Vb,d.Bc,d.Id,d.Ge];D(a,2,[b]);b=[];for(c=0;c<this.N.length;c++)d=this.N[c],b[c]=[d.hc,d.Dc,d.lb,d.Jd,d.fg,d.mode,d.gf,d.Xc,d.ed,d.Rc,d.ke,d.Ld,d.gd,d.Mc,d.pe];
D(a,3,[this.Ja,b,this.ab]);D(a,4,[this.La,this.R,this.Ua,this.xa,this.va]);this.ia>=Ge&&(D(a,5,[this.F,this.Z,this.W,this.Fa,this.da,this.Ia]),D(a,6,[this.J[7],this.J,this.sa,this.B,this.Da,this.ua]));return a.data()};
D(a,3,[this.Ja,b,this.ab]);D(a,4,[this.La,this.R,this.Ua,this.xa,this.va]);this.ia>=Ge&&(D(a,5,[this.F,this.Z,this.W,this.Fa,this.da,this.Ia]),D(a,6,[this.J[7],this.J,this.sa,this.B,this.Da,this.ta]));return a.data()};
f.restore=function(a){var b,c;b=a[0];this.K=b[0];this.pa=b[1];this.S=b[2];this.oa=b[3];b=a[1];for(c=0;c<this.Ma;c++)Ai(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.ya;c++)Bi(this,c,0===c?32:160,b[0][c]);b=a[3];this.Ja=b[0];this.ab=b[2];for(c=0;c<this.N.length;c++)Ci(this,c,b[1][c]);b=a[4];this.La=b[0];this.R=b[1];this.Ua=b[2];this.xa=b[3];this.va=b[4];if(b=a[5])this.F=b[0],this.Z=b[1],this.W=b[2],this.Fa=b[3],this.da=b[4],this.Ia=b[5];if(b=a[6])this.J=b[1],this.J[7]=b[0],this.sa=b[2],this.B=
b[3],this.Da=b[4],this.ua=b[5],Fi(this);return!0};var Ji=[0,null,null,0,Array(4)];function Ai(a,b,c){var d=a.H[b];d||(d={Tb:Array(4)});c=c&&5==c.length?c:Ji;d.Mc=c[0];d.dg=c[1];d.Jh=c[2];d.Jb=c[3];d.Vk=b<<2;for(var e=0;e<d.Tb.length;e++)Ki(d,e,c[4][e]);a.H[b]=d}var Li=[!0,[0,0],[0,0],[0,0],[0,0]];
b[3],this.Da=b[4],this.ta=b[5],Fi(this);return!0};var Ji=[0,null,null,0,Array(4)];function Ai(a,b,c){var d=a.H[b];d||(d={Tb:Array(4)});c=c&&5==c.length?c:Ji;d.Mc=c[0];d.dg=c[1];d.Jh=c[2];d.Jb=c[3];d.Vk=b<<2;for(var e=0;e<d.Tb.length;e++)Ki(d,e,c[4][e]);a.H[b]=d}var Li=[!0,[0,0],[0,0],[0,0],[0,0]];
function Ki(a,b,c){var d=a.Tb[b];d||(d={uf:[0,0],hc:[0,0],kb:[0,0],lb:[0,0]});c=c&&8==c.length?c:Li;d.Nd=c[0];d.uf[0]=c[1][0];d.uf[1]=c[1][1];d.hc[0]=c[2][0];d.hc[1]=c[2][1];d.kb[0]=c[3][0];d.kb[1]=c[3][1];d.lb[0]=c[4][0];d.lb[1]=c[4][1];d.mode=c[5];d.vf=c[6];d.controller=a;d.Xh=b;Mi(d,c[8],c[9]);a.Tb[b]=d}function Mi(a,b,c,d){"string"==typeof b&&(b=Sa(b));b&&(a.done=null,a.Yl=b.id,a.Zl=c,a.Af=b,a.mg=b[c],a.Of=d)}var Ni=[0,Array(4)];
function Bi(a,b,c,d){var e=a.dc[b];e||(e={Qc:[null,null,null,null]});d=d&&8==d.length?d:Ni;e.port=c;e.$m=b<<3;e.Qe=d[0];e.Qc[0]=d[1][0];e.Qc[1]=d[1][1];e.Qc[2]=d[1][2];e.Qc[3]=d[1][3];e.hd=d[2];e.Vc=d[3];e.Vb=d[4];e.Bc=d[5];e.Id=d[6];e.Ge=d[7];a.dc[b]=e}var Oi=[[0,0],[0,0],[0,0],[0,0]];
function Ci(a,b,c){var d=a.N[b];d||(d={hc:[0,0],Dc:[0,0],lb:[0,0],Jd:[0,0]});c=c&&13<=c.length?c:Oi;d.hc[0]=c[0][0];d.hc[1]=c[0][1];d.Dc[0]=c[1][0];d.Dc[1]=c[1][1];d.lb[0]=c[2][0];d.lb[1]=c[2][1];d.Jd[0]=c[3][0];d.Jd[1]=c[3][1];d.fg=c[4];d.mode=c[5];d.gf=c[6];d.Xc=c[7];d.ed=c[8];d.Rc=c[9];d.ke=c[10];d.Ld=c[11];d.gd=c[12];d.Mc=c[13]||0;d.pe=c[14]||!1;a.N[b]=d}function Di(a,b){return((((b?a.K:a.S)&12)>>2)+1)*a.ub+32*((b?a.pa:a.oa)&15)}
@ -811,7 +811,7 @@ function pj(a,b,c){var d=a.N[b];d.Xc==d.ed&&nj(a,b);d.hc[d.Xc++]=c;d.Xc==d.ed&&(
f.Ll=function(a,b){this.Ja=b;var c=b&192;if(192==c){if(!(b&16))for(c=0;2>=c;c++)if(b&2<<c){var d=this.N[c];d.pe||(oj(this,c),d.Mc=d.fg|d.mode|d.gf|(d.Xc<d.ed?64:0)|(d.Rc?128:0),d.pe=!0)}if(!(b&32))for(c=0;2>=c;c++)b&2<<c&&rj(this,c)}else{var c=c>>6,d=b&1,e=b&14,k=b&48;if(0==k)rj(this,c);else{var l=c,p=this.N[l];p.gf=k;p.mode=e;p.fg=d;p.hc=[0,0];p.lb=[0,0];p.Jd=[0,0];p.Rc=!1;p.ke=!1;p.Ld=!1;p.pe=!1;nj(this,l);0==c&&He(this,0);2==c&&255==this.dc[0].Vc&&77==this.R&&(c=this.N[0],c.Dc[0]=c.hc[0],c.Dc[1]=
c.hc[1],c.gd=qc(this.A,this.la))}}};function qj(a,b){var c=a.N[b],d=c.hc[1]<<8|c.hc[0];d||(d=1==c.ed?256:65536);return d}function tc(a,b){var c=a.N[b],d=c.Dc[1]<<8|c.Dc[0];d||(d=1==c.ed?256:65536);return d}function rj(a,b){oj(a,b);var c=a.N[b];c.Jd[0]=c.lb[0];c.Jd[1]=c.lb[1];c.ke=!0;nj(a,b)}function nj(a,b){var c=a.N[b];c.Xc=32==c.gf?1:0;c.ed=48==c.gf?2:1}
function oj(a,b,c){var d=a.N[b];if(d.Ld&&(2!=b||a.R&1)){var e=qc(a.A,a.la),k=(e-d.gd)/a.Qa|0;0>k&&(d.gd=e,k=0);var l=qj(a,b),p=tc(a,b)-k;0==d.mode?(0>=p&&(p=0),p||(d.Rc=!0,d.Ld=!1,b||Ie(a,0))):4==d.mode?(d.Rc=1!=p,0>=p&&(p=l+p,0>=p&&(p=l),d.Dc[0]=p&255,d.Dc[1]=p>>8&255,d.gd=e,!b&&d.Rc&&Ie(a,0))):6==d.mode&&(p-=k,0>=p&&(d.Rc=!d.Rc,p=l+p,0>=p&&(p=l),d.Dc[0]=p&255,d.Dc[1]=p>>8&255,d.gd=e,!b&&d.Rc&&Ie(a,0)));d.lb[0]=p&255;d.lb[1]=p>>8&255;c&&(a.gd=0)}return d}
function sc(a,b){for(var c=0;c<a.N.length;c++)oj(a,c,b);if(a.ia>=Ge){var c=a.A.Y.$c,d=qc(a.A,a.la);null==a.Na&&(a.Da=qc(a.A,a.la),a.jb=1024,a.Na=Math.floor(a.A.Y.$c/a.jb),Ii(a));d>=a.ua&&(a.B[12]|=64,a.B[11]&64&&(a.B[12]|=128,Ie(a,8)),a.ua=d+a.Na);a.B[0]==a.B[1]&&a.B[2]==a.B[3]&&a.B[4]==a.B[5]&&(a.B[12]|=32,a.B[11]&32&&(a.B[12]|=128,Ie(a,8)));var e=d-a.Da,k=Math.floor(e/c);if(k&&!(a.B[11]&128)){for(;k--;)if(60<=++a.B[0]&&(a.B[0]=0,60<=++a.B[2]&&(a.B[2]=0,24<=++a.B[4]))){a.B[4]=0;a.B[6]=a.B[6]%7+1;
function sc(a,b){for(var c=0;c<a.N.length;c++)oj(a,c,b);if(a.ia>=Ge){var c=a.A.Y.$c,d=qc(a.A,a.la);null==a.Na&&(a.Da=qc(a.A,a.la),a.jb=1024,a.Na=Math.floor(a.A.Y.$c/a.jb),Ii(a));d>=a.ta&&(a.B[12]|=64,a.B[11]&64&&(a.B[12]|=128,Ie(a,8)),a.ta=d+a.Na);a.B[0]==a.B[1]&&a.B[2]==a.B[3]&&a.B[4]==a.B[5]&&(a.B[12]|=32,a.B[11]&32&&(a.B[12]|=128,Ie(a,8)));var e=d-a.Da,k=Math.floor(e/c);if(k&&!(a.B[11]&128)){for(;k--;)if(60<=++a.B[0]&&(a.B[0]=0,60<=++a.B[2]&&(a.B[2]=0,24<=++a.B[4]))){a.B[4]=0;a.B[6]=a.B[6]%7+1;
var l;l=a.B[9];var p=ma[a.B[8]-1];28==p&&0===l%4&&(l%100||0===l%400)&&p++;l=p;++a.B[7]>l&&(a.B[7]=1,12<++a.B[8]&&(a.B[8]=1,a.B[9]=(a.B[9]+1)%100))}a.B[12]|=16;a.B[11]&16&&(a.B[12]|=128,Ie(a,8))}a.Da=d-e%c}}f.Ck=function(){var a=this.La;if(this.xa&16)if(this.R&128)a=this.S;else if(this.D){var a=this.D,b=0;a.Ub.length&&(b=a.Ub[0]);a=b}return a};f.Ml=function(a,b){this.La=b};f.Dk=function(){return this.R};f.Nl=function(a,b){sj(this,b)};
function sj(a,b){var c=!!(b&2),d=!!(a.R&2);a.R=b;a.D&&tj(a.D,!(b&128),!!(b&64));c!=d&&rc(a,c)}f.Ek=function(){var a=0,a=this.ia==ji?this.R&4?a|this.oa&15:a|this.oa>>4&1:this.R&8?a|this.S>>4:a|this.S&15;this.R&1&&oj(this,2).Rc&&(a=this.R&2?a|32:a|16);return a};f.Ol=function(a,b){this.Ua=b};f.Fk=function(){return this.xa};f.Pl=function(a,b){this.xa=b};f.Rj=function(){var a=this.Fa;this.F&=-258;this.D&&uj(this.D);return a};
f.$k=function(a,b){if(this.F&8)switch(this.Z){case 96:vj(this,b);break;case 209:wj(this,b);break;default:if(vj(this,this.W&-17),this.D){var c=-1;switch(b){case 255:c=250,xj(this.D)}yj(this,c)}}this.Z=b;this.F&=-9};f.Sj=function(){return this.R&-209|(qc(this.A)&64?16:0)};f.al=function(a,b){sj(this,b)};f.Tj=function(){var a=this.F&255;this.F&256&&(this.F|=1,this.F&=-257);return a};
@ -849,20 +849,20 @@ Y[1009]=15;Y[113]=16;Y[81]=10768;Y[119]=17;Y[87]=10769;Y[101]=18;Y[69]=10770;Y[1
Y[W[";"]]=39;Y[W[":"]]=10791;Y[W["'"]]=40;Y[W['"']]=10792;Y[W["`"]]=41;Y[W["~"]]=10793;Y[1016]=42;Y[W["\\"]]=43;Y[W["|"]]=10795;Y[122]=44;Y[90]=10796;Y[120]=45;Y[88]=10797;Y[99]=46;Y[67]=10798;Y[118]=47;Y[86]=10799;Y[98]=48;Y[66]=10800;Y[110]=49;Y[78]=10801;Y[109]=50;Y[77]=10802;Y[W[","]]=51;Y[W["<"]]=10803;Y[W["."]]=52;Y[W[">"]]=10804;Y[W["/"]]=53;Y[W["?"]]=10805;Y[3016]=54;Y[1044]=55;Y[1018]=56;Y[1032]=57;Y[1020]=58;Y[1112]=59;Y[1113]=60;Y[1114]=61;Y[1115]=62;Y[1116]=63;Y[1117]=64;Y[1118]=65;
Y[1119]=66;Y[1120]=67;Y[1121]=68;Y[1144]=69;Y[1145]=70;Y[1036]=71;Y[1038]=72;Y[1033]=73;Y[1109]=74;Y[1037]=75;Y[1101]=76;Y[1039]=77;Y[1107]=78;Y[1035]=79;Y[1040]=80;Y[1034]=81;Y[1045]=82;Y[1046]=83;Y[4027]=84;Y[1122]=87;Y[1123]=88;Y[1091]=91;Y[1093]=93;Y[1224]=91;Y[4003]=7470;Y[4008]=7494;Y[4046]=3677523;f=Nj.prototype;
f.Fb=function(a,b,c,d){var e=this,k=a+"-"+b;if(void 0===this.qa[k])switch(b){case "kbd":return c.onkeydown=function(a){return Wj(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.F="";var b=!Y[a]||!!(e.Wb&128);b||Xj(e,a,!0);return b},c.onkeyup=function(a){return Wj(e,a,!1)},!0;case "caps-lock":return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1020,!0)},!0;case "num-lock":return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1144,!0)},!0;case "scroll-lock":return this.qa[k]=
c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1145,!0)},!0;case "test":return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();d&&!e.F&&(e.F=d,Yj(e,300))},!0;default:var l=b.toUpperCase().replace(/-/g,"_");if(void 0!==Tj[l]&&"button"==a)return this.qa[k]=c,c.onclick=function(a,b,c){return function(){a.A&&a.A.Tc();Zj(a,c,!0);Xj(a,c,!0)}}(this,l,Tj[l]),!0;if(void 0!==Uj[b])return this.R++,this.qa[k]=c,a=function(a,b,c){return function(){Xj(a,c)}}(this,b,Uj[b]),b=function(a,b,c){return function(){ak(a,c)}}(this,
b,Uj[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};function bk(a,b,c){if(a.R){for(var d in Rj)if(b==Rj[d]){b=+d;(d=Qj[d])&&(b=d);break}for(var e in Uj)if((d=Uj[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Uj[e]==d),d){(a=a.qa["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet")};
c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1145,!0)},!0;default:var l=b.toUpperCase().replace(/-/g,"_");if(void 0!==Tj[l]&&"button"==a)return this.qa[k]=c,c.onclick=function(a,b,c){return function(){a.A&&a.A.Tc();Yj(a,c,!0);Xj(a,c,!0)}}(this,l,Tj[l]),!0;if(void 0!==Uj[b])return this.R++,this.qa[k]=c,a=function(a,b,c){return function(){Xj(a,c)}}(this,b,Uj[b]),b=function(a,b,c){return function(){Zj(a,c)}}(this,b,Uj[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
c.onmouseout=b),!0;if(d)return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();d&&!e.F&&(e.F=d,ak(e,300))},!0}return!1};function bk(a,b,c){if(a.R){for(var d in Rj)if(b==Rj[d]){b=+d;(d=Qj[d])&&(b=d);break}for(var e in Uj)if((d=Uj[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Uj[e]==d),d){(a=a.qa["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet")};
function Oj(a,b){var c=0;a.ia=null;b&&(a.ia=b.toUpperCase(),c=Pj.indexOf(a.ia),0>c&&(c=0));b=Pj[c];a.da=parseInt(b.substr(2),10)}function xj(a,b){a.Ub=[170];a.H=!0;b&&a.T&&zj(a.T,a.Ub[0])}function tj(a,b,c){a.K!==c&&(a.K=a.N=c)&&(a.H=!0);a.J!==b&&(a.J=b)&&!a.N&&Aj(a,!0);a.J&&a.N&&(xj(a,!0),a.N=!1)}function uj(a){var b=0;a.Ub.length&&a.H&&(b=a.Ub[0],a.T&&zj(a.T,b))}function Aj(a,b){0<a.Ub.length&&(a.Ub.shift(),(a.H=b)&&a.Ub.length&&a.T&&zj(a.T,a.Ub[0]))}
f.ac=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};f.$b=function(a){return a?this.save():!0};f.reset=function(){if(!this.ia&&this.T)switch(this.T.ia){case ji:case 5160:Oj(this,Pj[0]);break;default:Oj(this,Pj[1])}ck(this);this.Wb=this.D=0;this.Ub=[];this.H=!0;this.F=""};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.K;c[b]=this.J;D(a,0,c);return a.data()};f.restore=function(a){return ck(this,a[0])};
function ck(a,b){var c=0;void 0===b&&(b=[]);a.K=a.H=b[c++];a.J=b[c];return!0}function Yj(a,b){if(0<a.F.length){var c=a.F.charCodeAt(0);10==c&&(c=13);a.F=a.F.substr(1);Xj(a,c,!0)}0<a.F.length&&setTimeout(function(a){return function(){Yj(a,b)}}(a),b)}
function Zj(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=Sj[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.Wb)&b):d||b&255&&(b=255);if(c){a.D&=~b;d&&(a.D|=b);c=b;var k,l;for(l in Vj)d="led-"+l,e=Vj[l],c&&c!=e||!(k=a.qa[d])||(k.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.Wb&=~b,d&&(a.Wb|=b);return!0}}return!1}
function ck(a,b){var c=0;void 0===b&&(b=[]);a.K=a.H=b[c++];a.J=b[c];return!0}function ak(a,b){if(0<a.F.length){var c=a.F.charCodeAt(0);10==c&&(c=13);a.F=a.F.substr(1);Xj(a,c,!0)}0<a.F.length&&setTimeout(function(a){return function(){ak(a,b)}}(a),b)}
function Yj(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=Sj[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.Wb)&b):d||b&255&&(b=255);if(c){a.D&=~b;d&&(a.D|=b);c=b;var k,l;for(l in Vj)d="led-"+l,e=Vj[l],c&&c!=e||!(k=a.qa[d])||(k.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.Wb&=~b,d&&(a.Wb|=b);return!0}}return!1}
function Xj(a,b,c){if(Y[b]&&a.A&&a.A.ja.Qb){Sj[b]&&a.B.length&&0<a.B[0].ad&&(a.B[0].ad=0);for(var d,e=0;e<a.B.length;e++)if(d=a.B[e],d.Vd==b){if(!c||0<=d.ad){e=-1;break}0<e&&(0<a.B[0].ad&&(a.B[0].ad=0),a.B.splice(e,1));break}0>e||(e==a.B.length&&(d={},d.Vd=b,d.Wb=a.Wb,bk(a,b,!0),e++),0<e&&a.B.splice(0,0,d),d.Je=!0,d.ad=c?-1:Sj[b]?0:1,dk(a,d))}}
function ak(a,b,c){if(!Y[b]||!(c||a.A&&a.A.ja.Qb))return!1;for(var d=!1,e=0;e<a.B.length;e++){var k=a.B[e];if(k.Vd==b||k.Vd==Rj[b]){a.B.splice(e,1);k.oj&&clearTimeout(k.oj);k.Je&&!c&&ek(a,k.Vd,!1);bk(a,b,!1);d=!0;break}}!a.B.length&&a.S&&(Zj(a,1020),a.S=!1);return d}function dk(a,b){if(!a.A||!a.A.ja.Qb)ak(a,b.Vd,!0);else if(ek(a,b.Vd,b.Je)&&b.ad){var c;if(0>b.ad){if(!b.Je){ak(a,b.Vd);return}b.Je=!1;c=a.ha}else c=1==b.ad++?500:100;b.oj=setTimeout(function(a){return function(){dk(a,b)}}(a),c)}}
function Zj(a,b,c){if(!Y[b]||!(c||a.A&&a.A.ja.Qb))return!1;for(var d=!1,e=0;e<a.B.length;e++){var k=a.B[e];if(k.Vd==b||k.Vd==Rj[b]){a.B.splice(e,1);k.oj&&clearTimeout(k.oj);k.Je&&!c&&ek(a,k.Vd,!1);bk(a,b,!1);d=!0;break}}!a.B.length&&a.S&&(Yj(a,1020),a.S=!1);return d}function dk(a,b){if(!a.A||!a.A.ja.Qb)Zj(a,b.Vd,!0);else if(ek(a,b.Vd,b.Je)&&b.ad){var c;if(0>b.ad){if(!b.Je){Zj(a,b.Vd);return}b.Je=!1;c=a.ha}else c=1==b.ad++?500:100;b.oj=setTimeout(function(a){return function(){dk(a,b)}}(a),c)}}
function fk(a,b,c){var d=b;if(65<=b&&90>=b)!(a.Wb&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.Wb&515)==c&&(d=b-32);else if(!!(a.Wb&3)==c){if(a=Rj[b])d=a}else if(a=Qj[b])d=a;return d}f.Pf=function(a){a||(this.Wb&=-256)};
function Wj(a,b,c){var d=!0,e=!1,k=!1,l=b.keyCode,p=fk(a,l,!0);a.kg&&p==W["`"]&&(l=p=27);if(Y[l+1E3])if(p+=1E3,2==b.location&&(p+=2E3),Zj(a,p,!1,c)){if(20==l||144==l||145==l)a.W||(c=e=!0);if(!(c||91!=l&&93!=l))for(var q=0;q<a.B.length;q++){var w=a.B[q];w.Je=!1;0<w.ad&&(w.ad=0)}}else 8==l&&8==(a.Wb&40)&&(p=4008),d=!1;else if(Y[p]&&a.Wb&60&&(d=!1),d&&c||a.Wb&192)k=!0;d||b.preventDefault();k||a.Z&&d||(c?Xj(a,p,e):ak(a,p)||(b=fk(a,l,!1),b!=p&&ak(a,b)));return d}
function ek(a,b,c){var d=!1;Zj(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.Wb&40)&&(e=83);var d=[],k=e&255;if(83<k&&83==a.da)return!1;d.push(k|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var l=0,p=e&255;224==k||225==k?d.push(k|(c?0:128)):(42==p?a.D&3||a.D&512&&b||(l=p):29==p?a.D&12||(l=p):56==p?a.D&48||(l=p):d.push(k|(c?0:128)),l&&(c?d.unshift(l):d.push(l|128)))}for(c=0;c<d.length;c++)e=a,k=d[c],e.Ub&&(20>e.Ub.length?(e.Ub.push(k),1==e.Ub.length&&e.T&&zj(e.T,k)):20==e.Ub.length&&
function Wj(a,b,c){var d=!0,e=!1,k=!1,l=b.keyCode,p=fk(a,l,!0);a.kg&&p==W["`"]&&(l=p=27);if(Y[l+1E3])if(p+=1E3,2==b.location&&(p+=2E3),Yj(a,p,!1,c)){if(20==l||144==l||145==l)a.W||(c=e=!0);if(!(c||91!=l&&93!=l))for(var q=0;q<a.B.length;q++){var w=a.B[q];w.Je=!1;0<w.ad&&(w.ad=0)}}else 8==l&&8==(a.Wb&40)&&(p=4008),d=!1;else if(Y[p]&&a.Wb&60&&(d=!1),d&&c||a.Wb&192)k=!0;d||b.preventDefault();k||a.Z&&d||(c?Xj(a,p,e):Zj(a,p)||(b=fk(a,l,!1),b!=p&&Zj(a,b)));return d}
function ek(a,b,c){var d=!1;Yj(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.Wb&40)&&(e=83);var d=[],k=e&255;if(83<k&&83==a.da)return!1;d.push(k|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var l=0,p=e&255;224==k||225==k?d.push(k|(c?0:128)):(42==p?a.D&3||a.D&512&&b||(l=p):29==p?a.D&12||(l=p):56==p?a.D&48||(l=p):d.push(k|(c?0:128)),l&&(c?d.unshift(l):d.push(l|128)))}for(c=0;c<d.length;c++)e=a,k=d[c],e.Ub&&(20>e.Ub.length?(e.Ub.push(k),1==e.Ub.length&&e.T&&zj(e.T,k)):20==e.Ub.length&&
e.Ub.push(255));d=!0}return d}Ea(function(){for(var a=Wa(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new Nj(d);Va(d,c)}});
function Z(a,b,c,d,e){Ia.call(this,"Video",a,Z);this.ia=a.model;this.mb=gk[this.ia]||hk;this.Wc=a.memory||0;this.od=a.switches;this.pa=a.mode;if(void 0===this.pa||void 0===ik[this.pa])this.pa=jk;this.Sb=a.charCols;this.wc=a.charRows;if(void 0===this.Sb||void 0===this.wc)this.Sb=ik[this.pa][0],this.wc=ik[this.pa][1];this.oa=a.screenWidth;this.va=a.screenHeight;this.Zd=a.scale;this.Yd=12<=Math.round(this.oa/this.Sb);this.ta=b;this.da=c;this.J=(this.Hd=d)||b||null;this.pd=a.touchScreen;this.xc=kk;this.N=
null;this.Xd=a.autoLock;this.hb=this.Gb=0;this.Fa=[];this.ua=Array(this.mb==Ej?256:16);this.Ua=!1;var k=this;this.kd=xa("Gecko/");b=["","moz","webkit","ms"];if(this.Z=e)if(this.Z.je=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.Z.je){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){lk(k,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement?
function Z(a,b,c,d,e){Ia.call(this,"Video",a,Z);this.ia=a.model;this.mb=gk[this.ia]||hk;this.Wc=a.memory||0;this.od=a.switches;this.pa=a.mode;if(void 0===this.pa||void 0===ik[this.pa])this.pa=jk;this.Sb=a.charCols;this.wc=a.charRows;if(void 0===this.Sb||void 0===this.wc)this.Sb=ik[this.pa][0],this.wc=ik[this.pa][1];this.oa=a.screenWidth;this.va=a.screenHeight;this.Zd=a.scale;this.Yd=12<=Math.round(this.oa/this.Sb);this.ua=b;this.da=c;this.J=(this.Hd=d)||b||null;this.pd=a.touchScreen;this.xc=kk;this.N=
null;this.Xd=a.autoLock;this.hb=this.Gb=0;this.Fa=[];this.ta=Array(this.mb==Ej?256:16);this.Ua=!1;var k=this;this.kd=xa("Gecko/");b=["","moz","webkit","ms"];if(this.Z=e)if(this.Z.je=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.Z.je){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){lk(k,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement?
!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){lk(k,null)},!1);break}}this.J&&(this.J.onfocus=function(){return k.Pf(!0)},this.J.onblur=function(){return k.Pf(!1)},this.J.Md=this.J.requestPointerLock||this.J.mozRequestPointerLock||this.J.webkitRequestPointerLock,this.J.pj=this.J.exitPointerLock||this.J.mozExitPointerLock||this.J.webkitExitPointerLock,this.J.Md&&(e=function(){k.Ze(document.pointerLockElement===k.J||document.mozPointerLockElement===
k.J||document.webkitPointerLockElement===k.J)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",e,!1)));if(a=a.fontROM)"json"!=fa(a)&&(a=qa()+"/api/v1/dump?file="+a+"&format=bytes"),pa(a,!0,null,this,this.yj)}Qa(Z);
var hk=1,Ej=7,gk={mda:1,cga:3,ega:5,vga:7},jk=7,mk={2:{Lf:15700,Kf:208,Qf:85,Rf:96},3:{Lf:18432,Kf:364,Qf:85,Rf:96},4:{Lf:21850,Kf:364,Qf:85,Rf:96},7:{Lf:16700,Kf:480,Qf:85,Rf:83}},nk={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},ik=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];ik[jk]=[80,25,1,0,1];ik[13]=[320,200,8];ik[14]=[640,200,8];ik[15]=[640,350,8];ik[16]=[640,350,8];
@ -885,22 +885,22 @@ Bk[226]=function(a,b){var c=a+this.J,d=uk[b&15],d=d^this.controller.rb,d=d&this.
function Ck(a){var b=[];if(void 0!==a.mb){b[0]=a.Xb;b[1]=a.Jc;b[2]=a.ef;b[3]=a.ga;b[4]=a.oc|a.Sf<<8;b[5]=a.ib;if(5<=a.mb){var c=[];c[0]=a.He;c[1]=a.Td;c[2]=a.Ic;c[3]=a.mh;c[4]=a.ff;c[5]=a.Uf;c[6]=a.Ae;c[7]=a.ze;c[8]=a.gj;c[9]=a.hj;c[10]=a.ye;c[11]=a.Dd;c[12]=a.rb;c[13]=[a.hb,a.Gb,a.Wc];var d;a:if(d=a.sd){var e=0,k=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var p=l;p<d.length;){for(var q=d[p],w=p+2;w<d.length&&d[w]===q;)w+=2;k[e++]=w-p>>1;k[e++]=q;p=w}if(k.length<d.length){d=k;break a}}c[14]=d;c[15]=
a.qg|-2147483648;c[16]=a.hh;c[17]=a.eb;c[18]=a.Hc;c[19]=a.wb;c[20]=a.Ye;c[21]=a.jd;c[22]=a.Bd;c[23]=a.sg;c[24]=a.tg;c[25]=a.af;a.mb==Ej&&(c[26]=a.nh,c[27]=a.lh,c[28]=a.bd,c[29]=a.Ac,c[30]=a.Tf,c[31]=a.xe);b[6]=c}b[7]=a.yg}return b}wk.prototype.Wh=function(a){return[this.sd,a-this.hb]};wk.prototype.ng=function(){return this.A};
wk.prototype.Wf=function(a){if(null!=a&&a!=this.qg){var b=a&65280,c=Bk[b];c||b&4096&&(c=Bk[4096]);var b=a&255,d=Bk[b];d||b&16&&(d=Bk[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[3]=d;this.qg=a}};var xk=[];xk[hk]=["MDA",948,720896,4096,0,3];xk[3]=["CGA",980,753664,16384,0,2];xk[5]=["EGA",980,753664,16384,65536,4];xk[Ej]=["VGA",980,753664,16384,262144,7];var kk=0;f=Z.prototype;
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;3!=gk[this.ia]&&(Jb(b,this,Dk),Lb(b,this,Ek));gk[this.ia]!=hk&&(Jb(b,this,Fk),Lb(b,this,Gk));5<=this.mb&&(Jb(b,this,Hk),Lb(b,this,Ik));this.mb==Ej&&(Jb(b,this,Jk),Lb(b,this,Kk));if((this.D=hb(a,"Keyboard"))&&this.ta){for(var e in this.qa)0<e.indexOf("lock")&&this.D.Fb("led",e,this.qa[e]);this.D.Fb(this.Hd?"textarea":"canvas","kbd",this.J)}this.Hb=9;(this.T=hb(a,"ChipSet"))&&this.od&&5==this.mb&&(this.Hb=li(this.od,this.Hb));"mouse"==this.pd?(this.N=
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;3!=gk[this.ia]&&(Jb(b,this,Dk),Lb(b,this,Ek));gk[this.ia]!=hk&&(Jb(b,this,Fk),Lb(b,this,Gk));5<=this.mb&&(Jb(b,this,Hk),Lb(b,this,Ik));this.mb==Ej&&(Jb(b,this,Jk),Lb(b,this,Kk));if((this.D=hb(a,"Keyboard"))&&this.ua){for(var e in this.qa)0<e.indexOf("lock")&&this.D.Fb("led",e,this.qa[e]);this.D.Fb(this.Hd?"textarea":"canvas","kbd",this.J)}this.Hb=9;(this.T=hb(a,"ChipSet"))&&this.od&&5==this.mb&&(this.Hb=li(this.od,this.Hb));"mouse"==this.pd?(this.N=
hb(a,"Mouse"))&&Lk(this,2):"keygrid"==this.pd&&this.D&&Lk(this,1)};f.Fb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.Z&&this.Z.je?c.onclick=function(){d.je()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.Gd=c.textContent,this.J&&this.J.Md?c.onclick=function(){d.Md(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){kc(d,!0)},!0}return!1};f.Tc=function(){this.J&&this.J.focus()};
f.je=function(){var a=!1;if(this.Z){if(this.Z.je){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.oa/this.va;b>c&&(a=Math.round(c/b*100)+"%")}this.kd?(this.ta.style.width=a,this.ta.style.width=a,this.ta.style.display="block",this.ta.style.margin="auto"):(this.Z.style.width=a,this.Z.style.height="auto");this.Z.style.backgroundColor="black";this.Z.je();a=!0}this.Tc()}return a};
function lk(a,b){!b&&a.Z&&(a.kd?a.ta.style.width=a.ta.style.height="":a.Z.style.width=a.Z.style.height="");a.D&&(a.D.kg=b)}f.Md=function(a){var b=!1;this.J&&(a?this.J.Md&&(this.J.Md(),this.N&&this.N.Ze(!0),b=!0):this.J.pj&&(this.J.pj(),this.N&&this.N.Ze(!1),b=!0),this.Tc());return b};f.Ze=function(a){this.N&&(this.N.Ze(a),this.D&&(this.D.kg=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Gd)};
f.je=function(){var a=!1;if(this.Z){if(this.Z.je){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.oa/this.va;b>c&&(a=Math.round(c/b*100)+"%")}this.kd?(this.ua.style.width=a,this.ua.style.width=a,this.ua.style.display="block",this.ua.style.margin="auto"):(this.Z.style.width=a,this.Z.style.height="auto");this.Z.style.backgroundColor="black";this.Z.je();a=!0}this.Tc()}return a};
function lk(a,b){!b&&a.Z&&(a.kd?a.ua.style.width=a.ua.style.height="":a.Z.style.width=a.Z.style.height="");a.D&&(a.D.kg=b)}f.Md=function(a){var b=!1;this.J&&(a?this.J.Md&&(this.J.Md(),this.N&&this.N.Ze(!0),b=!0):this.J.pj&&(this.J.pj(),this.N&&this.N.Ze(!1),b=!0),this.Tc());return b};f.Ze=function(a){this.N&&(this.N.Ze(a),this.D&&(this.D.kg=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Gd)};
function Lk(a,b){var c=a.J;c&&!a.xc&&(c.addEventListener("touchstart",function(b){Mk(a,b,!0)},!1),c.addEventListener("touchmove",function(b){Mk(a,b)},!0),c.addEventListener("touchend",function(b){Mk(a,b,!1)},!1),a.xc=b,a.vb=a.Ab=a.qd=-1,a.vc=!1,a.Nb=null,a.uc=!1,a.$d=function(){a.uc=!0;a.N.ie(Nk,!0)})}f.Pf=function(a){this.D&&this.D.Pf(a)};
function Mk(a,b,c){var d,e,k=0,l=0;e=a.ta;do isNaN(e.offsetLeft)||(k+=e.offsetLeft,l+=e.offsetTop);while(e=e.offsetParent);var p=a.oa/a.ta.offsetWidth,q=a.va/a.ta.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-k)*p;e=(e-l)*q;if(1==a.xc)d=d/(a.oa/3)|0,e=e/(a.va/3)|0,1!=e?e?Xj(a.D,1040,!0):Xj(a.D,1038,!0):1!=d&&(d?Xj(a.D,1039,!0):Xj(a.D,1037,!0));else if(a.N){l=a.vc;k=b.timeStamp-a.qd;!0===c?(a.vc=500<k,a.qd=b.timeStamp,
function Mk(a,b,c){var d,e,k=0,l=0;e=a.ua;do isNaN(e.offsetLeft)||(k+=e.offsetLeft,l+=e.offsetTop);while(e=e.offsetParent);var p=a.oa/a.ua.offsetWidth,q=a.va/a.ua.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-k)*p;e=(e-l)*q;if(1==a.xc)d=d/(a.oa/3)|0,e=e/(a.va/3)|0,1!=e?e?Xj(a.D,1040,!0):Xj(a.D,1038,!0):1!=d&&(d?Xj(a.D,1039,!0):Xj(a.D,1037,!0));else if(a.N){l=a.vc;k=b.timeStamp-a.qd;!0===c?(a.vc=500<k,a.qd=b.timeStamp,
a.Nb=setTimeout(a.$d,500)):null!=a.Nb&&(clearTimeout(a.Nb),a.Nb=null);void 0===c&&(a.vc=!1);l||b.preventDefault();if(!1===c){a.uc?(a.N.ie(Nk,!1),a.uc=!1,b=!0):b=!1;if(b)return;if(200>k){a.N.ie(Nk,!0);a.N.ie(Nk,!1);return}}if(c||0>a.vb||0>a.Ab)a.vb=d,a.Ab=e;c=Math.round(d-a.vb);b=Math.round(e-a.Ab);a.vb=d;a.Ab=e;a.N.pg(c,b,a.vb,a.Ab)}}f.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.reset=function(){var a=!0,b=0;this.T&&(b=Ei(this.T));this.ia||(this.mb=3==b?hk:3);this.pa=3;switch(this.mb){case Ej:b=7;break;case 5:var c=nk[this.Hb];c&&(b=c[0]);b||(b=4);break;case hk:b=3;this.pa=jk;break;default:b=2}this.sa!==b&&(this.sa=b,a=!0);this.F=null;this.la=this.jc=new wk(this,hk);this.S=this.Ib=new wk(this,3);5>this.mb?this.B=new wk:(this.B=new wk(this,this.mb,null,this.Wc),Ok(this));Pk(this);this.Da=null;this.La=this.ha=-1;this.Ia=0;Qk(this,this.pa);if(this.F.hb&&a){a=this.F.hb+this.fb;
for(b=this.F.hb;b<a;b+=2){var d=65536*Math.random()|0;4==this.sa||7==this.sa?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8);Ib(this.na,b,c|d<<8)}kc(this,!0)}};function Ok(a){a.B.ff&1?(a.la=a.jc,a.S=a.B):(a.la=a.B,a.S=a.Ib)}f.save=function(){var a=new Qd(this);D(a,0,Ck(this.jc));D(a,1,Ck(this.Ib));D(a,2,[this.sa,this.pa,this.Da]);D(a,3,Ck(this.B));return a.data()};
f.restore=function(a){var b=a[2];this.sa=b[0];this.pa=b[1];this.Da=b[2];this.F=null;this.la=this.jc=new wk(this,hk,a[0]);this.S=this.Ib=new wk(this,3,a[1]);this.B=new wk(this,this.mb,a[3],this.Wc);this.B.Xb&&Ok(this);Pk(this);if(!Rk(this))return!1;Sk(this);return!0};
f.yj=function(a,b,c){if(c)this.Ka("Unable to load font ROM (error "+c+": "+a+")");else{try{var d=eval("("+b+")");if(!d.length){ra("Empty font ROM: "+a);return}if(1==d.length){ra(d[0]);return}if(8192==d.length)Dj(this,d,[6144,0]);else{this.Ka("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ka("Font ROM data error: "+e.message);return}(this.da||this.Ta)&&Ya(this)}};
function Tk(a,b){if(1==b)return a.ua[0]=qk[0],a.ua[1]=qk[7],a.ua;if(2==b){var c=a.F.ef;if(a.F===a.B){var d=a.B.Ic[0],c=d&7;d&16&&(c|=8);18!=a.B.Ic[1]&&(c|=32)}a.ua[0]=qk[c&15];c=c&32?sk:rk;for(d=0;d<c.length;d++)a.ua[d+1]=qk[c[d]];return a.ua}if(a.S===a.Ib)return qk;a.Ua&&b&&!a.ua[16]&&(a.Ua=!1);if(!a.Ua){var c=a.B,d=c.xe,e,k,l,p,q;if(8==b)for(k=0;256>k;k++)l=d[k]||0,p=l<<2&252,q=l>>4&252,l=l>>10&252,a.ua[k]=[p,q,l,255];else{var w=d&&d[255];e=null!=c.Ic[15]?c.Ic:tk;for(k=0;16>k;k++)l=e[k]&63,w?(l|=
(c.Ic[20]&12)<<4,c.Ic[16]&128&&(l&=-49,l|=(c.Ic[20]&3)<<4),l=d[l],p=l<<2&252,q=l>>4&252,l=l>>10&252):(p=(l&4?170:0)|(l&32?85:0),q=(l&2?170:0)|(l&16?85:0),l=(l&1?170:0)|(l&8?85:0)),a.ua[k]=[p,q,l,255]}a.Ua=!0}return a.ua}function Dj(a,b,c,d){a.Eb=b;a.kc=c;a.Qa=d}
function Tk(a,b){if(1==b)return a.ta[0]=qk[0],a.ta[1]=qk[7],a.ta;if(2==b){var c=a.F.ef;if(a.F===a.B){var d=a.B.Ic[0],c=d&7;d&16&&(c|=8);18!=a.B.Ic[1]&&(c|=32)}a.ta[0]=qk[c&15];c=c&32?sk:rk;for(d=0;d<c.length;d++)a.ta[d+1]=qk[c[d]];return a.ta}if(a.S===a.Ib)return qk;a.Ua&&b&&!a.ta[16]&&(a.Ua=!1);if(!a.Ua){var c=a.B,d=c.xe,e,k,l,p,q;if(8==b)for(k=0;256>k;k++)l=d[k]||0,p=l<<2&252,q=l>>4&252,l=l>>10&252,a.ta[k]=[p,q,l,255];else{var w=d&&d[255];e=null!=c.Ic[15]?c.Ic:tk;for(k=0;16>k;k++)l=e[k]&63,w?(l|=
(c.Ic[20]&12)<<4,c.Ic[16]&128&&(l&=-49,l|=(c.Ic[20]&3)<<4),l=d[l],p=l<<2&252,q=l>>4&252,l=l>>10&252):(p=(l&4?170:0)|(l&32?85:0),q=(l&2?170:0)|(l&16?85:0),l=(l&1?170:0)|(l&8?85:0)),a.ta[k]=[p,q,l,255]}a.Ua=!0}return a.ta}function Dj(a,b,c,d){a.Eb=b;a.kc=c;a.Qa=d}
function Pk(a,b){var c=!1;if(window&&a.Eb&&(!b||a.K)){var d=0,e=a.Qa?a.Qa:8,k=Tk(a);Uk(a,3,a.kc[0],d,e,8,a.Eb,k)&&(c=!0);d=a.Qa?0:2048;e=a.Qa?a.Qa:9;Uk(a,1,a.kc[1],d,e,14,a.Eb,ok,pk)&&(c=!0);a.Qa&&Uk(a,a.mb,a.kc[1],0,a.Qa,14,a.Eb,k)&&(c=!0)}return c}function Uk(a,b,c,d,e,k,l,p,q){var w=!1;null!=c&&(Vk(a,b,c,d,e,k,l,p,q)&&(w=!0),a.Yd&&Vk(a,b<<1,c,d,e,k,l,p,q)&&(w=!0));return w}
function Vk(a,b,c,d,e,k,l,p,q){var w=!1,B=b&1?0:1,G=a.Fa[b],C=16>p.length?p.length:16;G||(G={qc:e<<B,rc:k<<B,ae:Array(C),Eh:p.slice(0,C),Ee:q,cg:Array(C)});for(q=0;q<C;q++){var J=p[q],V=G.ae[q]?G.Eh[q]:[];if(J[0]!==V[0]||J[1]!==V[1]||J[2]!==V[2]){var w=G,V=q,X=B,ja=c,ka=d,za=e,Aa=k,nd=l,xm=[0,0,0,0],re=window.document.createElement("canvas");re.width=w.qc<<4;re.height=w.rc<<4;for(var Xi=re.getContext("2d"),Bb=void 0,Mc=void 0,ac=void 0,se=8>Aa||!ka?Aa:8,If=Xi.createImageData(w.qc,w.rc),Bb=0;256>Bb;Bb++){for(ac=
0;ac<Aa;ac++)for(var ym=w.Ee&&V&1&&ac>=Aa-2,zm=nd[ac<se?ja+Bb*se+ac:ka+Bb*se+ac-se],Jf=0;Jf<=X;Jf++)for(Mc=0;Mc<za;Mc++){var Yi=Mc<<X,Zi=(ac<<X)+Jf,$i=ym||zm&128>>(8<=Mc&&192<=Bb&&223>=Bb?7:Mc)?J:xm;Wk(If,Yi,Zi,$i);X&&Wk(If,Yi+1,Zi,$i)}Xi.putImageData(If,(Bb&15)*w.qc,(Bb>>4)*w.rc)}w.ae[V]="#"+da(J[0],2)+da(J[1],2)+da(J[2],2);w.Eh[V]=J;w.cg[V]=re;w=!0}}a.Fa[b]=G;return w}function Xk(a){0<a.Ia||0<=a.ha?0>a.La&&(a.La=0):a.La=-1}
function Vk(a,b,c,d,e,k,l,p,q){var w=!1,B=b&1?0:1,G=a.Fa[b],C=16>p.length?p.length:16;G||(G={qc:e<<B,rc:k<<B,ae:Array(C),Eh:p.slice(0,C),Ee:q,cg:Array(C)});for(q=0;q<C;q++){var J=p[q],V=G.ae[q]?G.Eh[q]:[];if(J[0]!==V[0]||J[1]!==V[1]||J[2]!==V[2]){var w=G,V=q,X=B,ja=c,ka=d,za=e,Aa=k,nd=l,xm=[0,0,0,0],re=window.document.createElement("canvas");re.width=w.qc<<4;re.height=w.rc<<4;for(var Xi=re.getContext("2d"),Bb=void 0,Mc=void 0,$b=void 0,se=8>Aa||!ka?Aa:8,If=Xi.createImageData(w.qc,w.rc),Bb=0;256>Bb;Bb++){for($b=
0;$b<Aa;$b++)for(var ym=w.Ee&&V&1&&$b>=Aa-2,zm=nd[$b<se?ja+Bb*se+$b:ka+Bb*se+$b-se],Jf=0;Jf<=X;Jf++)for(Mc=0;Mc<za;Mc++){var Yi=Mc<<X,Zi=($b<<X)+Jf,$i=ym||zm&128>>(8<=Mc&&192<=Bb&&223>=Bb?7:Mc)?J:xm;Wk(If,Yi,Zi,$i);X&&Wk(If,Yi+1,Zi,$i)}Xi.putImageData(If,(Bb&15)*w.qc,(Bb>>4)*w.rc)}w.ae[V]="#"+da(J[0],2)+da(J[1],2)+da(J[2],2);w.Eh[V]=J;w.cg[V]=re;w=!0}}a.Fa[b]=G;return w}function Xk(a){0<a.Ia||0<=a.ha?0>a.La&&(a.La=0):a.La=-1}
function Sk(a){if(a.K){for(var b=10;15>=b;b++)if(null==a.F.ib[b])return;var c=a.F.ib[10],b=c&31,d=a.F.ib[11]&31,e=a.F.ib[9]&31,k=!1;a.F===a.B&&(k=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!k||b>e)Yk(a);else{c=a.F.ib[15]+((a.F.ib[14]&63)<<8);a.ha!=c&&(Yk(a),a.ha=c);d=d-b+1;if(a.rd!=b||a.Zc!=d)a.rd=b,a.Zc=d;a.Ja=e+1;Xk(a)}}}
function Yk(a){if(0<=a.ha){if(void 0!==a.W){var b=a.W[a.ha];if(b&131072){var b=b&-131073,c=a.ha%a.H,d=a.ha/a.H|0;a.K&&a.Fa[a.K]&&(a.Na&&Zk(a,c,d,b,a.Na),Zk(a,c,d,b));a.W[a.ha]=b}}a.ha=-1}}
function $k(a){var b,c=a.F;a.fd=!1;var d=c.Dd[5];if(null!=d){b=1024;var e=0,k=c.Dd[3]&31;switch(d&3){case 0:if(k){e=32;switch(k&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.Hc=k&7}break;case 1:e=1;break;case 2:switch(k&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.mb==Ej&&(e=3,c.Hc=k&7)}d&8&&(b=1280);c=c.ze[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.fd=!0));b|=e}return b}
@ -909,7 +909,7 @@ function Rk(a,b){var c,d=a.Da,e=a.F;if(e)if(e.mb==hk)d=jk;else if(5<=e.mb){var d
e.Dd[5]&64?d=l&31?143>=e.ib[18]?19:20:21:l&128||350>k?d=c?13:14:480<=k&&(d=3==a.sa?17:18):d-=c?2:0);c=$k(a)}}else e.Jc&8&&(e.Jc&2?(d=e.Jc&16?6:5,e.Jc&4||--d):(d=e.Jc&1?3:1,e.Jc&4&&--d));else a.Da=null,null==d&&(d=a.pa);if(!Qk(a,d,b))return!1;al(a,c);return!0}
function Qk(a,b,c){if(null!=b&&(b!=a.Da||c)){a.Ed=0;a.Da=b;a.Ua=!1;b=a.F||(b==jk?a.la:a.S);if(b!=a.F||b.hb!=a.hb||b.Gb!=a.Gb){Yk(a);if(a.hb){if(!Ab(a.na,a.hb,a.Gb))return!1;a.F&&(a.F.Xb=!1)}a.F=b;b.Xb=!0;a.hb=b.hb;a.Gb=b.Gb;if(!vb(a.na,b.hb,b.Gb,3,b===a.B?b:null))return!1}a.K=0;a.H=a.Sb;a.R=a.wc;a.ab=a.H;a.Ob=ik[jk][2];b=0;if(c=ik[a.Da])a.H=c[0],a.R=c[1],a.Ob=c[2],b=c[3],a.K=c[4],4!=a.sa&&7!=a.sa||a.F!==a.B||3!=a.K||(7==a.B.ib[9]?a.R=43:a.K=a.mb);a.nd=a.H*a.R|0;a.ld=a.nd/a.Ob|0;a.fb=a.ld;a.lc=0;void 0!==
b&&(a.fb=(a.fb<<1)+b|0,a.lc=a.fb+b>>1);a.Fa.length&&(a.ya=a.oa/a.H|0,a.Ca=a.va/a.R|0,a.K?(b=a.Fa[a.K],c=a.Fa[a.K<<1],a.Zd&&80==a.H?c&&a.ya>=3*c.qc>>2&&(a.K<<=1,b=c):(c&&a.ya>=c.qc&&(a.K<<=1,b=c),b&&(a.ya=b.qc,a.Ca=b.rc)),a.jb=a.ub=0,b&&(a.jb=a.H*b.qc,a.ub=a.R*b.rc)):(a.ya=a.Ca=1,a.jb=a.H,a.ub=a.R),a.Va=a.da.createImageData(a.jb,a.ub),a.Ma=window.document.createElement("canvas"),a.Ma.width=a.jb,a.Ma.height=a.ub,a.Na=a.Ma.getContext("2d"),a.Fc=a.Gc=0,a.mc=a.oa,a.tc=a.va,b=a.oa-a.H*a.ya,c=a.va-a.R*a.Ca,
0<b&&(a.Fc=b>>1,a.mc-=b),0<c&&(a.Gc=c>>1,a.tc-=c),b||c)&&(a.da.fillStyle=a.ta.style.backgroundColor,a.da.fillRect(0,0,a.oa,a.va));bl(a,!0);kc(a)}return!0}function Wk(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function cl(a){a.Ia=-1;a.xa=!1;var b=a.ld;if(void 0===a.W||a.W.length!=b)a.W=Array(b)}function bl(a,b){b||(a.Ua=!1);cl(a)}
0<b&&(a.Fc=b>>1,a.mc-=b),0<c&&(a.Gc=c>>1,a.tc-=c),b||c)&&(a.da.fillStyle=a.ua.style.backgroundColor,a.da.fillRect(0,0,a.oa,a.va));bl(a,!0);kc(a)}return!0}function Wk(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function cl(a){a.Ia=-1;a.xa=!1;var b=a.ld;if(void 0===a.W||a.W.length!=b)a.W=Array(b)}function bl(a,b){b||(a.Ua=!1);cl(a)}
function Zk(a,b,c,d,e){var k=d&255,l=d>>8;d=l&15;var p=a.Fa[a.K];p.Ee&&(d=p.Ee[d]);var q=l>>4&15;p.Ee&&(q=p.Ee[q]);e?(b*=p.qc,c*=p.rc,e.fillStyle=p.ae[q],e.fillRect(b,c,p.qc,p.rc)):(b=b*a.ya+a.Fc,c=c*a.Ca+a.Gc,a.da.fillStyle=p.ae[q],a.da.fillRect(b,c,a.ya,a.Ca));l&256&&(q=(k&15)*p.qc,k=(k>>4)*p.rc,e?e.drawImage(p.cg[d],q,k,p.qc,p.rc,b,c,p.qc,p.rc):a.da.drawImage(p.cg[d],q,k,p.qc,p.rc,b,c,a.ya,a.Ca));l&512&&(k=a.rd,l=a.Zc,e?(a.Ja&&a.Ja!==p.rc&&(k=k*p.rc/a.Ja|0,l=l*p.rc/a.Ja|0),e.fillStyle=p.ae[d],
e.fillRect(b,c+k,p.qc,l)):(a.Ja&&a.Ja!==a.Ca&&(k=k*a.Ca/a.Ja|0,l=l*a.Ca/a.Ja|0),a.da.fillStyle=p.ae[d],a.da.fillRect(b,c+k,a.ya,l)))}
function kc(a,b){if(a.ja.Pb){var c=!1,d=a.F;d&&(d!==a.B?d.Jc&8&&(c=!0):d.Td&32&&(c=!0));if(c||b){if(b)cl(a);else if(void 0===a.W)return;var e=!1;!(b||++a.Ed&15)&&0<=a.La&&(a.La++,e=!0);var k=0,l=a.nd,p=a.hb,c=p,q=c+a.Gb;19<=a.Da&&(p=c=655360,q=c+65536);if(dl(a,d)&8||d.we&&d.we<d.ih)d.af=(d.ib[12]<<8)+d.ib[13]|0,d.we=0;var w=d.af;a.K&&(w<<=1);c+=w;w=a.fb;5<=a.mb&&d.ib[19]&&d.ib[19]<<1!=d.ib[1]+1&&(a.ab=d.ib[19]<<(a.K?1:d.ib[20]&64?3:4),w=(a.ab*(a.R-1)+a.H)/a.Ob|0,a.Da<=jk&&(w<<=1));c+w>q&&(w=q-c,0>
@ -928,26 +928,26 @@ var Dk={948:Z.prototype.xk,949:Z.prototype.wk,952:Z.prototype.yk,954:Z.prototype
961:Z.prototype.ej,962:Z.prototype.Jl,964:Z.prototype.Rl,965:Z.prototype.Ql,970:Z.prototype.Cl,972:Z.prototype.Bl,974:Z.prototype.Al,975:Z.prototype.zl,986:Z.prototype.fj},Jk={963:Z.prototype.Kk,966:Z.prototype.jk,967:Z.prototype.kk,969:Z.prototype.ik,970:Z.prototype.Lk,972:Z.prototype.Mk},Kk={963:Z.prototype.Tl,966:Z.prototype.rl,967:Z.prototype.sl,968:Z.prototype.tl,969:Z.prototype.ql};
Ea(function(){for(var a=Wa(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),e=window.document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(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.onresize());c.appendChild(e);var k=window.document.createElement("textarea");xa("iOS")&&(k.setAttribute("autocapitalize","off"),k.setAttribute("autocorrect","off"));c.appendChild(k);var l=e.getContext("2d"),d=new Z(d,e,l,k,c);Va(d,c)}});
function hl(a){this.pa=a.adapter;switch(this.pa){case 1:this.ta=1016;this.Z=4;break;case 2:this.ta=760;this.Z=3;break;default:ra("Unrecognized serial adapter #"+this.pa);return}this.H=this.K=null;this.sa=a.tabSize;this.S=0;Ia.call(this,"SerialPort",a,hl);var b=a.binding;if("console"==b)this.K="";else{var c;a=il;b&&(void 0===c&&(c="Panel"),(c=Ta(c,this.id))&&(b=c.qa[b])&&this.Fb(null,a,b))}}Qa(hl);var il="buffer";f=hl.prototype;f.Hh=function(a,b){return a==this.lf?(this.N=b,this):null};
f.Fb=function(a,b,c){var d=this;switch(b){case il:return this.qa[b]=this.H=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),jl(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;jl(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet");Jb(b,this,kl,this.ta);Lb(b,this,ll,this.ta);Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};f.reset=function(){ml(this)};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.ha;c[b++]=this.oa;c[b++]=this.R;c[b++]=this.da;c[b++]=this.F;c[b++]=this.J;c[b++]=this.D;c[b++]=this.B;c[b++]=this.la;c[b]=this.W;D(a,0,c);return a.data()};
f.restore=function(a){return ml(this,a[0])};function ml(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ha=b[c++];a.oa=b[c++];a.R=b[c++];a.da=b[c++];a.F=b[c++];a.J=b[c++];a.D=b[c++];a.B=b[c++];a.la=b[c++];a.W=b[c];return!0}function jl(a,b){a.W=a.W.concat(b);nl(a)}function nl(a){0<a.W.length&&!(a.B&1)&&(a.ha=a.W.shift(),a.B|=1);var b=-1;a.B&1&&a.da&1&&(b=4);0<=b?(a.F&=-8,a.F|=b,a.T&&a.Z&&Ie(a.T,a.Z,100)):(a.F|=1,a.T&&a.Z&&He(a.T,a.Z))}
f.Gk=function(){var a=this.J&128?this.R&255:this.ha;this.B&=-2;nl(this);return a};f.rk=function(){return this.J&128?this.R>>8:this.da};f.sk=function(){return this.F};f.tk=function(){return this.J};f.vk=function(){return this.D};f.uk=function(){return this.B};f.Ak=function(){return this.la};
f.Sl=function(a,b){if(this.J&128)this.R=this.R&-256|b;else{this.oa=b;this.B&=-97;var c;if(this.H){if(13==b)this.S=0;else if(8==b)this.H.value=this.H.value.slice(0,-1),0<this.S&&this.S--;else{c=String.fromCharCode(b);var d=32<=b?1:0;9==b&&(d=this.sa||8,d=d-this.S%d,this.sa&&(c=" ".slice(0,d)));this.H.value+=c;this.H.scrollTop=this.H.scrollHeight;this.S+=d}c=!0}else if(null!=this.K){if(10==b||1024<=this.K.length)this.ic(this.K),this.K="";10!=b&&(this.K+=String.fromCharCode(b));
c=!0}else c=!1;c&&(this.B|=96)}};f.Dl=function(a,b){this.J&128?this.R=this.R&255|b<<8:this.da=b};f.El=function(a,b){this.J=b};f.Fl=function(a,b){var c=this.D;this.D=b;if(this.N&&(c^b)&3){var c=this.N,d=this.D,e=3==(d&3);if(e){if(!c.Xb){var k=!1;c.D&2||(c.reset(),k=!0);c.D&1||(k=!0);k&&jl(c.H,[77,77]);ol(c);c.Xb=e}}else c.Xb&&(pl(c),c.Xb=e);c.D=d}};
function hl(a){this.sa=a.adapter;switch(this.sa){case 1:this.ua=1016;this.Z=4;break;case 2:this.ua=760;this.Z=3;break;default:ra("Unrecognized serial adapter #"+this.sa);return}this.H=this.K=null;this.ta=a.tabSize;this.pa=a.charBOL;this.R=0;Ia.call(this,"SerialPort",a,hl);var b=a.binding;if("console"==b)this.K="";else{var c;a=il;b&&(void 0===c&&(c="Panel"),(c=Ta(c,this.id))&&(b=c.qa[b])&&this.Fb(null,a,b))}}Qa(hl);var il="buffer";f=hl.prototype;
f.Hh=function(a,b){return a==this.lf?(this.N=b,this):null};f.Fb=function(a,b,c){var d=this;switch(b){case il:return this.qa[b]=this.H=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),jl(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;jl(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet");Jb(b,this,kl,this.ua);Lb(b,this,ll,this.ua);Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};f.reset=function(){ml(this)};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.ha;c[b++]=this.oa;c[b++]=this.S;c[b++]=this.da;c[b++]=this.F;c[b++]=this.J;c[b++]=this.D;c[b++]=this.B;c[b++]=this.la;c[b]=this.W;D(a,0,c);return a.data()};
f.restore=function(a){return ml(this,a[0])};function ml(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ha=b[c++];a.oa=b[c++];a.S=b[c++];a.da=b[c++];a.F=b[c++];a.J=b[c++];a.D=b[c++];a.B=b[c++];a.la=b[c++];a.W=b[c];return!0}function jl(a,b){a.W=a.W.concat(b);nl(a)}function nl(a){0<a.W.length&&!(a.B&1)&&(a.ha=a.W.shift(),a.B|=1);var b=-1;a.B&1&&a.da&1&&(b=4);0<=b?(a.F&=-8,a.F|=b,a.T&&a.Z&&Ie(a.T,a.Z,100)):(a.F|=1,a.T&&a.Z&&He(a.T,a.Z))}
f.Gk=function(){var a=this.J&128?this.S&255:this.ha;this.B&=-2;nl(this);return a};f.rk=function(){return this.J&128?this.S>>8:this.da};f.sk=function(){return this.F};f.tk=function(){return this.J};f.vk=function(){return this.D};f.uk=function(){return this.B};f.Ak=function(){return this.la};
f.Sl=function(a,b){if(this.J&128)this.S=this.S&-256|b;else{this.oa=b;this.B&=-97;var c;if(this.H){if(13==b)this.R=0;else if(8==b)this.H.value=this.H.value.slice(0,-1),0<this.R&&this.R--;else{c=String.fromCharCode(b);var d=32<=b?1:0;9==b&&(d=this.ta||8,d=d-this.R%d,this.ta&&(c=" ".slice(0,d)));this.pa&&!this.R&&d&&(c=String.fromCharCode(this.pa)+c);this.H.value+=c;this.H.scrollTop=this.H.scrollHeight;this.R+=d}c=!0}else if(null!=this.K){if(10==b||1024<=this.K.length)this.ic(this.K),
this.K="";10!=b&&(this.K+=String.fromCharCode(b));c=!0}else c=!1;c&&(this.B|=96)}};f.Dl=function(a,b){this.J&128?this.S=this.S&255|b<<8:this.da=b};f.El=function(a,b){this.J=b};f.Fl=function(a,b){var c=this.D;this.D=b;if(this.N&&(c^b)&3){var c=this.N,d=this.D,e=3==(d&3);if(e){if(!c.Xb){var k=!1;c.D&2||(c.reset(),k=!0);c.D&1||(k=!0);k&&jl(c.H,[77,77]);ol(c);c.Xb=e}}else c.Xb&&(pl(c),c.Xb=e);c.D=d}};
var kl={0:hl.prototype.Gk,1:hl.prototype.rk,2:hl.prototype.sk,3:hl.prototype.tk,4:hl.prototype.vk,5:hl.prototype.uk,6:hl.prototype.Ak},ll={0:hl.prototype.Sl,1:hl.prototype.Dl,3:hl.prototype.El,4:hl.prototype.Fl};Ea(function(){for(var a=Wa(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new hl(d);Va(d,c)}});function ql(a){Ia.call(this,"Mouse",a,ql);if(this.da=a.serial)this.ha="SerialPort";this.Z=this.W=this.Xb=!1;this.F=[];this.B=[];Ya(this)}Qa(ql);var Nk=0;f=ql.prototype;
f.yc=function(a,b,c,d){this.ta=a;this.na=b;this.A=c;this.Ta=d;for(b=null;b=hb(a,"Video",b);)this.F.push(b)};f.ac=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ha&&!this.H){for(var c=null;(c=hb(this.ta,this.ha,c))&&(!c.Hh||!(this.H=c.Hh(this.da,this))););if(this.H)for(this.B=[],c=0;c<this.F.length;c++){var d;d=this.F[c];d.N=this;(d=d.J)&&this.B.push(d)}else ra(this.id+": "+this.ha+" "+this.da+" unavailable")}this.Xb?ol(this):pl(this)}return!0};
f.yc=function(a,b,c,d){this.ua=a;this.na=b;this.A=c;this.Ta=d;for(b=null;b=hb(a,"Video",b);)this.F.push(b)};f.ac=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ha&&!this.H){for(var c=null;(c=hb(this.ua,this.ha,c))&&(!c.Hh||!(this.H=c.Hh(this.da,this))););if(this.H)for(this.B=[],c=0;c<this.F.length;c++){var d;d=this.F[c];d.N=this;(d=d.J)&&this.B.push(d)}else ra(this.id+": "+this.ha+" "+this.da+" unavailable")}this.Xb?ol(this):pl(this)}return!0};
f.$b=function(a){return a?this.save():!0};f.reset=function(){rl(this)};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.Xb;c[b++]=this.J;c[b++]=this.K;c[b++]=this.N;c[b++]=this.T;c[b++]=this.R;c[b++]=this.S;c[b]=this.D;D(a,0,c);return a.data()};f.restore=function(a){return rl(this,a[0])};function rl(a,b){var c=0;void 0===b&&(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.Xb=d;a.J=b[c++];a.K=b[c++];a.N=b[c++];a.T=b[c++];a.R=b[c++];a.S=b[c++];a.D=b[c];return!0}f.Ze=function(a){this.W=a};
function ol(a){if(!a.Z)for(var b=0;b<a.B.length;b++)sl(a,a.B[b])&&(a.Z=!0)}function pl(a){if(a.Z)for(var b=0;b<a.B.length;b++){var c=a.B[b];c&&(c.style.cursor="auto")}}function sl(a,b){return b?(b.addEventListener("mousemove",function(b){tl(a,b)},!1),b.addEventListener("mousedown",function(b){tl(a,b,!0)},!1),b.addEventListener("mouseup",function(b){tl(a,b,!1)},!1),b.style.cursor="none",!0):!1}
function tl(a,b,c){if(void 0!==c){var d;!(d=!1!==a.W)&&(d=a.F.length)&&(d=a.F[0],d=d.Xd?d.Md(!0):!1);d||(a.W=null);a.ie(b.button,c)}else{if(0>a.J||0>a.K)a.J=b.clientX,a.K=b.clientY;a.W?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.J,d=b.clientY-a.K);a.J=b.clientX;a.K=b.clientY;a.pg(c,d,a.J,a.K)}}
f.ie=function(a,b){if(this.Xb&&this.A&&this.A.ja.Qb)switch(a){case Nk:this.R!=b&&(this.R=b,ul(this));break;case 2:this.S!=b&&(this.S=b,ul(this))}};f.pg=function(a,b){this.Xb&&this.A&&this.A.ja.Qb&&(a||b)&&(this.N=a,this.T=b,ul(this))};function ul(a){jl(a.H,[64|(a.R?32:0)|(a.S?16:0)|(a.T&192)>>4|(a.N&192)>>6,a.N&63,a.T&63]);a.N=a.T=0}Ea(function(){for(var a=Wa(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new ql(d);Va(d,c)}});
function vl(a,b,c){Ia.call(this,"Disk",{id:a.rh+".disk"+da(++wl,4)},vl);this.controller=a;this.ta=a.ta;this.Ta=a.Ta;this.D=b;this.B=b.name;this.ne=b.ne;this.Cf=this.F=!1;xl(this,c,b.sb,b.tb,b.xb,b.qb);this.K=[];this.R=[];this.H=null;this.W=0;this.S=!1;Ya(this)}var wl=0;Qa(vl);f=vl.prototype;f.yc=function(a,b,c,d){this.Ta=d};f.ac=function(a,b){b||!this.Cf||this.F||(Ya(this,!1),this.load(this.B,this.J,null,this.Kj,this));return!0};f.Kj=function(){Ya(this,!0)};
function vl(a,b,c){Ia.call(this,"Disk",{id:a.rh+".disk"+da(++wl,4)},vl);this.controller=a;this.ua=a.ua;this.Ta=a.Ta;this.D=b;this.B=b.name;this.ne=b.ne;this.Cf=this.F=!1;xl(this,c,b.sb,b.tb,b.xb,b.qb);this.K=[];this.R=[];this.H=null;this.W=0;this.S=!1;Ya(this)}var wl=0;Qa(vl);f=vl.prototype;f.yc=function(a,b,c,d){this.Ta=d};f.ac=function(a,b){b||!this.Cf||this.F||(Ya(this,!1),this.load(this.B,this.J,null,this.Kj,this));return!0};f.Kj=function(){Ya(this,!0)};
f.$b=function(a,b){if(this.F){var c,d=0;if(this.S&&!sa("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=yl(this,!1);)if(d=c[0]){this.controller.Ka('Unable to save "'+this.B+'" (error '+d+")");break}b&&this.F&&(c="action=close&volume="+this.J,c+="&machine="+this.controller.re(),c+="&user="+this.controller.yd(),pa(qa()+"/api/v1/disk?"+c,!0),this.F=!1);!d&&a&&this.controller.Ka(this.B+" saved")}return!0};
function xl(a,b,c,d,e,k){a.mode=b;a.sb=c;a.tb=d;a.xb=e;a.qb=k;a.A=[];if("preload"!=a.mode){b=Array(a.sb);for(c=0;c<b.length;c++){d=Array(a.tb);for(e=0;e<d.length;e++){k=Array(a.xb);for(var l=1;l<=k.length;l++)k[l-1]=zl(null,c,e,l,a.qb,"local"==a.mode?0:null);d[e]=k}b[c]=d}a.A=b}a.T=null}
f.load=function(a,b,c,d,e){var k=b;if(!this.N)if(this.B=a,this.J=b,this.na=ea(b),this.N=d,this.Z=e||this.controller,c){var l=this,p=new FileReader;p.onload=function(){var a=p.result,b,c=a?a.byteLength:0,d=ba[c];if(d){l.sb=d[0];l.tb=d[1];l.xb=d[2];l.qb=512;b=l.qb>>2;var e=d=0,a=new DataView(a,0,c);l.A=Array(l.sb);for(c=0;c<l.A.length;c++)for(var k=l.A[c]=Array(l.tb),V=0;V<k.length;V++)for(var X=k[V]=Array(l.xb),ja=0;ja<X.length;ja++){for(var ka=zl(null,c,V,ja+1,l.qb,0),za=ka.data,Aa=0;Aa<b;Aa++,e+=
4)var nd=za[Aa]=a.getInt32(e,!0),d=d+nd&-1;ka.Cc=b;X[ja]=ka}l.T=d;b=l}else l.Ka("Unrecognized diskette format ("+c+" bytes)");l.N&&(l.N.call(l.controller,l.D,b,l.B,l.J),l.N=null)};p.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a||"gz"==a?k=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(k=Al(this,b),this.Cf=!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"),k=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.ne?"":d)+"&format=json")),pa(k,!0,null,this,this.rj)};
f.rj=function(a,b,c){var d=null;this.qe=!1;var e=0>c&&this.ta&&!this.ta.ja.Pb;if(this.Cf)c?this.controller.Ka('Unable to connect to disk "'+this.J+'" (error '+c+": "+b+")",e):(this.F=!0,d=this);else if(c)this.controller.Ka('Unable to load disk "'+this.B+'" (error '+c+": "+a+")",e);else try{if(0<ea(this.na,!0).toLowerCase().indexOf("-readonly"))this.qe=!0;else{var k=b.indexOf("\n");0<k&&1024>k&&0<b.substring(0,k).indexOf("write-protected")&&(this.qe=!0)}var l;"<"==b.substr(0,1)?l=["Missing disk image: "+
f.rj=function(a,b,c){var d=null;this.qe=!1;var e=0>c&&this.ua&&!this.ua.ja.Pb;if(this.Cf)c?this.controller.Ka('Unable to connect to disk "'+this.J+'" (error '+c+": "+b+")",e):(this.F=!0,d=this);else if(c)this.controller.Ka('Unable to load disk "'+this.B+'" (error '+c+": "+a+")",e);else try{if(0<ea(this.na,!0).toLowerCase().indexOf("-readonly"))this.qe=!0;else{var k=b.indexOf("\n");0<k&&1024>k&&0<b.substring(0,k).indexOf("write-protected")&&(this.qe=!0)}var l;"<"==b.substr(0,1)?l=["Missing disk image: "+
this.B]:l=0>b.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(l.length)if(1==l.length)ra(l[0]);else{this.sb=l.length;this.tb=l[0].length;this.xb=l[0][0].length;var p=l[0][0][0];this.qb=p&&p.length||512;for(c=b=0;c<this.sb;c++)for(e=0;e<this.tb;e++)for(k=0;k<this.xb;k++)if(p=l[c][e][k]){var q=p.length;void 0===q&&(q=p.length=512);var q=q>>2,w=p.pattern;void 0===w&&(w=p.pattern=0);var B=p.data;if(void 0===B){var G=p.bytes;
if(void 0!==G&&G.length){for(var C=q<<2,J=G.length;J<C;J++)G[J]=w;Bl(p,G,0)}else B=[],w=p.pattern=w|w<<8|w<<16|w<<24,p.data=B;delete p.bytes}zl(p,c,e);for(C=0;C<B.length;C++)b=b+B[C]&-1}this.A=l;this.T=b;d=this}else ra("Empty disk image: "+this.B)}catch(V){ra("Disk image error ("+a+"): "+V.message)}this.N&&(this.N.call(this.Z,this.D,d,this.B,this.J),this.N=null)};function zl(a,b,c,d,e,k){a||(a={sector:d,length:e,data:[],pattern:k});a.Pj=b;a.Qj=c;a.Sc=a.Cc=0;a.Oa=!1;return a}
function Al(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.sb+":"+a.tb+":"+a.xb+":"+a.qb;c+="&machine="+a.controller.re();c+="&user="+a.controller.yd();return qa()+"/api/v1/disk?"+c}function Cl(a,b,c,d,e,k,l){if(a.F){var p;p="action=read&volume="+a.J;p+="&chs="+a.sb+":"+a.tb+":"+a.xb+":"+a.qb;p=p+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.re());p+="&user="+a.controller.yd();pa(qa()+"/api/v1/disk?"+p,k,null,a,a.Lj,[b,c,d,e,k,l])}else l&&l(-1,!1)}
@ -965,8 +965,8 @@ f.toJSON=function(){var a=JSON.stringify(this.A,function(a,c){return"file"==a?vo
function Gl(a){Ia.call(this,"FDC",a,Gl);this.dmaRead=this.sj;this.dmaWrite=this.tj;this.dmaFormat=this.Gj;this.N=a.autoMount||null;this.D=[];this.da=!xa("Mobi")&&window&&"FileReader"in window}Qa(Gl);aa={};var Hl={3:{dd:3,wd:0,name:aa.Cm},4:{dd:2,wd:1,name:aa.Am},5:{dd:9,wd:7,name:aa.Km},6:{dd:9,wd:7,name:aa.vm},7:{dd:2,wd:0,name:aa.xm},8:{dd:1,wd:2,name:aa.Bm},10:{dd:2,wd:7,name:aa.wm},13:{dd:6,wd:7,name:aa.im},15:{dd:3,wd:0,name:aa.zm}};f=Gl.prototype;
f.Fb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.qa[b]=c,c.onchange=function(){var a=d.qa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var l={};if(b=b.getAttribute("data-value"))try{l=eval("("+b+")")}catch(p){ra("FDC option error: "+p.message)}b=l.desc;void 0===b&&(b="");l=l.href;void 0!==l&&(b='<a href="'+l+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.qa[b]=c,c.onchange=function(){var a=ca(c.value,10);null!=a&&Il(d,a)},!0;
case "loadDrive":return this.qa[b]=c,c.onclick=function(){var a=d.qa.listDisks;a&&Jl(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.da?(this.qa[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Jl(d,ea(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ta=a;this.T=hb(a,"ChipSet");if((this.N=Kl(this.ta,"autoMount")||this.N)&&"string"==typeof this.N)try{this.N=eval("("+this.N+")")}catch(e){ra("FDC auto-mount error: "+e.message+" ("+this.N+")"),this.N=null}Ll(this);Jb(b,this,Ml);Lb(b,this,Nl);this.da&&Ol(this,"Local Disk","?");Ol(this,"Remote Disk","??");Pl(this)||Ya(this)};
f.ac=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.ta.lg){this.D=[];for(var c=0;c<this.B.length;c++)Ql(this,c,!0);Pl(this,!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.Z;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Z&&(c.value="0",Il(this,0))}}return!0};f.$b=function(a){return a?this.save():!0};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ua=a;this.T=hb(a,"ChipSet");if((this.N=Kl(this.ua,"autoMount")||this.N)&&"string"==typeof this.N)try{this.N=eval("("+this.N+")")}catch(e){ra("FDC auto-mount error: "+e.message+" ("+this.N+")"),this.N=null}Ll(this);Jb(b,this,Ml);Lb(b,this,Nl);this.da&&Ol(this,"Local Disk","?");Ol(this,"Remote Disk","??");Pl(this)||Ya(this)};
f.ac=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.ua.lg){this.D=[];for(var c=0;c<this.B.length;c++)Ql(this,c,!0);Pl(this,!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.Z;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Z&&(c.value="0",Il(this,0))}}return!0};f.$b=function(a){return a?this.save():!0};
f.reset=function(){Ll(this)};
f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.Wa;c[b++]=0;c[b++]=this.ga;c[b++]=this.K;c[b++]=this.H;c[b++]=this.F;c[b++]=this.W;for(var d=b++,e=0,k=[],l=0;l<this.B.length;l++){var p=e++,q=this.B[l],w=0,B=[];B[w++]=q.nb;B[w++]=[q.name,q.sb,q.tb,q.xb,q.qb,q.ne,q.Jf,q.Re,q.Se];B[w++]=q.bb;B[w++]=q.ud+100;B[w++]=q.Bb;B[w++]=q.pb;B[w++]=q.vd;B[w++]=q.zb;B[w++]=q.Xa;B[w++]=q.le;B[w++]=q.ij;B[w]=q.Ud;k[p]=B}c[d]=k;d=b++;for(e=0;e<this.B.length;e++)k=this.B[e],k.Aa&&Rl(this,k.Ud,k.Aa);c[d]=this.D;
c[b++]=this.R;c[b]=this.J;D(a,0,c);return a.data()};f.restore=function(a){return Ll(this,a[0])};
@ -987,15 +987,15 @@ k-e.ud,0>e.Bb&&(e.Bb=0),e.Bb>=e.sb&&(e.Bb=e.sb-1),e.ud=k,e.nb=32,e.Bb||(e.nb|=26
function Ul(a){var b=a.K[a.H];a.H++;return b}function Vl(a){a.H=a.F=0}function Wl(a,b){a.K[a.F++]=b}f.sj=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.nb&&a.Aa){do{if(a.Za&&(e=a.Xa,0<=(b=a.Aa.read(a.Za,a.Xa++)))){d=a.Za;break}a.Za=a.Aa.seek(a.Bb,a.bb,a.pb);if(!a.Za){a.nb=1088;break}a.Xa=0;Yl(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};f.tj=function(a,b){return void 0!==b&&0<=b?Zl(a,b):-1};
f.Gj=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.nb)c=-1;else{a.Lc[a.he++]=c;if(a.he==a.Lc.length){a.Bb=a.Lc[0];a.bb=a.Lc[1];a.pb=a.Lc[2];a.zb=128<<a.Lc[3];for(var d=a.he=0;d<a.zb;d++)if(0>Zl(a,a.Ih)){c=-1;break a}a.xf++}a.xf>=a.vd&&(c=-1)}else c=-1;return c};function Zl(a,b){if(a.nb||!a.Aa)return-1;do{if(a.Za&&a.Aa.write(a.Za,a.Xa++,b))break;a.Za=a.Aa.seek(a.Bb,a.bb,a.pb);if(!a.Za){a.nb=8256;b=-1;break}a.Xa=0;Yl(a)}while(1);return b}
function Yl(a){a.pb++;a.pb>=a.Se+1&&(a.pb=1,a.bb++,a.bb>=a.Re&&(a.bb=0,a.Bb++))}var Ml={1012:Gl.prototype.nk,1013:Gl.prototype.lk,1015:Gl.prototype.mk},Nl={1010:Gl.prototype.wl,1013:Gl.prototype.vl,1015:Gl.prototype.ul};Ea(function(){for(var a=Wa(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new Gl(d);Va(d,c)}});
function $l(a){Ia.call(this,"HDC",a,$l);this.dmaRead=this.uj;this.dmaWrite=this.vj;this.dmaWriteBuffer=this.Hj;this.dmaWriteFormat=this.Ij;this.ua=[];if(a.drives)try{this.ua=eval("("+a.drives+")")}catch(b){ra("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Z="at"==a.type}Qa($l);
function $l(a){Ia.call(this,"HDC",a,$l);this.dmaRead=this.uj;this.dmaWrite=this.vj;this.dmaWriteBuffer=this.Hj;this.dmaWriteFormat=this.Ij;this.ta=[];if(a.drives)try{this.ta=eval("("+a.drives+")")}catch(b){ra("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Z="at"==a.type}Qa($l);
var am=["XTC","ATC","COMPAQ"],bm=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];f=$l.prototype;f.Fb=function(){return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ta=a;this.T=hb(a,"ChipSet");this.J=0;this.xa=3;Jb(b,this,this.Z?cm:dm);Lb(b,this,this.Z?em:fm);this.Z&&(this.J++,this.T&&5180==this.T.ia&&this.J++,this.xa=2,b.R[496]=2,b.S[496]=2);Md(c,19,this.Rk.bind(this));Md(c,64,this.Sk.bind(this));this.reset();gm(this)||Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)hm(this),this.ta.lg&&gm(this,!0);else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.re=function(){return this.ta?this.ta.re():""};f.yd=function(){return this.ta?this.ta.yd():""};f.reset=function(){hm(this,null,!0)};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ua=a;this.T=hb(a,"ChipSet");this.J=0;this.xa=3;Jb(b,this,this.Z?cm:dm);Lb(b,this,this.Z?em:fm);this.Z&&(this.J++,this.T&&5180==this.T.ia&&this.J++,this.xa=2,b.R[496]=2,b.S[496]=2);Md(c,19,this.Rk.bind(this));Md(c,64,this.Sk.bind(this));this.reset();gm(this)||Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)hm(this),this.ua.lg&&gm(this,!0);else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.re=function(){return this.ua?this.ua.re():""};f.yd=function(){return this.ua?this.ua.yd():""};f.reset=function(){hm(this,null,!0)};
f.save=function(){var a=new Qd(this),b=0,c=[];this.Z?(c[b++]=this.N,c[b++]=this.Fa,c[b++]=this.R,c[b++]=this.sa,c[b++]=this.pa,c[b++]=this.oa,c[b++]=this.ha,c[b++]=this.ga,c[b++]=this.va,c[b++]=[this.W,this.Wa]):(c[b++]=this.la,c[b++]=this.ga,c[b++]=this.K,c[b++]=this.H,c[b++]=this.F,c[b++]=this.Da,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.da);for(var d=0,e=[],k=0;k<this.B.length;k++){var l=d++,p=this.B[k],q=0,w=[];w[q++]=p.errorCode;w[q++]=p.jj;w[q++]=p.ne;w[q++]=p.ce;w[q++]=p.de;w[q++]=p.bb;w[q++]=
p.tb;w[q++]=p.Fd;w[q++]=p.pb;w[q++]=p.vd;w[q++]=p.zb;w[q++]=p.Xa;w[q]=p.Aa?p.Aa.save():null;e[l]=w}c[b]=e;D(a,0,c);return a.data()};f.restore=function(a){return hm(this,a[0])};
function hm(a,b,c){var d=0,e=!0;a.Wa=-1;if(a.Z){if(null==b&&(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.N=b[d++],a.Fa=b[d++],a.R=b[d++],a.sa=b[d++],a.pa=b[d++],a.oa=b[d++],a.ha=b[d++],a.ga=b[d++],a.va=b[d++],a.W=b[d++],"object"==typeof a.W){var k=a.W;a.W=k[0];a.Wa=k[1]}}else null==b&&(b=[0,0,Array(14),0,0]),a.la=b[d++],a.ga=b[d++],a.K=b[d++],a.H=b[d++],a.F=b[d++],a.Da=b[d++],a.Ca=b[d++],a.ya=b[d++],k=b[d++],void 0!==k?a.da=k:void 0===a.da&&(a.da=-1);void 0===a.B&&(a.B=Array(a.ua.length));b=b[d];void 0===b&&
(b=[]);for(d=0;d<a.B.length;d++){void 0===a.B[d]&&(a.B[d]={});var k=a.B[d],l=a,p=d,q=k,w=a.ua[d],B=b[d],G=c,C=0,J=!0;void 0===B&&(B=[0,0,!1,Array(8)]);q.Wa=p;q.errorCode=B[C++];q.jj=B[C++];q.ne=B[C++];q.ce=B[C++];q.de=B[C++];q.bb=B[C++];q.tb=B[C++];q.Fd=B[C++];q.pb=B[C++];q.vd=B[C++];q.zb=B[C++];q.wf=l.Z?0:1;q.name=w.name;void 0===q.name&&(q.name="Hard Drive");q.path=w.path;q.mode=w.mode||(q.path?"preload":"local");"demandro"!=q.mode&&"demandrw"!=q.mode||l.yd()||(q.mode="local");q.type=w.type;if(void 0===
function hm(a,b,c){var d=0,e=!0;a.Wa=-1;if(a.Z){if(null==b&&(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.N=b[d++],a.Fa=b[d++],a.R=b[d++],a.sa=b[d++],a.pa=b[d++],a.oa=b[d++],a.ha=b[d++],a.ga=b[d++],a.va=b[d++],a.W=b[d++],"object"==typeof a.W){var k=a.W;a.W=k[0];a.Wa=k[1]}}else null==b&&(b=[0,0,Array(14),0,0]),a.la=b[d++],a.ga=b[d++],a.K=b[d++],a.H=b[d++],a.F=b[d++],a.Da=b[d++],a.Ca=b[d++],a.ya=b[d++],k=b[d++],void 0!==k?a.da=k:void 0===a.da&&(a.da=-1);void 0===a.B&&(a.B=Array(a.ta.length));b=b[d];void 0===b&&
(b=[]);for(d=0;d<a.B.length;d++){void 0===a.B[d]&&(a.B[d]={});var k=a.B[d],l=a,p=d,q=k,w=a.ta[d],B=b[d],G=c,C=0,J=!0;void 0===B&&(B=[0,0,!1,Array(8)]);q.Wa=p;q.errorCode=B[C++];q.jj=B[C++];q.ne=B[C++];q.ce=B[C++];q.de=B[C++];q.bb=B[C++];q.tb=B[C++];q.Fd=B[C++];q.pb=B[C++];q.vd=B[C++];q.zb=B[C++];q.wf=l.Z?0:1;q.name=w.name;void 0===q.name&&(q.name="Hard Drive");q.path=w.path;q.mode=w.mode||(q.path?"preload":"local");"demandro"!=q.mode&&"demandrw"!=q.mode||l.yd()||(q.mode="local");q.type=w.type;if(void 0===
q.type||void 0===bm[l.J][q.type])q.type=l.xa;w=bm[l.J][q.type];q.xb=w[2]||17;q.qb=w[3]||512;if(G&&l.T){var V=l.T,X=q.type;if(V.B){var G=null,w=void 0,ja=V.B[18];15<X&&(G=X,X=15);p?(ja=ja&240|X,w=26):(ja=ja&15|X<<4,w=25);X=V;X.B&&(X.B[18]=ja,Hi(X));null!=G&&V.B&&(V.B[w]=G,Hi(V))}}void 0===q.Aa&&(q.Aa=null,l.Ka("Type "+q.type+' "'+q.name+'" is fixed disk '+p,!0));im(l,q);q.Xa=B[C++];q.Za=null;q.Aa&&(l=B[C],void 0!==l&&0>q.Aa.restore(l)&&(J=!1),J&&void 0!==q.Xa&&(q.Za=q.Aa.seek(q.Fd,q.bb,q.pb+q.wf)));
J||(e=!1);null!=a.la&&1>=d&&(a.la|=(k.type&3)<<(1-d<<1))}0<=a.Wa&&(a.D=a.B[a.Wa]);return e}function im(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ce[2])?e=b.ce[0]<<8|b.ce[1]:c=b.type);null==c||d||(d=bm[a.J][c][1],e=bm[a.J][c][0]);d&&((c=bm[a.J][b.type])&&e!=c[0]&&d!=c[1]&&a.Ka("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.sb=e,b.tb=d,null==b.Aa&&(b.Aa=new vl(a,b,b.mode)))}}
function gm(a,b){b||(a.S=0);for(var c=0;c<a.B.length;c++){var d=a.B[c];if(d.name&&d.path){if(!(b&&d.Aa&&d.Aa.Cf)){var e;e=a;var k=d.name,d=d.path,l=e.B[c];l.Nc?(e.Ka("Drive "+c+" busy"),e=!0):(l.Nc=!0,l.Kd=!0,e.S++,(l.Aa||new vl(e,l,l.mode)).load(k,d,null,e.Jj),e=!1);!e&&b&&Ya(a,!1)}}else b&&void 0!==d.type&&(d.Aa=null,im(a,d,d.type))}return!!a.S}

View file

@ -7240,8 +7240,14 @@ if (DEBUGGER) {
this.dbgAddrNextCode = this.newAddr(this.cpu.getIP(), this.cpu.getCS());
break;
/*
* I used to alias "PC" to "IP", until I discovered that early (perhaps ALL) versions of
* DEBUG.COM treat "PC" as an alias for the 16-bit flags register. I, of course, prefer "PS".
* I used to alias "PC" (Program Counter) to "IP" (Instruction Pointer), because in PC-DOS 1.00
* through 2.10, DEBUG.COM did the same thing. Then I discovered that, starting with PC-DOS 3.00,
* DEBUG.COM changed "PC" to refer to the 16-bit flags register (Program or Processor Control?)
* I've elected to go for PC-DOS 3.00+ compatibility, since that will be more widely known.
*
* PCjs prefers "PS" (Processor Status) for accessing the FLAGS register in its 16-bit (or 32-bit)
* entirety. Individual flag bits can also be accessed as 1-bit registers, using the names shown
* below ("C", "P", "A", "Z", etc.)
*/
case "PC":
case "PS":

View file

@ -6,11 +6,11 @@ function ha(a){if(fa)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){v("An unexpe
function A(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.rb=this.id.substr(0,b),this.qb=this.id.substr(b+1)):this.qb=this.id;this[a]=c;this.C={Za:!1,Ba:!1,jb:!1,M:!1,Ca:!1};this.cb=null;this.C.Ca=!1;this.H={};this.u=null;this.la=d||0;B[B.length]=this}var ja=void 0;
if(window){ja||(ja=window.location.search.substr(1));for(var ka,la=/\+/g,ma=/([^&=]+)=?([^&]*)/g;ka=ma.exec(ja);)ka[1].replace(la," "),ka[2].replace(la," ")}function na(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function C(a){var b;b||(b=A);a.prototype=na(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}var B=[];
function oa(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<B.length;c++)if(B[c].id===a)return B[c]}return null}function D(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){v(c.message+" ("+a+")")}return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
function E(a,b){for(var c=F(b.parentNode,"c1pjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,g=0;g<e.length;g++){var h=e[g];if(h.nodeType===window.document.ELEMENT_NODE){var k=h.getAttribute("class");if(k)for(var l=k.split(" "),m=0;m<l.length;m++)switch(k=l[m],k){case "c1pjs-binding":(k=D(h))&&k.binding&&a.T(k.type,k.binding,h),m=l.length}}}}
function E(a,b){for(var c=F(b.parentNode,"c1pjs-control"),d=0;d<c.length;d++)for(var e=c[d].childNodes,g=0;g<e.length;g++){var h=e[g];if(h.nodeType===window.document.ELEMENT_NODE){var k=h.getAttribute("class");if(k)for(var l=k.split(" "),m=0;m<l.length;m++)switch(k=l[m],k){case "c1pjs-binding":(k=D(h))&&k.binding&&a.T(k.type,k.binding,h,k.value),m=l.length}}}}
function F(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var e=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)e.test(a[b].className)&&c.push(a[b]);return c}
A.prototype={constructor:A,parent:null,toString:function(){return this.name?this.name:this.id||this.type},T:function(a,b,c){switch(b){case "clear":return this.H[b]||(this.H[b]=c,c.onclick=function(a){return function(){a.H.print&&(a.H.print.value="")}}(this)),!0;case "print":return this.H[b]||(this.gb=this.H[b]=c,c.value="",this.l=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),
this.$a=function(a,b,c){this.l(a,"notice",c)}),!0;default:return!1}},log:function(){},l:function(){},status:function(a){this.l(this.qb+": "+a)},$a:function(a,b){b||v(a)},X:function(a){this.C.Ca||(this.C.Za=!1!==a,this.C.Za&&(a=this.cb,this.cb=null,a&&a()))}};function G(a,b){if(a.u){a===a.u?b|=0:b=b||a.la;var c=a.u.la&b;return!!b&&c===b||!!(c&a.u.Re)}return!1}function H(a,b){if(a.C.jb)return a.C.Ba&&(a.C.Ba=!1),a.C.jb=!1;if(a.C.Ca)return a.l(a.toString()+" error"),!1;a.C.Ba=b;return a.C.Ba}
function J(a,b){a.C.Ba&&(b?a.C.jb=!0:void 0===b&&a.l(a.toString()+" busy"));return a.C.Ba}function K(a,b){b&&(a.C.Za?b():a.cb=b);return a.C.Za}function pa(a,b){a.C.Ca=!0;a.$a(b)}function qa(a){A.call(this,"C1PPanel",a);this.C.M=!1}C(qa);qa.prototype.T=function(a,b,c){return this.J&&this.J.T(a,b,c)||this.s&&this.s.T(a,b,c)||this.b&&this.b.T(a,b,c)||this.u&&this.u.T(a,b,c)?!0:A.prototype.T.call(this,a,b,c)};
function J(a,b){a.C.Ba&&(b?a.C.jb=!0:void 0===b&&a.l(a.toString()+" busy"));return a.C.Ba}function K(a,b){b&&(a.C.Za?b():a.cb=b);return a.C.Za}function pa(a,b){a.C.Ca=!0;a.$a(b)}function qa(a){A.call(this,"C1PPanel",a);this.C.M=!1}C(qa);qa.prototype.T=function(a,b,c,d){return this.J&&this.J.T(a,b,c,d)||this.s&&this.s.T(a,b,c,d)||this.b&&this.b.T(a,b,c,d)||this.u&&this.u.T(a,b,c,d)?!0:A.prototype.T.call(this,a,b,c,d)};
qa.prototype.ha=function(a,b){a&&!this.C.M&&(this.C.M=!0,this.J=b,this.s=L(b,"cpu"),this.b=L(b,"keyboard"),this.u=L(b,"debugger"),ra())};function ra(){for(var a=!1,b=F(window.document,"c1pjs","panel"),c=0;c<b.length;c++){var d=b[c],e=D(d),g=oa(e.id);g||(a=!0,g=new qa(e));E(g,d);a&&g.X()}}y(ra);
function sa(a){A.call(this,"C1PCPU",a);ta(this);this.C.M=!1;this.C.ma=!1;this.Ta=a.autoStart;this.Ra=0;this.Ob=1;this.eb=2;this.speed=this.Ra;this.Ja=30;this.Ia=5;this.Ma=8;this.Sa=["Slow","Fast","Max"];this.ib=["(1Mhz)","(up to "+this.Ma+"Mhz)","(unlimited)"];this.P=[];this.K=[];this.oa=65536;this.pa=0;this.da=65536;this.ia=0;this.Qa=32;this.bb=2;this.Nb=1;this.o=[this.yc,this.Sd,this.Je,this.m,this.m,this.Ud,this.oc,this.m,this.Xd,this.Rd,this.nc,this.m,this.m,this.Od,this.lc,this.m,this.xc,this.Td,
this.m,this.m,this.m,this.Vd,this.pc,this.m,this.Bc,this.Qd,this.m,this.m,this.m,this.Pd,this.mc,this.m,this.pd,this.hc,this.m,this.m,this.uc,this.jc,this.ce,this.m,this.Zd,this.gc,this.be,this.m,this.tc,this.dc,this.$d,this.m,this.vc,this.ic,this.m,this.m,this.m,this.kc,this.de,this.m,this.te,this.fc,this.m,this.m,this.m,this.ec,this.ae,this.m,this.je,this.cd,this.m,this.m,this.m,this.ed,this.Ld,this.m,this.Wd,this.bd,this.Kd,this.m,this.od,this.Zc,this.Id,this.m,this.zc,this.dd,this.m,this.m,this.m,
@ -84,7 +84,7 @@ function Ka(a){A.call(this,"C1PKeyboard",a);this.C.M=!1;this.Ia=a.model;this.da=
29680;this.b[54]=29184;this.b[38]=29424;this.b[55]=28928;this.b[39]=29168;this.b[56]=26368;this.b[40]=26608;this.b[57]=26112;this.b[41]=26352;this.b[48]=25856;this.b[58]=25600;this.b[42]=25840;this.b[45]=25344;this.b[61]=25584;this.b[46]=22272;this.b[62]=22512;this.b[108]=22016;this.b[76]=22256;this.b[92]=22256;this.b[111]=21760;this.b[79]=22E3;this.b[this.Oa]=22E3;this.b[this.Wa]=21504;this.b[this.Ja]=21248;this.b[119]=18176;this.b[87]=18416;this.b[101]=17920;this.b[69]=18160;this.b[114]=17664;this.b[82]=
17904;this.b[116]=17408;this.b[84]=17648;this.b[121]=17152;this.b[89]=17392;this.b[117]=16896;this.b[85]=17136;this.b[105]=16640;this.b[73]=16880;this.b[115]=14080;this.b[83]=14320;this.b[100]=13824;this.b[68]=14064;this.b[102]=13568;this.b[70]=13808;this.b[103]=13312;this.b[71]=13552;this.b[104]=13056;this.b[72]=13296;this.b[106]=12800;this.b[74]=13040;this.b[107]=12544;this.b[75]=12784;this.b[91]=12784;this.b[120]=9984;this.b[88]=10224;this.b[99]=9728;this.b[67]=9968;this.b[118]=9472;this.b[86]=
9712;this.b[98]=9216;this.b[66]=9456;this.b[110]=8960;this.b[78]=9200;this.b[94]=9200;this.b[109]=8704;this.b[77]=8944;this.b[93]=8944;this.b[44]=8448;this.b[60]=8688;this.b[113]=5888;this.b[81]=6128;this.b[97]=5632;this.b[65]=5872;this.b[122]=5376;this.b[90]=5616;this.b[32]=5120;this.b[47]=4864;this.b[63]=5104;this.b[59]=4608;this.b[43]=4848;this.b[112]=4352;this.b[80]=4592;this.b[64]=4592;this.b[this.L]=1536;this.b[this.$]=1280;this.b[240]=512;this.b[242]=256;this.b[244]=0;this.reset()}C(Ka);
f=Ka.prototype;f.reset=function(){this.Na(this.Ia);this.g=this.K;this.oa=0;this.o=[this.K,0,0,0,0,0,0,0];this.P=[];if(this.v)for(var a in this.v)isNaN(a)||this.v[a]&&clearTimeout(this.v[a]);this.v=[];this.Aa=this.A=0;this.pa=-1;this.ja=this.o;this.qa=this.V=0;this.B=""};
f=Ka.prototype;f.reset=function(){this.Na(this.Ia);this.g=this.K;this.oa=0;this.o=[this.K,0,0,0,0,0,0,0];this.P=[];if(this.v)for(var a in this.v)isNaN(+a)||this.v[a]&&clearTimeout(this.v[a]);this.v=[];this.Aa=this.A=0;this.pa=-1;this.ja=this.o;this.qa=this.V=0;this.B=""};
f.T=function(a,b,c){if(void 0===this.H[b])switch(b){case "keyDown":return this.H[b]=c,c.onkeydown=function(a){return function(b){return La(a,b,!0)}}(this),!0;case "keyPress":return this.H[b]=c,c.onkeypress=function(a){return function(b){var c=!0;b=b||window.event;b=b.which||b.keyCode;a.B="";a.g&8?a.g&=-9:c=!Ma(a,b);a.u&&G(a.u,a.u.za)&&a.u.message("keyPress("+p(b)+"): "+(c?"pass":"consume"));return c}}(this),!0;case "keyUp":return this.H[b]=c,c.onkeyup=function(a){return function(b){return La(a,b,
!1)}}(this),!0;case "break":return this.H[b]=c,c.onclick=function(a){return function(){a.J&&a.J.reset(!0)}}(this),!0;default:if(void 0!==this.D[b])return this.H[b]=c,c.onclick=function(a,b,c){return function(){a.s&&a.s.ca();return!Ma(a,c)}}(this,b,this.D[b]),!0}return!1};f.ba=function(a,b,c,d){this.a=a;this.ra=b;this.ib=c-b+1;this.lb=this.ra+this.ib;d&&(this.s=d,N(d,b,c,this,this.W));this.X()};f.Na=function(a){this.O=a;this.R=255;600!=this.O&&(this.R=0,this.l("updated keyboard model: "+this.O))};
f.ha=function(a,b){a&&!this.C.M&&(this.C.M=!0,this.J=b,this.u=L(b,"debugger"))};f.X=function(){this.U=(this.kb=w("iOS"))||w("Android");this.u&&G(this.u,this.u.za)&&this.u.message("mobile keyboard support: "+(this.U?"true":"false")+" ("+window.navigator.userAgent+")");A.prototype.X.call(this)};function Na(a,b){var c=b?100:250;a.s&&a.s.ta&&(c/=a.s.ta);return c}function Oa(a,b){!a.A||void 0!==b&&b==a.A||(a.u&&G(a.u,a.u.za)&&a.u.message("autoClear("+p(a.A)+")"),clearTimeout(a.v[a.A]),T(a,a.A,!1,4))}

View file

@ -5,11 +5,11 @@ function z(a){if(w)try{for(var b=0;b<a.length;b++)a[b]()}catch(c){t("An unexpect
function B(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id;this.name=b.name;void 0===this.id&&(this.id="");b=this.id.indexOf(".");0<b?(this.Da=this.id.substr(0,b),this.Ca=this.id.substr(b+1)):this.Ca=this.id;this[a]=c;this.u={va:!1,pa:!1,Aa:!1,H:!1,qa:!1};this.xa=null;this.u.qa=!1;this.A={};C[C.length]=this}var ea=void 0;if(window){ea||(ea=window.location.search.substr(1));for(var fa,ga=/\+/g,ha=/([^&=]+)=?([^&]*)/g;fa=ha.exec(ea);)fa[1].replace(ga," "),fa[2].replace(ga," ")}
function ia(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}function E(a){var b;b||(b=B);a.prototype=ia(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}var C=[];function F(a,b){if(void 0!==a){var c;b&&0<(c=b.indexOf("."))&&(a=b.substr(0,c+1)+a);for(c=0;c<C.length;c++)if(C[c].id===a)return C[c]}return null}
function G(a){var b=null;if(a=a.getAttribute("data-value"))try{b=eval("("+a+")")}catch(c){t(c.message+" ("+a+")")}return b}window&&!window.document.ELEMENT_NODE&&(window.document.ELEMENT_NODE=1);
function H(a,b){for(var c=I(b.parentNode,"c1pjs-control"),d=0;d<c.length;d++)for(var f=c[d].childNodes,g=0;g<f.length;g++){var k=f[g];if(k.nodeType===window.document.ELEMENT_NODE){var h=k.getAttribute("class");if(h)for(var l=h.split(" "),m=0;m<l.length;m++)switch(h=l[m],h){case "c1pjs-binding":(h=G(k))&&h.binding&&a.J(h.type,h.binding,k),m=l.length}}}}
function H(a,b){for(var c=I(b.parentNode,"c1pjs-control"),d=0;d<c.length;d++)for(var f=c[d].childNodes,g=0;g<f.length;g++){var k=f[g];if(k.nodeType===window.document.ELEMENT_NODE){var h=k.getAttribute("class");if(h)for(var l=h.split(" "),m=0;m<l.length;m++)switch(h=l[m],h){case "c1pjs-binding":(h=G(k))&&h.binding&&a.J(h.type,h.binding,k,h.value),m=l.length}}}}
function I(a,b,c){c&&(b+="-"+c+"-object");if(a.getElementsByClassName)return a.getElementsByClassName(b);var d;c=[];a=a.getElementsByTagName("*");var f=new RegExp("(^| )"+b+"( |$)");b=0;for(d=a.length;b<d;b++)f.test(a[b].className)&&c.push(a[b]);return c}
B.prototype={constructor:B,parent:null,toString:function(){return this.name?this.name:this.id||this.type},J:function(a,b,c){switch(b){case "clear":return this.A[b]||(this.A[b]=c,c.onclick=function(a){return function(){a.A.print&&(a.A.print.value="")}}(this)),!0;case "print":return this.A[b]||(this.ya=this.A[b]=c,c.value="",this.F=function(a){return function(b,c){8192<a.value.length&&(a.value=a.value.substr(a.value.length-4096));a.value+=(void 0!==c?c+": ":"")+(b||"")+"\n";a.scrollTop=a.scrollHeight}}(c),
this.wa=function(a,b,c){this.F(a,"notice",c)}),!0;default:return!1}},log:function(){},F:function(){},status:function(a){this.F(this.Ca+": "+a)},wa:function(a,b){b||t(a)},N:function(a){this.u.qa||(this.u.va=!1!==a,this.u.va&&(a=this.xa,this.xa=null,a&&a()))}};function ja(a,b){if(a.u.Aa)return a.u.pa&&(a.u.pa=!1),a.u.Aa=!1;if(a.u.qa)return a.F(a.toString()+" error"),!1;a.u.pa=b;return a.u.pa}function J(a,b){b&&(a.u.va?b():a.xa=b);return a.u.va}function ka(a,b){a.u.qa=!0;a.wa(b)}
function K(a){B.call(this,"C1PPanel",a);this.u.H=!1}E(K);K.prototype.J=function(a,b,c){return this.I&&this.I.J(a,b,c)||this.f&&this.f.J(a,b,c)||this.b&&this.b.J(a,b,c)?!0:B.prototype.J.call(this,a,b,c)};K.prototype.$=function(a,b){a&&!this.u.H&&(this.u.H=!0,this.I=b,this.f=L(b,"cpu"),this.b=L(b,"keyboard"),la())};function la(){for(var a=!1,b=I(window.document,"c1pjs","panel"),c=0;c<b.length;c++){var d=b[c],f=G(d),g=F(f.id);g||(a=!0,g=new K(f));H(g,d);a&&g.N()}}y(la);
function K(a){B.call(this,"C1PPanel",a);this.u.H=!1}E(K);K.prototype.J=function(a,b,c,d){return this.I&&this.I.J(a,b,c,d)||this.f&&this.f.J(a,b,c,d)||this.b&&this.b.J(a,b,c,d)?!0:B.prototype.J.call(this,a,b,c,d)};K.prototype.$=function(a,b){a&&!this.u.H&&(this.u.H=!0,this.I=b,this.f=L(b,"cpu"),this.b=L(b,"keyboard"),la())};function la(){for(var a=!1,b=I(window.document,"c1pjs","panel"),c=0;c<b.length;c++){var d=b[c],f=G(d),g=F(f.id);g||(a=!0,g=new K(f));H(g,d);a&&g.N()}}y(la);
function ma(a){B.call(this,"C1PCPU",a);na(this);this.u.H=!1;this.u.Z=!1;this.sa=a.autoStart;this.ia=0;this.Ba=2;this.speed=this.ia;this.oa=30;this.na=5;this.ea=8;this.ta=["Slow","Fast","Max"];this.eb=["(1Mhz)","(up to "+this.ea+"Mhz)","(unlimited)"];this.O=[];this.K=[];this.ja=65536;this.ka=0;this.Y=65536;this.ca=0;this.v=[this.Lb,this.dd,this.Wd,this.l,this.l,this.fd,this.Bb,this.l,this.jd,this.cd,this.Ab,this.l,this.l,this.$c,this.yb,this.l,this.Kb,this.ed,this.l,this.l,this.l,this.gd,this.Cb,this.l,
this.Ob,this.bd,this.l,this.l,this.l,this.ad,this.zb,this.l,this.Bc,this.ub,this.l,this.l,this.Hb,this.wb,this.pd,this.l,this.ld,this.tb,this.od,this.l,this.Gb,this.qb,this.md,this.l,this.Ib,this.vb,this.l,this.l,this.l,this.xb,this.qd,this.l,this.Gd,this.sb,this.l,this.l,this.l,this.rb,this.nd,this.l,this.wd,this.pc,this.l,this.l,this.l,this.rc,this.Xc,this.l,this.hd,this.oc,this.Wc,this.l,this.Ac,this.lc,this.Uc,this.l,this.Mb,this.qc,this.l,this.l,this.l,this.sc,this.Yc,this.l,this.Qb,this.nc,
this.l,this.l,this.l,this.mc,this.Vc,this.l,this.xd,this.Oa,this.l,this.l,this.l,this.Qa,this.ud,this.l,this.kd,this.Na,this.td,this.l,this.zc,this.Ka,this.rd,this.l,this.Nb,this.Pa,this.l,this.l,this.l,this.Ra,this.vd,this.l,this.Id,this.Ma,this.l,this.l,this.l,this.La,this.sd,this.l,this.l,this.Md,this.l,this.l,this.Ud,this.Od,this.Rd,this.l,this.kc,this.l,this.$d,this.l,this.Td,this.Jd,this.Qd,this.l,this.Db,this.Nd,this.l,this.l,this.Vd,this.Pd,this.Sd,this.l,this.be,this.Ld,this.ae,this.l,this.l,
@ -80,7 +80,7 @@ function Aa(a){B.call(this,"C1PKeyboard",a);this.u.H=!1;this.ea=a.model;this.L=8
29680;this.b[54]=29184;this.b[38]=29424;this.b[55]=28928;this.b[39]=29168;this.b[56]=26368;this.b[40]=26608;this.b[57]=26112;this.b[41]=26352;this.b[48]=25856;this.b[58]=25600;this.b[42]=25840;this.b[45]=25344;this.b[61]=25584;this.b[46]=22272;this.b[62]=22512;this.b[108]=22016;this.b[76]=22256;this.b[92]=22256;this.b[111]=21760;this.b[79]=22E3;this.b[this.ka]=22E3;this.b[this.la]=21504;this.b[this.fa]=21248;this.b[119]=18176;this.b[87]=18416;this.b[101]=17920;this.b[69]=18160;this.b[114]=17664;this.b[82]=
17904;this.b[116]=17408;this.b[84]=17648;this.b[121]=17152;this.b[89]=17392;this.b[117]=16896;this.b[85]=17136;this.b[105]=16640;this.b[73]=16880;this.b[115]=14080;this.b[83]=14320;this.b[100]=13824;this.b[68]=14064;this.b[102]=13568;this.b[70]=13808;this.b[103]=13312;this.b[71]=13552;this.b[104]=13056;this.b[72]=13296;this.b[106]=12800;this.b[74]=13040;this.b[107]=12544;this.b[75]=12784;this.b[91]=12784;this.b[120]=9984;this.b[88]=10224;this.b[99]=9728;this.b[67]=9968;this.b[118]=9472;this.b[86]=
9712;this.b[98]=9216;this.b[66]=9456;this.b[110]=8960;this.b[78]=9200;this.b[94]=9200;this.b[109]=8704;this.b[77]=8944;this.b[93]=8944;this.b[44]=8448;this.b[60]=8688;this.b[113]=5888;this.b[81]=6128;this.b[97]=5632;this.b[65]=5872;this.b[122]=5376;this.b[90]=5616;this.b[32]=5120;this.b[47]=4864;this.b[63]=5104;this.b[59]=4608;this.b[43]=4848;this.b[112]=4352;this.b[80]=4592;this.b[64]=4592;this.b[this.v]=1536;this.b[this.K]=1280;this.b[240]=512;this.b[242]=256;this.b[244]=0;this.reset()}E(Aa);
e=Aa.prototype;e.reset=function(){this.ra(this.ea);this.c=this.o;this.S=0;this.g=[this.o,0,0,0,0,0,0,0];this.w=[];if(this.h)for(var a in this.h)isNaN(a)||this.h[a]&&clearTimeout(this.h[a]);this.h=[];this.ca=this.i=0;this.T=-1;this.R=this.g;this.V=this.C=0;this.j=""};
e=Aa.prototype;e.reset=function(){this.ra(this.ea);this.c=this.o;this.S=0;this.g=[this.o,0,0,0,0,0,0,0];this.w=[];if(this.h)for(var a in this.h)isNaN(+a)||this.h[a]&&clearTimeout(this.h[a]);this.h=[];this.ca=this.i=0;this.T=-1;this.R=this.g;this.V=this.C=0;this.j=""};
e.J=function(a,b,c){if(void 0===this.A[b])switch(b){case "keyDown":return this.A[b]=c,c.onkeydown=function(a){return function(b){return Ba(a,b,!0)}}(this),!0;case "keyPress":return this.A[b]=c,c.onkeypress=function(a){return function(b){var c=!0;b=b||window.event;b=b.which||b.keyCode;a.j="";a.c&8?a.c&=-9:c=!T(a,b);return c}}(this),!0;case "keyUp":return this.A[b]=c,c.onkeyup=function(a){return function(b){return Ba(a,b,!1)}}(this),!0;case "break":return this.A[b]=c,c.onclick=function(a){return function(){a.I&&
a.I.reset(!0)}}(this),!0;default:if(void 0!==this.m[b])return this.A[b]=c,c.onclick=function(a,b,c){return function(){a.f&&a.f.da();return!T(a,c)}}(this,b,this.m[b]),!0}return!1};e.X=function(a,b,c,d){this.a=a;this.Y=b;this.oa=c-b+1;this.sa=this.Y+this.oa;d&&(this.f=d,O(d,b,c,this,this.P));this.N()};e.ra=function(a){this.s=a;this.B=255;600!=this.s&&(this.B=0,this.F("updated keyboard model: "+this.s))};e.$=function(a,b){a&&!this.u.H&&(this.u.H=!0,this.I=b)};
e.N=function(){this.U=(this.ta=u("iOS"))||u("Android");B.prototype.N.call(this)};function Ca(a,b){var c=b?100:250;a.f&&a.f.ba&&(c/=a.f.ba);return c}function Da(a,b){!a.i||void 0!==b&&b==a.i||(clearTimeout(a.h[a.i]),U(a,a.i,!1,4))}function V(a,b,c){a.j=b;Ea(a,c||300)}function Ea(a,b){if(0<a.j.length){var c=a.j.charCodeAt(0);10==c&&(c=13);65<=c&&90>=c&&(c+=32);a.j=a.j.substr(1);T(a,c)}0<a.j.length&&setTimeout(function(a){return function(){Ea(a,b)}}(a),b)}

View file

@ -715,6 +715,12 @@
<xsl:otherwise/>
</xsl:choose>
</xsl:variable>
<xsl:variable name="charBOL">
<xsl:choose>
<xsl:when test="@charbol"><xsl:value-of select="@charbol"/></xsl:when>
<xsl:otherwise>0</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="tabSize">
<xsl:choose>
<xsl:when test="@tabsize"><xsl:value-of select="@tabsize"/></xsl:when>
@ -724,7 +730,7 @@
<xsl:call-template name="component">
<xsl:with-param name="machine" select="$machine"/>
<xsl:with-param name="class">serial</xsl:with-param>
<xsl:with-param name="parms">,adapter:<xsl:value-of select="$adapter"/>,binding:'<xsl:value-of select="$binding"/>',tabSize:<xsl:value-of select="$tabSize"/></xsl:with-param>
<xsl:with-param name="parms">,adapter:<xsl:value-of select="$adapter"/>,binding:'<xsl:value-of select="$binding"/>',tabSize:<xsl:value-of select="$tabSize"/>,charBOL:<xsl:value-of select="$charBOL"/></xsl:with-param>
</xsl:call-template>
</xsl:template>

View file

@ -68,8 +68,8 @@ var Lc=[],fc=[Ob.prototype.Ba,Ob.prototype.lb,Ob.prototype.Ra,Ob.prototype.Zb,Ob
if(xb)var ec=[Ob.prototype.ta,Ob.prototype.eb,Ob.prototype.Ma,Ob.prototype.Hb,Ob.prototype.sd,Ob.prototype.ce],dc=[Ob.prototype.za,Ob.prototype.Yb,Ob.prototype.Qa,Ob.prototype.Ub,Ob.prototype.ud,Ob.prototype.Vc],Mc=[Ob.prototype.Da,Ob.prototype.qb,Ob.prototype.Ta,Ob.prototype.cc,Ob.prototype.Gd,Ob.prototype.Xc];
function Nc(a,b){Xa.call(this,"CPU",a,Nc,1);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Jd=c;this.ba.Ud=d;this.ba.sg=Math.round(this.ba.Jd/1E4)/100;this.ba.Ce=this.ba.sg*this.ba.Ud;this.ra.Ob=!1;this.ra.gh=!1;this.ra.bh=a.autoStart;this.ra.Oi=!1;c=ab.autostart;void 0!==c&&(this.ra.bh="true"==c?!0:"false"==c?!1:null);this.ra.We=!1;this.ba.Ef=this.ba.gf=0;this.ba.Ff=a.csStart;this.ba.ff=a.csInterval;this.ba.hf=a.csStop;this.gd=[];this.Qg=this.Ie.bind(this);ub(this)}gb(Nc);
var Oc=["power","reset"];h=Nc.prototype;h.Lc=function(a,b,c,d){this.ia=a;this.ja=b;this.ma=d;for(b=0;b<Oc.length;b++)(c=this.ya[Oc[b]])&&this.ia.Xb(null,Oc[b],c);this.Yb=Gb(a,"FPU");for(b=null;b=Gb(a,"Video",b);)this.gd.push(b);this.R=Gb(a,"ChipSet");ub(this)};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};
h.qc=function(a,b){if(!b){if(a&&this.restore){Pc(this);if(!this.restore(a))return!1;Qc(this)}else this.reset();this.ma?this.ma.jh():this.U("No debugger detected")}Rc(this);return!0};h.pc=function(a){return a?this.save():!0};function Sc(a){(!0===a.ra.bh||null===a.ra.bh&&!a.ma&&void 0===a.ya.run)&&a.Ie()}h.Qi=function(){return 0};
function Qc(a){void 0===a.ba.Ff&&(a.ba.Ff=0);void 0===a.ba.ff&&(a.ba.ff=-1);void 0===a.ba.hf&&(a.ba.hf=-1);a.ra.We=0<=a.ba.Ff&&0<a.ba.ff;a.ra.We&&(a.ba.Ef=0,a.ba.gf=a.ba.Ff-a.Zb)}function Uc(a,b){if(a.ra.We){var c=!1;a.ba.Ef=a.ba.Ef+a.Qi()|0;a.ba.gf-=b;0>=a.ba.gf&&(a.ba.gf+=a.ba.ff,c=!0);0<=a.ba.hf&&a.ba.hf<=Xc(a)&&(a.ba.ff=a.ba.hf=-1,Qc(a),a.bc(),c=!0);c&&a.U(Xc(a)+" cycles: checksum="+l(a.ba.Ef))}}h.qd=function(){this.ia&&this.ia.Xd&&this.ia.Xd.qd()};
h.qc=function(a,b){if(!b){if(a&&this.restore){Pc(this);if(!this.restore(a))return!1;Qc(this)}else this.reset();this.ma?this.ma.jh():this.U("No debugger detected")}Rc(this);return!0};h.pc=function(a){return a?this.save():!0};function Tc(a){(!0===a.ra.bh||null===a.ra.bh&&!a.ma&&void 0===a.ya.run)&&a.Ie()}h.Qi=function(){return 0};
function Qc(a){void 0===a.ba.Ff&&(a.ba.Ff=0);void 0===a.ba.ff&&(a.ba.ff=-1);void 0===a.ba.hf&&(a.ba.hf=-1);a.ra.We=0<=a.ba.Ff&&0<a.ba.ff;a.ra.We&&(a.ba.Ef=0,a.ba.gf=a.ba.Ff-a.Zb)}function Wc(a,b){if(a.ra.We){var c=!1;a.ba.Ef=a.ba.Ef+a.Qi()|0;a.ba.gf-=b;0>=a.ba.gf&&(a.ba.gf+=a.ba.ff,c=!0);0<=a.ba.hf&&a.ba.hf<=Xc(a)&&(a.ba.ff=a.ba.hf=-1,Qc(a),a.bc(),c=!0);c&&a.U(Xc(a)+" cycles: checksum="+l(a.ba.Ef))}}h.qd=function(){this.ia&&this.ia.Xd&&this.ia.Xd.qd()};
function Yc(a,b){for(var c=0;c<a.gd.length;c++)Zc(a.gd[c],b);if(a.ia&&a.ia.Xd&&(c=a.ia.Xd,c.Ra)){Kb(c,18,c.da,c.Qa);if(c.qb){var d=c.ja,e=c.A,f,g;null==f&&(f=0);null==g&&(g=d.X-f|0);null==e&&(e={ah:0,Qd:0,Sg:[]});var k=f>>>d.Pa;f=f+g-1>>>d.Pa;e.ah=0;for(e.Qd=0;k<=f;)g=d.xa[k],e.ah+=g.size,g.size&&(e.Sg.push(wa(Jb,k,0,0,g.type)),e.Qd++),k++;c.A=e;c.Ha=c.A.Qd*c.ja.Rb/691200;d=0;c.A.Bi=0;c.A.xf||(c.A.xf=[]);var e=-1,k=0,q=-1;for(f=0;f<c.A.Qd;f++){var r=c.A.Sg[f];g=xa(Jb.type,r);r=xa(Jb.$j,r);if(g!=e||
r!=q+1)(q=f-k)&&(d+=Mb(c,k,q,e)),e=g,k=f;q=r}d+=Mb(c,k,f-k,e);e=c.A.Ok!=d;c.A.Ok=d;if(e){e=new Db(0,0,c.da.width,c.da.height);c.A.Ne=[];k=c.A.Qd;for(d=0;d<c.A.Bi;d++)f=c.A.xf[d].Qd,c.A.Ne.push(Eb(e,f,k,!d)),k-=f;for(d=0;d<c.A.Ne.length;d++)e=c.A.xf[d],k=f=c.A.Ne[d],g=c.Qa,(q=zc[e.type])||(q=new Cb),g.strokeStyle="black",g.strokeRect(k.x,k.y,k.ad,k.A),g.fillStyle="string"==typeof q?q:q.toString(),g.fillRect(k.x,k.y,k.ad,k.A),k=c,g=f,k.la=k.Ba,k.X=k.Da,f=g.x+(g.ad>>1),q=g.y+(g.A>>1),r=g.A,g.ad<g.A&&
(r=g.ad,k.za=!0,k.R.save(),k.R.translate(f,q),k.R.rotate(-Math.PI/2),f=q=0),r<k.X&&(k.X=r,k.la=k.X+"px Monaco, Lucida Console, Courier New"),g=q,k.C=f,k.W=g,k=c,e=uc[e.type]+" ("+(e.Qd*c.ja.Rb/1024|0)+"Kb)",k.R.font=k.la,k.C-=k.R.measureText(e).width>>1,k.W+=(k.X>>1)-2,Lb(k,e),k.za&&(k.R.restore(),k.za=!1)}}else Lb(c,"This space intentionally left blank");c.context.drawImage(c.da,0,0,c.da.width,c.da.height,c.Hb,c.Ub,c.ib,c.lb);c.Ra=!1}}h.Uc=function(){this.gd.length&&this.gd[0].Uc()};
@ -78,7 +78,7 @@ a=!0;break;case "speed":this.ya[b]=c;a=!0;break;case "setSpeed":this.ya[b]=c,c.o
function cd(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.ba.Ud&&a.ba.ne&&(d=a.ba.ne/a.ba.sg);a.ba.Xi=Math.round(1E3/30);a.ba.km=Math.floor(a.ba.Jd/c*d);a.ba.th=Math.floor(a.ba.Jd/30*d);a.ba.Zi=Math.floor(a.ba.Jd/60*d);a.ba.Yi=Math.floor(a.ba.Jd/2*d);b||(a.ba.jf=a.ba.th,a.ba.Hf=a.ba.Zi,a.ba.Gf=a.ba.Yi);a.ba.uh=0}function Xc(a,b){var c=a.Zb+a.Ib+a.eb-a.A;b&&1<a.ba.Ud&&a.ba.ne>a.ba.sg&&(c=Math.round(c/a.ba.Ud));return c}function Pc(a){a.ba.ne=0;a.Zb=a.Ib=a.eb=a.A=0;Qc(a);$c(a,1)}
function $c(a,b,c){var d=!1;if(void 0!==b){.8>a.ba.ne/a.ba.Ce?b=1:d=!0;a.ba.Ud=b;b=a.ba.sg*a.ba.Ud;if(a.ba.Ce!=b){a.ba.Ce=b;b=a.ba.Ce.toFixed(2)+"Mhz";var e=a.ya.setSpeed;e&&(e.textContent=b);a.U("target speed: "+b)}c&&a.Uc()}bd(a,a.Ib);a.Ib=0;a.ba.ef=sa();a.ba.De=0;cd(a);return d}
h.Ie=function(a){if(qb(this,!0)){if(!this.ra.Ob){$c(this);this.ia&&this.ia.start(this.ba.ef,Xc(this));this.ra.Ob=!0;this.ra.gh=!0;this.R&&dd(this.R);var b=this.ya.run;b&&(b.textContent="Halt");this.qd(!0);a&&this.Uc()}this.ba.uh>=this.ba.Jd&&cd(this,!0);this.ba.If=0;this.ba.tg=sa();this.ba.De&&(a=this.ba.tg-this.ba.De,a>this.ba.Xi&&(this.ba.ef+=a,this.ba.ef>this.ba.tg&&(this.ba.ef=this.ba.tg)));try{do{var c=this.ra.We?1:this.ba.km;if(this.R){ed(this.R);var d=this.R;a=c;var e=d.O[0];if(e.xe){var f=
(Xc(d.M,d.wa)-e.zd)/d.xb|0,g=fd(d,0)-f;6==e.mode&&(g-=f);var k=g*d.xb|0;6==e.mode&&(k>>=1);a>k&&(a=k)}var c=a,q=this.R;a=c;if(q.A&&q.A[11]&64){var r=q.Ja-Xc(q.M,q.wa);0<r&&a>r&&(a=r)}c=a}try{this.sf(c)}catch(B){if("number"!=typeof B)throw B;}var x=this.eb-this.A;this.Ib+=x;this.ba.If+=x;bd(this,0,!0);Uc(this,x);this.ba.Hf-=x;0>=this.ba.Hf&&(this.ba.Hf+=this.ba.Zi,Yc(this));this.ba.Gf-=x;0>=this.ba.Gf&&(this.ba.Gf+=this.ba.Yi,this.qd());this.ba.jf-=x;if(0>=this.ba.jf){this.ba.jf+=this.ba.th;break}}while(this.ra.Ob)}catch(B){this.bc();
(Xc(d.M,d.wa)-e.zd)/d.xb|0,g=fd(d,0)-f;6==e.mode&&(g-=f);var k=g*d.xb|0;6==e.mode&&(k>>=1);a>k&&(a=k)}var c=a,q=this.R;a=c;if(q.A&&q.A[11]&64){var r=q.Ja-Xc(q.M,q.wa);0<r&&a>r&&(a=r)}c=a}try{this.sf(c)}catch(B){if("number"!=typeof B)throw B;}var x=this.eb-this.A;this.Ib+=x;this.ba.If+=x;bd(this,0,!0);Wc(this,x);this.ba.Hf-=x;0>=this.ba.Hf&&(this.ba.Hf+=this.ba.Zi,Yc(this));this.ba.Gf-=x;0>=this.ba.Gf&&(this.ba.Gf+=this.ba.Yi,this.qd());this.ba.jf-=x;if(0>=this.ba.jf){this.ba.jf+=this.ba.th;break}}while(this.ra.Ob)}catch(B){this.bc();
Rc(this);this.ia&&this.ia.stop(sa(),Xc(this));qb(this,!1);wb(this,B.stack||B.message);return}c=setTimeout;d=this.Qg;this.ba.De=sa();e=this.ba.Xi;this.ba.If&&(e=Math.round(e*this.ba.If/this.ba.th));e-=this.ba.De-this.ba.tg;if(f=this.ba.De-this.ba.ef)this.ba.ne=Math.round(this.Ib/(10*f))/100,864E5<=f&&(this.Zb=0,this.R&&ed(this.R,!0),$c(this));if(0>e||this.ba.ne<this.ba.Ce)e=0;this.ba.uh+=this.ba.If;this.ba.De+=e;c(d,e)}else Rc(this),this.ia&&this.ia.stop(sa(),Xc(this))};h.sf=function(){return 0};
h.bc=function(a){rb(this,!0);this.eb-=this.A;this.A=0;bd(this,this.Ib);this.Ib=0;if(this.ra.Ob){this.ra.Ob=!1;this.R&&dd(this.R);var b=this.ya.run;b&&(b.textContent="Run")}this.ra.Sd=a};function Rc(a,b){Yc(a,b);a.qd()}
function gd(a,b,c,d){this.M=a;this.ma=a.ma;this.id=b;this.kc=c||"";this.ga=0;this.Za=65535;this.ec=this.Za+1;this.$b=this.Kc=this.ext=this.Bb=this.type=this.Ea=0;this.dc=-1;this.fa=this.fd=2;this.B=this.Fa=65535;this.ya=this.nh;this.O=this.Ei;this.ja=this.Gi;this.A={ga:-1,Ea:0,Za:0,Bb:0,type:0,ext:0,dc:-1};1==this.id&&(this.Sf=0,this.R=null,this.af=!1,this.P=Array(32),this.C=[]);hd(this,!0,d)}function id(a,b){a.C.push(b);return[a.C.length,1]}h=gd.prototype;
@ -187,8 +187,8 @@ function Qi(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;pf(this,a,-2147483648,d&1
function Wi(a,b){var c=a-b|0;hf(this,a,b,c,this.Ja|63,!0);this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return c&this.B}function Xi(a,b){pf(this,a&b,128);this.A-=-1===this.Z?-1===this.Y?this.C.ci:this.C.Pf:this.C.Pf;this.V|=2;return a}function Yi(a,b){pf(this,a&b,this.Ja);this.A-=-1===this.Z?-1===this.Y?this.C.ci:this.C.Pf:this.C.Pf;this.V|=2;return a}function Zi(a,b){var c=this.F&this.B,d=(1<<(this.G&31))-1;return a&~(d<<c)|(b&d)<<c}
function $i(a,b){return b>>(this.F&this.B)&(1<<(this.G&31))-1&this.B}function aj(a,b){if(-1===this.Y){switch(this.mc&7){case 0:this.F=this.F&-256|a;break;case 1:this.G=this.G&-256|a;break;case 2:this.H=this.H&-256|a;break;case 3:this.D=this.D&-256|a;break;case 4:this.F=this.F&-65281|a<<8;break;case 5:this.G=this.G&-65281|a<<8;break;case 6:this.H=this.H&-65281|a<<8;break;case 7:this.D=this.D&-65281|a<<8}this.A-=this.C.ei}else this.Z=this.Y,P(this,a),this.A-=this.C.di;return b}
function bj(a,b){if(-1===this.Y){switch(this.mc&7){case 0:this.F=this.F&~this.B|a;break;case 1:this.G=this.G&~this.B|a;break;case 2:this.H=this.H&~this.B|a;break;case 3:this.D=this.D&~this.B|a;break;case 4:t(this,u(this)&~this.B|a);break;case 5:this.K=this.D&~this.B|a;break;case 6:this.J=this.J&~this.B|a;break;case 7:this.I=this.I&~this.B|a}this.A-=this.C.ei}else this.Z=this.Y,Q(this,a),this.A-=this.C.di;return b}
function cj(a,b){var c=a^b;pf(this,c,128);this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return c}function dj(a,b){this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return pf(this,a^b,this.Ja)&this.B}function ej(a){p.call(this,13,0);return a}function he(a){p.call(this,6);return a}function fj(a){ke.call(this);return a}function gj(){8086==this.na?(this.lb=-1,Lh.call(this,0,null,2)):p.call(this,0,null,2)}function hj(){this.A-=-1===this.Y?2:this.C.Yj;return 1}
function ij(){var a=this.G&255;this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function jj(){var a=this.ca();this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function kj(){return null}function lj(){return this.xb}function Mf(a,b){this.lb=a;void 0===b&&(b=11);Lh.call(this,a,null,b)}
function cj(a,b){var c=a^b;pf(this,c,128);this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return c}function dj(a,b){this.A-=-1===this.Z?-1===this.Y?this.C.xc:this.C.ac:this.C.Mc;return pf(this,a^b,this.Ja)&this.B}function ej(a){if(80186>this.na)return fj.call(this,a);p.call(this,13,0);return a}function he(a){p.call(this,6);return a}function fj(a){ke.call(this);return a}function gj(){8086==this.na?(this.lb=-1,Lh.call(this,0,null,2)):p.call(this,0,null,2)}
function hj(){this.A-=-1===this.Y?2:this.C.Yj;return 1}function ij(){var a=this.G&255;this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function jj(){var a=this.ca();this.A-=(-1===this.Y?this.C.Wh:this.C.Vh)+(a<<this.C.Xh);return a}function kj(){return null}function lj(){return this.xb}function Mf(a,b){this.lb=a;void 0===b&&(b=11);Lh.call(this,a,null,b)}
function p(a,b,c,d){var e=!1;this.ra.Sd?80186<=this.na&&(e=!0,0>this.lb?(-1!=this.Jc&&(this.Ca.$b=3,cf(this,this.Jc),this.Jc=-1),ef(this,this.Ge),-1!=this.rd&&(nd(this,this.rd),this.rd=-1),-1!==this.X&&(t(this,this.ib&~this.Aa.Fa|this.X-this.Aa.Ea),this.X=-1)):8!=this.lb?(b=0,a=8):(b=0,a=-1,te(this),e=d=!1)):ef(this,this.Ge);var f=a,g=b,k=32,q=Cf(this,this.Na);204!=q||this.Pd||(d=!1);this.ea&131072&&(6==f&&99==q||13==f&&205==q)&&(d=!1);!1===d&&(k|=1);983040<=this.Na&&1048575>=this.Na&&(d=!1);n(this,
k|-2147483648)&&(d=!0);if(n(this,k)||d){var r=this.ra.Ob,f="Fault "+ha(f)+(null!=g?" ("+ia(g)+")":"")+" on opcode "+ha(q);d&&r&&(f+=" (blocked by PCjs Debugger)");this.ma?(pb(this,f,d||k,!0),d&&(d=r,this.ma.bc())):(this.Va(f),this.bc())}if(d&&e)throw-1;if(e)throw this.lb=a,Lh.call(this,a,b,c),this.Ge=this.Na,this.V=1==a?this.V|8192:this.V|4096,a;}function we(a,b,c){this.qe=a;a=0;b&&(a|=1);c&&(a|=2);3==this.ta&&(a|=4);p.call(this,14,a)}function ie(){this.Ub[this.ca()].call(this)}
function le(){zd(this,u(this)&this.B);this.A-=this.C.Sc}function Kd(){this.X=this.ka;var a=u(this)&this.B;zd(this,this.F&this.B);zd(this,this.G&this.B);zd(this,this.H&this.B);zd(this,this.D&this.B);zd(this,a);zd(this,this.K&this.B);zd(this,this.J&this.B);zd(this,this.I&this.B);this.A-=this.C.Sj;this.X=-1}
@ -254,7 +254,7 @@ a;var c=(b=this.F&65535)/a;if(255<c)return gj.call(this),a;this.la=c&255|(b%a&25
a;this.la|=0;this.Ba|=0}this.Ua=!0;this.A-=-1===this.Y?this.C.mj:this.C.lj;this.V|=2;return a},function(a,b){if(2==this.fa){if(!a)return gj.call(this),a;var c=a<<16>>16,d=(b=this.H<<16|this.F&65535)/c|0;if(d!=d<<16>>16||8086==this.na&&-32768==d)return gj.call(this),a;this.la=d&65535;this.Ba=b%c&65535}else{var c=this.F,d=this.H,e=a,f=0,g=0;0>e&&(e=-e|0,f=1-f);0>d&&(c=-c|0,d=~d+(c?0:1)|0,g=1,f=1-f);!Ch.call(this,c,d,e)||this.la>2147483647+f||this.Ba>2147483647+g?c=!1:(f&&(this.la=-this.la),g&&(this.Ba=
-this.Ba),c=!0);if(!c)return gj.call(this),a;this.la|=0;this.Ba|=0}this.Ua=!0;this.A-=-1===this.Y?this.C.qj:this.C.pj;this.V|=2;return a}],Gd=[function(a){var b=a+1|0;hf(this,a,1,b,190);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&255},function(a){var b=a-1|0;hf(this,a,1,b,190,!0);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&255},fj,fj,fj,fj,fj,fj],Hd=[function(a){var b=a+1|0;hf(this,a,1,b,this.Ja|62);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&this.B},function(a){var b=a-1|0;hf(this,
a,1,b,this.Ja|62,!0);this.A-=-1===this.Y?this.C.Mf:this.C.Lf;return b&this.B},function(a){zd(this,v(this));df(this,a);this.A-=-1===this.Y?this.C.ij:this.C.hj;this.V|=2;return a},function(a){if(-1===this.Y)return fj.call(this,a);this.X=this.ka;xh.call(this,a,this.va(this.Y+this.fa));this.A-=this.C.fj;this.V|=2;this.X=-1;return a},function(a){df(this,a);this.A-=-1===this.Y?this.C.Dj:this.C.Cj;this.V|=2;return a},function(a){if(-1===this.Y)return fj.call(this,a);Cd(this,a,this.va(this.Y+this.fa));this.A-=
this.C.Aj;this.V|=2;return a},function(a){var b=a;this.V&512&&(a=a-2&65535,80286>this.na&&(b=a));zd(this,b);this.A-=-1===this.Y?this.C.Sc:this.C.Tj;this.V|=2;return a},ej];function re(){this.da[this.ca()].call(this,$i);this.A-=-1===this.Y?6:13}function se(){this.qa[this.ca()].call(this,Zi);this.A-=-1===this.Y?12:19}var je=Array(256);je[0]=function(){var a=this.ca();16>(a&56)&&(this.V|=1);this.Oa[a].call(this,this.Ng,kj)};je[1]=function(){var a=this.ca();a&16||(this.V|=1);this.Oa[a].call(this,Tj,kj)};
this.C.Aj;this.V|=2;return a},function(a){var b=a;this.V&512&&(a=a-2&65535,80286>this.na&&(b=a));zd(this,b);this.A-=-1===this.Y?this.C.Sc:this.C.Tj;this.V|=2;return a},fj];function re(){this.da[this.ca()].call(this,$i);this.A-=-1===this.Y?6:13}function se(){this.qa[this.ca()].call(this,Zi);this.A-=-1===this.Y?12:19}var je=Array(256);je[0]=function(){var a=this.ca();16>(a&56)&&(this.V|=1);this.Oa[a].call(this,this.Ng,kj)};je[1]=function(){var a=this.ca();a&16||(this.V|=1);this.Oa[a].call(this,Tj,kj)};
je[2]=function(){!(this.bb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Mh)};je[3]=function(){!(this.bb&1)||this.ea&131072?p.call(this,6):this.da[this.ca()].call(this,Th)};
je[5]=function(){this.ta?p.call(this,13,0,0,!0):(Af(this,this.va(2054)),this.I=this.va(2086),this.J=this.va(2088),this.K=this.va(2090),this.D=this.va(2094),this.H=this.va(2096),this.G=this.va(2098),this.F=this.va(2100),ld(this.cb,2102,this.va(2084)),ld(this.Ca,2108,this.va(2082)),ld(this.Aa,2114,this.va(2080)),ld(this.Ab,2120,this.va(2078)),Bd(this,this.va(2072)),df(this,this.va(2074)),t(this,this.va(2092)),this.Dc=this.va(2126)|this.Wa(2128)<<16,this.Bd=this.Dc+this.va(2130),this.Oc=this.va(2138)|
this.Wa(2140)<<16,this.Pd=this.Oc+this.va(2142),ld(this.Ac,2132,this.va(2076)),ld(this.Ya,2144,this.va(2070)),this.A-=195)};je[6]=function(){this.ta?p.call(this,13,0):(this.bb&=-9,this.A-=2)};je[11]=Jd;je[166]=Jd;je[255]=Jd;var w=[];w[5]=Jd;
@ -877,17 +877,17 @@ Z[1009]=15;Z[113]=16;Z[81]=10768;Z[119]=17;Z[87]=10769;Z[101]=18;Z[69]=10770;Z[1
Z[X[";"]]=39;Z[X[":"]]=10791;Z[X["'"]]=40;Z[X['"']]=10792;Z[X["`"]]=41;Z[X["~"]]=10793;Z[1016]=42;Z[X["\\"]]=43;Z[X["|"]]=10795;Z[122]=44;Z[90]=10796;Z[120]=45;Z[88]=10797;Z[99]=46;Z[67]=10798;Z[118]=47;Z[86]=10799;Z[98]=48;Z[66]=10800;Z[110]=49;Z[78]=10801;Z[109]=50;Z[77]=10802;Z[X[","]]=51;Z[X["<"]]=10803;Z[X["."]]=52;Z[X[">"]]=10804;Z[X["/"]]=53;Z[X["?"]]=10805;Z[3016]=54;Z[1044]=55;Z[1018]=56;Z[1032]=57;Z[1020]=58;Z[1112]=59;Z[1113]=60;Z[1114]=61;Z[1115]=62;Z[1116]=63;Z[1117]=64;Z[1118]=65;
Z[1119]=66;Z[1120]=67;Z[1121]=68;Z[1144]=69;Z[1145]=70;Z[1036]=71;Z[1038]=72;Z[1033]=73;Z[1109]=74;Z[1037]=75;Z[1101]=76;Z[1039]=77;Z[1107]=78;Z[1035]=79;Z[1040]=80;Z[1034]=81;Z[1045]=82;Z[1046]=83;Z[4027]=84;Z[1122]=87;Z[1123]=88;Z[1091]=91;Z[1093]=93;Z[1224]=91;Z[4003]=7470;Z[4008]=7494;Z[4046]=3677523;h=El.prototype;
h.Xb=function(a,b,c,d){var e=this,f=a+"-"+b;if(void 0===this.ya[f])switch(b){case "kbd":return c.onkeydown=function(a){return Nl(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.O="";var b=!Z[a]||!!(e.wc&128);b||Ol(e,a,!0);return b},c.onkeyup=function(a){return Nl(e,a,!1)},!0;case "caps-lock":return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1020,!0)},!0;case "num-lock":return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1144,!0)},!0;case "scroll-lock":return this.ya[f]=
c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1145,!0)},!0;case "test":return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();d&&!e.O&&(e.O=d,Pl(e,300))},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==Kl[g]&&"button"==a)return this.ya[f]=c,c.onclick=function(a,b,c){return function(){a.M&&a.M.Uc();Ql(a,c,!0);Ol(a,c,!0)}}(this,g,Kl[g]),!0;if(void 0!==Ll[b])return this.da++,this.ya[f]=c,a=function(a,b,c){return function(){Ol(a,c)}}(this,b,Ll[b]),b=function(a,b,c){return function(){Rl(a,c)}}(this,
b,Ll[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};function Sl(a,b,c){if(a.da){for(var d in Il)if(b==Il[d]){b=+d;(d=Hl[d])&&(b=d);break}for(var e in Ll)if((d=Ll[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Ll[e]==d),d){(a=a.ya["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}h.Lc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.R=Gb(a,"ChipSet")};
c,c.onclick=function(){e.M&&e.M.Uc();Ol(e,1145,!0)},!0;default:var g=b.toUpperCase().replace(/-/g,"_");if(void 0!==Kl[g]&&"button"==a)return this.ya[f]=c,c.onclick=function(a,b,c){return function(){a.M&&a.M.Uc();Pl(a,c,!0);Ol(a,c,!0)}}(this,g,Kl[g]),!0;if(void 0!==Ll[b])return this.da++,this.ya[f]=c,a=function(a,b,c){return function(){Ol(a,c)}}(this,b,Ll[b]),b=function(a,b,c){return function(){Ql(a,c)}}(this,b,Ll[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
c.onmouseout=b),!0;if(d)return this.ya[f]=c,c.onclick=function(){e.M&&e.M.Uc();d&&!e.O&&(e.O=d,Rl(e,300))},!0}return!1};function Sl(a,b,c){if(a.da){for(var d in Il)if(b==Il[d]){b=+d;(d=Hl[d])&&(b=d);break}for(var e in Ll)if((d=Ll[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Ll[e]==d),d){(a=a.ya["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}h.Lc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.R=Gb(a,"ChipSet")};
function Fl(a,b){var c=0;a.na=null;b&&(a.na=b.toUpperCase(),c=Gl.indexOf(a.na),0>c&&(c=0));b=Gl[c];a.ta=parseInt(b.substr(2),10)}function nl(a,b){pb(a,"keyboard reset",65792);a.A=[170];a.ia=!0;b&&a.R&&pl(a.R,a.A[0])}function jl(a,b,c){a.W!==c&&(a.W=a.X=c)&&(a.ia=!0);a.Z!==b&&(a.Z=b)&&!a.X&&ql(a,!0);a.Z&&a.X&&(nl(a,!0),a.X=!1)}function kl(a){var b=0;a.A.length&&a.ia&&(b=a.A[0],a.R&&pl(a.R,b));n(a)&&pb(a,"scan code "+ha(b)+" available")}
function ql(a,b){0<a.A.length&&(a.A.shift(),(a.ia=b)&&(a.A.length&&a.R?pl(a.R,a.A[0]):b=!1),n(a)&&pb(a,"scan codes shifted, notify "+(b?"true":"false")))}h.qc=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};h.pc=function(a){return a?this.save():!0};h.reset=function(){if(!this.na&&this.R)switch(this.R.na){case Xj:case 5160:Fl(this,Gl[0]);break;default:Fl(this,Gl[1])}Tl(this);this.wc=this.P=0;this.A=[];this.ia=!0;this.O=""};
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.W;c[b]=this.Z;af(a,0,c);return a.data()};h.restore=function(a){return Tl(this,a[0])};function Tl(a,b){var c=0;void 0===b&&(b=[]);a.W=a.ia=b[c++];a.Z=b[c];return!0}function Pl(a,b){if(0<a.O.length){var c=a.O.charCodeAt(0);10==c&&(c=13);a.O=a.O.substr(1);Ol(a,c,!0)}0<a.O.length&&setTimeout(function(a){return function(){Pl(a,b)}}(a),b)}
function Ql(a,b,c,d){if(Z[b]){var e=Math.floor(b/1E3)&2;if(b=Jl[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.P:a.wc)&b):d||b&255&&(b=255);if(c){a.P&=~b;d&&(a.P|=b);c=b;var f,g;for(g in Ml)d="led-"+g,e=Ml[g],c&&c!=e||!(f=a.ya[d])||(f.style.backgroundColor=a.P&e?"#00ff00":"#000000")}else a.wc&=~b,d&&(a.wc|=b);return!0}}return!1}
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.W;c[b]=this.Z;af(a,0,c);return a.data()};h.restore=function(a){return Tl(this,a[0])};function Tl(a,b){var c=0;void 0===b&&(b=[]);a.W=a.ia=b[c++];a.Z=b[c];return!0}function Rl(a,b){if(0<a.O.length){var c=a.O.charCodeAt(0);10==c&&(c=13);a.O=a.O.substr(1);Ol(a,c,!0)}0<a.O.length&&setTimeout(function(a){return function(){Rl(a,b)}}(a),b)}
function Pl(a,b,c,d){if(Z[b]){var e=Math.floor(b/1E3)&2;if(b=Jl[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.P:a.wc)&b):d||b&255&&(b=255);if(c){a.P&=~b;d&&(a.P|=b);c=b;var f,g;for(g in Ml)d="led-"+g,e=Ml[g],c&&c!=e||!(f=a.ya[d])||(f.style.backgroundColor=a.P&e?"#00ff00":"#000000")}else a.wc&=~b,d&&(a.wc|=b);return!0}}return!1}
function Ol(a,b,c){if(Z[b]&&a.M&&a.M.ra.Ob){Jl[b]&&a.C.length&&0<a.C[0].Kd&&(a.C[0].Kd=0);for(var d,e=0;e<a.C.length;e++)if(d=a.C[e],d.Ke==b){if(!c||0<=d.Kd){e=-1;break}0<e&&(0<a.C[0].Kd&&(a.C[0].Kd=0),a.C.splice(e,1));break}0>e||(e==a.C.length&&(d={},d.Ke=b,d.wc=a.wc,Sl(a,b,!0),e++),0<e&&a.C.splice(0,0,d),d.Af=!0,d.Kd=c?-1:Jl[b]?0:1,Ul(a,d))}}
function Rl(a,b,c){if(!Z[b]||!(c||a.M&&a.M.ra.Ob))return!1;for(var d=!1,e=0;e<a.C.length;e++){var f=a.C[e];if(f.Ke==b||f.Ke==Il[b]){a.C.splice(e,1);f.pk&&clearTimeout(f.pk);f.Af&&!c&&Vl(a,f.Ke,!1);Sl(a,b,!1);d=!0;break}}!a.C.length&&a.la&&(Ql(a,1020),a.la=!1);return d}function Ul(a,b){if(!a.M||!a.M.ra.Ob)Rl(a,b.Ke,!0);else if(Vl(a,b.Ke,b.Af)&&b.Kd){var c;if(0>b.Kd){if(!b.Af){Rl(a,b.Ke);return}b.Af=!1;c=a.wa}else c=1==b.Kd++?500:100;b.pk=setTimeout(function(a){return function(){Ul(a,b)}}(a),c)}}
function Ql(a,b,c){if(!Z[b]||!(c||a.M&&a.M.ra.Ob))return!1;for(var d=!1,e=0;e<a.C.length;e++){var f=a.C[e];if(f.Ke==b||f.Ke==Il[b]){a.C.splice(e,1);f.pk&&clearTimeout(f.pk);f.Af&&!c&&Vl(a,f.Ke,!1);Sl(a,b,!1);d=!0;break}}!a.C.length&&a.la&&(Pl(a,1020),a.la=!1);return d}function Ul(a,b){if(!a.M||!a.M.ra.Ob)Ql(a,b.Ke,!0);else if(Vl(a,b.Ke,b.Af)&&b.Kd){var c;if(0>b.Kd){if(!b.Af){Ql(a,b.Ke);return}b.Af=!1;c=a.wa}else c=1==b.Kd++?500:100;b.pk=setTimeout(function(a){return function(){Ul(a,b)}}(a),c)}}
function Wl(a,b,c){var d=b;if(65<=b&&90>=b)!(a.wc&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.wc&515)==c&&(d=b-32);else if(!!(a.wc&3)==c){if(a=Il[b])d=a}else if(a=Hl[b])d=a;return d}h.Fg=function(a){a||(this.wc&=-256)};
function Nl(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,k=Wl(a,g,!0);a.eh&&k==X["`"]&&(g=k=27);if(Z[g+1E3])if(k+=1E3,2==b.location&&(k+=2E3),Ql(a,k,!1,c)){if(20==g||144==g||145==g)a.qa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var q=0;q<a.C.length;q++){var r=a.C[q];r.Af=!1;0<r.Kd&&(r.Kd=0)}}else 8==g&&8==(a.wc&40)&&(k=4008),d=!1;else if(Z[k]&&a.wc&60&&(d=!1),d&&c||a.wc&192)f=!0;d||b.preventDefault();f||a.ka&&d||(c?Ol(a,k,e):Rl(a,k)||(b=Wl(a,g,!1),b!=k&&Rl(a,b)));return d}
function Vl(a,b,c){var d=!1;Ql(a,b,!0,c);var e=Z[b]||Z[b+1E3];if(void 0!==e){14==e&&40==(a.wc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ta)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,k=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==k?a.P&3||a.P&512&&b||(g=k):29==k?a.P&12||(g=k):56==k?a.P&48||(g=k):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(n(e)&&pb(e,"scan code "+ha(f)+" buffered"),e.A.push(f),
function Nl(a,b,c){var d=!0,e=!1,f=!1,g=b.keyCode,k=Wl(a,g,!0);a.eh&&k==X["`"]&&(g=k=27);if(Z[g+1E3])if(k+=1E3,2==b.location&&(k+=2E3),Pl(a,k,!1,c)){if(20==g||144==g||145==g)a.qa||(c=e=!0);if(!(c||91!=g&&93!=g))for(var q=0;q<a.C.length;q++){var r=a.C[q];r.Af=!1;0<r.Kd&&(r.Kd=0)}}else 8==g&&8==(a.wc&40)&&(k=4008),d=!1;else if(Z[k]&&a.wc&60&&(d=!1),d&&c||a.wc&192)f=!0;d||b.preventDefault();f||a.ka&&d||(c?Ol(a,k,e):Ql(a,k)||(b=Wl(a,g,!1),b!=k&&Ql(a,b)));return d}
function Vl(a,b,c){var d=!1;Pl(a,b,!0,c);var e=Z[b]||Z[b+1E3];if(void 0!==e){14==e&&40==(a.wc&40)&&(e=83);var d=[],f=e&255;if(83<f&&83==a.ta)return!1;d.push(f|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var g=0,k=e&255;224==f||225==f?d.push(f|(c?0:128)):(42==k?a.P&3||a.P&512&&b||(g=k):29==k?a.P&12||(g=k):56==k?a.P&48||(g=k):d.push(f|(c?0:128)),g&&(c?d.unshift(g):d.push(g|128)))}for(c=0;c<d.length;c++)e=a,f=d[c],e.A&&(20>e.A.length?(n(e)&&pb(e,"scan code "+ha(f)+" buffered"),e.A.push(f),
1==e.A.length&&e.R&&pl(e.R,f)):(20==e.A.length&&e.A.push(255),pb(e,"scan code buffer overflow")));d=!0}return d}Sa(function(){for(var a=mb(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=kb(c),d=new El(d);lb(d,c)}});
function Xl(a,b,c,d,e){Xa.call(this,"Video",a,Xl,262144);this.na=a.model;this.nb=Yl[this.na]||Zl;this.Ed=a.memory||0;this.Xf=a.switches;this.Da=a.mode;if(void 0===this.Da||void 0===$l[this.Da])this.Da=am;this.hd=a.charCols;this.je=a.charRows;if(void 0===this.hd||void 0===this.je)this.hd=$l[this.Da][0],this.je=$l[this.Da][1];this.Ba=a.screenWidth;this.Ma=a.screenHeight;this.Qg=a.scale;this.Pg=12<=Math.round(this.Ba/this.hd);this.wa=b;this.qa=c;this.ia=(this.Ak=d)||b||null;this.cg=a.touchScreen;this.ke=
bm;this.Z=null;this.Og=a.autoLock;this.sb=this.fc=0;this.Ua=[];this.Ja=Array(this.nb==vl?256:16);this.xb=!1;var f=this;this.nf=Ja("Gecko/");b=["","moz","webkit","ms"];if(this.la=e)if(this.la.Ue=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.la.Ue){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){cm(f,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||
@ -934,7 +934,7 @@ function Qm(a,b){if(1==b)return a.Ja[0]=hm[0],a.Ja[1]=hm[7],a.Ja;if(2==b){var c=
(c.Tc[20]&12)<<4,c.Tc[16]&128&&(g&=-49,g|=(c.Tc[20]&3)<<4),g=d[g],k=g<<2&252,q=g>>4&252,g=g>>10&252):(k=(g&4?170:0)|(g&32?85:0),q=(g&2?170:0)|(g&16?85:0),g=(g&1?170:0)|(g&8?85:0)),a.Ja[f]=[k,q,g,255]}a.xb=!0}return a.Ja}function ul(a,b,c,d){a.Jc=b;a.sd=c;a.rb=d}
function Mm(a,b){var c=!1;if(window&&a.Jc&&(!b||a.W)){var d=0,e=a.rb?a.rb:8,f=Qm(a);Rm(a,3,a.sd[0],d,e,8,a.Jc,f)&&(c=!0);d=a.rb?0:2048;e=a.rb?a.rb:9;Rm(a,1,a.sd[1],d,e,14,a.Jc,fm,gm)&&(c=!0);a.rb&&Rm(a,a.nb,a.sd[1],0,a.rb,14,a.Jc,f)&&(c=!0)}return c}function Rm(a,b,c,d,e,f,g,k,q){var r=!1;null!=c&&(Sm(a,b,c,d,e,f,g,k,q)&&(r=!0),a.Pg&&Sm(a,b<<1,c,d,e,f,g,k,q)&&(r=!0));return r}
function Sm(a,b,c,d,e,f,g,k,q){var r=!1,x=b&1?0:1,B=a.Ua[b],y=16>k.length?k.length:16;B||(B={Qc:e<<x,Rc:f<<x,Me:Array(y),ui:k.slice(0,y),wf:q,Tg:Array(y)});for(q=0;q<y;q++){var J=k[q],U=B.Me[q]?B.ui[q]:[];if(J[0]!==U[0]||J[1]!==U[1]||J[2]!==U[2]){var r=B,U=q,F=x,O=c,V=d,Y=e,ga=f,da=g,bb=[0,0,0,0],ta=window.document.createElement("canvas");ta.width=r.Qc<<4;ta.height=r.Rc<<4;for(var pa=ta.getContext("2d"),Ma=void 0,$a=void 0,Ia=void 0,Vb=8>ga||!V?ga:8,Da=pa.createImageData(r.Qc,r.Rc),Ma=0;256>Ma;Ma++){for(Ia=
0;Ia<ga;Ia++)for(var Sd=r.wf&&U&1&&Ia>=ga-2,Tc=da[Ia<Vb?O+Ma*Vb+Ia:V+Ma*Vb+Ia-Vb],Td=0;Td<=F;Td++)for($a=0;$a<Y;$a++){var De=$a<<F,Ud=(Ia<<F)+Td,Ee=Sd||Tc&128>>(8<=$a&&192<=Ma&&223>=Ma?7:$a)?J:bb;Tm(Da,De,Ud,Ee);F&&Tm(Da,De+1,Ud,Ee)}pa.putImageData(Da,(Ma&15)*r.Qc,(Ma>>4)*r.Rc)}r.Me[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.ui[U]=J;r.Tg[U]=ta;r=!0}}a.Ua[b]=B;return r}function Um(a){0<a.eb||0<=a.ta?0>a.Yb&&(a.Yb=0):a.Yb=-1}
0;Ia<ga;Ia++)for(var Sd=r.wf&&U&1&&Ia>=ga-2,Sc=da[Ia<Vb?O+Ma*Vb+Ia:V+Ma*Vb+Ia-Vb],Td=0;Td<=F;Td++)for($a=0;$a<Y;$a++){var De=$a<<F,Ud=(Ia<<F)+Td,Ee=Sd||Sc&128>>(8<=$a&&192<=Ma&&223>=Ma?7:$a)?J:bb;Tm(Da,De,Ud,Ee);F&&Tm(Da,De+1,Ud,Ee)}pa.putImageData(Da,(Ma&15)*r.Qc,(Ma>>4)*r.Rc)}r.Me[U]="#"+l(J[0],2)+l(J[1],2)+l(J[2],2);r.ui[U]=J;r.Tg[U]=ta;r=!0}}a.Ua[b]=B;return r}function Um(a){0<a.eb||0<=a.ta?0>a.Yb&&(a.Yb=0):a.Yb=-1}
function Pm(a){if(a.W){for(var b=10;15>=b;b++)if(null==a.C.zb[b])return;var c=a.C.zb[10],b=c&31,d=a.C.zb[11]&31,e=a.C.zb[9]&31,f=!1;a.C===a.A&&(f=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!f||b>e)qn(a);else{c=a.C.zb[15]+((a.C.zb[14]&63)<<8);a.ta!=c&&(qn(a),a.ta=c);d=d-b+1;if(a.eg!=b||a.ye!=d)a.eg=b,a.ye=d;a.ib=e+1;Um(a)}}}
function qn(a){if(0<=a.ta){if(void 0!==a.ka){var b=a.ka[a.ta];if(b&131072){var b=b&-131073,c=a.ta%a.O,d=a.ta/a.O|0;a.W&&a.Ua[a.W]&&(a.qb&&rn(a,c,d,b,a.qb),rn(a,c,d,b));a.ka[a.ta]=b}}a.ta=-1}}
function sn(a){var b,c=a.C;a.Be=!1;var d=c.Zd[5];if(null!=d){b=1024;var e=0,f=c.Zd[3]&31;switch(d&3){case 0:if(f){e=32;switch(f&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.dd=f&7}break;case 1:e=1;break;case 2:switch(f&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.nb==vl&&(e=3,c.dd=f&7)}d&8&&(b=1280);c=c.He[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.Be=!0));b|=e}return b}
@ -967,14 +967,14 @@ var Am={948:Xl.prototype.Gl,949:Xl.prototype.Fl,952:Xl.prototype.Hl,954:Xl.proto
960:Xl.prototype.dk,961:Xl.prototype.dk,962:Xl.prototype.Zm,964:Xl.prototype.gn,965:Xl.prototype.fn,970:Xl.prototype.Sm,972:Xl.prototype.Rm,974:Xl.prototype.Qm,975:Xl.prototype.Pm,986:Xl.prototype.ek},Gm={963:Xl.prototype.Tl,966:Xl.prototype.tl,967:Xl.prototype.ul,969:Xl.prototype.sl,970:Xl.prototype.Ul,972:Xl.prototype.Vl},Hm={963:Xl.prototype.jn,966:Xl.prototype.Hm,967:Xl.prototype.Im,968:Xl.prototype.Jm,969:Xl.prototype.Gm};
Sa(function(){for(var a=mb(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=kb(c),e=window.document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(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.onresize());c.appendChild(e);var f=window.document.createElement("textarea");Ja("iOS")&&(f.setAttribute("autocapitalize","off"),f.setAttribute("autocorrect","off"));c.appendChild(f);var g=e.getContext("2d"),d=new Xl(d,e,g,f,c);lb(d,c)}});
function Cn(a){this.Da=a.adapter;switch(this.Da){case 1:this.wa=1016;this.la=4;break;case 2:this.wa=760;this.la=3;break;default:Ba("Unrecognized serial adapter #"+this.Da);return}this.ia=this.W=null;this.Ha=a.tabSize;this.da=0;Xa.call(this,"SerialPort",a,Cn,4194304);var b=a.binding;if("console"==b)this.W="";else{var c;a=Dn;b&&(void 0===c&&(c="Panel"),(c=jb(c,this.id))&&(b=c.ya[b])&&this.Xb(null,a,b))}}gb(Cn);var Dn="buffer";h=Cn.prototype;h.yi=function(a,b){return a==this.ce?(this.Z=b,this):null};
h.Xb=function(a,b,c){var d=this;switch(b){case Dn:return this.ya[b]=this.ia=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),En(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;En(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
function Cn(a){this.Ha=a.adapter;switch(this.Ha){case 1:this.wa=1016;this.la=4;break;case 2:this.wa=760;this.la=3;break;default:Ba("Unrecognized serial adapter #"+this.Ha);return}this.ia=this.W=null;this.Ja=a.tabSize;this.Da=a.charBOL;this.X=0;Xa.call(this,"SerialPort",a,Cn,4194304);var b=a.binding;if("console"==b)this.W="";else{var c;a=Dn;b&&(void 0===c&&(c="Panel"),(c=jb(c,this.id))&&(b=c.ya[b])&&this.Xb(null,a,b))}}gb(Cn);var Dn="buffer";h=Cn.prototype;
h.yi=function(a,b){return a==this.ce?(this.Z=b,this):null};h.Xb=function(a,b,c){var d=this;switch(b){case Dn:return this.ya[b]=this.ia=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),En(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;En(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
h.Lc=function(a,b,c,d){this.ja=b;this.M=c;this.ma=d;this.R=Gb(a,"ChipSet");jc(b,this,Fn,this.wa);nc(b,this,Gn,this.wa);ub(this)};h.qc=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};h.pc=function(a){return a?this.save():!0};h.reset=function(){Hn(this)};
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.ta;c[b++]=this.Ba;c[b++]=this.X;c[b++]=this.qa;c[b++]=this.O;c[b++]=this.C;c[b++]=this.P;c[b++]=this.A;c[b++]=this.za;c[b]=this.ka;af(a,0,c);return a.data()};h.restore=function(a){return Hn(this,a[0])};function Hn(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ta=b[c++];a.Ba=b[c++];a.X=b[c++];a.qa=b[c++];a.O=b[c++];a.C=b[c++];a.P=b[c++];a.A=b[c++];a.za=b[c++];a.ka=b[c];return!0}function En(a,b){a.ka=a.ka.concat(b);In(a)}
function In(a){0<a.ka.length&&!(a.A&1)&&(a.ta=a.ka.shift(),a.A|=1);var b=-1;a.A&1&&a.qa&1&&(b=4);0<=b?(a.O&=-8,a.O|=b,a.R&&a.la&&Wf(a.R,a.la,100)):(a.O|=1,a.R&&a.la&&Vf(a.R,a.la))}h.Pl=function(a,b){var c=this.C&128?this.X&255:this.ta;m(this,a,null,b,this.C&128?"DLL":"RBR",c);this.A&=-2;In(this);return c};h.Al=function(a,b){var c=this.C&128?this.X>>8:this.qa;m(this,a,null,b,this.C&128?"DLM":"IER",c);return c};h.Bl=function(a,b){var c=this.O;m(this,a,null,b,"IIR",c);return c};
h.save=function(){var a=new $e(this),b=0,c=[];c[b++]=this.ta;c[b++]=this.Ba;c[b++]=this.da;c[b++]=this.qa;c[b++]=this.O;c[b++]=this.C;c[b++]=this.P;c[b++]=this.A;c[b++]=this.za;c[b]=this.ka;af(a,0,c);return a.data()};h.restore=function(a){return Hn(this,a[0])};function Hn(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ta=b[c++];a.Ba=b[c++];a.da=b[c++];a.qa=b[c++];a.O=b[c++];a.C=b[c++];a.P=b[c++];a.A=b[c++];a.za=b[c++];a.ka=b[c];return!0}function En(a,b){a.ka=a.ka.concat(b);In(a)}
function In(a){0<a.ka.length&&!(a.A&1)&&(a.ta=a.ka.shift(),a.A|=1);var b=-1;a.A&1&&a.qa&1&&(b=4);0<=b?(a.O&=-8,a.O|=b,a.R&&a.la&&Wf(a.R,a.la,100)):(a.O|=1,a.R&&a.la&&Vf(a.R,a.la))}h.Pl=function(a,b){var c=this.C&128?this.da&255:this.ta;m(this,a,null,b,this.C&128?"DLL":"RBR",c);this.A&=-2;In(this);return c};h.Al=function(a,b){var c=this.C&128?this.da>>8:this.qa;m(this,a,null,b,this.C&128?"DLM":"IER",c);return c};h.Bl=function(a,b){var c=this.O;m(this,a,null,b,"IIR",c);return c};
h.Cl=function(a,b){var c=this.C;m(this,a,null,b,"LCR",c);return c};h.El=function(a,b){var c=this.P;m(this,a,null,b,"MCR",c);return c};h.Dl=function(a,b){var c=this.A;m(this,a,null,b,"LSR",c);return c};h.Jl=function(a,b){var c=this.za;m(this,a,null,b,"MSR",c);return c};
h.hn=function(a,b,c){m(this,a,b,c,this.C&128?"DLL":"THR");if(this.C&128)this.X=this.X&-256|b;else{this.Ba=b;this.A&=-97;if(this.ia)13==b?this.da=0:8==b?(this.ia.value=this.ia.value.slice(0,-1),0<this.da&&this.da--):(a=String.fromCharCode(b),c=32<=b?1:0,9==b&&(b=this.Ha||8,c=b-this.da%b,this.Ha&&(a=oa("",c))),this.ia.value+=a,this.ia.scrollTop=this.ia.scrollHeight,this.da+=c),b=!0;else if(null!=this.W){if(10==b||1024<=this.W.length)this.U(this.W),this.W="";10!=b&&(this.W+=String.fromCharCode(b));b=
!0}else b=!1;b&&(this.A|=96)}};h.Tm=function(a,b,c){m(this,a,b,c,this.C&128?"DLM":"IER");this.C&128?this.X=this.X&255|b<<8:this.qa=b};h.Um=function(a,b,c){m(this,a,b,c,"LCR");this.C=b};
h.hn=function(a,b,c){m(this,a,b,c,this.C&128?"DLL":"THR");if(this.C&128)this.da=this.da&-256|b;else{this.Ba=b;this.A&=-97;if(this.ia)13==b?this.X=0:8==b?(this.ia.value=this.ia.value.slice(0,-1),0<this.X&&this.X--):(a=String.fromCharCode(b),c=32<=b?1:0,9==b&&(b=this.Ja||8,c=b-this.X%b,this.Ja&&(a=oa("",c))),this.Da&&!this.X&&c&&(a=String.fromCharCode(this.Da)+a),this.ia.value+=a,this.ia.scrollTop=this.ia.scrollHeight,this.X+=c),b=!0;else if(null!=this.W){if(10==b||1024<=this.W.length)this.U(this.W),
this.W="";10!=b&&(this.W+=String.fromCharCode(b));b=!0}else b=!1;b&&(this.A|=96)}};h.Tm=function(a,b,c){m(this,a,b,c,this.C&128?"DLM":"IER");this.C&128?this.da=this.da&255|b<<8:this.qa=b};h.Um=function(a,b,c){m(this,a,b,c,"LCR");this.C=b};
h.Vm=function(a,b,c){var d=this.P;m(this,a,b,c,"MCR");this.P=b;this.Z&&(d^b)&3&&(a=this.Z,b=this.P,(c=3==(b&3))?a.Hc||(d=!1,a.P&2||(a.reset(),pb(a,"serial mouse reset"),d=!0),a.P&1||(pb(a,"serial mouse ID requested"),d=!0),d&&(En(a.R,[77,77]),pb(a,"serial mouse ID sent")),Jn(a),a.Hc=c):a.Hc&&(pb(a,"serial mouse inactive"),Kn(a),a.Hc=c),a.P=b)};
var Fn={0:Cn.prototype.Pl,1:Cn.prototype.Al,2:Cn.prototype.Bl,3:Cn.prototype.Cl,4:Cn.prototype.El,5:Cn.prototype.Dl,6:Cn.prototype.Jl},Gn={0:Cn.prototype.hn,1:Cn.prototype.Tm,3:Cn.prototype.Um,4:Cn.prototype.Vm};Sa(function(){for(var a=mb(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=kb(c),d=new Cn(d);lb(d,c)}});function Ln(a){Xa.call(this,"Mouse",a,Ln,33554432);if(this.ta=a.serial)this.wa="SerialPort";this.qa=this.la=this.Hc=!1;this.C=[];this.A=[];ub(this)}gb(Ln);var Km=0;h=Ln.prototype;
h.Lc=function(a,b,c,d){this.ia=a;this.ja=b;this.M=c;this.ma=d;for(b=null;b=Gb(a,"Video",b);)this.C.push(b)};h.qc=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.wa&&!this.R){for(var c=null;(c=Gb(this.ia,this.wa,c))&&(!c.yi||!(this.R=c.yi(this.ta,this))););if(this.R)for(this.A=[],c=0;c<this.C.length;c++){var d;d=this.C[c];d.Z=this;(d=d.ia)&&this.A.push(d)}else Ba(this.id+": "+this.wa+" "+this.ta+" unavailable")}this.Hc?Jn(this):Kn(this)}return!0};
@ -1129,7 +1129,7 @@ function oq(a,b){b=gq(a,b);for(var c=0,d,e;0<=(c=b.indexOf("@",c));)e=lq(b,c+1),
function Qj(a,b,c,d){var e,f;if(!d&&(d=n(a,1)&&0>vp.indexOf(b),!d)){var g=up[b];g&&(d=n(a,g)?!0:524288==g&&n(a,g=1048576))}d&&(e=a.M.F>>8&255,f=a.M.H&255,33==b&&11==e||524288==g&&128<=f||1048576==g&&128>f)&&(d=!1);d&&((g=(g=Ab[b])&&g[e]||"")&&(g=" "+oq(a,g)),a.message("INT "+ha(b)+": AH="+ha(e)+" at "+Rp(c-2-a.M.Ca.Ea,a.M.Ca.ga)+g));return d}
function ob(a,b,c,d,e,f,g,k){k|=256;if(null==e||(a.vc&k)==k)k=null,null!=e&&(k=a.M.Ca.ga,e-=a.M.Ca.Ea),a.message(b.ce+"."+(null!=d?"outPort":"inPort")+"("+ia(c)+","+(f?f:"unknown")+(null!=d?","+ha(d):"")+")"+(null!=g?": "+ha(g):"")+(null!=e?" at "+Rp(e,k):""))}h.jh=function(){this.U("Type ? for help with PCjs Debugger commands");this.qd();if(this.rb){var a=this.rb;this.rb=null;tp(this,a)}};
function rp(a,b){var c;if(Kf(a)){if(!a.qa||!a.qa.length){a.qa=Array(1E3);for(c=0;c<a.qa.length;c++)a.qa[c]=pp(a);a.Oa=0;b||a.U("instruction history buffer allocated")}if(!a.X||!a.X.length)for(a.X=Array(256),c=0;c<a.X.length;c++)a.X[c]=[c,0]}else a.qa&&a.qa.length&&!b&&a.U("instruction history buffer freed"),a.Oa=0,a.qa=[],a.X=[]}h.Ie=function(a){if(!pq(this))return!1;this.M.Ie(a);return!0};
h.sf=function(a,b,c){if(!pq(this))return!1;this.ka=0;do{a||Kf(this)&&Nf(this,this.M.Na,0);try{var d=this.M.sf(a);0<d&&(this.ka+=d,bd(this.M,d,!0),Uc(this.M,d),this.wa++)}catch(f){if("number"!=typeof f){var e=f;this.ka=0;wb(this.M,e.stack||e.message)}}}while(this.M.V&3312);!1!==c&&Rc(this.M);this.qd(b||!1);return 0<this.ka};h.bc=function(a){this.M&&this.M.bc(a)};h.qd=function(a){void 0===a&&(a=!0);this.da=pp(this,v(this.M),this.M.Ca.ga);a&&1!=this.P?qq(this):rq(this)};
h.sf=function(a,b,c){if(!pq(this))return!1;this.ka=0;do{a||Kf(this)&&Nf(this,this.M.Na,0);try{var d=this.M.sf(a);0<d&&(this.ka+=d,bd(this.M,d,!0),Wc(this.M,d),this.wa++)}catch(f){if("number"!=typeof f){var e=f;this.ka=0;wb(this.M,e.stack||e.message)}}}while(this.M.V&3312);!1!==c&&Rc(this.M);this.qd(b||!1);return 0<this.ka};h.bc=function(a){this.M&&this.M.bc(a)};h.qd=function(a){void 0===a&&(a=!0);this.da=pp(this,v(this.M),this.M.Ca.ga);a&&1!=this.P?qq(this):rq(this)};
function pq(a){var b;if(b=a.M&&vb(a.M))b=a.M,b.ra.gc?b=!0:(b.U(b.toString()+" not powered"),b=!1);b&&!rb(a.M)?(a=a.M,a.ra.wd?(a.U(a.toString()+" error"),a=!0):a=!1,a=!a):a=!1;return a}h.qc=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};h.pc=function(a,b){b&&this.U(a?"suspending":"shutting down");return a?this.save():!0};h.reset=function(a){rp(this);this.wa=this.Ha=0;this.eb=null;this.ka=0;this.da=pp(this,v(this.M),this.M.Ca.ga);this.ra.Ob=!1;sq(this);a||this.qd()};
h.save=function(){var a=new $e(this);af(a,0,cq(this.da));af(a,1,cq(this.Ba));af(a,2,[this.O,this.Ma,this.vc]);af(a,3,this.C);return a.data()};h.restore=function(a){var b=0;void 0!==a[2]&&(this.da=dq(a[b++]),this.Ba=dq(a[b++]),this.O=a[b][0],"string"==typeof this.O&&(this.O=[this.O]),this.Ma=a[b][1],this.vc|=a[b][2]);a[3]&&(this.C=a[3]);return!0};h.start=function(a,b){this.P||this.U("running");this.ra.Ob=!0;this.mc=a;this.zd=b};
h.stop=function(a,b){if(this.ra.Ob){this.ra.Ob=!1;this.ka=b-this.zd;if(!this.P){var c="stopped";if(this.ka){var d=a-this.mc,e=0<d?Math.round(1E3*this.ka/d):0,c=c+" (";Kf(this)&&(c+=this.wa+" opcodes, ",this.Ha-=this.wa,this.wa=0);c+=this.ka+" cycles, "+d+" ms, "+e+" hz)"}this.U(c)}this.qd(!0);this.Uc();sq(this,this.M.Na)}};function Kf(a){return 1<a.A.length||!!a.Ua||n(a,16)}
@ -1178,18 +1178,18 @@ fq(a,g[1],!0);if(B)if(a.Ba=B,void 0===g[2])a.U("begin assemble at "+Zp(B)),a.Ma=
a.U("\tbc [a]\tclear breakpoint at addr [a]"),a.U("\tbl\tlist all breakpoints"),a.U("\tbn [n]\tbreak after [n] instruction(s)");else{var V=U.charAt(1);if("l"==V){var Y=0,Y=Y+wq(a,a.A),Y=Y+wq(a,a.za);(Y+=wq(a,a.la))||a.U("no breakpoints")}else if("n"==V)a.Ua=Lp(a,F),a.U("break after "+a.Ua+" instruction(s)");else if(void 0===F)a.U("missing breakpoint address");else{var ga={};if("*"!=F&&(ga=fq(a,F,!0,!0),!ga))break a;F=null==ga.Xa?F:ia(ga.Xa);"c"==V?null==ga.Xa?(qp(a),a.U("all breakpoints cleared")):
Yp(a,a.A,ga)||Yp(a,a.za,ga)||Yp(a,a.la,ga)||a.U("breakpoint missing: "+Zp(ga)):"i"==V?a.U("breakpoint "+(ic(a.ja,ga.Xa)?"enabled":"cleared")+": port "+F+" (input)"):"o"==V?a.U("breakpoint "+(mc(a.ja,ga.Xa)?"enabled":"cleared")+": port "+F+" (output)"):null!=ga.Xa&&(iq(a,ga,O),"p"==V?a.Od(a.A,ga):"r"==V?a.Od(a.za,ga):"w"==V?a.Od(a.la,ga):a.U("unknown breakpoint command: "+V))}}}break;case "c":Mq(a);break;case "d":a:{var da=g,bb,ta=da[0],pa=da[1],Ma=da[2],$a=da[3];if("?"==pa){var Ia="";for(bb in Dp)a.ib[bb]&&
(Ia&&(Ia+=","),Ia+=bb);Ia+=",state,symbols";a.U("dump memory commands:");a.U("\tdb [a] [#] dump # bytes at address a");a.U("\tdw [a] [#] dump # words at address a");a.U("\tdd [a] [#] dump # dwords at address a");a.U("\tdh [#] [#] dump # instructions from history");a.U("\tds [#] dump descriptor info for selector #");Ia.length&&a.U("dump extension commands:\n\t"+Ia)}else if("state"==pa){var Vb=Uq(a.ia,!0);"console"==Ma?console.log(Vb):(Mq(a),a.U(Vb))}else if("symbols"==pa)for(var Da=
0;Da<a.C.length;Da++){var Sd=a.C[Da],Tc;for(Tc in Sd.Nd)if("."!=Tc.charAt(0)){var Td=Sd.Nd[Tc],De=Td.o;if(void 0!==De){var Ud=Td.s;void 0===Ud&&(Ud=Sd.ga);var Ee=Sd.Nd[Tc].l;Ee&&(Tc=Ee);a.U(Rp(De,Ud)+" "+Tc)}}}else{if("ds"==ta||"dg"==ta||"dl"==ta)ta="d",da=[ta,"desc",pa];"d"==ta&&"page"==pa&&(ta="dp",da.shift());if("dp"==ta){da.shift();var hi=da[0];if(hi){var Qe=a.hc(fq(a,hi));if(-1===Qe)a.U("invalid address: "+hi);else{var Yd,Ka=null;if(80386<=a.M.na){var Zd=a.ja,Ka={};Ka.bk=(Qe&-4194304)>>>20;Ka.wi=
0;Da<a.C.length;Da++){var Sd=a.C[Da],Sc;for(Sc in Sd.Nd)if("."!=Sc.charAt(0)){var Td=Sd.Nd[Sc],De=Td.o;if(void 0!==De){var Ud=Td.s;void 0===Ud&&(Ud=Sd.ga);var Ee=Sd.Nd[Sc].l;Ee&&(Sc=Ee);a.U(Rp(De,Ud)+" "+Sc)}}}else{if("ds"==ta||"dg"==ta||"dl"==ta)ta="d",da=[ta,"desc",pa];"d"==ta&&"page"==pa&&(ta="dp",da.shift());if("dp"==ta){da.shift();var hi=da[0];if(hi){var Qe=a.hc(fq(a,hi));if(-1===Qe)a.U("invalid address: "+hi);else{var Yd,Ka=null;if(80386<=a.M.na){var Zd=a.ja,Ka={};Ka.bk=(Qe&-4194304)>>>20;Ka.wi=
a.M.Md+Ka.bk;Ka.Db=Zd.xa[(Ka.wi&Zd.Lb)>>>Zd.Pa];Ka.Ui=Ka.Db.Yd(Ka.bk);Ka.ck=(Qe&4190208)>>>10;Ka.xi=(Ka.Ui&-4096)+Ka.ck;Ka.Eb=Zd.xa[(Ka.xi&Zd.Lb)>>>Zd.Pa];Ka.Vi=Ka.Eb.Yd(Ka.ck);Ka.Jk=(Ka.Vi&-4096)+(Qe&4095)}if(Yd=Ka){a.U("linear PDE addr PDE PTE addr PTE physical");a.U("--------- ---------- -------- ---------- -------- ----------");var rd="%"+l(Qe),rd=rd+(" %%"+kq(Yd.wi,Yd.Ui)),rd=rd+(" %%"+kq(Yd.xi,Yd.Vi,!0)),rd=rd+(" %%"+l(Yd.Jk));a.U(rd)}else a.U("unsupported operation")}}else a.U("missing address")}else{if("d"==
ta){if("disk"==pa){da[0]="l";da[1]="json";Qq(a,da);break a}for(bb in Dp)if(da[1]==bb){var Vm=a.ib[bb];Vm?(da.shift(),da.shift(),Vm(da)):a.U("no dump registered for "+pa);break a}pa||(ta=a.Jc||"db")}else a.Jc=ta;if("dh"==ta){var Wm=pa,Xm=Ma,Ym="",Zm=0,sb=a.Oa,vc=a.qa;if(vc.length){var Fb=+Wm||a.Zb,$d=+Xm||10;isNaN(Fb)?Fb=$d:Ym="more ";Fb>vc.length&&(a.U("note: only "+vc.length+" available"),Fb=vc.length);sb-=Fb;0>sb&&(null==vc[vc.length-1].ga?(Fb=sb+Fb,sb=0):sb+=vc.length);var ii=[];"call"==Xm&&($d=
1E5,ii=["CALL"]);for(void 0!==Wm&&a.U(Fb+" instructions earlier:");0<$d&&sb!=a.Oa;){var tb=vc[sb++];if(null==tb.ga)break;var tb=pp(a,tb.Xa,tb.ga,tb.Ia,tb.type,tb.Wb,tb.oc),$m=yq(a,tb,"history",Fb--);(!ii.length||0<=$m.indexOf(ii[0]))&&a.U($m);tb.Qe&&(sb+=tb.Qe,$d-=tb.Qe,Fb-=tb.Qe);sb>=vc.length&&(sb=0);a.Zb=Fb;Zm++;$d--}}Zm||(a.U("no "+Ym+"history available"),a.Zb=void 0)}else if("di"==ta)da.shift(),a.U("no information");else{var ae=fq(a,pa);if(ae&&(null!=ae.ga||null!=ae.Ia)){var pg=0;Ma&&("l"==Ma.charAt(0)&&
(Ma=Ma.substr(1)||$a),pg=Lp(a,Ma)>>>0,65536<pg&&(pg=65536));for(var sd="",mr=(pg||128)+15>>4||1,ji="dd"==ta?4:"dw"==ta?2:1,an=0;an<mr;an++){for(var qg=0,ki=0,Re="",li="",pa=Zp(ae),mi=0;16>mi;mi++){var rg=a.Wa(ae,1),qg=qg|rg<<(ki++<<3);ki==ji&&(Re+=l(qg,2*ji),Re+=1==ji?7==mi?"-":" ":" ",qg=ki=0);li+=32<=rg&&128>rg?String.fromCharCode(rg):"."}sd&&(sd+="\n");sd+=pa+" "+Re+" "+li}sd&&a.U(sd);a.Ib=ae}}}}}break;case "e":if("else"==g[0])break;var sg=1,bn=255,cn=a.Wa,dn=a.sc;"ew"==g[0]&&(sg=2,bn=65535,
cn=a.va,dn=a.pb);var en=sg<<1,fn=g[1];if(null==fn)a.U("edit memory commands:"),a.U("\teb [a] [...] edit bytes at address a"),a.U("\tew [a] [...] edit words at address a");else{var tg=fq(a,fn);if(tg)for(var ug=2;ug<g.length;ug++){var Se=hq(a,g[ug]);if(void 0===Se){a.U("unrecognized value: "+g[ug]);break}Se&~bn&&a.U("warning: "+l(Se)+" exceeds "+sg+"-byte value");var nr=cn.call(a,tg);a.U("changing "+Zp(tg)+" from 0x"+l(nr,en)+" to 0x"+l(Se,en));dn.call(a,tg,Se,sg)}}break;case "f":Nq(a,g[1]);break;
case "g":a:{var gn=g[1],or=b;"gt"==g[0]&&(a.lb=!0);if(void 0!==gn){var ni=fq(a,gn,!0);if(!ni)break a;iq(a,ni,or);a.Od(a.A,ni,!0)}a.Ie(!0)||c||a.U("cpu busy or unavailable, run command ignored")}break;case "h":var oi;a.ra.Ob?(oi="halting",a.bc()):oi="already halted";c||a.U(oi);break;case "i":if("if"==g[0]){var pi;var Te=b.substr(2),Te=qa(Te);hq(a,Te)?(c||a.U("true: "+Te),pi=!0):(c||a.U("false: "+Te),pi=!1);pi||(d=!1);break}if("int"==g[0]){var vg;a:switch(Lp(a,g[1])){case 19:Qj(a,19,a.M.Na,!0);a.Ha=
a.wa;vg=!0;break a;case 33:Qj(a,33,a.M.Na,!0);a.Ha=a.wa;vg=!0;break a;default:vg=!1}vg||(d=!1);break}var qi=g[1];if(qi&&"?"!=qi){var ri=Lp(a,qi);if(void 0!==ri){var pr=kc(a.ja,ri,1);a.U(ia(ri)+": "+ha(pr))}}else a.U("input commands:"),a.U("\ti [p]\tread port [p]"),a.U("warning: port accesses can affect hardware state");break;case "k":var qr=g[0];if("?"==g[1])a.U("stack trace commands:"),a.U("\tk\tshow frame addresses"),a.U("\tks\tshow symbol information");else{var si=0,hn=a.M.Ca.ga,Ue=pp(a),Vc=pp(a,
u(a.M),a.M.Aa.ga);for(a.U("stack trace for "+Zp(Vc));10>si;){for(var wc=null,rr=256;Vc.Xa>>>0<a.M.Kg>>>0;){Ue.Xa=a.vb(Vc,!0);if(null==Vc.Ia||!rr--)break;Ue.ga=hn;if(wc=Sq(a,Ue))break;Ue.ga=a.vb(Vc);if(wc=Sq(a,Ue,!0)){hn=a.vb(Vc,!0);0<wc.indexOf("INT")&&a.vb(Vc,!0);break}}if(!wc||null==wc)break;var jn=null;if("ks"==qr){var kn=wc.match(/[0-9A-F]+$/);kn&&(jn=Pq(a,kn[0]))}wc=oa(wc,50)+" ;"+(jn||"stack="+Zp(Vc));a.U(wc);si++}si||a.U("no return addresses found")}break;case "l":if("ln"==g[0]){Pq(a,g[1],
a.wa;vg=!0;break a;case 33:Qj(a,33,a.M.Na,!0);a.Ha=a.wa;vg=!0;break a;default:vg=!1}vg||(d=!1);break}var qi=g[1];if(qi&&"?"!=qi){var ri=Lp(a,qi);if(void 0!==ri){var pr=kc(a.ja,ri,1);a.U(ia(ri)+": "+ha(pr))}}else a.U("input commands:"),a.U("\ti [p]\tread port [p]"),a.U("warning: port accesses can affect hardware state");break;case "k":var qr=g[0];if("?"==g[1])a.U("stack trace commands:"),a.U("\tk\tshow frame addresses"),a.U("\tks\tshow symbol information");else{var si=0,hn=a.M.Ca.ga,Ue=pp(a),Uc=pp(a,
u(a.M),a.M.Aa.ga);for(a.U("stack trace for "+Zp(Uc));10>si;){for(var wc=null,rr=256;Uc.Xa>>>0<a.M.Kg>>>0;){Ue.Xa=a.vb(Uc,!0);if(null==Uc.Ia||!rr--)break;Ue.ga=hn;if(wc=Sq(a,Ue))break;Ue.ga=a.vb(Uc);if(wc=Sq(a,Ue,!0)){hn=a.vb(Uc,!0);0<wc.indexOf("INT")&&a.vb(Uc,!0);break}}if(!wc||null==wc)break;var jn=null;if("ks"==qr){var kn=wc.match(/[0-9A-F]+$/);kn&&(jn=Pq(a,kn[0]))}wc=oa(wc,50)+" ;"+(jn||"stack="+Zp(Uc));a.U(wc);si++}si||a.U("no return addresses found")}break;case "l":if("ln"==g[0]){Pq(a,g[1],
!0);break}Qq(a,g);break;case "m":if("mouse"==g[0]){var ti=g[1],wg=g[2];if(a.Z){var ln=1;"-"==wg.charAt(0)&&(ln=-1,wg=wg.substr(1));var td=Lp(a,wg,ti);if(void 0!==td)switch(td=td*ln|0,ti){case "x":a.Z.Df(td,0);break;case "y":a.Z.Df(0,td);break;case "click":a.Z.he(td,!0);a.Z.he(td,!1);break;default:a.U("unknown action: "+ti)}}else a.U("no mouse");break}a:{var xc,yc=null,Ua=g[1];"?"==Ua&&(Ua=void 0);if(void 0!==Ua){var ud=0;if("all"==Ua)ud=1610481663,Ua=null;else if("on"==Ua)yc=!0,Ua=null;else if("off"==
Ua)yc=!1,Ua=null;else{"keys"==Ua&&(Ua="key");"kbd"==Ua&&(Ua="keyboard");for(xc in Dp)if(Ua==xc){ud=Dp[xc];yc=!!(a.vc&ud);break}if(!ud){a.U("unknown message category: "+Ua);break a}}ud&&("on"==g[2]?(a.vc|=ud,yc=!0):"off"==g[2]&&(a.vc&=~ud,yc=!1))}var sr=0,Wc="";for(xc in Dp)if(!Ua||Ua==xc){var tr=!!(a.vc&Dp[xc]);if(null===yc||yc==tr)Wc&&(Wc+=","),++sr%10||(Wc+="\n\t"),"key"==xc&&(xc="keys"),Wc+=xc}void 0===Ua&&a.U("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.U((null!==yc?
yc?"messages on: ":"messages off: ":"message categories:\n\t")+(Wc||"none"));rp(a)}break;case "o":var ui=g[1],ur=g[2];if(ui&&"?"!=ui){var vi=Lp(a,ui,"port #"),wi=Lp(a,ur);void 0!==vi&&void 0!==wi&&(oc(a.ja,vi,1,wi),a.U(ia(vi)+": "+ha(wi)))}else a.U("output commands:"),a.U("\to [p] [b]\twrite byte [b] to port [p]"),a.U("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Rq(a,b.substr(5));break}var mn="pr"==g[0]?1:0,be=1+mn;if(a.P)a.U("step in progress");else{var xg,
Ua)yc=!1,Ua=null;else{"keys"==Ua&&(Ua="key");"kbd"==Ua&&(Ua="keyboard");for(xc in Dp)if(Ua==xc){ud=Dp[xc];yc=!!(a.vc&ud);break}if(!ud){a.U("unknown message category: "+Ua);break a}}ud&&("on"==g[2]?(a.vc|=ud,yc=!0):"off"==g[2]&&(a.vc&=~ud,yc=!1))}var sr=0,Vc="";for(xc in Dp)if(!Ua||Ua==xc){var tr=!!(a.vc&Dp[xc]);if(null===yc||yc==tr)Vc&&(Vc+=","),++sr%10||(Vc+="\n\t"),"key"==xc&&(xc="keys"),Vc+=xc}void 0===Ua&&a.U("message commands:\n\tm [category] [on|off]\tturn categories on/off");a.U((null!==yc?
yc?"messages on: ":"messages off: ":"message categories:\n\t")+(Vc||"none"));rp(a)}break;case "o":var ui=g[1],ur=g[2];if(ui&&"?"!=ui){var vi=Lp(a,ui,"port #"),wi=Lp(a,ur);void 0!==vi&&void 0!==wi&&(oc(a.ja,vi,1,wi),a.U(ia(vi)+": "+ha(wi)))}else a.U("output commands:"),a.U("\to [p] [b]\twrite byte [b] to port [p]"),a.U("warning: port accesses can affect hardware state");break;case "p":if("print"==g[0]){Rq(a,b.substr(5));break}var mn="pr"==g[0]?1:0,be=1+mn;if(a.P)a.U("step in progress");else{var xg,
nn=!1,nb=pp(a,v(a.M),a.M.Ca.ga);do switch(xg=!1,a.Wa(nb)){case 38:case 46:case 54:case 62:case 100:case 101:case 102:case 103:case 240:aq(a,nb,1);xg=!0;break;case 204:case 206:a.P=be;aq(a,nb,1);break;case 205:case 224:case 225:case 226:a.P=be;aq(a,nb,nb.Wb?4:2);break;case 232:a.P=be;aq(a,nb,nb.Wb?5:3);break;case 154:a.P=be;aq(a,nb,nb.Wb?7:5);break;case 255:var on=a.vb(nb)&14591;if(4351==on||6399==on)a.P=be,yq(a,nb);break;case 243:case 242:aq(a,nb,1);nn=xg=!0;break;case 108:case 109:case 110:case 111:case 164:case 165:case 166:case 167:case 170:case 171:case 172:case 173:case 174:case 175:nn&&
(a.P=be,aq(a,nb,1))}while(xg);a.P?(a.Od(a.A,nb,!0),a.Ie()||(a.M.Uc(),a.P=0)):Tq(a,mn?"tr":"t")}break;case "r":if("reset"==b){a.ia&&a.ia.reset();break}qq(a,g);break;case "t":Tq(a,g[0],g[1]);break;case "u":rq(a,g[1],g[2],8);break;case "v":if("var"==g[0]){Oq(a,b.substr(3))||(d=!1);break}a.U("PCjs version 1.20.8 ("+a.M.na+",RELEASE,NOPREFETCH"+(xb?",TYPEDARRAYS":",LONGARRAYS")+",NOBACKTRACK)");break;case "x":a:if(g[1]&&"?"!=g[1])switch(g[1]){case "cs":var Ve;void 0!==g[3]&&(Ve=+g[3]);switch(g[2]){case "int":a.M.ba.ff=
Ve;break;case "start":a.M.ba.Ff=Ve;break;case "stop":a.M.ba.hf=Ve;break;default:a.U("unknown cs option");break a}void 0!==Ve&&Qc(a.M);a.U("checksums "+(a.M.ra.We?"enabled":"disabled"));break;case "sp":void 0!==g[2]&&($c(a.M,+g[2])||a.U("warning: using 1x multiplier, previous target not reached"));a.U("target speed: "+(a.M.ba.Ce.toFixed(2)+"Mhz")+" ("+a.M.ba.Ud+"x)");break;default:a.U("unknown option: "+g[1])}else a.U("execution options:"),a.U("\tcs int #\tset checksum cycle interval to #"),a.U("\tcs start #\tset checksum cycle start count to #"),
@ -1204,12 +1204,12 @@ function dr(a,b,c){for(var d=hb(a.id),e=0;e<=d.length;e++){var f=e<d.length?d[e]
h.Vf=function(a){void 0===a&&(a=this.Nc||(this.O?1:ar));if(!this.C){this.C++;var b=!1,c=!1;this.X=!1;var d=this.ia||new $e(this,cr);if(-1==a)b=!0;else if(a>ar){if(d.load(this.O)){this.R=new $e(this,cr,"failsafe");this.R.load()&&(fr(this,d),a=2,Wq(this.R));af(this.R,"timestamp",ua());Xq(this.R);var e=this.Nc&&!this.P;if(1==a||Ca("Click OK to restore the previous PCjs machine state, or CANCEL to reset the machine.")){if(c=Yq(d)){var f=Zq(d,"code"),g=Zq(d,"data");f&&("ok"==f?d.load(g):("error"==f&&"no machine state"!=
g?(this.Va("Error: "+g),"unable to verify user"==g&&(Ha("user",""),this.A=null)):this.U(f+": "+g),Wq(d),d.load()?(c=Yq(d),e=!0):c=!1))}e&&er(this,c?d:null)}else 2==a&&d.clear()}else er(this);delete this.O;delete this.ia}e=hb(this.id);for(f=0;f<e.length;f++)g=e[f],g!==this&&g!=this.M&&(c=gr(this,g,d,b,c));b=[d,a,c];-1!=a?dr(this,this.Ji,b):this.Ji(b)}};
function gr(a,b,c,d,e){if(!b.ra.gc){b.ra.gc=!0;if(b.qc){var f=null;e&&((f=Zq(c,b.id))||(f=Zq(c,b.id.replace(/[a-z0-9]\./i,"."))));"string"===typeof f&&(f=null);!b.qc(f,d)&&f&&(Ba("Unable to restore state for "+b.type),a.W&&!a.da?(c.clear(),a.Nc=ar,window&&window.location.reload()):a.X=!0,b.qc(null),e=!1)}if(!d&&b.rk)for(a=b.rk.split("|"),c=0;c<a.length;c++)b.status(a[c])}return e}
h.Ji=function(a){var b=a[0],c=0>a[1];a=a[2];this.ra.gc=!0;var d=this.ya.power;d&&(d.textContent="On");this.sk||(this.U("PCjs v"+cr+"\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.sk=!0);this.M&&(gr(this,this.M,b,c,a),Sc(this.M));this.X&&(fr(this,b),b.clear());!c&&this.R&&(this.R.clear(),delete this.R);this.C=0};
h.Ji=function(a){var b=a[0],c=0>a[1];a=a[2];this.ra.gc=!0;var d=this.ya.power;d&&(d.textContent="On");this.sk||(this.U("PCjs v"+cr+"\nCopyright \u00a9 2012-2016 Jeff Parsons <Jeff@pcjs.org>\nLicense: GPL version 3 or later <http://gnu.org/licenses/gpl.html>"),this.sk=!0);this.M&&(gr(this,this.M,b,c,a),Tc(this.M));this.X&&(fr(this,b),b.clear());!c&&this.R&&(this.R.clear(),delete this.R);this.C=0};
function fr(a,b){if(Ca("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.qa,d=a.ie(),e=b.toString(),f={app:"PCjs"};f.ver=cr;f.url=c;f.user=d;f.type="bug";f.data=e;za("http://www.pcjs.org/api/v1/report",!0,f)}}
function Uq(a,b,c){var d,e="none";if(a.C)return null;a.C--;var f=new $e(a,cr),g=new $e(a,cr,"validate"),k=ua();af(g,"timestamp",k);af(f,"timestamp",k);af(f,"version","1.20.8");af(f,"url",window?window.location.href:null);af(f,"browser",window?window.navigator.userAgent:"");a.M&&a.M.pc&&(c&&a.M.bc(),d=a.M.pc(b,c),"object"===typeof d&&af(f,a.M.id,d),c&&(a.M.ra.gc=!1,!1===d&&(e=null)));for(var k=hb(a.id),q=0;q<k.length;q++){var r=k[q];r.ra.gc&&(r.pc&&(d=r.pc(b,c),"object"===typeof d&&af(f,r.id,d)),c&&
(r.ra.gc=!1,!1===d&&(e=null)))}e&&(c?(k=d=!1,b?(a.A&&hr(a,a.A,f.toString()),Xq(g)&&Xq(f)||(e=null,d=k=!0)):a.Nc&&(d=!0,k=3==a.Nc),d&&f.clear(k)):e=f.toString());c&&(a.ra.gc=!1,b=a.ya.power)&&(b.textContent="Off");a.C=0;return e}h.reset=function(){this.ja&&this.ja.reset&&(pb(this,"Resetting "+this.ja.type),this.ja.reset());for(var a=hb(this.id),b=0;b<a.length;b++){var c=a[b];c!==this&&c!==this.ja&&c.reset&&(pb(this,"Resetting "+c.type),c.reset())}};
h.start=function(a,b){for(var c=hb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.start&&e.start(a,b)}};h.stop=function(a,b){for(var c=hb(this.id),d=0;d<c.length;d++){var e=c[d];"CPU"!=e.type&&e!==this&&e.stop&&e.stop(a,b)}};
h.Xb=function(a,b,c){var d=this;switch(b){case "power":return this.ya[b]=c,c.onclick=function(){d.C||(d.ra.gc?Uq(d,!1,!0):dr(d,d.Vf))},!0;case "reset":return this.ya[b]=c,c.onclick=function(){if(d.ra.gc&&!d.C)if(d.Nc&&!d.Dg){var a=Ca("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Uq(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.fh=!0),d.Vf(ar),d.fh=!1)}else d.reset(),d.M&&Sc(d.M)},!0;case "save":return this.ya[b]=c,c.onclick=
h.Xb=function(a,b,c){var d=this;switch(b){case "power":return this.ya[b]=c,c.onclick=function(){d.C||(d.ra.gc?Uq(d,!1,!0):dr(d,d.Vf))},!0;case "reset":return this.ya[b]=c,c.onclick=function(){if(d.ra.gc&&!d.C)if(d.Nc&&!d.Dg){var a=Ca("Click OK to save changes to this PCjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Uq(d,a,!0);!a&&d.W?window&&window.location.reload():(a||(d.fh=!0),d.Vf(ar),d.fh=!1)}else d.reset(),d.M&&Tc(d.M)},!0;case "save":return this.ya[b]=c,c.onclick=
function(){var a=br(d,!0);if(a){var b=!!(d.Nc&&!d.Dg||d.W),c=Uq(d,b);b?hr(d,a,c):d.Va("Resume disabled, machine state not saved")}},!0}return!1};function br(a,b){var c=a.A;c||(c=Ga("user"),void 0!==c?!c&&b&&(c=null,window&&(c=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c&&((c=ir(a,c))||a.Va("The user ID is invalid."))):b&&a.Va("Browser local storage is not available"));return c}
function ir(a,b){a.A=null;var c=za(Aa()+"/api/v1/user?req=verify&user="+b),d=c[1];if(!c[0]&&d)try{c=eval("("+d+")"),c.code&&"ok"==c.code&&(Ha("user",c.data),a.A=c.data)}catch(e){Ba(e.message+" ("+d+")")}return a.A}
function hr(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Vq(a,cr);d.data=c;b=za(Aa()+"/api/v1/user",!1,d);d=b[1];if(b[0]){if(d){var e=d.indexOf("\n");0<e&&(d=d.substr(0,e));d.indexOf("Error: ")||(d=d.substr(7))}d='{"code":'+b[0]+',"data":"'+d+'"}'}b=JSON.parse(d);b&&"ok"==b.code?a.Va("Machine state saved to server"):c&&(c=b&&b.data||"unable to save machine state",c="error"==b.code?"Error: "+c:"Error "+b.code+": "+c,a.Va(c),Ha("user",""),a.A=null)}}

View file

@ -21,10 +21,10 @@ var ab="undefined"!==typeof ArrayBuffer,bb={Nf:4,V:5,za:6,ea:7,fa:8,M:9,O:11,P:1
Xi:16,Qd:10,Oc:2,zg:18,Ag:7,Bg:15,Gg:12,Hg:7,Ig:11,Og:18,Pg:7,Qg:15,Tg:15,Ug:7,Vg:13,Zg:11,$g:7,ah:8,Yi:8,aj:12,Zi:18,$i:17,bj:15,Xg:8,Wg:20,Yg:2,eh:3,Xe:9,dh:5,bh:11,gh:4,fh:17,cj:11},cb={Nf:0,V:0,za:0,ea:0,fa:0,M:0,O:1,P:1,Pd:3,ci:14,di:16,Yb:2,Db:7,nc:7,Mf:0,hi:7,ji:13,li:7,ki:11,ii:16,fi:3,Cg:6,gi:2,ei:13,Eg:5,Dg:5,Ue:2,Te:7,Ai:23,Bi:0,Ci:1,Di:3,zi:17,Fg:7,Fi:11,Ra:7,Sa:3,Hi:7,Gi:11,Ei:15,Mb:2,Ii:3,ve:7,Ji:8,Kg:8,Ki:8,Jg:4,Lg:4,Pi:2,Oi:3,Mi:5,Ni:2,Li:3,Mg:5,Ng:3,ni:14,pi:22,mi:17,oi:25,si:17,
ui:25,ri:20,ti:28,Ri:13,Ti:21,Qi:16,Si:24,wi:13,yi:21,vi:16,xi:24,We:2,Ve:7,Sg:5,Rg:5,Ui:19,Zb:5,Vi:5,Wi:17,zc:3,Xi:5,Qd:3,Oc:0,zg:8,Ag:5,Bg:9,Gg:5,Hg:5,Ig:4,Og:5,Pg:5,Qg:4,Tg:7,Ug:5,Vg:8,Zg:3,$g:4,ah:3,Yi:11,aj:11,Zi:15,$i:15,bj:7,Xg:5,Wg:8,Yg:0,eh:2,Xe:6,dh:3,bh:6,gh:3,fh:5,cj:5};function db(a){Ia.call(this,"Panel",a,db);this.J=this.K=this.S=-1}Qa(db);
function eb(a,b,c,d){this.A=[a,b,c,d];this.B=null;void 0===a&&(this.A[0]=256*Math.random()|0,this.A[1]=256*Math.random()|0,this.A[2]=256*Math.random()|0,this.A[3]=255,this.B=null)}eb.prototype.toString=function(){this.B||(this.B="#"+da(this.A[0],2)+da(this.A[1],2)+da(this.A[2],2));return this.B};function fb(a,b,c,d){this.x=a;this.y=b;this.Ec=c;this.A=d}fb.prototype.contains=function(a,b){return a>=this.x&&a<this.x+this.Ec&&b>=this.y&&b<this.y+this.A};
function gb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new fb(a.x,a.y,a.Ec,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new fb(a.x,a.y,a.Ec*b/c|0,a.A),a.x+=b.Ec,a.Ec-=b.Ec);return b}f=db.prototype;f.Fb=function(a,b,c,d){return this.ta&&this.ta.Fb(a,b,c,d)||this.A&&this.A.Fb(a,b,c,d)||this.D&&this.D.Fb(a,b,c,d)?!0:this.parent.Fb.call(this,a,b,c,d)};f.yc=function(a,b,c,d){this.ta=a;this.na=b;this.A=c;this.Ta=d;this.D=hb(a,"Keyboard")};f.ac=function(a,b){b||ib();return!0};f.$b=function(){return!0};
function gb(a,b,c,d){void 0===d&&(d=b>=c>>2);d?(b=new fb(a.x,a.y,a.Ec,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new fb(a.x,a.y,a.Ec*b/c|0,a.A),a.x+=b.Ec,a.Ec-=b.Ec);return b}f=db.prototype;f.Fb=function(a,b,c,d){return this.ua&&this.ua.Fb(a,b,c,d)||this.A&&this.A.Fb(a,b,c,d)||this.D&&this.D.Fb(a,b,c,d)?!0:this.parent.Fb.call(this,a,b,c,d)};f.yc=function(a,b,c,d){this.ua=a;this.na=b;this.A=c;this.Ta=d;this.D=hb(a,"Keyboard")};f.ac=function(a,b){b||ib();return!0};f.$b=function(){return!0};
f.ie=function(a,b){a.button||(this.S=b?0:-1,jb(this,a,b))};f.pg=function(a){jb(this,a)};
function jb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,k=null.getBoundingClientRect(),d=(b.clientX-k.left)*d|0;b=(b.clientY-k.top)*e|0;null==c&&(a.S||(a.S=Math.abs(a.J-d)>Math.abs(a.K-b)?1:2),1==a.S?b=a.K:2==a.S&&(d=a.J));a.J=d;a.K=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.B&&a.B.be)for(k=0;k<a.B.be.length;k++)if(e=a.B.be[k],e.contains(c,b)){c-=e.x;b-=e.y;var d=a.B.Fe[k],l=oa(kb.dj,a.B.bg[d.Oj]),k=l*a.na.yb,d=(l+d.cd)*a.na.yb-1;0<b&&(k+=e.Ec*(b-1)*a.sa);k+=c*a.sa;k|=0;k>d&&
(k=d);c=k;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ua)){b=c;if(a.context&&a.Z&&a.da){e=a.Z.width;a.da.fillStyle="black";a.da.fillRect(0,360,e,360);lb(a,378,a.Z,a.da);a.ha=a.va.width/24|0;if(null==b)mb(a,"Mouse over memory to dump");else for(mb(a,"0x"+da(b),null,0,1),k=1;16>=k;k++){d="";for(l=1;8>=l;l++){var p;p=a.na;var q=b++;p=p.W[(q&p.La)>>>p.ha].Cd(q&p.B,q);mb(a,da(p,2),null,1);d+=32<=p&&128>p?String.fromCharCode(p):"."}mb(a,d,null,0,1)}a.context.drawImage(a.Z,0,360,e,360,a.Ua,a.ab,a.Ia,a.La)}a.ua=
(k=d);c=k;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.ta)){b=c;if(a.context&&a.Z&&a.da){e=a.Z.width;a.da.fillStyle="black";a.da.fillRect(0,360,e,360);lb(a,378,a.Z,a.da);a.ha=a.va.width/24|0;if(null==b)mb(a,"Mouse over memory to dump");else for(mb(a,"0x"+da(b),null,0,1),k=1;16>=k;k++){d="";for(l=1;8>=l;l++){var p;p=a.na;var q=b++;p=p.W[(q&p.La)>>>p.ha].Cd(q&p.B,q);mb(a,da(p,2),null,1);d+=32<=p&&128>p?String.fromCharCode(p):"."}mb(a,d,null,0,1)}a.context.drawImage(a.Z,0,360,e,360,a.Ua,a.ab,a.Ia,a.La)}a.ta=
c}}}f.Wd=function(){};function nb(a,b,c,d){a.B.Fe[a.B.Kh++]={Oj:b,cd:c,type:d};return na(kb,b,c,0,d)}function lb(a,b,c,d){var e,k=null.style.color,l=a.Fa=10;a.F=l;a.N=b;a.T=a.pa=18;e||(e=a.oa||a.pa+"px Monaco, Lucida Console, Courier New");a.W=a.oa=e;c&&(a.va=c);d&&(a.H=d,a.xa=k||"white")}
function mb(a,b,c,d,e){a.H.font=a.W;a.H.fillStyle=a.xa;a.H.fillText(b,a.F,a.N);a.F+=a.ha;null!=c&&(16!=a.Qa?b=c.toString():(b=8>a.Da?"0x":"",b+=da(c,a.Da)),a.H.fillText(b,a.F,a.N),a.F+=a.ha);d&&(a.F+=a.ha*d);e&&(a.F=a.Fa,a.N+=(a.T+2)*(e||1))}function ib(){for(var a=!1,b=Wa(window.document,"pcjs","panel"),c=0;c<b.length;c++){var d=b[c],e=Ua(d),k=Sa(e.id);k||(a=!0,k=new db(e));Va(k,d);a&&Ya(k)}}Ea(ib);
function ob(a,b,c){Ia.call(this,"Bus",a,ob);this.A=b;this.Ta=c;this.F=a.buswidth||20;this.T=Math.pow(2,this.F);this.na=this.La=this.T-1|0;this.ha=32==this.F||20>=this.F?12:24>=this.F?14:15;this.yb=1<<this.ha;this.Z=this.yb>>2;this.B=this.yb-1;this.J=this.T/this.yb|0;this.D=this.J-1;this.K=[];this.N=[];this.R=[];this.S=[];a=new g;pb(a,this.Ta);this.W=Array(this.J);for(b=0;b<this.J;b++)this.W[b]=a;a=this.A;b=this.W;c=this.ha;a.tc=a.W=b;a.ha=c;a.yb=1<<a.ha;a.ab=a.yb-1;a.nf=b.length;a.Yd=a.nf-1;a=this.A;
@ -40,31 +40,31 @@ function Kb(a,b,c,d){for(var e=0,k=0;0<c;){var l=a.K[b],p=a.R[b]||1,q=1==p?255:2
function Mb(a,b,c,d,e){for(var k=0;0<c;){var l=a.N[b],p=a.S[b]||1,q=1==p?255:2==p?65535:-1,q=(d>>>=k)&q;if(void 0!==l&&l[0])l[0](b,q,e);k+=p<<3;b+=p;c-=p}}function wb(a,b,c,d,e){b="Memory block error ("+b+": "+da(c)+","+da(d)+")";e?a.log(b):ra(b);return!1}var Nb;if(ab){var Ob=new ArrayBuffer(2);(new DataView(Ob)).setUint16(0,256,!0);Nb=256===(new Uint16Array(Ob))[0]}else Nb=!1;var Db=Nb;
function g(a,b,c,d,e,k){this.id=Pb+=2;this.aa=null;this.J=0;this.ee=a;this.Be=b;this.size=c||0;this.type=d||Qb;this.K=d==Cb;this.controller=null;this.A=k;pb(this);this.Oa=this.Rh=!1;if(c)if(e)this.controller=e,a=e.Wh(a),this.aa=a[0],this.J=a[1],zb(this,e.ng());else if(ab)this.S=new ArrayBuffer(c),this.R=new DataView(this.S,0,c),this.Pa=new Uint8Array(this.S,0,c),this.td=new Uint16Array(this.S,0,c>>1),this.aa=new Int32Array(this.S,0,c>>2),zb(this,Db?Eb:Fb);else{this.aa=Array(c>>2);for(e=0;e<this.aa.length;e++)this.aa[e]=
0;zb(this,Gb)}else zb(this)}var Qb=0,Cb=2,Rb="NONE RAM ROM VIDEO H/W UNPAGED PAGED".split(" "),Sb=["black","blue","green","cyan"],Pb=0;function Tb(a){ab&&!Db&&(a=a<<24|a<<8&16711680|a>>8&65280|a>>>24);return a}
g.prototype={constructor:g,parent:null,Qk:function(a){this.ee=a},save:function(){var a,b;if(this.controller)a=null;else if(ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.R.getInt32(b<<2,!0);else a=this.aa;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(ab)for(b=0;b<a.length;b++)this.R.setInt32(b<<2,a[b],!0);else this.aa=a;return this.Oa=!0}return!1},ha:function(){return 255},qa:function(){},ta:function(a,b){return this.bc(a++,b++)|
this.bc(a,b)<<8},da:function(a,b){return this.bc(a++,b++)|this.bc(a++,b++)<<8|this.bc(a++,b++)<<16|this.bc(a,b)<<24},na:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a,b>>8,c)},Z:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a++,b>>8&255,c++);this.cc(a++,b>>16&255,c++);this.cc(a,b>>>24,c)},ua:function(a){return this.aa[a>>2]>>>((a&3)<<3)&255},Va:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b]>>a;return 24>a?c&65535:c&255|(this.aa[b+1]&255)<<8},Ia:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b];
g.prototype={constructor:g,parent:null,Qk:function(a){this.ee=a},save:function(){var a,b;if(this.controller)a=null;else if(ab)for(a=Array(this.size>>2),b=0;b<a.length;b++)a[b]=this.R.getInt32(b<<2,!0);else a=this.aa;return a},restore:function(a){if(this.controller)return null==a;if(a&&this.size==a.length<<2){var b;if(ab)for(b=0;b<a.length;b++)this.R.setInt32(b<<2,a[b],!0);else this.aa=a;return this.Oa=!0}return!1},ha:function(){return 255},qa:function(){},ua:function(a,b){return this.bc(a++,b++)|
this.bc(a,b)<<8},da:function(a,b){return this.bc(a++,b++)|this.bc(a++,b++)<<8|this.bc(a++,b++)<<16|this.bc(a,b)<<24},na:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a,b>>8,c)},Z:function(a,b,c){this.cc(a++,b&255,c++);this.cc(a++,b>>8&255,c++);this.cc(a++,b>>16&255,c++);this.cc(a,b>>>24,c)},ta:function(a){return this.aa[a>>2]>>>((a&3)<<3)&255},Va:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b]>>a;return 24>a?c&65535:c&255|(this.aa[b+1]&255)<<8},Ia:function(a){var b=a>>2;a=(a&3)<<3;var c=this.aa[b];
a&&(c=c>>>a|this.aa[b+1]<<32-a);return c},Eb:function(a,b){var c=a>>2,d=(a&3)<<3;this.aa[c]=this.aa[c]&~(255<<d)|b<<d;this.Oa=!0},wc:function(a,b){var c=a>>2,d=(a&3)<<3;24>d?this.aa[c]=this.aa[c]&~(65535<<d)|b<<d:(this.aa[c]=this.aa[c]&16777215|b<<24,c++,this.aa[c]=this.aa[c]&-256|b>>8);this.Oa=!0},kc:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<<d;this.aa[c]=this.aa[c]&~e|b<<d;c++;this.aa[c]=this.aa[c]&e|b>>>32-d}else this.aa[c]=b;this.Oa=!0},pa:function(a,b){this.A&&Ub(this.A,b,1,!1);return this.Cd(a,
b)},Qa:function(a,b){this.A&&Ub(this.A,b,2,!1);return this.df(a,b)},Da:function(a,b){this.A&&Ub(this.A,b,4,!1);return this.kh(a,b)},vb:function(a,b,c){this.A&&Ub(this.A,c,1,!0);this.K||this.hf(a,b,c)},uc:function(a,b,c){this.A&&Ub(this.A,c,2,!0);this.K||this.qh(a,b,c)},Ob:function(a,b,c){this.A&&Ub(this.A,c,4,!0);this.K||this.la(a,b,c)},xa:function(a,b){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.N;return this.T.bc(a,b)},fb:function(a,b){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.N;return this.T.cf(a,
b)},La:function(a,b){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.N;return this.T.Sd(a,b)},Ib:function(a,b,c){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.W;this.T.cc(a,b,c)},Fc:function(a,b,c){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.W;this.T.kf(a,b,c)},lc:function(a,b,c){this.B.aa[this.F]|=this.N;this.D.aa[this.H]|=this.W;this.T.jf(a,b,c)},ya:function(a,b){return Vb(this.A,b,!1).bc(a,b)},jb:function(a,b){return Vb(this.A,b,!1).cf(a,b)},Ma:function(a,b){return Vb(this.A,b,!1).Sd(a,
b)},pc:function(a,b,c){Vb(this.A,c,!0).cc(a,b,c)},Gc:function(a,b,c){Vb(this.A,c,!0).kf(a,b,c)},mc:function(a,b,c){Vb(this.A,c,!0).jf(a,b,c)},oa:function(a){return this.Pa[a]},sa:function(a){return this.Pa[a]},va:function(a){this.B.aa[this.F]|=32;this.D.aa[this.H]|=32;return this.Pa[a]},Na:function(a){return this.R.getUint16(a,!0)},Ua:function(a){return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.td[a>>1]},ab:function(a){this.B.aa[this.F]|=32;this.D.aa[this.H]|=32;return a&1?this.Pa[a]|this.Pa[a+1]<<8:this.td[a>>
1]},Ca:function(a){return this.R.getInt32(a,!0)},Fa:function(a){return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.aa[a>>2]},Ja:function(a){this.B.aa[this.F]|=32;this.D.aa[this.H]|=32;return a&3?this.Pa[a]|this.Pa[a+1]<<8|this.Pa[a+2]<<16|this.Pa[a+3]<<24:this.aa[a>>2]},ub:function(a,b){this.Pa[a]=b;this.Oa=!0},Ab:function(a,b){this.Pa[a]=b;this.Oa=!0},Hb:function(a,b){this.Pa[a]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0},tc:function(a,b){this.R.setUint16(a,
b,!0);this.Oa=!0},vc:function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.td[a>>1]=b;this.Oa=!0},xc:function(a,b){a&1?(this.Pa[a]=b,this.Pa[a+1]=b>>8):this.td[a>>1]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0},Nb:function(a,b){this.R.setInt32(a,b,!0);this.Oa=!0},Sb:function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.aa[a>>2]=b;this.Oa=!0},jc:function(a,b){a&3?(this.Pa[a]=b,this.Pa[a+1]=b>>8,this.Pa[a+2]=b>>16,this.Pa[a+3]=b>>24):this.aa[a>>
2]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0}};function pb(a,b,c){a.Ta=b;a.fe=a.ge=0;c&&(c.A&&(a.A=c.A),(a.fe=c.fe)&&Wb(a,Xb,!1),(a.ge=c.ge)&&Yb(a,Xb,!1))}function Yb(a,b,c){c&&a.ge||(a.cc=!a.K&&b[3]||a.qa,a.kf=!a.K&&b[4]||a.na,a.jf=!a.K&&b[5]||a.Z);if(c||void 0===c)a.hf=b[3]||a.qa,a.qh=b[4]||a.na,a.la=b[5]||a.Z}function Wb(a,b,c){c&&a.fe||(a.bc=b[0]||a.ha,a.cf=b[1]||a.ta,a.Sd=b[2]||a.da);if(c||void 0===c)a.Cd=b[0]||a.ha,a.df=b[1]||a.ta,a.kh=b[2]||a.da}
function zb(a,b,c){b||(b=5==a.type?Zb:6==a.type?$b:bc);Wb(a,b,c);Yb(a,b,c)}var bc=[],Gb=[g.prototype.ua,g.prototype.Va,g.prototype.Ia,g.prototype.Eb,g.prototype.wc,g.prototype.kc],Xb=[g.prototype.pa,g.prototype.Qa,g.prototype.Da,g.prototype.vb,g.prototype.uc,g.prototype.Ob],$b=[g.prototype.xa,g.prototype.fb,g.prototype.La,g.prototype.Ib,g.prototype.Fc,g.prototype.lc],Zb=[g.prototype.ya,g.prototype.jb,g.prototype.Ma,g.prototype.pc,g.prototype.Gc,g.prototype.mc];
2]=b;this.B.aa[this.F]|=32;this.D.aa[this.H]|=96;this.T.Oa=!0}};function pb(a,b,c){a.Ta=b;a.fe=a.ge=0;c&&(c.A&&(a.A=c.A),(a.fe=c.fe)&&Wb(a,Xb,!1),(a.ge=c.ge)&&Yb(a,Xb,!1))}function Yb(a,b,c){c&&a.ge||(a.cc=!a.K&&b[3]||a.qa,a.kf=!a.K&&b[4]||a.na,a.jf=!a.K&&b[5]||a.Z);if(c||void 0===c)a.hf=b[3]||a.qa,a.qh=b[4]||a.na,a.la=b[5]||a.Z}function Wb(a,b,c){c&&a.fe||(a.bc=b[0]||a.ha,a.cf=b[1]||a.ua,a.Sd=b[2]||a.da);if(c||void 0===c)a.Cd=b[0]||a.ha,a.df=b[1]||a.ua,a.kh=b[2]||a.da}
function zb(a,b,c){b||(b=5==a.type?Zb:6==a.type?ac:bc);Wb(a,b,c);Yb(a,b,c)}var bc=[],Gb=[g.prototype.ta,g.prototype.Va,g.prototype.Ia,g.prototype.Eb,g.prototype.wc,g.prototype.kc],Xb=[g.prototype.pa,g.prototype.Qa,g.prototype.Da,g.prototype.vb,g.prototype.uc,g.prototype.Ob],ac=[g.prototype.xa,g.prototype.fb,g.prototype.La,g.prototype.Ib,g.prototype.Fc,g.prototype.lc],Zb=[g.prototype.ya,g.prototype.jb,g.prototype.Ma,g.prototype.pc,g.prototype.Gc,g.prototype.mc];
if(ab)var Fb=[g.prototype.oa,g.prototype.Na,g.prototype.Ca,g.prototype.ub,g.prototype.tc,g.prototype.Nb],Eb=[g.prototype.sa,g.prototype.Ua,g.prototype.Fa,g.prototype.Ab,g.prototype.vc,g.prototype.Sb],cc=[g.prototype.va,g.prototype.ab,g.prototype.Ja,g.prototype.Hb,g.prototype.xc,g.prototype.jc];
function dc(a,b){Ia.call(this,"CPU",a,dc);var c=a.cycles||b,d=a.multiplier||1;this.Y={};this.Y.$c=c;this.Y.Ad=d;this.Y.Ff=Math.round(this.Y.$c/1E4)/100;this.Y.se=this.Y.Ff*this.Y.Ad;this.ja.Qb=!1;this.ja.Th=!1;this.ja.ig=a.autoStart;this.ja.Sh=!1;c=La.autostart;void 0!==c&&(this.ja.ig="true"==c?!0:"false"==c?!1:null);this.ja.Bf=!1;this.Y.Hf=this.Y.ue=0;this.Y.If=a.csStart;this.Y.Ke=a.csInterval;this.Y.Le=a.csStop;this.Xd=[];this.Bj=this.oh.bind(this);Ya(this)}Qa(dc);var ec=["power","reset"];f=dc.prototype;
f.yc=function(a,b,c,d){this.ta=a;this.na=b;this.Ta=d;for(b=0;b<ec.length;b++)(c=this.qa[ec[b]])&&this.ta.Fb(null,ec[b],c);this.nd=hb(a,"FPU");for(b=null;b=hb(a,"Video",b);)this.Xd.push(b);this.T=hb(a,"ChipSet");Ya(this)};f.reset=function(){};f.save=function(){return null};f.restore=function(){return!1};f.ac=function(a,b){if(!b){if(a&&this.restore){fc(this);if(!this.restore(a))return!1;gc(this)}else this.reset();this.ic("No debugger detected")}hc(this);return!0};
f.$b=function(a){return a?this.save():!0};function ic(a){(!0===a.ja.ig||null===a.ja.ig&&void 0===a.qa.run)&&a.oh()}f.Vh=function(){return 0};function gc(a){void 0===a.Y.If&&(a.Y.If=0);void 0===a.Y.Ke&&(a.Y.Ke=-1);void 0===a.Y.Le&&(a.Y.Le=-1);a.ja.Bf=0<=a.Y.If&&0<a.Y.Ke;a.ja.Bf&&(a.Y.Hf=0,a.Y.ue=a.Y.If-a.Gc)}f.Wd=function(){this.ta&&this.ta.md&&this.ta.md.Wd()};
function jc(a,b){for(var c=0;c<a.Xd.length;c++)kc(a.Xd[c],b);if(a.ta&&a.ta.md&&(c=a.ta.md,c.Ca)){lb(c,18,c.R,c.ya);if(c.Na){var d=c.na,e=c.B,k,l;null==k&&(k=0);null==l&&(l=d.T-k|0);null==e&&(e={gg:0,cd:0,bg:[]});var p=k>>>d.ha;k=k+l-1>>>d.ha;e.gg=0;for(e.cd=0;p<=k;)l=d.W[p],e.gg+=l.size,l.size&&(e.bg.push(na(kb,p,0,0,l.type)),e.cd++),p++;c.B=e;c.sa=c.B.cd*c.na.yb/691200;d=0;c.B.Kh=0;c.B.Fe||(c.B.Fe=[]);var e=-1,p=0,q=-1;for(k=0;k<c.B.cd;k++){var w=c.B.bg[k];l=oa(kb.type,w);w=oa(kb.dj,w);if(l!=e||
f.yc=function(a,b,c,d){this.ua=a;this.na=b;this.Ta=d;for(b=0;b<ec.length;b++)(c=this.qa[ec[b]])&&this.ua.Fb(null,ec[b],c);this.nd=hb(a,"FPU");for(b=null;b=hb(a,"Video",b);)this.Xd.push(b);this.T=hb(a,"ChipSet");Ya(this)};f.reset=function(){};f.save=function(){return null};f.restore=function(){return!1};f.ac=function(a,b){if(!b){if(a&&this.restore){fc(this);if(!this.restore(a))return!1;gc(this)}else this.reset();this.ic("No debugger detected")}hc(this);return!0};
f.$b=function(a){return a?this.save():!0};function ic(a){(!0===a.ja.ig||null===a.ja.ig&&void 0===a.qa.run)&&a.oh()}f.Vh=function(){return 0};function gc(a){void 0===a.Y.If&&(a.Y.If=0);void 0===a.Y.Ke&&(a.Y.Ke=-1);void 0===a.Y.Le&&(a.Y.Le=-1);a.ja.Bf=0<=a.Y.If&&0<a.Y.Ke;a.ja.Bf&&(a.Y.Hf=0,a.Y.ue=a.Y.If-a.Gc)}f.Wd=function(){this.ua&&this.ua.md&&this.ua.md.Wd()};
function jc(a,b){for(var c=0;c<a.Xd.length;c++)kc(a.Xd[c],b);if(a.ua&&a.ua.md&&(c=a.ua.md,c.Ca)){lb(c,18,c.R,c.ya);if(c.Na){var d=c.na,e=c.B,k,l;null==k&&(k=0);null==l&&(l=d.T-k|0);null==e&&(e={gg:0,cd:0,bg:[]});var p=k>>>d.ha;k=k+l-1>>>d.ha;e.gg=0;for(e.cd=0;p<=k;)l=d.W[p],e.gg+=l.size,l.size&&(e.bg.push(na(kb,p,0,0,l.type)),e.cd++),p++;c.B=e;c.sa=c.B.cd*c.na.yb/691200;d=0;c.B.Kh=0;c.B.Fe||(c.B.Fe=[]);var e=-1,p=0,q=-1;for(k=0;k<c.B.cd;k++){var w=c.B.bg[k];l=oa(kb.type,w);w=oa(kb.dj,w);if(l!=e||
w!=q+1)(q=k-p)&&(d+=nb(c,p,q,e)),e=l,p=k;q=w}d+=nb(c,p,k-p,e);e=c.B.Fj!=d;c.B.Fj=d;if(e){e=new fb(0,0,c.R.width,c.R.height);c.B.be=[];p=c.B.cd;for(d=0;d<c.B.Kh;d++)k=c.B.Fe[d].cd,c.B.be.push(gb(e,k,p,!d)),p-=k;for(d=0;d<c.B.be.length;d++)e=c.B.Fe[d],p=k=c.B.be[d],l=c.ya,(q=Sb[e.type])||(q=new eb),l.strokeStyle="black",l.strokeRect(p.x,p.y,p.Ec,p.A),l.fillStyle="string"==typeof q?q:q.toString(),l.fillRect(p.x,p.y,p.Ec,p.A),p=c,l=k,p.W=p.oa,p.T=p.pa,k=l.x+(l.Ec>>1),q=l.y+(l.A>>1),w=l.A,l.Ec<l.A&&(w=
l.Ec,p.la=!0,p.H.save(),p.H.translate(k,q),p.H.rotate(-Math.PI/2),k=q=0),w<p.T&&(p.T=w,p.W=p.T+"px Monaco, Lucida Console, Courier New"),l=q,p.F=k,p.N=l,p=c,e=Rb[e.type]+" ("+(e.cd*c.na.yb/1024|0)+"Kb)",p.H.font=p.W,p.F-=p.H.measureText(e).width>>1,p.N+=(p.T>>1)-2,mb(p,e),p.la&&(p.H.restore(),p.la=!1)}}else mb(c,"This space intentionally left blank");c.context.drawImage(c.R,0,0,c.R.width,c.R.height,c.Va,c.fb,c.Ja,c.Ma);c.Ca=!1}}f.Tc=function(){this.Xd.length&&this.Xd[0].Tc()};
f.Fb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.ta)if(a=d.ta,a.ja.Pb)a=!0;else{var b=null,c,p=Ra(a.id);for(c=0;c<p.length&&(b=p[c],b===a||b.ja.me);c++);if(c==p.length)for(c=0;c<p.length&&(b=p[c],b===a||b.ja.Pb);c++);c==p.length&&(b=a);ra("The "+b.type+" component ("+b.id+") is not "+(b.ja.me?"powered yet":"ready yet"+(b.Df?" (waiting for notification)":""))+".");a=!1}a&&(d.ja.Qb?lc(d,!0):d.oh(!0))};
f.Fb=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.qa[b]=c;a=!0;break;case "run":this.qa[b]=c;c.onclick=function(){var a;if(a=d.ua)if(a=d.ua,a.ja.Pb)a=!0;else{var b=null,c,p=Ra(a.id);for(c=0;c<p.length&&(b=p[c],b===a||b.ja.me);c++);if(c==p.length)for(c=0;c<p.length&&(b=p[c],b===a||b.ja.Pb);c++);c==p.length&&(b=a);ra("The "+b.type+" component ("+b.id+") is not "+(b.ja.me?"powered yet":"ready yet"+(b.Df?" (waiting for notification)":""))+".");a=!1}a&&(d.ja.Qb?lc(d,!0):d.oh(!0))};
a=!0;break;case "speed":this.qa[b]=c;a=!0;break;case "setSpeed":this.qa[b]=c,c.onclick=function(){mc(d,d.Y.Ad<<1,!0)},c.textContent=this.Y.se.toFixed(2)+"Mhz",a=!0}return a};function nc(a,b){if(a.ja.Qb){var c=a.A-b;a.A-=c;a.kc-=c}}function oc(a,b,c){a.Gc+=b;c&&(a.kc=a.A=0)}
function pc(a,b){var c=30;60>c&&(c=60);2>c&&(c=2);var d=1;b&&1<a.Y.Ad&&a.Y.zd&&(d=a.Y.zd/a.Y.Ff);a.Y.$h=Math.round(1E3/30);a.Y.Xk=Math.floor(a.Y.$c/c*d);a.Y.vg=Math.floor(a.Y.$c/30*d);a.Y.bi=Math.floor(a.Y.$c/60*d);a.Y.ai=Math.floor(a.Y.$c/2*d);b||(a.Y.Oe=a.Y.vg,a.Y.Ne=a.Y.bi,a.Y.Me=a.Y.ai);a.Y.wg=0}function qc(a,b){var c=a.Gc+a.xc+a.kc-a.A;b&&1<a.Y.Ad&&a.Y.zd>a.Y.Ff&&(c=Math.round(c/a.Y.Ad));return c}function fc(a){a.Y.zd=0;a.Gc=a.xc=a.kc=a.A=0;gc(a);mc(a,1)}
function mc(a,b,c){if(void 0!==b){.8>a.Y.zd/a.Y.se&&(b=1);a.Y.Ad=b;b=a.Y.Ff*a.Y.Ad;if(a.Y.se!=b){a.Y.se=b;b=a.Y.se.toFixed(2)+"Mhz";var d=a.qa.setSpeed;d&&(d.textContent=b);a.ic("target speed: "+b)}c&&a.Tc()}oc(a,a.xc);a.xc=0;a.Y.te=ia();a.Y.Od=0;pc(a)}
f.oh=function(a){if(Xa(this,!0)){if(!this.ja.Qb){mc(this);this.ta&&this.ta.start(this.Y.te,qc(this));this.ja.Qb=!0;this.ja.Th=!0;this.T&&rc(this.T);var b=this.qa.run;b&&(b.textContent="Halt");this.Wd(!0);a&&this.Tc()}this.Y.wg>=this.Y.$c&&pc(this,!0);this.Y.Pe=0;this.Y.Gf=ia();this.Y.Od&&(a=this.Y.Gf-this.Y.Od,a>this.Y.$h&&(this.Y.te+=a,this.Y.te>this.Y.Gf&&(this.Y.te=this.Y.Gf)));try{do{var c=this.ja.Bf?1:this.Y.Xk;if(this.T){sc(this.T);var d=this.T;a=c;var e=d.N[0];if(e.Ld){var k=(qc(d.A,d.la)-
e.gd)/d.Qa|0,l=tc(d,0)-k;6==e.mode&&(l-=k);var p=l*d.Qa|0;6==e.mode&&(p>>=1);a>p&&(a=p)}var c=a,q=this.T;a=c;if(q.B&&q.B[11]&64){var w=q.ua-qc(q.A,q.la);0<w&&a>w&&(a=w)}c=a}try{this.nj(c)}catch(G){if("number"!=typeof G)throw G;}var B=this.kc-this.A;this.xc+=B;this.Y.Pe+=B;oc(this,0,!0);a=B;this.ja.Bf&&(b=!1,this.Y.Hf=this.Y.Hf+this.Vh()|0,this.Y.ue-=a,0>=this.Y.ue&&(this.Y.ue+=this.Y.Ke,b=!0),0<=this.Y.Le&&this.Y.Le<=qc(this)&&(this.Y.Ke=this.Y.Le=-1,gc(this),lc(this),b=!0),b&&this.ic(qc(this)+" cycles: checksum="+
da(this.Y.Hf)));this.Y.Ne-=B;0>=this.Y.Ne&&(this.Y.Ne+=this.Y.bi,jc(this));this.Y.Me-=B;0>=this.Y.Me&&(this.Y.Me+=this.Y.ai,this.Wd());this.Y.Oe-=B;if(0>=this.Y.Oe){this.Y.Oe+=this.Y.vg;break}}while(this.ja.Qb)}catch(G){lc(this);hc(this);this.ta&&this.ta.stop(ia(),qc(this));Xa(this,!1);$a(this,G.stack||G.message);return}c=setTimeout;d=this.Bj;this.Y.Od=ia();e=this.Y.$h;this.Y.Pe&&(e=Math.round(e*this.Y.Pe/this.Y.vg));e-=this.Y.Od-this.Y.Gf;if(k=this.Y.Od-this.Y.te)this.Y.zd=Math.round(this.xc/(10*
k))/100,864E5<=k&&(this.Gc=0,this.T&&sc(this.T,!0),mc(this));if(0>e||this.Y.zd<this.Y.se)e=0;this.Y.wg+=this.Y.Pe;this.Y.Od+=e;c(d,e)}else hc(this),this.ta&&this.ta.stop(ia(),qc(this))};f.nj=function(){return 0};function lc(a,b){a.ja.Nc&&(a.ja.jg=!0);a.kc-=a.A;a.A=0;oc(a,a.xc);a.xc=0;if(a.ja.Qb){a.ja.Qb=!1;a.T&&rc(a.T);var c=a.qa.run;c&&(c.textContent="Run")}a.ja.Ie=b}function hc(a){jc(a,void 0);a.Wd()}
f.oh=function(a){if(Xa(this,!0)){if(!this.ja.Qb){mc(this);this.ua&&this.ua.start(this.Y.te,qc(this));this.ja.Qb=!0;this.ja.Th=!0;this.T&&rc(this.T);var b=this.qa.run;b&&(b.textContent="Halt");this.Wd(!0);a&&this.Tc()}this.Y.wg>=this.Y.$c&&pc(this,!0);this.Y.Pe=0;this.Y.Gf=ia();this.Y.Od&&(a=this.Y.Gf-this.Y.Od,a>this.Y.$h&&(this.Y.te+=a,this.Y.te>this.Y.Gf&&(this.Y.te=this.Y.Gf)));try{do{var c=this.ja.Bf?1:this.Y.Xk;if(this.T){sc(this.T);var d=this.T;a=c;var e=d.N[0];if(e.Ld){var k=(qc(d.A,d.la)-
e.gd)/d.Qa|0,l=tc(d,0)-k;6==e.mode&&(l-=k);var p=l*d.Qa|0;6==e.mode&&(p>>=1);a>p&&(a=p)}var c=a,q=this.T;a=c;if(q.B&&q.B[11]&64){var w=q.ta-qc(q.A,q.la);0<w&&a>w&&(a=w)}c=a}try{this.nj(c)}catch(G){if("number"!=typeof G)throw G;}var B=this.kc-this.A;this.xc+=B;this.Y.Pe+=B;oc(this,0,!0);a=B;this.ja.Bf&&(b=!1,this.Y.Hf=this.Y.Hf+this.Vh()|0,this.Y.ue-=a,0>=this.Y.ue&&(this.Y.ue+=this.Y.Ke,b=!0),0<=this.Y.Le&&this.Y.Le<=qc(this)&&(this.Y.Ke=this.Y.Le=-1,gc(this),lc(this),b=!0),b&&this.ic(qc(this)+" cycles: checksum="+
da(this.Y.Hf)));this.Y.Ne-=B;0>=this.Y.Ne&&(this.Y.Ne+=this.Y.bi,jc(this));this.Y.Me-=B;0>=this.Y.Me&&(this.Y.Me+=this.Y.ai,this.Wd());this.Y.Oe-=B;if(0>=this.Y.Oe){this.Y.Oe+=this.Y.vg;break}}while(this.ja.Qb)}catch(G){lc(this);hc(this);this.ua&&this.ua.stop(ia(),qc(this));Xa(this,!1);$a(this,G.stack||G.message);return}c=setTimeout;d=this.Bj;this.Y.Od=ia();e=this.Y.$h;this.Y.Pe&&(e=Math.round(e*this.Y.Pe/this.Y.vg));e-=this.Y.Od-this.Y.Gf;if(k=this.Y.Od-this.Y.te)this.Y.zd=Math.round(this.xc/(10*
k))/100,864E5<=k&&(this.Gc=0,this.T&&sc(this.T,!0),mc(this));if(0>e||this.Y.zd<this.Y.se)e=0;this.Y.wg+=this.Y.Pe;this.Y.Od+=e;c(d,e)}else hc(this),this.ua&&this.ua.stop(ia(),qc(this))};f.nj=function(){return 0};function lc(a,b){a.ja.Nc&&(a.ja.jg=!0);a.kc-=a.A;a.A=0;oc(a,a.xc);a.xc=0;if(a.ja.Qb){a.ja.Qb=!1;a.T&&rc(a.T);var c=a.qa.run;c&&(c.textContent="Run")}a.ja.Ie=b}function hc(a){jc(a,void 0);a.Wd()}
function uc(a,b,c,d){this.A=a;this.Ta=a.Ta;this.id=b;this.Vf=c||"";this.ra=0;this.cb=65535;this.D=this.cb+1;this.Cb=this.sc=this.ext=this.ob=this.type=this.Ea=0;this.ec=-1;this.ba=this.Uc=2;this.C=this.wa=65535;this.T=this.Zh;this.K=this.Mh;this.N=this.Oh;this.B={ra:-1,Ea:0,cb:0,ob:0,type:0,ext:0,ec:-1};1==this.id&&(this.$e=0,this.F=null,this.oe=!1,this.J=Array(32),this.H=[]);vc(this,!0,d)}f=uc.prototype;f.Zh=function(a){this.ra=a&65535;return this.Ea=this.ra<<4};
f.Ef=function(a,b){var c,d,e=this.A;a&=65535;a&4?(c=e.Ob.Ea,d=c+e.Ob.cb|0):(c=e.jb,d=e.vc);if(c){c=c+(a&65528)|0;if(d-c|0)return e.A-=15,wc(this,c,a,b);6>this.id&&h.call(e,b&&3==this.id?10:13,a&65532)}return-1};f.Uk=function(a){var b=this.A;a=b.Ab+(a<<2);var c=b.ma(a);b.ca&=-769;return this.load(b.ma(a+2))+c|0};f.Tk=function(a){var b=this.A;a<<=3;var c=b.Ab+a|0;if(7<=(b.wc-c|0))return this.F=!0,a=wc(this,c,a),-1!==a&&(a+=this.$e),a;h.call(b,13,a|2);return-1};f.Mh=function(a){return this.Ea+a|0};
f.Oh=function(a){return this.Ea+a|0};f.Lh=function(a,b){return(a>>>0)+b<=this.D?this.Ea+a|0:this.yf()};f.Dj=function(a,b){return(a>>>0)+b>this.D?this.Ea+a|0:this.yf()};f.yf=function(){h.call(this.A,13,0);return-1};f.Nh=function(a,b){return(a>>>0)+b<=this.D?this.Ea+a|0:this.zf()};f.Ej=function(a,b){return(a>>>0)+b>this.D?this.Ea+a|0:this.zf()};f.zf=function(){h.call(this.A,13,0);return-1};
@ -85,11 +85,11 @@ this.pa[101]=Rc,this.pa[102]=Rc,this.pa[103]=Rc,this.pa[104]=Vc,this.pa[105]=Wc,
196608;this.pa[100]=od;this.pa[101]=pd;this.pa[102]=qd;this.pa[103]=rd;for(c in v)this.Fc[+c]=v[c];80546<=this.kd&&80562>=this.kd&&(this.Fc[166]=sd,this.Fc[167]=td)}}this.pf=[];this.vh=[];this.Yf=0;fc(this);this.ja.Ie=this.ja.Nj=!1;this.Ah=0;this.tc=this.W=[];this.ha=this.yb=this.ab=this.nf=this.Yd=this.La=this.jc=0;ud(this)}Qa(Lc,dc);
function vd(a){var b;if(a.W===a.tc){a.W=Array(a.nf);a.qf=new g(null,0,0,5,null,a);pb(a.qf,a.Ta);for(b=0;b<a.nf;b++)a.W[b]=a.qf;a.Zd=new g;a.uh=Array(512);a.rf=0}else for(var c=0;c<a.of.length;c++){b=a.of[c];var d=a.W[b];512>a.rf&&(a.uh[a.rf++]=d);a.W[b]=a.qf}a.of=[]}
function Vb(a,b,c,d){var e=(b&-4194304)>>>20,k=a.tc[(a.Zc+e&a.La)>>>a.ha],l=k.Sd(e);if(!(l&1))return d||wd.call(a,b,!1,c),a.Zd;if(!(l&4)&&3==a.Fa)return d||wd.call(a,b,!0,c),a.Zd;var p=(b&4190208)>>>10,l=a.tc[((l&-4096)+p&a.La)>>>a.ha],q=l.Sd(p);if(!(q&1))return d||wd.call(a,b,!1,c),a.Zd;if(!(q&4)&&3==a.Fa)return d||wd.call(a,b,!0,c),a.Zd;c=a.tc[((q&-4096)+(b&4095)&a.La)>>>a.ha];if(d)return c;d=b>>>a.ha;q=a.W[d];b=b&-4096;var w;0<a.rf?(w=a.uh[--a.rf],w.Qk(b)):w=new g(b,0,0,6);b=w;b.T=c;b.B=k;b.F=
e>>2;b.D=l;b.H=p>>2;ab&&Db&&c.aa&&!c.controller&&!c.fe&&!c.ge?(b.Pa=c.Pa,b.td=c.td,b.aa=c.aa,zb(b,cc)):(b.N=c?Tb(32):0,b.W=c?Tb(96):0,zb(b,$b));pb(b,a.Ta,q);a.W[d]=b;a.of.push(d);return b}function xd(a){a.W!==a.tc&&(a.W=a.tc,a.qf=null,a.of=null,a.Zd=null)}f=Lc.prototype;f.reset=function(){this.ja.Qb&&lc(this);ud(this);fc(this);this.ja.Yc=!1};
e>>2;b.D=l;b.H=p>>2;ab&&Db&&c.aa&&!c.controller&&!c.fe&&!c.ge?(b.Pa=c.Pa,b.td=c.td,b.aa=c.aa,zb(b,cc)):(b.N=c?Tb(32):0,b.W=c?Tb(96):0,zb(b,ac));pb(b,a.Ta,q);a.W[d]=b;a.of.push(d);return b}function xd(a){a.W!==a.tc&&(a.W=a.tc,a.qf=null,a.of=null,a.Zd=null)}f=Lc.prototype;f.reset=function(){this.ja.Qb&&lc(this);ud(this);fc(this);this.ja.Yc=!1};
function yd(a,b){var c;switch(b){case 0:c=a.G;break;case 1:c=a.F;break;case 2:c=a.I;break;case 3:c=a.B;break;case 4:c=r(a);break;case 5:c=a.K;break;case 6:c=a.J;break;case 7:c=a.H}return c}function zd(a,b,c){switch(b){case 0:a.G=c;break;case 1:a.F=c;break;case 2:a.I=c;break;case 3:a.B=c;break;case 4:n(a,c);break;case 5:a.K=c;break;case 6:a.J=c;break;case 7:a.H=c}}
function ud(a){a.G=0;a.B=0;a.F=0;a.I=0;a.Nb=0;a.K=0;a.J=0;a.H=0;a.Ib=!1;a.ya=a.Ma=0;a.mc=0;a.zh=0;a.ld=0;a.Ya=65520;a.Ab=0;a.wc=1023;a.ca=a.Eb=0;a.rd=a.Hd=a.qd=a.Ed=0;a.Sb=-1;a.od=a.$d=-1;a.Rd=a.sa=-1;a.Ha=new uc(a,1,"CS");a.Ca=new uc(a,2,"DS");a.va=new uc(a,2,"ES");a.Z=new uc(a,3,"SS");n(a,0);zc(a,0);if(80386<=a.ia){switch(a.kd){case 80562:case 80563:a.I=771;break;case 80578:a.I=772;break;case 80594:a.I=773;break;case 80595:case 80596:a.I=776}a.Ya=16;a.Fh=0;a.pd=0;a.Zc=0;a.fb=[0,0,0,0,null,null,
0,0];a.sf=[null,null,null,null,null,null,0,0];a.Qa=new uc(a,2,"FS");a.Ua=new uc(a,2,"GS");xd(a)}a.ag=new uc(a,0,"NULL");a.R=a.Ca;a.S=a.Z;a.N=a.Ba=0;a.U=a.oa=-1;a.Pc=a.ag;a.Ja=0;if(80286>a.ia)Jc(a,0,65535);else{a.jb=0;a.vc=65535;a.Ob=new uc(a,5,"LDT",!0);a.la=new uc(a,4,"TSS",!0);a.Na=new uc(a,6,"VER",!0);Jc(a,65520,61440);var b,c=u(a);b=a.Ha;var d=-65536;80386>b.A.ia&&(d&=16777215);b=b.Ea=d;a.da=b+c|0;a.Zf=b+a.Ha.cb|0}Ic(a,0);Bc(a)}
function Ad(a,b){b.ra&65528&&b.sc<a.Fa&&7168!=(b.ob&7168)&&b.load(0)}function Bd(a){2==a.Uc?(a.Dh=a.ma,a.vb=x,a.Hb=Cd,a.uc=Dd,a.ua=y,a.Da=Ed,a.ub=Fd):(a.Dh=a.ka,a.vb=z,a.Hb=Gd,a.uc=Hd,a.ua=A,a.Da=Id,a.ub=Jd)}function Cc(a,b){a.ba!=b&&(a.Ba|=1024,a.ba=b,a.C=2==b?65535:-1,Kd(a))}function Kd(a){2==a.ba?(a.Va=32768,a.Lb=a.ma,a.Rb=a.gb):(a.Va=-2147483648,a.Lb=a.ka,a.Rb=a.$a)}function Ld(a){a.Uc=a.Ha.Uc;a.wa=a.Ha.wa;Bd(a);a.ba=a.Ha.ba;a.C=a.Ha.C;Kd(a);a.Ba&=-3073}
function Ad(a,b){b.ra&65528&&b.sc<a.Fa&&7168!=(b.ob&7168)&&b.load(0)}function Bd(a){2==a.Uc?(a.Dh=a.ma,a.vb=x,a.Hb=Cd,a.uc=Dd,a.ta=y,a.Da=Ed,a.ub=Fd):(a.Dh=a.ka,a.vb=z,a.Hb=Gd,a.uc=Hd,a.ta=A,a.Da=Id,a.ub=Jd)}function Cc(a,b){a.ba!=b&&(a.Ba|=1024,a.ba=b,a.C=2==b?65535:-1,Kd(a))}function Kd(a){2==a.ba?(a.Va=32768,a.Lb=a.ma,a.Rb=a.gb):(a.Va=-2147483648,a.Lb=a.ka,a.Rb=a.$a)}function Ld(a){a.Uc=a.Ha.Uc;a.wa=a.Ha.wa;Bd(a);a.ba=a.Ha.ba;a.C=a.Ha.C;Kd(a);a.Ba&=-3073}
f.Vh=function(){var a=this.G+this.B+this.F+this.I+r(this)+this.K+this.J+this.H|0;return a=a+u(this)+this.Ha.ra+this.Ca.ra+this.Z.ra+this.va.ra+Hc(this)|0};function Md(a,b,c){void 0===a.pf[b]&&(a.pf[b]=[]);a.pf[b].push(c)}function Nd(a,b){var c=a.vh[b];null!=c&&(c(--a.Yf),delete a.vh[b])}
function Od(a,b){for(var c=a.fb[7],d=c>>16,e=0;4>e;e++){if(c&3){var k=!!(d&1),l=a.fb[e],l=l&~(d>>2&3);if(b){var l=a.W[l>>>a.ha],p=a;k?0===l.ge++&&(p&&(l.A=p),Yb(l,Xb,!1)):0===l.fe++&&(p&&(l.A=p),Wb(l,Xb,!1))}else l=a.W[l>>>a.ha],k?0===--l.ge&&(k=l,k.cc=k.K?k.qa:k.hf,k.kf=k.K?k.na:k.qh,k.jf=k.K?k.Z:k.la):0===--l.fe&&(k=l,k.bc=k.Cd,k.cf=k.df,k.Sd=k.kh)}c>>=2;d>>=4}}
function Ub(a,b,c,d){if(!(a.N&8192)&&a.fb[7]&255){c--;var e=a.fb[7],k=e>>16;d=d?1:0==d?3:0;for(var l=0;4>l;l++){if(e&3&&(k&3)==d){var p=k>>2;if(b+c>=a.fb[l]&&b<=a.fb[l]+p){a.fb[6]|=1<<l;a.Ja|=2;break}}e>>=2;k>>=4}}}function Bc(a,b,c){void 0===b&&(b=!!(a.Ya&1));void 0===c&&(c=!!(a.ca&131072));a.yh=b&&!c?Pd:Qc;vc(a.Ha,!1,b,c);vc(a.Ca,!1,b,c);vc(a.Z,!1,b,c);vc(a.va,!1,b,c);80386<=a.ia&&(vc(a.Qa,!1,b,c),vc(a.Ua,!1,b,c));Ld(a)}
@ -118,14 +118,14 @@ f.Wd=function(a){if(this.Ah&&(a||!this.ja.Qb||this.ja.Sh)){ye(this,"EAX",this.G)
ye(this,"A",b&16);ye(this,"P",b&4);ye(this,"C",b&1);80386==this.ia&&(ye(this,"FS",this.Qa.ra),ye(this,"GS",this.Ua.ra),ye(this,"CR0",this.Ya),ye(this,"CR2",this.pd),ye(this,"CR3",this.Zc))}if(b=this.qa.speed)b.textContent=this.ja.Qb&&this.Y.zd?this.Y.zd.toFixed(2)+"Mhz":"Stopped";this.parent.Wd.call(this,a)};
f.nj=function(a){this.ja.Ie=!0;this.ja.Nj=!1;this.ja.Th=!1;this.kc=this.A=a;this.T&&!a&&sc(this.T);a||(this.N|=4);do{if(a=this.N&3312)this.Ba|=a;else if(this.Rd=this.da,this.R=this.Ca,this.S=this.Z,this.U=this.oa=-1,this.Ba&3072&&Ld(this),this.Ba=this.N&256,this.Ja){a:if(!(this.N&4)){a=80286>this.ia?0:1;for(var b=0;2>b;b++){switch(a){case 0:if(this.Ja&1&&this.ca&512){var c=ze(this.T);if(-1<=c&&(this.Ja&=-2,0<=c)){this.Ja&=-5;Ae.call(this,c);break a}}break;case 1:if(this.Ja&2){this.Ja&=-3;80386<=this.ia&&
(this.fb[6]|=16384);Ae.call(this,1);break a}}a=1-a}}if(this.Ja&4){this.N=this.A=0;break}}this.N=0;this.pa[this.X()].call(this)}while(0<this.A);return this.ja.Ie?this.kc-this.A:void 0===this.ja.Ie?0:-1};Ea(function(){for(var a=Wa(window.document,"pcjs","cpu"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new Lc(d);Va(d,c)}});
function Be(a){Ia.call(this,"FPU",a,Be);this.ia=a.model||8087;(a=a.stepping)&&ca(a,16);this.N=new Float64Array(8);this.la=new Int32Array(this.N.buffer);this.ta=new Float32Array(1);this.pa=new Int32Array(this.ta.buffer);this.W=new Float64Array(1);this.K=new Int32Array(this.W.buffer);this.H=Array(3);this.Z=this.na=-1;this.R=this.S=this.da=this.B=0;this.ha=new Float64Array(1);this.oa=new Int32Array(this.ha.buffer);this.oa[0]=0;this.oa[1]=268402688;Ce(this)}Qa(Be);f=Be.prototype;
function Be(a){Ia.call(this,"FPU",a,Be);this.ia=a.model||8087;(a=a.stepping)&&ca(a,16);this.N=new Float64Array(8);this.la=new Int32Array(this.N.buffer);this.ua=new Float32Array(1);this.pa=new Int32Array(this.ua.buffer);this.W=new Float64Array(1);this.K=new Int32Array(this.W.buffer);this.H=Array(3);this.Z=this.na=-1;this.R=this.S=this.da=this.B=0;this.ha=new Float64Array(1);this.oa=new Int32Array(this.ha.buffer);this.oa[0]=0;this.oa[1]=268402688;Ce(this)}Qa(Be);f=Be.prototype;
f.yc=function(a,b,c){this.A=c;this.T=hb(a,"ChipSet");Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)Ce(this);else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};f.save=function(){var a=new Qd(this),b=[],c=0;b[c++]=this.J;b[c++]=this.ga|this.D<<11;b[c++]=De(this);for(var d=0;d<this.N.length;d++)b[c++]=this.N[d];D(a,0,b);return a.data()};
f.restore=function(a){a=a[0];var b=0;this.J=a[b++]&-57409;var c=a[b++];this.ga=c&-14337;this.D=(c&14336)>>11;Ee(this);Fe(this,a[b++]);for(c=0;c<this.N.length;c++)this.N[c]=a[b++];return!0};function Ce(a){a.F=0;a.J=959;a.ga=0;a.D=0;a.T&&(a=a.T,a.ia>=Ge&&He(a,13))}function Ee(a){a.ga&=-129;a.ga&~a.J&63&&(a.ga|=128);if(a.ga&128&&!(a.J&128))return a=a.T,a.ia>=Ge?Ie(a,13):a.va&0||Ae.call(a.A,2),!0;a=a.T;a.ia>=Ge&&He(a,13);return!1}function Je(a,b){80387<=a.ia||(b&=-65);a.ga|=b;return Ee(a)}
function Ke(a,b){return isFinite(b)?!0:!Je(a,Infinity===b?8:16)}function Le(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,Ke(a,d)||(d=null));return d}function Me(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,Ke(a,d)||(d=null));return d}function Ne(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,Ke(a,d)||(d=null));return d}function Oe(a,b,c){var d=null;null==b||null==c||!c&&Je(a,2)||(d=b/c,Ke(a,d)||(d=null));return d}
function Pe(a,b,c){if(null!=b&&null!=c){var d=0;isNaN(b)||isNaN(c)?d=17664:(b-=c,0>b?d=256:0===b&&(d=16384));a.ga=a.ga&-18177|d;return!0}return!1}function Qe(a,b,c){if(null==b)return null;var d=a.J&3072;0==d?(d=Math.round(b),.5===d-b&&d%2&&d--):d=1024==d||3072==d&&0<b?Math.floor(b):Math.ceil(b);if(c){if(d>=c){if(Je(a,1))return null;d=-c}else if(d<-c){if(Je(a,1))return null;d=-c}a.K[0]=d|0;2147483648<c&&(a.K[1]=d/4294967296|0,!a.K[1]&&0>d&&(a.K[1]=-1))}return d}
function Re(a,b){var c=3;if(a.F&1<<b){var d=a.N[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function De(a){for(var b=0,c=a.N.length-1;0<=c;c--)b<<=2,b|=Re(a,c);return b}function Fe(a,b){a.F=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.F|=c),b>>=2}function Se(a){var b=a.D+0&7;return a.F&1<<b?(a.ta[0]=a.N[b],!0):Je(a,1)?!1:(a.ta[0]=a.ha[0],!0)}function Te(a){var b=a.D+0&7;return a.F&1<<b?(a.W[0]=a.N[b],!0):Je(a,1)?!1:(a.W[0]=a.ha[0],!0)}
function Re(a,b){var c=3;if(a.F&1<<b){var d=a.N[b],c=0;0===d?c=1:isFinite(d)||(c=2)}return c}function De(a){for(var b=0,c=a.N.length-1;0<=c;c--)b<<=2,b|=Re(a,c);return b}function Fe(a,b){a.F=0;for(var c=1;128>=c;c<<=1)3!=(b&3)&&(a.F|=c),b>>=2}function Se(a){var b=a.D+0&7;return a.F&1<<b?(a.ua[0]=a.N[b],!0):Je(a,1)?!1:(a.ua[0]=a.ha[0],!0)}function Te(a){var b=a.D+0&7;return a.F&1<<b?(a.W[0]=a.N[b],!0):Je(a,1)?!1:(a.W[0]=a.ha[0],!0)}
function T(a,b){var c=null,d=a.D+b&7;a.F&1<<d?c=a.N[d]:Je(a,1)||(c=a.ha[0]);return c}function U(a,b,c){return null!=c&&(isNaN(c)?!Je(a,1):1)?(b=a.D+b&7,a.N[b]=c,a.F|=1<<b,!0):!1}function Ue(a,b,c){var d=null;b=a.D+b&7;if(c||a.F&1<<b||!Je(a,1)){d=b<<1;c=a.la[d];d=a.la[d+1];b=d>>20&2047;var e=2147483648|(d&1048575)<<11|c>>>21;2047==b?b=32767:b?b+=15360:e&=2147483647;a.H[0]=c<<11;a.H[1]=e;a.H[2]=d>>16&32768|b;d=a.H}return d}function Ve(a){return a.A.ma(a.A.U)<<16>>16}
function We(a){return a.A.ka(a.A.U)}function Xe(a){a.pa[0]=a.A.ka(a.A.U);return a.ta[0]}function Ye(a){a.K[0]=a.A.ka(a.A.U);a.K[1]=a.A.ka(a.A.U+4);return a.W[0]}function Ze(a){a.H[0]=a.A.ka(a.A.U);a.H[1]=a.A.ka(a.A.U+4);a.H[2]=a.A.ma(a.A.U+8);return a.H}f.ph=function(){this.A.$a(this.A.U,this.K[0])};f.kj=function(){this.A.$a(this.A.U,this.K[0]);this.A.$a(this.A.U+4,this.K[1])};f.mj=Be.prototype.ph;f.lj=Be.prototype.kj;
function We(a){return a.A.ka(a.A.U)}function Xe(a){a.pa[0]=a.A.ka(a.A.U);return a.ua[0]}function Ye(a){a.K[0]=a.A.ka(a.A.U);a.K[1]=a.A.ka(a.A.U+4);return a.W[0]}function Ze(a){a.H[0]=a.A.ka(a.A.U);a.H[1]=a.A.ka(a.A.U+4);a.H[2]=a.A.ma(a.A.U+8);return a.H}f.ph=function(){this.A.$a(this.A.U,this.K[0])};f.kj=function(){this.A.$a(this.A.U,this.K[0]);this.A.$a(this.A.U+4,this.K[1])};f.mj=Be.prototype.ph;f.lj=Be.prototype.kj;
function $e(a){a.A.$a(a.A.U,a.H[0]);a.A.$a(a.A.U+4,a.H[1]);a.A.gb(a.A.U+8,a.H[2])}function af(a,b){var c=b[1],d=(b[2]&32768)>>4,e=b[2]&32767,k=b[0]>>>11|c<<21,c=c>>11&1048575;32767==e?e=2047:e&&(e+=-15360,0>=e&&(e=2047,k=c=0));a.K[0]=k;a.K[1]=c|(d|e)<<20;return a.W[0]}function bf(a,b){for(var c=0,d=1;b--;)c+=(a&15)*d,d*=10,a>>=4;return c}function cf(a,b){for(var c=0,d=0;b--;)c|=a%10<<d,a/=10,d+=4;return c}
function df(a){var b=null,c=1<<a.D;if(!(a.F&c)&&(a.ga&=-513,Je(a,65)))return b;a.F&=~c;b=a.N[a.D];a.D=a.D+1&7;return b}function ef(a,b){if(null!=b){var c=a.D-1&7,d=1<<c;if(a.F&d&&(a.ga|=512,Je(a,65)))return;if(isNaN(b)&&Je(a,1)){if(Je(a,1))return;b=NaN}a.N[a.D=c]=b;a.F|=d}}
function ff(a,b){var c,d=a.A;c=d.Lb(b);a.J=c&-57409;c=d.Lb(b+=d.ba);a.ga=c&-14337;a.D=(c&14336)>>11;Ee(a);Fe(a,d.Lb(b+=d.ba));!(d.Ya&1)||d.ca&131072?(a.R=d.Lb(b+=d.ba),c=d.Lb(b+=d.ba),a.da=c&2047,a.R|=(c&-4096)<<4,a.Z=-1,a.S=d.Lb(b+=d.ba),a.S|=(d.Lb(b+=d.ba)&-4096)<<4,a.na=-1):(a.R=d.Lb(b+=d.ba),c=d.Lb(b+=d.ba),a.Z=c&65535,a.da=c>>16&2047,a.S=d.Lb(b+=d.ba),a.na=d.Lb(b+=d.ba)&65535);return b+d.ba}
@ -169,13 +169,13 @@ function dh(a,b,c){if(c){var d=a>>>c-1;a=d>>>1|b<<32-c;ce(this,a,-2147483648,d&1
function jh(a,b){var c=a-b|0;Wd(this,a,b,c,this.Va|63,!0);this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return c&this.C}function kh(a,b){ce(this,a&b,128);this.A-=-1===this.oa?-1===this.U?this.D.eh:this.D.Xe:this.D.Xe;this.N|=2;return a}function lh(a,b){ce(this,a&b,this.Va);this.A-=-1===this.oa?-1===this.U?this.D.eh:this.D.Xe:this.D.Xe;this.N|=2;return a}function mh(a,b){var c=this.G&this.C,d=(1<<(this.F&31))-1;return a&~(d<<c)|(b&d)<<c}
function nh(a,b){return b>>(this.G&this.C)&(1<<(this.F&31))-1&this.C}function oh(a,b){if(-1===this.U){switch(this.ld&7){case 0:this.G=this.G&-256|a;break;case 1:this.F=this.F&-256|a;break;case 2:this.I=this.I&-256|a;break;case 3:this.B=this.B&-256|a;break;case 4:this.G=this.G&-65281|a<<8;break;case 5:this.F=this.F&-65281|a<<8;break;case 6:this.I=this.I&-65281|a<<8;break;case 7:this.B=this.B&-65281|a<<8}this.A-=this.D.gh}else this.oa=this.U,P(this,a),this.A-=this.D.fh;return b}
function ph(a,b){if(-1===this.U){switch(this.ld&7){case 0:this.G=this.G&~this.C|a;break;case 1:this.F=this.F&~this.C|a;break;case 2:this.I=this.I&~this.C|a;break;case 3:this.B=this.B&~this.C|a;break;case 4:n(this,r(this)&~this.C|a);break;case 5:this.K=this.B&~this.C|a;break;case 6:this.J=this.J&~this.C|a;break;case 7:this.H=this.H&~this.C|a}this.A-=this.D.gh}else this.oa=this.U,Q(this,a),this.A-=this.D.fh;return b}
function qh(a,b){var c=a^b;ce(this,c,128);this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return c}function rh(a,b){this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return ce(this,a^b,this.Va)&this.C}function sh(a){h.call(this,13,0);return a}function hd(a){h.call(this,6);return a}function th(a){kd.call(this);return a}function uh(){8086==this.ia?(this.Sb=-1,qg.call(this,0,null,2)):h.call(this,0,null,2)}function vh(){this.A-=-1===this.U?2:this.D.bj;return 1}
function wh(){var a=this.F&255;this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function xh(){var a=this.X();this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function yh(){return null}function zh(){return this.mc}function Ae(a,b){this.Sb=a;void 0===b&&(b=11);qg.call(this,a,null,b)}
function qh(a,b){var c=a^b;ce(this,c,128);this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return c}function rh(a,b){this.A-=-1===this.oa?-1===this.U?this.D.Yb:this.D.Db:this.D.nc;return ce(this,a^b,this.Va)&this.C}function sh(a){if(80186>this.ia)return th.call(this,a);h.call(this,13,0);return a}function hd(a){h.call(this,6);return a}function th(a){kd.call(this);return a}function uh(){8086==this.ia?(this.Sb=-1,qg.call(this,0,null,2)):h.call(this,0,null,2)}
function vh(){this.A-=-1===this.U?2:this.D.bj;return 1}function wh(){var a=this.F&255;this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function xh(){var a=this.X();this.A-=(-1===this.U?this.D.Xg:this.D.Wg)+(a<<this.D.Yg);return a}function yh(){return null}function zh(){return this.mc}function Ae(a,b){this.Sb=a;void 0===b&&(b=11);qg.call(this,a,null,b)}
function h(a,b,c,d){var e=!1;this.ja.Ie?80186<=this.ia&&(e=!0,0>this.Sb?(-1!=this.od&&(this.Ha.Cb=3,Sd(this,this.od),this.od=-1),Td(this,this.Rd),-1!=this.$d&&(zc(this,this.$d),this.$d=-1),-1!==this.sa&&(n(this,this.Nb&~this.Z.wa|this.sa-this.Z.Ea),this.sa=-1)):8!=this.Sb?(b=0,a=8):(b=0,a=-1,ud(this),e=d=!1)):Td(this,this.Rd);var k=a,l=b,p=pe(this,this.da);204!=p||this.wc||(d=!1);this.ca&131072&&(6==k&&99==p||13==k&&205==p)&&(d=!1);983040<=this.da&&1048575>=this.da&&(d=!1);if(d){var q=this.ja.Qb,
k="Fault 0x"+da(k,2)+(null!=l?" (0x"+da(l,4)+")":"")+" on opcode "+("0x"+da(p,2));d&&q&&(k+=" (blocked by PCjs Debugger)");this.Ka(k);lc(this)}if(d&&e)throw-1;if(e)throw this.Sb=a,qg.call(this,a,b,c),this.Rd=this.da,this.N=1==a?this.N|8192:this.N|4096,a;}function wd(a,b,c){this.pd=a;a=0;b&&(a|=1);c&&(a|=2);3==this.Fa&&(a|=4);h.call(this,14,a)}function id(){this.Fc[this.X()].call(this)}function ld(){t(this,r(this)&this.C);this.A-=this.D.zc}
function Sc(){this.sa=this.xa;var a=r(this)&this.C;t(this,this.G&this.C);t(this,this.F&this.C);t(this,this.I&this.C);t(this,this.B&this.C);t(this,a);t(this,this.K&this.C);t(this,this.J&this.C);t(this,this.H&this.C);this.A-=this.D.Wi;this.sa=-1}
function Tc(){this.sa=this.xa;this.H=this.H&~this.C|m(this);this.J=this.J&~this.C|m(this);this.K=this.K&~this.C|m(this);n(this,r(this)+this.ba);this.B=this.B&~this.C|m(this);this.I=this.I&~this.C|m(this);this.F=this.F&~this.C|m(this);this.G=this.G&~this.C|m(this);this.A-=this.D.Ui;this.sa=-1}function Uc(){this.ua[this.X()].call(this,Sf)}function md(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.Da[this.X()].call(this,Rf)}function od(){this.N|=20;this.R=this.S=this.Qa;this.A-=this.D.Oc}
function pd(){this.N|=20;this.R=this.S=this.Ua;this.A-=this.D.Oc}function qd(){this.N|=1024;this.Ba&1024||(this.ba^=6,this.C^=-65536,Kd(this));this.A-=this.D.Oc}function rd(){this.N|=2048;this.Ba&2048||(this.Uc^=6,this.wa^=-65536,Bd(this));this.A-=this.D.Oc}function Vc(){t(this,this.Ga());this.A-=this.D.zc}function Wc(){this.ua[this.X()].call(this,lg)}function Xc(){t(this,this.L());this.A-=this.D.zc}function Yc(){this.ua[this.X()].call(this,jg)}
function Tc(){this.sa=this.xa;this.H=this.H&~this.C|m(this);this.J=this.J&~this.C|m(this);this.K=this.K&~this.C|m(this);n(this,r(this)+this.ba);this.B=this.B&~this.C|m(this);this.I=this.I&~this.C|m(this);this.F=this.F&~this.C|m(this);this.G=this.G&~this.C|m(this);this.A-=this.D.Ui;this.sa=-1}function Uc(){this.ta[this.X()].call(this,Sf)}function md(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.Da[this.X()].call(this,Rf)}function od(){this.N|=20;this.R=this.S=this.Qa;this.A-=this.D.Oc}
function pd(){this.N|=20;this.R=this.S=this.Ua;this.A-=this.D.Oc}function qd(){this.N|=1024;this.Ba&1024||(this.ba^=6,this.C^=-65536,Kd(this));this.A-=this.D.Oc}function rd(){this.N|=2048;this.Ba&2048||(this.Uc^=6,this.wa^=-65536,Bd(this));this.A-=this.D.Oc}function Vc(){t(this,this.Ga());this.A-=this.D.zc}function Wc(){this.ta[this.X()].call(this,lg)}function Xc(){t(this,this.L());this.A-=this.D.zc}function Yc(){this.ta[this.X()].call(this,jg)}
function Zc(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;oe(this,e,1)&&(e=Kb(this.na,e,1,this.da-b-1),this.Kc(this.va.gc(this.H&c,1),e),this.H=this.H&~c|this.H+(this.ca&1024?-1:1)&c,this.F=this.F&~c|this.F-b&c,this.A-=d,a&&(Vd(this),this.N|=256))}}
function $c(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;oe(this,e,this.ba)&&(e=Kb(this.na,e,this.ba,this.da-b-1),this.Rb(this.va.gc(this.H&c,this.ba),e),this.H=this.H&~c|this.H+(this.ca&1024?-this.ba:this.ba)&c,this.F=this.F&~c|this.F-b&c,this.A-=d,a&&(Vd(this),this.N|=256))}}
function ad(){var a=1,b=0,c=this.wa,d=5;this.Ba&192&&(a=this.F&c,b=1,this.Ba&256&&(d=4));if(a--){var e=this.I&65535;if(oe(this,e,1)){var k=this.Kb(this.Ca.fc(this.J&c,1));Mb(this.na,e,1,k,this.da-b-1);this.J=this.J&~c|this.J+(this.ca&1024?-1:1)&c;this.F=this.F&~c|this.F-b&c;this.A-=d;a&&(Vd(this),this.N|=256)}}}
@ -185,22 +185,22 @@ function Gh(){var a=this.L();Xd(this)||$d(this)?(E(this,u(this)+a),this.A-=this.
function Lh(){var a=this.L();Yd(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}function Mh(){var a=this.L();!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}function Nh(){var a=this.L();!ae(this)==!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}function Oh(){var a=this.L();$d(this)||!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa}
function Ph(){var a=this.L();$d(this)||!ae(this)!=!be(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)}function Qh(){this.uc[this.X()].call(this,Rh,this.X);this.A-=-1===this.oa?1:this.D.Mf}function cd(){this.uc[this.X()].call(this,Sh,xh)}function dd(){this.ub[this.X()].call(this,2==this.ba?Th:Uh,xh)}function Vh(){var a=we(this),b=m(this);E(this,b);a&&n(this,r(this)+a);this.A-=this.D.aj}function Wh(){var a=m(this);E(this,a);this.A-=this.D.Yi}
function ed(){this.sa=this.xa;var a=we(this),b=this.X()&31;this.A-=11;t(this,this.K);var c=r(this)&this.C;if(0<b){for(this.A-=(b<<2)+(1<b?1:0);--b;)this.K=this.K&~this.C|this.K-this.ba&this.C,t(this,Dc(this,this.Z,this.K&this.C));t(this,c)}this.K=this.K&~this.C|c;n(this,r(this)&~this.Z.wa|r(this)-a&this.Z.wa);this.sa=-1}function fd(){this.sa=this.xa;n(this,r(this)&~this.Z.wa|this.K&this.Z.wa);this.K=this.K&~this.C|m(this)&this.C;this.A-=5;this.sa=-1}
function Xh(){Eg.call(this,we(this));this.A-=this.D.$i}function Yh(){Eg.call(this,0);this.A-=this.D.Zi}function Zh(a){this.zh=a;this.ua[this.ld=this.X()].call(this,ig)}function $h(){this.N|=36;this.A-=this.D.Oc}function gd(){kd.call(this)}function Rc(){h.call(this,6)}function kd(){E(this,this.Rd-this.Ha.Ea);var a=this.Kb(this.da);$a(this,"Undefined opcode 0x"+da(a,2)+" at "+("0x"+da(this.da)));lc(this)}
var Nc=[function(){var a=this.X();this.Hb[a].call(this,Nf)},function(){this.Da[this.X()].call(this,Of)},function(){this.vb[this.X()].call(this,Nf)},function(){this.ua[this.X()].call(this,Of)},function(){this.G=this.G&-256|Nf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Of.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.va.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Gc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,
Cg)},function(){this.Da[this.X()].call(this,Dg)},function(){this.vb[this.X()].call(this,Cg)},function(){this.ua[this.X()].call(this,Dg)},function(){this.G=this.G&-256|Cg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Dg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ha.ra,this.ba,2);this.A-=this.D.Qd},function(){Sd(this,m(this));this.A-=this.D.Zb},function(){this.Hb[this.X()].call(this,Lf)},function(){this.Da[this.X()].call(this,Mf)},function(){this.vb[this.X()].call(this,
Lf)},function(){this.ua[this.X()].call(this,Mf)},function(){this.G=this.G&-256|Lf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Mf.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Z.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;zc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Fg)},function(){this.Da[this.X()].call(this,Gg)},function(){this.vb[this.X()].call(this,Fg)},function(){this.ua[this.X()].call(this,
Gg)},function(){this.G=this.G&-256|Fg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Gg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ca.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Fc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Pf)},function(){this.Da[this.X()].call(this,Qf)},function(){this.vb[this.X()].call(this,Pf)},function(){this.ua[this.X()].call(this,Qf)},function(){this.G=this.G&-256|Pf.call(this,
function Xh(){Eg.call(this,we(this));this.A-=this.D.$i}function Yh(){Eg.call(this,0);this.A-=this.D.Zi}function Zh(a){this.zh=a;this.ta[this.ld=this.X()].call(this,ig)}function $h(){this.N|=36;this.A-=this.D.Oc}function gd(){kd.call(this)}function Rc(){h.call(this,6)}function kd(){E(this,this.Rd-this.Ha.Ea);var a=this.Kb(this.da);$a(this,"Undefined opcode 0x"+da(a,2)+" at "+("0x"+da(this.da)));lc(this)}
var Nc=[function(){var a=this.X();this.Hb[a].call(this,Nf)},function(){this.Da[this.X()].call(this,Of)},function(){this.vb[this.X()].call(this,Nf)},function(){this.ta[this.X()].call(this,Of)},function(){this.G=this.G&-256|Nf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Of.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.va.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Gc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,
Cg)},function(){this.Da[this.X()].call(this,Dg)},function(){this.vb[this.X()].call(this,Cg)},function(){this.ta[this.X()].call(this,Dg)},function(){this.G=this.G&-256|Cg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Dg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ha.ra,this.ba,2);this.A-=this.D.Qd},function(){Sd(this,m(this));this.A-=this.D.Zb},function(){this.Hb[this.X()].call(this,Lf)},function(){this.Da[this.X()].call(this,Mf)},function(){this.vb[this.X()].call(this,
Lf)},function(){this.ta[this.X()].call(this,Mf)},function(){this.G=this.G&-256|Lf.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Mf.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Z.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;zc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Fg)},function(){this.Da[this.X()].call(this,Gg)},function(){this.vb[this.X()].call(this,Fg)},function(){this.ta[this.X()].call(this,
Gg)},function(){this.G=this.G&-256|Fg.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Gg.call(this,this.G&this.C,this.Ga());this.A--},function(){Ec(this,this.Ca.ra,this.ba,2);this.A-=this.D.Qd},function(){this.sa=this.xa;Fc(this,m(this));this.A-=this.D.Zb;this.sa=-1},function(){this.Hb[this.X()].call(this,Pf)},function(){this.Da[this.X()].call(this,Qf)},function(){this.vb[this.X()].call(this,Pf)},function(){this.ta[this.X()].call(this,Qf)},function(){this.G=this.G&-256|Pf.call(this,
this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|Qf.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.va;this.A-=this.D.Oc},function(){var a=this.G&255,b=Zd(this),c=Xd(this);if(9<(a&15)||b)a+=6,b=16;if(159<a||c)a+=96,c=1;a&=255;this.G=this.G&-256|a;ce(this,a,128);c?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,ih)},function(){this.Da[this.X()].call(this,jh)},function(){this.vb[this.X()].call(this,
ih)},function(){this.ua[this.X()].call(this,jh)},function(){this.G=this.G&-256|ih.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|jh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ha;this.A-=this.D.Oc},function(){var a=this.G&255,b=Zd(this),c=Xd(this);if(9<(a&15)||b)a-=6,b=16;if(159<a||c)a-=96,c=1;a&=255;this.G=this.G&-256|a;ce(this,a,128);c?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,
qh)},function(){this.Da[this.X()].call(this,rh)},function(){this.vb[this.X()].call(this,qh)},function(){this.ua[this.X()].call(this,rh)},function(){this.G=this.G&-256|qh.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|rh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Z;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c+=6,80286<=this.ia&&255<c&&d++,d++,a=b=1):a=b=0;this.G=this.G&-65536|(d<<8|c)&
65295;a?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,dg)},function(){this.Da[this.X()].call(this,eg)},function(){this.vb[this.X()].call(this,dg)},function(){this.ua[this.X()].call(this,eg)},function(){dg.call(this,this.G&255,this.X());this.A--},function(){eg.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ca;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c=c-6&15,d=d-1&
ih)},function(){this.ta[this.X()].call(this,jh)},function(){this.G=this.G&-256|ih.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|jh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ha;this.A-=this.D.Oc},function(){var a=this.G&255,b=Zd(this),c=Xd(this);if(9<(a&15)||b)a-=6,b=16;if(159<a||c)a-=96,c=1;a&=255;this.G=this.G&-256|a;ce(this,a,128);c?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,
qh)},function(){this.Da[this.X()].call(this,rh)},function(){this.vb[this.X()].call(this,qh)},function(){this.ta[this.X()].call(this,rh)},function(){this.G=this.G&-256|qh.call(this,this.G&255,this.X());this.A--},function(){this.G=this.G&~this.C|rh.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Z;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c+=6,80286<=this.ia&&255<c&&d++,d++,a=b=1):a=b=0;this.G=this.G&-65536|(d<<8|c)&
65295;a?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.Hb[this.X()].call(this,dg)},function(){this.Da[this.X()].call(this,eg)},function(){this.vb[this.X()].call(this,dg)},function(){this.ta[this.X()].call(this,eg)},function(){dg.call(this,this.G&255,this.X());this.A--},function(){eg.call(this,this.G&this.C,this.Ga());this.A--},function(){this.N|=20;this.R=this.S=this.Ca;this.A-=this.D.Oc},function(){var a,b,c=this.G&255,d=this.G>>8&255;9<(c&15)||Zd(this)?(c=c-6&15,d=d-1&
255,a=b=1):a=b=0;this.G=this.G&-65536|d<<8|c;a?de(this):ee(this);b?le(this):je(this);this.A-=this.D.Pd},function(){this.G=pg.call(this,this.G)},function(){this.F=pg.call(this,this.F)},function(){this.I=pg.call(this,this.I)},function(){this.B=pg.call(this,this.B)},function(){n(this,pg.call(this,r(this)))},function(){this.K=pg.call(this,this.K)},function(){this.J=pg.call(this,this.J)},function(){this.H=pg.call(this,this.H)},function(){this.G=fg.call(this,this.G)},function(){this.F=fg.call(this,this.F)},
function(){this.I=fg.call(this,this.I)},function(){this.B=fg.call(this,this.B)},function(){n(this,fg.call(this,r(this)))},function(){this.K=fg.call(this,this.K)},function(){this.J=fg.call(this,this.J)},function(){this.H=fg.call(this,this.H)},function(){t(this,this.G&this.C);this.A-=this.D.zc},function(){t(this,this.F&this.C);this.A-=this.D.zc},function(){t(this,this.I&this.C);this.A-=this.D.zc},function(){t(this,this.B&this.C);this.A-=this.D.zc},function(){t(this,r(this)-2&65535);this.A-=this.D.zc},
function(){t(this,this.K&this.C);this.A-=this.D.zc},function(){t(this,this.J&this.C);this.A-=this.D.zc},function(){t(this,this.H&this.C);this.A-=this.D.zc},function(){this.G=this.G&~this.C|m(this);this.A-=this.D.Zb},function(){this.F=this.F&~this.C|m(this);this.A-=this.D.Zb},function(){this.I=this.I&~this.C|m(this);this.A-=this.D.Zb},function(){this.B=this.B&~this.C|m(this);this.A-=this.D.Zb},function(){n(this,r(this)&~this.C|m(this));this.A-=this.D.Zb},function(){this.K=this.K&~this.C|m(this);this.A-=
this.D.Zb},function(){this.J=this.J&~this.C|m(this);this.A-=this.D.Zb},function(){this.H=this.H&~this.C|m(this);this.A-=this.D.Zb},Ah,Bh,Ch,Dh,Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Ah,Bh,Ch,Dh,Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,function(){this.ub[this.X()].call(this,ai,this.Ga);this.A-=-1===this.oa?1:this.D.Mf},Qh,function(){this.ub[this.X()].call(this,ai,this.L);this.A-=-1===this.oa?1:this.D.Mf},function(){this.Hb[this.X()].call(this,kh)},function(){this.Da[this.X()].call(this,lh)},function(){this.vb[this.ld=
this.X()].call(this,oh)},function(){this.ua[this.ld=this.X()].call(this,ph)},function(){this.N|=1;this.Hb[this.X()].call(this,zg)},function(){this.N|=1;this.Da[this.X()].call(this,zg)},function(){this.vb[this.X()].call(this,zg)},function(){this.ua[this.X()].call(this,zg)},function(){var a=this.X();switch((a&56)>>3){case 0:this.mc=this.va.ra;break;case 1:this.mc=this.Ha.ra;break;case 2:this.mc=this.Z.ra;break;case 3:this.mc=this.Ca.ra;break;case 4:if(80386<=this.ia){this.mc=this.Qa.ra;break}h.call(this,
6);return;case 5:if(80386<=this.ia){this.mc=this.Ua.ra;break}default:h.call(this,6);return}this.N|=1;this.Da[a].call(this,Bg)},function(){this.N|=1;this.R=this.S=this.ag;this.ua[this.X()].call(this,tg)},function(){var a,b;b=this.X();var c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.I;break;case 3:a=this.B;break;default:if(80286==this.ia||80386==this.ia&&4!=c&&5!=c){h.call(this,6);return}switch(c){case 1:a=this.F;break;case 4:a=r(this);break;case 5:a=this.K;break;case 6:a=this.J;break;
case 7:a=this.H}}this.ua[b].call(this,zg);switch(c){case 0:b=this.G;this.G=a;Gc(this,b);break;case 1:b=this.F;this.F=a;Sd(this,b);break;case 2:b=this.I;this.I=a;zc(this,b);break;case 3:b=this.B;this.B=a;Fc(this,b);break;case 4:b=r(this);n(this,a);80386<=this.ia?this.Qa.load(b):Gc(this,b);break;case 5:b=this.K;this.K=a;80386<=this.ia?this.Ua.load(b):Sd(this,b);break;case 6:b=this.J;this.J=a;zc(this,b);break;case 7:b=this.H,this.H=a,Fc(this,b)}},function(){this.N|=1;this.sa=this.xa;this.mc=m(this);
this.X()].call(this,oh)},function(){this.ta[this.ld=this.X()].call(this,ph)},function(){this.N|=1;this.Hb[this.X()].call(this,zg)},function(){this.N|=1;this.Da[this.X()].call(this,zg)},function(){this.vb[this.X()].call(this,zg)},function(){this.ta[this.X()].call(this,zg)},function(){var a=this.X();switch((a&56)>>3){case 0:this.mc=this.va.ra;break;case 1:this.mc=this.Ha.ra;break;case 2:this.mc=this.Z.ra;break;case 3:this.mc=this.Ca.ra;break;case 4:if(80386<=this.ia){this.mc=this.Qa.ra;break}h.call(this,
6);return;case 5:if(80386<=this.ia){this.mc=this.Ua.ra;break}default:h.call(this,6);return}this.N|=1;this.Da[a].call(this,Bg)},function(){this.N|=1;this.R=this.S=this.ag;this.ta[this.X()].call(this,tg)},function(){var a,b;b=this.X();var c=(b&56)>>3;switch(c){case 0:a=this.G;break;case 2:a=this.I;break;case 3:a=this.B;break;default:if(80286==this.ia||80386==this.ia&&4!=c&&5!=c){h.call(this,6);return}switch(c){case 1:a=this.F;break;case 4:a=r(this);break;case 5:a=this.K;break;case 6:a=this.J;break;
case 7:a=this.H}}this.ta[b].call(this,zg);switch(c){case 0:b=this.G;this.G=a;Gc(this,b);break;case 1:b=this.F;this.F=a;Sd(this,b);break;case 2:b=this.I;this.I=a;zc(this,b);break;case 3:b=this.B;this.B=a;Fc(this,b);break;case 4:b=r(this);n(this,a);80386<=this.ia?this.Qa.load(b):Gc(this,b);break;case 5:b=this.K;this.K=a;80386<=this.ia?this.Ua.load(b):Sd(this,b);break;case 6:b=this.J;this.J=a;zc(this,b);break;case 7:b=this.H,this.H=a,Fc(this,b)}},function(){this.N|=1;this.sa=this.xa;this.mc=m(this);
this.ub[this.X()].call(this,bi,zh);this.sa=-1},function(){this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.F&this.C;this.F=this.F&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.I&this.C;this.I=this.I&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.B&this.C;this.B=this.B&~this.C|a&this.C;this.A-=3},function(){var a=this.G,b=r(this);this.G=this.G&~this.C|b&this.C;n(this,b&~this.C|a&this.C);this.A-=3},function(){var a=this.G;
this.G=this.G&~this.C|this.K&this.C;this.K=this.K&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.J&this.C;this.J=this.J&~this.C|a&this.C;this.A-=3},function(){var a=this.G;this.G=this.G&~this.C|this.H&this.C;this.H=this.H&~this.C|a&this.C;this.A-=3},function(){this.G=2==this.ba?this.G&-65536|this.G<<24>>24&65535:this.G<<16>>16;this.A-=2},function(){this.I=2==this.ba?this.I&-65536|(this.G&32768?65535:0):this.G&-2147483648?-1:0;this.A-=this.D.gi},function(){cg.call(this,
this.Ga(),we(this));this.A-=this.D.ji},function(){this.A-=3},function(){var a=Hc(this);a&131072&&3>this.Eb?h.call(this,13,0):(t(this,a&-196609),this.A-=this.D.zc)},function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=m(this),a=a&65535|this.ca&-65536;Ic(this,a);this.A-=this.D.Zb}},function(){var a=this.G>>8&255;a&1?de(this):ee(this);a&4?(this.resultType&=-3,this.ca|=4):(this.resultType&=-3,this.ca&=-5);a&16?le(this):je(this);a&64?me(this):ke(this);a&128?(this.resultType&=-17,this.ca|=
@ -213,8 +213,8 @@ this.Ba&256||(this.A-=this.D.$g));if(a--){var e=this.G;this.Rb(this.va.gc(this.H
this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.D.Gg;this.Ba&192&&(a=this.F&c,b=1,d=this.D.Ig,this.Ba&256||(this.A-=this.D.Hg));if(a--){var e=Dc(this,this.R,this.J&c);this.G=this.G&~this.C|e;this.J=this.J&~c|this.J+(this.ca&1024?-this.ba:this.ba)&c;this.F=this.F&~c|this.F-b&c;this.A-=d;a&&(Vd(this),this.N|=256)}},function(){var a=1,b=0,c=this.wa,d=this.D.Tg;this.Ba&192&&(a=this.F&c,b=1,d=this.D.Vg,this.Ba&256||(this.A-=this.D.Ug));a--&&(dg.call(this,this.G&255,ue(this,this.va,this.H&c)),this.H=
this.H&~c|this.H+(this.ca&1024?-1:1)&c,this.F=this.F&~c|this.F-b&c,this.A-=d-this.D.Db,a&&$d(this)==(this.Ba&64)&&(Vd(this),this.N|=256))},function(){var a=1,b=0,c=this.wa,d=this.D.Tg;this.Ba&192&&(a=this.F&c,b=1,d=this.D.Vg,this.Ba&256||(this.A-=this.D.Ug));a--&&(eg.call(this,this.G&this.C,ve(this,this.va,this.H&c)),this.H=this.H&~c|this.H+(this.ca&1024?-this.ba:this.ba)&c,this.F=this.F&~c|this.F-b&c,this.A-=d-this.D.Db,a&&$d(this)==(this.Ba&64)&&(Vd(this),this.N|=256))},function(){this.G=this.G&
-256|this.X();this.A-=this.D.Mb},function(){this.F=this.F&-256|this.X();this.A-=this.D.Mb},function(){this.I=this.I&-256|this.X();this.A-=this.D.Mb},function(){this.B=this.B&-256|this.X();this.A-=this.D.Mb},function(){this.G=this.G&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.F=this.F&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.I=this.I&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.B=this.B&-65281|this.X()<<8;this.A-=this.D.Mb},function(){this.G=this.G&~this.C|this.Ga();
this.A-=this.D.Mb},function(){this.F=this.F&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.I=this.I&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.B=this.B&~this.C|this.Ga();this.A-=this.D.Mb},function(){n(this,r(this)&~this.C|this.Ga());this.A-=this.D.Mb},function(){this.K=this.K&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.J=this.J&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.H=this.H&~this.C|this.Ga();this.A-=this.D.Mb},Vh,Wh,Vh,Wh,function(){this.ua[this.X()].call(this,
ug)},function(){this.ua[this.X()].call(this,sg)},function(){this.N|=1;this.uc[this.X()].call(this,ci,this.X)},function(){this.N|=1;this.ub[this.X()].call(this,ci,this.Ga)},Xh,Yh,Xh,Yh,function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=this.D.Bi;this.Sb=-1;qg.call(this,3,null,a)}},function(){var a=this.X();if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var b;a:{b=this.pf[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.da)){b=!1;break a}b=!0}b?(this.Sb=-1,qg.call(this,
this.A-=this.D.Mb},function(){this.F=this.F&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.I=this.I&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.B=this.B&~this.C|this.Ga();this.A-=this.D.Mb},function(){n(this,r(this)&~this.C|this.Ga());this.A-=this.D.Mb},function(){this.K=this.K&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.J=this.J&~this.C|this.Ga();this.A-=this.D.Mb},function(){this.H=this.H&~this.C|this.Ga();this.A-=this.D.Mb},Vh,Wh,Vh,Wh,function(){this.ta[this.X()].call(this,
ug)},function(){this.ta[this.X()].call(this,sg)},function(){this.N|=1;this.uc[this.X()].call(this,ci,this.X)},function(){this.N|=1;this.ub[this.X()].call(this,ci,this.Ga)},Xh,Yh,Xh,Yh,function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=this.D.Bi;this.Sb=-1;qg.call(this,3,null,a)}},function(){var a=this.X();if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var b;a:{b=this.pf[a];if(void 0!==b)for(var c=0;c<b.length;c++)if(!b[c](this.da)){b=!1;break a}b=!0}b?(this.Sb=-1,qg.call(this,
a,null,0)):this.A--}},function(){if(be(this))if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{var a=this.D.Ci;this.Sb=-1;qg.call(this,4,null,a)}else this.A-=this.D.Di},function(){if(this.ca&131072&&3>this.Eb)h.call(this,13,0);else{this.sa=this.xa;this.A-=this.D.zi;if(this.Ya&1&&this.ca&16384){var a=this.ma(this.la.Ea+0);Ac(this.Ha,a,!1)}else{var a=this.Fa,b=m(this),c=m(this),d=m(this);if(this.ca&131072)d=d&131071|this.ca&-131072;else if(d&131072){var e=m(this),k=m(this),l=m(this),p=m(this),q=m(this),
w=m(this);Bc(this,!0,!0);zc(this,k);n(this,e);Gc(this,l);Fc(this,p);this.Qa.load(q);this.Ua.load(w)}null!=Jc(this,b,c,!1)&&(Ic(this,d,a),this.Yf&&Nd(this,this.da))}this.sa=-1}},function(){this.uc[this.X()].call(this,Sh,vh)},function(){this.ub[this.X()].call(this,2==this.ba?Th:Uh,vh)},function(){this.uc[this.X()].call(this,Sh,wh)},function(){this.ub[this.X()].call(this,2==this.ba?Th:Uh,wh)},function(){var a=this.X();if(a){var b=this.G&255;this.G=this.G&-65536|b/a<<8|b%a;ce(this,this.G,128);this.A-=
this.D.di}},function(){var a=this.X();this.G=this.G&-65536|(this.G>>8&255)*a+this.G&255;ce(this,this.G,128);this.A-=this.D.ci},function(){this.G=this.G&-256|(Xd(this)?255:0);this.A-=2},function(){this.G=this.G&-256|qe(this,this.R,this.B+(this.G&255)&65535);this.A-=this.D.cj},function(){Zh.call(this,216)},function(){Zh.call(this,217)},function(){Zh.call(this,218)},function(){Zh.call(this,219)},function(){Zh.call(this,220)},function(){Zh.call(this,221)},function(){Zh.call(this,222)},function(){Zh.call(this,
@ -236,8 +236,8 @@ fe(this)):(ee(this),ge(this));this.Ib=!0;this.A-=-1===this.U?this.D.yi:this.D.xi
16,d=(b=this.I<<16|this.G&65535)/c|0;if(d!=d<<16>>16||8086==this.ia&&-32768==d)return uh.call(this),a;this.ya=d&65535;this.Ma=b%c&65535}else{var c=this.G,d=this.I,e=a,k=0,l=0;0>e&&(e=-e|0,k=1-k);0>d&&(c=-c|0,d=~d+(c?0:1)|0,l=1,k=1-k);!hg.call(this,c,d,e)||this.ya>2147483647+k||this.Ma>2147483647+l?c=!1:(k&&(this.ya=-this.ya),l&&(this.Ma=-this.Ma),c=!0);if(!c)return uh.call(this),a;this.ya|=0;this.Ma|=0}this.Ib=!0;this.A-=-1===this.U?this.D.ui:this.D.ti;this.N|=2;return a}],Oc=[function(a){var b=a+
1|0;Wd(this,a,1,b,190);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&255},function(a){var b=a-1|0;Wd(this,a,1,b,190,!0);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&255},th,th,th,th,th,th],Pc=[function(a){var b=a+1|0;Wd(this,a,1,b,this.Va|62);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&this.C},function(a){var b=a-1|0;Wd(this,a,1,b,this.Va|62,!0);this.A-=-1===this.U?this.D.Ue:this.D.Te;return b&this.C},function(a){t(this,u(this));E(this,a);this.A-=-1===this.U?this.D.li:this.D.ki;this.N|=
2;return a},function(a){if(-1===this.U)return th.call(this,a);this.sa=this.xa;cg.call(this,a,this.ma(this.U+this.ba));this.A-=this.D.ii;this.N|=2;this.sa=-1;return a},function(a){E(this,a);this.A-=-1===this.U?this.D.Hi:this.D.Gi;this.N|=2;return a},function(a){if(-1===this.U)return th.call(this,a);Jc(this,a,this.ma(this.U+this.ba));this.A-=this.D.Ei;this.N|=2;return a},function(a){var b=a;this.N&512&&(a=a-2&65535,80286>this.ia&&(b=a));t(this,b);this.A-=-1===this.U?this.D.zc:this.D.Xi;this.N|=2;return a},
sh];function sd(){this.ua[this.X()].call(this,nh);this.A-=-1===this.U?6:13}function td(){this.Da[this.X()].call(this,mh);this.A-=-1===this.U?12:19}var jd=Array(256);jd[0]=function(){var a=this.X();16>(a&56)&&(this.N|=1);this.ub[a].call(this,this.yh,yh)};jd[1]=function(){var a=this.X();a&16||(this.N|=1);this.ub[a].call(this,fi,yh)};jd[2]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ua[this.X()].call(this,rg)};
jd[3]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ua[this.X()].call(this,xg)};
th];function sd(){this.ta[this.X()].call(this,nh);this.A-=-1===this.U?6:13}function td(){this.Da[this.X()].call(this,mh);this.A-=-1===this.U?12:19}var jd=Array(256);jd[0]=function(){var a=this.X();16>(a&56)&&(this.N|=1);this.ub[a].call(this,this.yh,yh)};jd[1]=function(){var a=this.X();a&16||(this.N|=1);this.ub[a].call(this,fi,yh)};jd[2]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ta[this.X()].call(this,rg)};
jd[3]=function(){!(this.Ya&1)||this.ca&131072?h.call(this,6):this.ta[this.X()].call(this,xg)};
jd[5]=function(){this.Fa?h.call(this,13,0,0,!0):(ne(this,this.ma(2054)),this.H=this.ma(2086),this.J=this.ma(2088),this.K=this.ma(2090),this.B=this.ma(2094),this.I=this.ma(2096),this.F=this.ma(2098),this.G=this.ma(2100),yc(this.va,2102,this.ma(2084)),yc(this.Ha,2108,this.ma(2082)),yc(this.Z,2114,this.ma(2080)),yc(this.Ca,2120,this.ma(2078)),Ic(this,this.ma(2072)),E(this,this.ma(2074)),n(this,this.ma(2092)),this.jb=this.ma(2126)|this.Kb(2128)<<16,this.vc=this.jb+this.ma(2130),this.Ab=this.ma(2138)|
this.Kb(2140)<<16,this.wc=this.Ab+this.ma(2142),yc(this.Ob,2132,this.ma(2076)),yc(this.la,2144,this.ma(2070)),this.A-=195)};jd[6]=function(){this.Fa?h.call(this,13,0):(this.Ya&=-9,this.A-=2)};jd[11]=Rc;jd[166]=Rc;jd[255]=Rc;var v=[];v[5]=Rc;
v[7]=function(){if(this.Fa)h.call(this,13,0,0,!0);else{var a=this.va.fc(this.H&this.wa,204);if(-1!==a){this.Ya=this.ka(a);Bc(this);this.Ya&-2147483648?vd(this):xd(this);var b=this.ka(a+168),c=(b&24576)>>13;Ic(this,this.ka(a+4),c);this.jb=this.ka(a+112);this.vc=this.jb+this.ka(a+116);this.Ab=this.ka(a+100);this.wc=this.Ab+this.ka(a+104);xc(this.Ob,this.ka(a+56),this.ka(a+120),this.ka(a+124),this.ka(a+128));xc(this.la,this.ka(a+52),this.ka(a+84),this.ka(a+88),this.ka(a+92));this.H=this.ka(a+12);this.J=
@ -250,14 +250,14 @@ v[135]=function(){var a=this.Ga();Xd(this)||$d(this)?this.A-=this.D.Sa:(E(this,u
v[140]=function(){var a=this.Ga();!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[141]=function(){var a=this.Ga();!ae(this)==!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[142]=function(){var a=this.Ga();$d(this)||!ae(this)!=!be(this)?(E(this,u(this)+a),this.A-=this.D.Ra):this.A-=this.D.Sa};v[143]=function(){var a=this.Ga();$d(this)||!ae(this)!=!be(this)?this.A-=this.D.Sa:(E(this,u(this)+a),this.A-=this.D.Ra)};v[144]=function(){Hg.call(this,Ig)};
v[145]=function(){Hg.call(this,Ig)};v[146]=function(){Hg.call(this,Jg)};v[147]=function(){Hg.call(this,Kg)};v[148]=function(){Hg.call(this,Lg)};v[149]=function(){Hg.call(this,Mg)};v[150]=function(){Hg.call(this,Ng)};v[151]=function(){Hg.call(this,Og)};v[152]=function(){Hg.call(this,Pg)};v[153]=function(){Hg.call(this,Qg)};v[154]=function(){Hg.call(this,Rg)};v[155]=function(){Hg.call(this,Sg)};v[156]=function(){Hg.call(this,Tg)};v[157]=function(){Hg.call(this,Ug)};v[158]=function(){Hg.call(this,Vg)};
v[159]=function(){Hg.call(this,Wg)};v[160]=function(){Ec(this,this.Qa.ra,this.ba,2);this.A-=this.D.Qd};v[161]=function(){this.sa=this.xa;var a=m(this);this.Qa.load(a);this.A-=this.D.Zb;this.sa=-1};v[163]=function(){this.Da[this.X()].call(this,Zf);-1!==this.U&&(this.A-=6)};v[164]=function(){this.Da[this.X()].call(this,2==this.ba?Zg:$g);this.A-=-1===this.U?3:7};v[165]=function(){this.Da[this.X()].call(this,2==this.ba?ah:bh);this.A-=-1===this.U?3:7};
v[168]=function(){Ec(this,this.Ua.ra,this.ba,2);this.A-=this.D.Qd};v[169]=function(){this.sa=this.xa;var a=m(this);this.Ua.load(a);this.A-=this.D.Zb;this.sa=-1};v[171]=function(){this.Da[this.X()].call(this,bg);-1!==this.U&&(this.A-=5)};v[172]=function(){this.Da[this.X()].call(this,2==this.ba?eh:fh);this.A-=-1===this.U?3:7};v[173]=function(){this.Da[this.X()].call(this,2==this.ba?gh:hh);this.A-=-1===this.U?3:7};v[175]=function(){this.ua[this.X()].call(this,2==this.ba?kg:mg)};
v[178]=function(){this.ua[this.X()].call(this,yg)};v[179]=function(){this.Da[this.X()].call(this,ag);-1!==this.U&&(this.A-=5)};v[180]=function(){this.ua[this.X()].call(this,vg)};v[181]=function(){this.ua[this.X()].call(this,wg)};
v[168]=function(){Ec(this,this.Ua.ra,this.ba,2);this.A-=this.D.Qd};v[169]=function(){this.sa=this.xa;var a=m(this);this.Ua.load(a);this.A-=this.D.Zb;this.sa=-1};v[171]=function(){this.Da[this.X()].call(this,bg);-1!==this.U&&(this.A-=5)};v[172]=function(){this.Da[this.X()].call(this,2==this.ba?eh:fh);this.A-=-1===this.U?3:7};v[173]=function(){this.Da[this.X()].call(this,2==this.ba?gh:hh);this.A-=-1===this.U?3:7};v[175]=function(){this.ta[this.X()].call(this,2==this.ba?kg:mg)};
v[178]=function(){this.ta[this.X()].call(this,yg)};v[179]=function(){this.Da[this.X()].call(this,ag);-1!==this.U&&(this.A-=5)};v[180]=function(){this.ta[this.X()].call(this,vg)};v[181]=function(){this.ta[this.X()].call(this,wg)};
v[182]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.vb[b].call(this,Ag);switch(c){case 0:this.G=this.G&~this.C|this.G&255;break;case 1:this.F=this.F&~this.C|this.F&255;break;case 2:this.I=this.I&~this.C|this.I&255;break;case 3:this.B=this.B&~this.C|this.B&255;break;case 4:this.Nb=this.Nb&~this.C|this.G>>8&255;this.G=a;break;case 5:this.K=this.K&~this.C|this.F>>8&255;this.F=a;break;case 6:this.J=this.J&~this.C|
this.I>>8&255;this.I=a;break;case 7:this.H=this.H&~this.C|this.B>>8&255,this.B=a}this.A-=-1===this.U?3:6};v[183]=function(){var a=this.X();Cc(this,2);this.ua[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G&65535;break;case 1:this.F=this.F&65535;break;case 2:this.I=this.I&65535;break;case 3:this.B=this.B&65535;break;case 4:this.Nb=this.Nb&65535;break;case 5:this.K=this.K&65535;break;case 6:this.J=this.J&65535;break;case 7:this.H=this.H&65535}this.A-=-1===this.U?3:6};
v[186]=function(){this.ub[this.X()].call(this,gi,this.X)};v[187]=function(){this.Da[this.X()].call(this,$f);-1!==this.U&&(this.A-=5)};v[188]=function(){this.ua[this.X()].call(this,Tf)};v[189]=function(){this.ua[this.X()].call(this,Uf)};
this.I>>8&255;this.I=a;break;case 7:this.H=this.H&~this.C|this.B>>8&255,this.B=a}this.A-=-1===this.U?3:6};v[183]=function(){var a=this.X();Cc(this,2);this.ta[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G&65535;break;case 1:this.F=this.F&65535;break;case 2:this.I=this.I&65535;break;case 3:this.B=this.B&65535;break;case 4:this.Nb=this.Nb&65535;break;case 5:this.K=this.K&65535;break;case 6:this.J=this.J&65535;break;case 7:this.H=this.H&65535}this.A-=-1===this.U?3:6};
v[186]=function(){this.ub[this.X()].call(this,gi,this.X)};v[187]=function(){this.Da[this.X()].call(this,$f);-1!==this.U&&(this.A-=5)};v[188]=function(){this.ta[this.X()].call(this,Tf)};v[189]=function(){this.ta[this.X()].call(this,Uf)};
v[190]=function(){var a,b=this.X(),c=(b&56)>>3;switch(c){case 4:a=this.G;break;case 5:a=this.F;break;case 6:a=this.I;break;case 7:a=this.B}this.vb[b].call(this,Ag);switch(c){case 0:this.G=this.G&~this.C|(this.G&255)<<24>>24&this.C;break;case 1:this.F=this.F&~this.C|(this.F&255)<<24>>24&this.C;break;case 2:this.I=this.I&~this.C|(this.I&255)<<24>>24&this.C;break;case 3:this.B=this.B&~this.C|(this.B&255)<<24>>24&this.C;break;case 4:this.Nb=this.Nb&~this.C|this.G<<16>>24&this.C;this.G=a;break;case 5:this.K=
this.K&~this.C|this.F<<16>>24&this.C;this.F=a;break;case 6:this.J=this.J&~this.C|this.I<<16>>24&this.C;this.I=a;break;case 7:this.H=this.H&~this.C|this.B<<16>>24&this.C,this.B=a}this.A-=-1===this.U?3:6};
v[191]=function(){var a=this.X();Cc(this,2);this.ua[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G<<16>>16;break;case 1:this.F=this.F<<16>>16;break;case 2:this.I=this.I<<16>>16;break;case 3:this.B=this.B<<16>>16;break;case 4:this.Nb=this.Nb<<16>>16;break;case 5:this.K=this.K<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.H=this.H<<16>>16}this.A-=-1===this.U?3:6};
v[191]=function(){var a=this.X();Cc(this,2);this.ta[a].call(this,Ag);switch((a&56)>>3){case 0:this.G=this.G<<16>>16;break;case 1:this.F=this.F<<16>>16;break;case 2:this.I=this.I<<16>>16;break;case 3:this.B=this.B<<16>>16;break;case 4:this.Nb=this.Nb<<16>>16;break;case 5:this.K=this.K<<16>>16;break;case 6:this.J=this.J<<16>>16;break;case 7:this.H=this.H<<16>>16}this.A-=-1===this.U?3:6};
var Pd=[function(){this.A-=2+(-1===this.U?0:1);return this.Ob.ra},function(){this.A-=2+(-1===this.U?0:1);return this.la.ra},function(a){this.N|=2;this.Ob.load(a);this.A-=17+(-1===this.U?0:2);return a},function(a){this.N|=2;-1!==this.la.load(a)&&(this.gb(this.la.ec+4,this.la.ob|=512),this.la.type|=512);this.A-=17+(-1===this.U?0:2);return a},function(a){this.N|=2;this.A-=14+(-1===this.U?0:2);if(-1!==this.Na.load(a)&&2048!=(this.Na.ob&2560)&&(this.Na.sc>=this.Fa&&this.Na.sc>=(a&3)||7168==(this.Na.ob&
7168)))return me(this),a;ke(this);return a},function(a){this.N|=2;this.A-=14+(-1===this.U?0:2);if(-1!==this.Na.load(a)&&512==(this.Na.ob&2560)&&this.Na.sc>=this.Fa&&this.Na.sc>=(a&3))return me(this),a;ke(this);return a},th,th],Qc=[hd,hd,hd,hd,hd,hd,th,th],fi=[function(a){if(-1===this.U)h.call(this,6);else{a=this.vc-this.jb;var b=this.jb;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.$a(this.U+2,b);this.A-=11}return a},function(a){if(-1===this.U)h.call(this,6);else{a=this.wc-
this.Ab;var b=this.Ab;80286==this.ia?b|=-16777216:80386<=this.ia&&2!=this.ba&&(a|=b<<16);this.$a(this.U+2,b);this.A-=12}return a},function(a){-1===this.U||this.ca&131072?h.call(this,6):(this.jb=this.ka(this.U+2)&(this.C|this.C<<8),a&=65535,this.vc=this.jb+a,this.N|=2,this.A-=11);return a},function(a){-1===this.U||this.ca&131072?h.call(this,6):(this.Ab=this.ka(this.U+2)&(this.C|this.C<<8),a&=65535,this.wc=this.Ab+a,this.N|=2,this.A-=12);return a},function(){this.A-=2+(-1===this.U?0:1);return this.Ya},
@ -784,15 +784,15 @@ R(this)},function(){return this.J},function(){return this.H},function(){return t
function hi(a){Ia.call(this,"ChipSet",a,hi);this.ia=(this.ia=a.model)&&ii[this.ia]||ji;this.K=0;var b=a[ki];if(b)this.K=li(b,mi|ni.xj);else{this.ha=[360,360];(b=a.floppies)&&b.length&&(this.ha=b);if(b=this.ha.length)this.K|=oi.Xf,b--,this.K|=(b&3)<<oi.De;if(b=a.monitor||(this.ia<Ge?"mono":"ega"),void 0!==pi[b])this.K|=pi[b]<<ni.De}this.pa=li(a[qi]||"11110000",0);this.ub=this.ia==ji?16:64;this.Ma=this.ya=1;this.ia>=Ge&&(this.Ma=this.ya=2);this.la=a.scaleTimers||!1;this.vb=a.rtcDate;this.fb=!1;a.sound&&
(this.Va=this.Ca=null,window&&(this.Va=window.AudioContext||window.webkitAudioContext),this.Va&&(this.Ca=new this.Va));this.reset(!0);Ya(this)}Qa(hi);var ji=5150,Ge=5170,ii={5150:ji,5160:5160,5170:Ge,deskpro386:5180},ki="sw1",qi="sw2",pi={none:0,tv:1,color:2,mono:3,ega:0,vga:0},oi={Xf:1,ONE:0,Gm:64,Em:128,jm:192,Ce:192,De:6},mi=12,ni={Fm:16,cm:32,xj:48,Ce:48,De:4};f=hi.prototype;
f.Fb=function(a,b,c){switch(b){case ki:return this.qa[b]=c,ri(this,b,this.K,{0:this.ia==ji?"Bootable Floppy Drive":"Loop on POST",1:this.ia<ji?"Reserved":"Coprocessor",2:"Base Memory Size",4:"Monitor Type",6:"Number of Floppy Drives"}),!0;case qi:if(this.ia==ji)return this.qa[b]=c,ri(this,b,this.pa,{0:"Expansion Memory Size",4:"Reserved"}),!0;break;case "swdesc":return this.qa[b]=c,!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ta=a;if(this.nd=hb(a,"FPU"))this.K|=2;this.D=hb(a,"Keyboard");this.Qa=c.Y.$c/1193181;Jb(b,this,si);Lb(b,this,ti);this.ia<Ge?(Jb(b,this,ui),Lb(b,this,vi)):(Jb(b,this,wi),Lb(b,this,xi))};f.ac=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ua=a;if(this.nd=hb(a,"FPU"))this.K|=2;this.D=hb(a,"Keyboard");this.Qa=c.Y.$c/1193181;Jb(b,this,si);Lb(b,this,ti);this.ia<Ge?(Jb(b,this,ui),Lb(b,this,vi)):(Jb(b,this,wi),Lb(b,this,xi))};f.ac=function(a,b){if(!b)if(!a)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.reset=function(a){var b;this.S=this.K;this.oa=this.pa;yi(this,ki,this.S);yi(this,qi,this.oa);zi(this);this.H=Array(this.Ma);for(b=0;b<this.Ma;b++)Ai(this,b);this.dc=Array(this.ya);Bi(this,0,32);1<this.ya&&Bi(this,1,160);this.ab=this.Ja=null;this.N=Array(5180==this.ia?6:3);for(b=0;b<this.N.length;b++)Ci(this,b);this.xa=this.Ua=this.R=this.La=null;this.va=0;if(this.ia>=Ge){this.F=16;this.Z=0;this.W=16;this.Fa=0;this.da=160;512<=Di(this)&&(this.da|=16);3==Ei(this)&&(this.da|=64);5180==this.ia&&(this.da|=
12);this.Ia=3;this.J=Array(8);this.sa=0;a&&(this.B=Array(64));Fi(this,this.vb);for(a=21;24>=a;a++)this.B[a]=0;for(a=14;46>a;a++)void 0===this.B[a]&&(this.B[a]=0);this.B[20]=this.S&(ni.Ce|2|oi.Xf|oi.Ce);this.B[16]=Gi(this,0)<<4|Gi(this,1);Hi(this)}};
function Fi(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ic("CMOS date invalid ("+b+"), using "+c)):b&&a.ic("CMOS date: "+c);a.B[0]=c.getSeconds();a.B[1]=0;a.B[2]=c.getMinutes();a.B[3]=0;a.B[4]=c.getHours();a.B[5]=0;a.B[6]=c.getDay()+1;a.B[7]=c.getDate();a.B[8]=c.getMonth()+1;c=c.getFullYear();a.B[9]=c%100;c/=100;a.B[50]=c%10|c/10<<4;a.B[10]=38;a.B[11]=2;a.B[12]=0;a.B[13]=128;a.Da=a.ua=0;a.jb=a.Na=null}
function Ii(a){var b;void 0===b&&(b=a.Na);a.ua=qc(a.A,a.la)+b;a.B[11]&64&&nc(a.A,b)}function Hi(a){for(var b=0,c=16;46>c;c++)b+=a.B[c];a.B[47]=b&255;a.B[46]=b>>8}
function Fi(a,b){var c=b?new Date(b):new Date;"[object Date]"!==Object.prototype.toString.call(c)||isNaN(c.getTime())?(c=new Date,a.ic("CMOS date invalid ("+b+"), using "+c)):b&&a.ic("CMOS date: "+c);a.B[0]=c.getSeconds();a.B[1]=0;a.B[2]=c.getMinutes();a.B[3]=0;a.B[4]=c.getHours();a.B[5]=0;a.B[6]=c.getDay()+1;a.B[7]=c.getDate();a.B[8]=c.getMonth()+1;c=c.getFullYear();a.B[9]=c%100;c/=100;a.B[50]=c%10|c/10<<4;a.B[10]=38;a.B[11]=2;a.B[12]=0;a.B[13]=128;a.Da=a.ta=0;a.jb=a.Na=null}
function Ii(a){var b;void 0===b&&(b=a.Na);a.ta=qc(a.A,a.la)+b;a.B[11]&64&&nc(a.A,b)}function Hi(a){for(var b=0,c=16;46>c;c++)b+=a.B[c];a.B[47]=b&255;a.B[46]=b>>8}
f.save=function(){var a=new Qd(this);D(a,0,[this.K,this.pa,this.S,this.oa]);for(var b=[],c=0;c<this.H;c++){for(var d=this.H[c],e=d,k=[],l=0;l<e.Tb.length;l++){var p=e.Tb[l];k[l]=[p.Nd,p.uf,p.hc,p.kb,p.lb,p.mode,p.vf,p.Yl,p.Zl]}b[c]=[d.Mc,d.dg,d.Jh,d.Jb,k]}D(a,1,[b]);b=[];for(c=0;c<this.dc.length;c++)d=this.dc[c],b[c]=[d.Qe,d.Qc,d.hd,d.Vc,d.Vb,d.Bc,d.Id,d.Ge];D(a,2,[b]);b=[];for(c=0;c<this.N.length;c++)d=this.N[c],b[c]=[d.hc,d.Dc,d.lb,d.Jd,d.fg,d.mode,d.gf,d.Xc,d.ed,d.Rc,d.ke,d.Ld,d.gd,d.Mc,d.pe];
D(a,3,[this.Ja,b,this.ab]);D(a,4,[this.La,this.R,this.Ua,this.xa,this.va]);this.ia>=Ge&&(D(a,5,[this.F,this.Z,this.W,this.Fa,this.da,this.Ia]),D(a,6,[this.J[7],this.J,this.sa,this.B,this.Da,this.ua]));return a.data()};
D(a,3,[this.Ja,b,this.ab]);D(a,4,[this.La,this.R,this.Ua,this.xa,this.va]);this.ia>=Ge&&(D(a,5,[this.F,this.Z,this.W,this.Fa,this.da,this.Ia]),D(a,6,[this.J[7],this.J,this.sa,this.B,this.Da,this.ta]));return a.data()};
f.restore=function(a){var b,c;b=a[0];this.K=b[0];this.pa=b[1];this.S=b[2];this.oa=b[3];b=a[1];for(c=0;c<this.Ma;c++)Ai(this,c,1==b.length?b[0][c]:b);b=a[2];for(c=0;c<this.ya;c++)Bi(this,c,0===c?32:160,b[0][c]);b=a[3];this.Ja=b[0];this.ab=b[2];for(c=0;c<this.N.length;c++)Ci(this,c,b[1][c]);b=a[4];this.La=b[0];this.R=b[1];this.Ua=b[2];this.xa=b[3];this.va=b[4];if(b=a[5])this.F=b[0],this.Z=b[1],this.W=b[2],this.Fa=b[3],this.da=b[4],this.Ia=b[5];if(b=a[6])this.J=b[1],this.J[7]=b[0],this.sa=b[2],this.B=
b[3],this.Da=b[4],this.ua=b[5],Fi(this);return!0};var Ji=[0,null,null,0,Array(4)];function Ai(a,b,c){var d=a.H[b];d||(d={Tb:Array(4)});c=c&&5==c.length?c:Ji;d.Mc=c[0];d.dg=c[1];d.Jh=c[2];d.Jb=c[3];d.Vk=b<<2;for(var e=0;e<d.Tb.length;e++)Ki(d,e,c[4][e]);a.H[b]=d}var Li=[!0,[0,0],[0,0],[0,0],[0,0]];
b[3],this.Da=b[4],this.ta=b[5],Fi(this);return!0};var Ji=[0,null,null,0,Array(4)];function Ai(a,b,c){var d=a.H[b];d||(d={Tb:Array(4)});c=c&&5==c.length?c:Ji;d.Mc=c[0];d.dg=c[1];d.Jh=c[2];d.Jb=c[3];d.Vk=b<<2;for(var e=0;e<d.Tb.length;e++)Ki(d,e,c[4][e]);a.H[b]=d}var Li=[!0,[0,0],[0,0],[0,0],[0,0]];
function Ki(a,b,c){var d=a.Tb[b];d||(d={uf:[0,0],hc:[0,0],kb:[0,0],lb:[0,0]});c=c&&8==c.length?c:Li;d.Nd=c[0];d.uf[0]=c[1][0];d.uf[1]=c[1][1];d.hc[0]=c[2][0];d.hc[1]=c[2][1];d.kb[0]=c[3][0];d.kb[1]=c[3][1];d.lb[0]=c[4][0];d.lb[1]=c[4][1];d.mode=c[5];d.vf=c[6];d.controller=a;d.Xh=b;Mi(d,c[8],c[9]);a.Tb[b]=d}function Mi(a,b,c,d){"string"==typeof b&&(b=Sa(b));b&&(a.done=null,a.Yl=b.id,a.Zl=c,a.Af=b,a.mg=b[c],a.Of=d)}var Ni=[0,Array(4)];
function Bi(a,b,c,d){var e=a.dc[b];e||(e={Qc:[null,null,null,null]});d=d&&8==d.length?d:Ni;e.port=c;e.$m=b<<3;e.Qe=d[0];e.Qc[0]=d[1][0];e.Qc[1]=d[1][1];e.Qc[2]=d[1][2];e.Qc[3]=d[1][3];e.hd=d[2];e.Vc=d[3];e.Vb=d[4];e.Bc=d[5];e.Id=d[6];e.Ge=d[7];a.dc[b]=e}var Oi=[[0,0],[0,0],[0,0],[0,0]];
function Ci(a,b,c){var d=a.N[b];d||(d={hc:[0,0],Dc:[0,0],lb:[0,0],Jd:[0,0]});c=c&&13<=c.length?c:Oi;d.hc[0]=c[0][0];d.hc[1]=c[0][1];d.Dc[0]=c[1][0];d.Dc[1]=c[1][1];d.lb[0]=c[2][0];d.lb[1]=c[2][1];d.Jd[0]=c[3][0];d.Jd[1]=c[3][1];d.fg=c[4];d.mode=c[5];d.gf=c[6];d.Xc=c[7];d.ed=c[8];d.Rc=c[9];d.ke=c[10];d.Ld=c[11];d.gd=c[12];d.Mc=c[13]||0;d.pe=c[14]||!1;a.N[b]=d}function Di(a,b){return((((b?a.K:a.S)&12)>>2)+1)*a.ub+32*((b?a.pa:a.oa)&15)}
@ -811,7 +811,7 @@ function pj(a,b,c){var d=a.N[b];d.Xc==d.ed&&nj(a,b);d.hc[d.Xc++]=c;d.Xc==d.ed&&(
f.Ll=function(a,b){this.Ja=b;var c=b&192;if(192==c){if(!(b&16))for(c=0;2>=c;c++)if(b&2<<c){var d=this.N[c];d.pe||(oj(this,c),d.Mc=d.fg|d.mode|d.gf|(d.Xc<d.ed?64:0)|(d.Rc?128:0),d.pe=!0)}if(!(b&32))for(c=0;2>=c;c++)b&2<<c&&rj(this,c)}else{var c=c>>6,d=b&1,e=b&14,k=b&48;if(0==k)rj(this,c);else{var l=c,p=this.N[l];p.gf=k;p.mode=e;p.fg=d;p.hc=[0,0];p.lb=[0,0];p.Jd=[0,0];p.Rc=!1;p.ke=!1;p.Ld=!1;p.pe=!1;nj(this,l);0==c&&He(this,0);2==c&&255==this.dc[0].Vc&&77==this.R&&(c=this.N[0],c.Dc[0]=c.hc[0],c.Dc[1]=
c.hc[1],c.gd=qc(this.A,this.la))}}};function qj(a,b){var c=a.N[b],d=c.hc[1]<<8|c.hc[0];d||(d=1==c.ed?256:65536);return d}function tc(a,b){var c=a.N[b],d=c.Dc[1]<<8|c.Dc[0];d||(d=1==c.ed?256:65536);return d}function rj(a,b){oj(a,b);var c=a.N[b];c.Jd[0]=c.lb[0];c.Jd[1]=c.lb[1];c.ke=!0;nj(a,b)}function nj(a,b){var c=a.N[b];c.Xc=32==c.gf?1:0;c.ed=48==c.gf?2:1}
function oj(a,b,c){var d=a.N[b];if(d.Ld&&(2!=b||a.R&1)){var e=qc(a.A,a.la),k=(e-d.gd)/a.Qa|0;0>k&&(d.gd=e,k=0);var l=qj(a,b),p=tc(a,b)-k;0==d.mode?(0>=p&&(p=0),p||(d.Rc=!0,d.Ld=!1,b||Ie(a,0))):4==d.mode?(d.Rc=1!=p,0>=p&&(p=l+p,0>=p&&(p=l),d.Dc[0]=p&255,d.Dc[1]=p>>8&255,d.gd=e,!b&&d.Rc&&Ie(a,0))):6==d.mode&&(p-=k,0>=p&&(d.Rc=!d.Rc,p=l+p,0>=p&&(p=l),d.Dc[0]=p&255,d.Dc[1]=p>>8&255,d.gd=e,!b&&d.Rc&&Ie(a,0)));d.lb[0]=p&255;d.lb[1]=p>>8&255;c&&(a.gd=0)}return d}
function sc(a,b){for(var c=0;c<a.N.length;c++)oj(a,c,b);if(a.ia>=Ge){var c=a.A.Y.$c,d=qc(a.A,a.la);null==a.Na&&(a.Da=qc(a.A,a.la),a.jb=1024,a.Na=Math.floor(a.A.Y.$c/a.jb),Ii(a));d>=a.ua&&(a.B[12]|=64,a.B[11]&64&&(a.B[12]|=128,Ie(a,8)),a.ua=d+a.Na);a.B[0]==a.B[1]&&a.B[2]==a.B[3]&&a.B[4]==a.B[5]&&(a.B[12]|=32,a.B[11]&32&&(a.B[12]|=128,Ie(a,8)));var e=d-a.Da,k=Math.floor(e/c);if(k&&!(a.B[11]&128)){for(;k--;)if(60<=++a.B[0]&&(a.B[0]=0,60<=++a.B[2]&&(a.B[2]=0,24<=++a.B[4]))){a.B[4]=0;a.B[6]=a.B[6]%7+1;
function sc(a,b){for(var c=0;c<a.N.length;c++)oj(a,c,b);if(a.ia>=Ge){var c=a.A.Y.$c,d=qc(a.A,a.la);null==a.Na&&(a.Da=qc(a.A,a.la),a.jb=1024,a.Na=Math.floor(a.A.Y.$c/a.jb),Ii(a));d>=a.ta&&(a.B[12]|=64,a.B[11]&64&&(a.B[12]|=128,Ie(a,8)),a.ta=d+a.Na);a.B[0]==a.B[1]&&a.B[2]==a.B[3]&&a.B[4]==a.B[5]&&(a.B[12]|=32,a.B[11]&32&&(a.B[12]|=128,Ie(a,8)));var e=d-a.Da,k=Math.floor(e/c);if(k&&!(a.B[11]&128)){for(;k--;)if(60<=++a.B[0]&&(a.B[0]=0,60<=++a.B[2]&&(a.B[2]=0,24<=++a.B[4]))){a.B[4]=0;a.B[6]=a.B[6]%7+1;
var l;l=a.B[9];var p=ma[a.B[8]-1];28==p&&0===l%4&&(l%100||0===l%400)&&p++;l=p;++a.B[7]>l&&(a.B[7]=1,12<++a.B[8]&&(a.B[8]=1,a.B[9]=(a.B[9]+1)%100))}a.B[12]|=16;a.B[11]&16&&(a.B[12]|=128,Ie(a,8))}a.Da=d-e%c}}f.Ck=function(){var a=this.La;if(this.xa&16)if(this.R&128)a=this.S;else if(this.D){var a=this.D,b=0;a.Ub.length&&(b=a.Ub[0]);a=b}return a};f.Ml=function(a,b){this.La=b};f.Dk=function(){return this.R};f.Nl=function(a,b){sj(this,b)};
function sj(a,b){var c=!!(b&2),d=!!(a.R&2);a.R=b;a.D&&tj(a.D,!(b&128),!!(b&64));c!=d&&rc(a,c)}f.Ek=function(){var a=0,a=this.ia==ji?this.R&4?a|this.oa&15:a|this.oa>>4&1:this.R&8?a|this.S>>4:a|this.S&15;this.R&1&&oj(this,2).Rc&&(a=this.R&2?a|32:a|16);return a};f.Ol=function(a,b){this.Ua=b};f.Fk=function(){return this.xa};f.Pl=function(a,b){this.xa=b};f.Rj=function(){var a=this.Fa;this.F&=-258;this.D&&uj(this.D);return a};
f.$k=function(a,b){if(this.F&8)switch(this.Z){case 96:vj(this,b);break;case 209:wj(this,b);break;default:if(vj(this,this.W&-17),this.D){var c=-1;switch(b){case 255:c=250,xj(this.D)}yj(this,c)}}this.Z=b;this.F&=-9};f.Sj=function(){return this.R&-209|(qc(this.A)&64?16:0)};f.al=function(a,b){sj(this,b)};f.Tj=function(){var a=this.F&255;this.F&256&&(this.F|=1,this.F&=-257);return a};
@ -849,20 +849,20 @@ Y[1009]=15;Y[113]=16;Y[81]=10768;Y[119]=17;Y[87]=10769;Y[101]=18;Y[69]=10770;Y[1
Y[W[";"]]=39;Y[W[":"]]=10791;Y[W["'"]]=40;Y[W['"']]=10792;Y[W["`"]]=41;Y[W["~"]]=10793;Y[1016]=42;Y[W["\\"]]=43;Y[W["|"]]=10795;Y[122]=44;Y[90]=10796;Y[120]=45;Y[88]=10797;Y[99]=46;Y[67]=10798;Y[118]=47;Y[86]=10799;Y[98]=48;Y[66]=10800;Y[110]=49;Y[78]=10801;Y[109]=50;Y[77]=10802;Y[W[","]]=51;Y[W["<"]]=10803;Y[W["."]]=52;Y[W[">"]]=10804;Y[W["/"]]=53;Y[W["?"]]=10805;Y[3016]=54;Y[1044]=55;Y[1018]=56;Y[1032]=57;Y[1020]=58;Y[1112]=59;Y[1113]=60;Y[1114]=61;Y[1115]=62;Y[1116]=63;Y[1117]=64;Y[1118]=65;
Y[1119]=66;Y[1120]=67;Y[1121]=68;Y[1144]=69;Y[1145]=70;Y[1036]=71;Y[1038]=72;Y[1033]=73;Y[1109]=74;Y[1037]=75;Y[1101]=76;Y[1039]=77;Y[1107]=78;Y[1035]=79;Y[1040]=80;Y[1034]=81;Y[1045]=82;Y[1046]=83;Y[4027]=84;Y[1122]=87;Y[1123]=88;Y[1091]=91;Y[1093]=93;Y[1224]=91;Y[4003]=7470;Y[4008]=7494;Y[4046]=3677523;f=Nj.prototype;
f.Fb=function(a,b,c,d){var e=this,k=a+"-"+b;if(void 0===this.qa[k])switch(b){case "kbd":return c.onkeydown=function(a){return Wj(e,a,!0)},c.onkeypress=function(a){a=a||window.event;a=a.which||a.keyCode;e.F="";var b=!Y[a]||!!(e.Wb&128);b||Xj(e,a,!0);return b},c.onkeyup=function(a){return Wj(e,a,!1)},!0;case "caps-lock":return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1020,!0)},!0;case "num-lock":return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1144,!0)},!0;case "scroll-lock":return this.qa[k]=
c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1145,!0)},!0;case "test":return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();d&&!e.F&&(e.F=d,Yj(e,300))},!0;default:var l=b.toUpperCase().replace(/-/g,"_");if(void 0!==Tj[l]&&"button"==a)return this.qa[k]=c,c.onclick=function(a,b,c){return function(){a.A&&a.A.Tc();Zj(a,c,!0);Xj(a,c,!0)}}(this,l,Tj[l]),!0;if(void 0!==Uj[b])return this.R++,this.qa[k]=c,a=function(a,b,c){return function(){Xj(a,c)}}(this,b,Uj[b]),b=function(a,b,c){return function(){ak(a,c)}}(this,
b,Uj[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=c.onmouseout=b),!0}return!1};function bk(a,b,c){if(a.R){for(var d in Rj)if(b==Rj[d]){b=+d;(d=Qj[d])&&(b=d);break}for(var e in Uj)if((d=Uj[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Uj[e]==d),d){(a=a.qa["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet")};
c,c.onclick=function(){e.A&&e.A.Tc();Xj(e,1145,!0)},!0;default:var l=b.toUpperCase().replace(/-/g,"_");if(void 0!==Tj[l]&&"button"==a)return this.qa[k]=c,c.onclick=function(a,b,c){return function(){a.A&&a.A.Tc();Yj(a,c,!0);Xj(a,c,!0)}}(this,l,Tj[l]),!0;if(void 0!==Uj[b])return this.R++,this.qa[k]=c,a=function(a,b,c){return function(){Xj(a,c)}}(this,b,Uj[b]),b=function(a,b,c){return function(){Zj(a,c)}}(this,b,Uj[b]),"ontouchstart"in window?(c.ontouchstart=a,c.ontouchend=b):(c.onmousedown=a,c.onmouseup=
c.onmouseout=b),!0;if(d)return this.qa[k]=c,c.onclick=function(){e.A&&e.A.Tc();d&&!e.F&&(e.F=d,ak(e,300))},!0}return!1};function bk(a,b,c){if(a.R){for(var d in Rj)if(b==Rj[d]){b=+d;(d=Qj[d])&&(b=d);break}for(var e in Uj)if((d=Uj[e]==b)||(d=b,97<=d&&122>=d&&(d-=32),d=Uj[e]==d),d){(a=a.qa["key-"+e])&&void 0!==c&&(a.style.color=c?"#ffffff":"#000000",a.style.backgroundColor=c?"#000000":"#ffffff");break}}}f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet")};
function Oj(a,b){var c=0;a.ia=null;b&&(a.ia=b.toUpperCase(),c=Pj.indexOf(a.ia),0>c&&(c=0));b=Pj[c];a.da=parseInt(b.substr(2),10)}function xj(a,b){a.Ub=[170];a.H=!0;b&&a.T&&zj(a.T,a.Ub[0])}function tj(a,b,c){a.K!==c&&(a.K=a.N=c)&&(a.H=!0);a.J!==b&&(a.J=b)&&!a.N&&Aj(a,!0);a.J&&a.N&&(xj(a,!0),a.N=!1)}function uj(a){var b=0;a.Ub.length&&a.H&&(b=a.Ub[0],a.T&&zj(a.T,b))}function Aj(a,b){0<a.Ub.length&&(a.Ub.shift(),(a.H=b)&&a.Ub.length&&a.T&&zj(a.T,a.Ub[0]))}
f.ac=function(a,b){return!b&&(this.reset(),a&&this.restore&&!this.restore(a))?!1:!0};f.$b=function(a){return a?this.save():!0};f.reset=function(){if(!this.ia&&this.T)switch(this.T.ia){case ji:case 5160:Oj(this,Pj[0]);break;default:Oj(this,Pj[1])}ck(this);this.Wb=this.D=0;this.Ub=[];this.H=!0;this.F=""};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.K;c[b]=this.J;D(a,0,c);return a.data()};f.restore=function(a){return ck(this,a[0])};
function ck(a,b){var c=0;void 0===b&&(b=[]);a.K=a.H=b[c++];a.J=b[c];return!0}function Yj(a,b){if(0<a.F.length){var c=a.F.charCodeAt(0);10==c&&(c=13);a.F=a.F.substr(1);Xj(a,c,!0)}0<a.F.length&&setTimeout(function(a){return function(){Yj(a,b)}}(a),b)}
function Zj(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=Sj[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.Wb)&b):d||b&255&&(b=255);if(c){a.D&=~b;d&&(a.D|=b);c=b;var k,l;for(l in Vj)d="led-"+l,e=Vj[l],c&&c!=e||!(k=a.qa[d])||(k.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.Wb&=~b,d&&(a.Wb|=b);return!0}}return!1}
function ck(a,b){var c=0;void 0===b&&(b=[]);a.K=a.H=b[c++];a.J=b[c];return!0}function ak(a,b){if(0<a.F.length){var c=a.F.charCodeAt(0);10==c&&(c=13);a.F=a.F.substr(1);Xj(a,c,!0)}0<a.F.length&&setTimeout(function(a){return function(){ak(a,b)}}(a),b)}
function Yj(a,b,c,d){if(Y[b]){var e=Math.floor(b/1E3)&2;if(b=Sj[b]||0){!e||b&85||(b>>=1);if(b&3584){if(!1===d)return!0;d=null}null==d?d=!((c?a.D:a.Wb)&b):d||b&255&&(b=255);if(c){a.D&=~b;d&&(a.D|=b);c=b;var k,l;for(l in Vj)d="led-"+l,e=Vj[l],c&&c!=e||!(k=a.qa[d])||(k.style.backgroundColor=a.D&e?"#00ff00":"#000000")}else a.Wb&=~b,d&&(a.Wb|=b);return!0}}return!1}
function Xj(a,b,c){if(Y[b]&&a.A&&a.A.ja.Qb){Sj[b]&&a.B.length&&0<a.B[0].ad&&(a.B[0].ad=0);for(var d,e=0;e<a.B.length;e++)if(d=a.B[e],d.Vd==b){if(!c||0<=d.ad){e=-1;break}0<e&&(0<a.B[0].ad&&(a.B[0].ad=0),a.B.splice(e,1));break}0>e||(e==a.B.length&&(d={},d.Vd=b,d.Wb=a.Wb,bk(a,b,!0),e++),0<e&&a.B.splice(0,0,d),d.Je=!0,d.ad=c?-1:Sj[b]?0:1,dk(a,d))}}
function ak(a,b,c){if(!Y[b]||!(c||a.A&&a.A.ja.Qb))return!1;for(var d=!1,e=0;e<a.B.length;e++){var k=a.B[e];if(k.Vd==b||k.Vd==Rj[b]){a.B.splice(e,1);k.oj&&clearTimeout(k.oj);k.Je&&!c&&ek(a,k.Vd,!1);bk(a,b,!1);d=!0;break}}!a.B.length&&a.S&&(Zj(a,1020),a.S=!1);return d}function dk(a,b){if(!a.A||!a.A.ja.Qb)ak(a,b.Vd,!0);else if(ek(a,b.Vd,b.Je)&&b.ad){var c;if(0>b.ad){if(!b.Je){ak(a,b.Vd);return}b.Je=!1;c=a.ha}else c=1==b.ad++?500:100;b.oj=setTimeout(function(a){return function(){dk(a,b)}}(a),c)}}
function Zj(a,b,c){if(!Y[b]||!(c||a.A&&a.A.ja.Qb))return!1;for(var d=!1,e=0;e<a.B.length;e++){var k=a.B[e];if(k.Vd==b||k.Vd==Rj[b]){a.B.splice(e,1);k.oj&&clearTimeout(k.oj);k.Je&&!c&&ek(a,k.Vd,!1);bk(a,b,!1);d=!0;break}}!a.B.length&&a.S&&(Yj(a,1020),a.S=!1);return d}function dk(a,b){if(!a.A||!a.A.ja.Qb)Zj(a,b.Vd,!0);else if(ek(a,b.Vd,b.Je)&&b.ad){var c;if(0>b.ad){if(!b.Je){Zj(a,b.Vd);return}b.Je=!1;c=a.ha}else c=1==b.ad++?500:100;b.oj=setTimeout(function(a){return function(){dk(a,b)}}(a),c)}}
function fk(a,b,c){var d=b;if(65<=b&&90>=b)!(a.Wb&515)==c&&(d=b+32);else if(97<=b&&122>=b)!!(a.Wb&515)==c&&(d=b-32);else if(!!(a.Wb&3)==c){if(a=Rj[b])d=a}else if(a=Qj[b])d=a;return d}f.Pf=function(a){a||(this.Wb&=-256)};
function Wj(a,b,c){var d=!0,e=!1,k=!1,l=b.keyCode,p=fk(a,l,!0);a.kg&&p==W["`"]&&(l=p=27);if(Y[l+1E3])if(p+=1E3,2==b.location&&(p+=2E3),Zj(a,p,!1,c)){if(20==l||144==l||145==l)a.W||(c=e=!0);if(!(c||91!=l&&93!=l))for(var q=0;q<a.B.length;q++){var w=a.B[q];w.Je=!1;0<w.ad&&(w.ad=0)}}else 8==l&&8==(a.Wb&40)&&(p=4008),d=!1;else if(Y[p]&&a.Wb&60&&(d=!1),d&&c||a.Wb&192)k=!0;d||b.preventDefault();k||a.Z&&d||(c?Xj(a,p,e):ak(a,p)||(b=fk(a,l,!1),b!=p&&ak(a,b)));return d}
function ek(a,b,c){var d=!1;Zj(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.Wb&40)&&(e=83);var d=[],k=e&255;if(83<k&&83==a.da)return!1;d.push(k|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var l=0,p=e&255;224==k||225==k?d.push(k|(c?0:128)):(42==p?a.D&3||a.D&512&&b||(l=p):29==p?a.D&12||(l=p):56==p?a.D&48||(l=p):d.push(k|(c?0:128)),l&&(c?d.unshift(l):d.push(l|128)))}for(c=0;c<d.length;c++)e=a,k=d[c],e.Ub&&(20>e.Ub.length?(e.Ub.push(k),1==e.Ub.length&&e.T&&zj(e.T,k)):20==e.Ub.length&&
function Wj(a,b,c){var d=!0,e=!1,k=!1,l=b.keyCode,p=fk(a,l,!0);a.kg&&p==W["`"]&&(l=p=27);if(Y[l+1E3])if(p+=1E3,2==b.location&&(p+=2E3),Yj(a,p,!1,c)){if(20==l||144==l||145==l)a.W||(c=e=!0);if(!(c||91!=l&&93!=l))for(var q=0;q<a.B.length;q++){var w=a.B[q];w.Je=!1;0<w.ad&&(w.ad=0)}}else 8==l&&8==(a.Wb&40)&&(p=4008),d=!1;else if(Y[p]&&a.Wb&60&&(d=!1),d&&c||a.Wb&192)k=!0;d||b.preventDefault();k||a.Z&&d||(c?Xj(a,p,e):Zj(a,p)||(b=fk(a,l,!1),b!=p&&Zj(a,b)));return d}
function ek(a,b,c){var d=!1;Yj(a,b,!0,c);var e=Y[b]||Y[b+1E3];if(void 0!==e){14==e&&40==(a.Wb&40)&&(e=83);var d=[],k=e&255;if(83<k&&83==a.da)return!1;d.push(k|(c?0:128));for(b=65<=b&&90>=b||97<=b&&122>=b;e>>>=8;){var l=0,p=e&255;224==k||225==k?d.push(k|(c?0:128)):(42==p?a.D&3||a.D&512&&b||(l=p):29==p?a.D&12||(l=p):56==p?a.D&48||(l=p):d.push(k|(c?0:128)),l&&(c?d.unshift(l):d.push(l|128)))}for(c=0;c<d.length;c++)e=a,k=d[c],e.Ub&&(20>e.Ub.length?(e.Ub.push(k),1==e.Ub.length&&e.T&&zj(e.T,k)):20==e.Ub.length&&
e.Ub.push(255));d=!0}return d}Ea(function(){for(var a=Wa(window.document,"pcjs","keyboard"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new Nj(d);Va(d,c)}});
function Z(a,b,c,d,e){Ia.call(this,"Video",a,Z);this.ia=a.model;this.mb=gk[this.ia]||hk;this.Wc=a.memory||0;this.od=a.switches;this.pa=a.mode;if(void 0===this.pa||void 0===ik[this.pa])this.pa=jk;this.Sb=a.charCols;this.wc=a.charRows;if(void 0===this.Sb||void 0===this.wc)this.Sb=ik[this.pa][0],this.wc=ik[this.pa][1];this.oa=a.screenWidth;this.va=a.screenHeight;this.Zd=a.scale;this.Yd=12<=Math.round(this.oa/this.Sb);this.ta=b;this.da=c;this.J=(this.Hd=d)||b||null;this.pd=a.touchScreen;this.xc=kk;this.N=
null;this.Xd=a.autoLock;this.hb=this.Gb=0;this.Fa=[];this.ua=Array(this.mb==Ej?256:16);this.Ua=!1;var k=this;this.kd=xa("Gecko/");b=["","moz","webkit","ms"];if(this.Z=e)if(this.Z.je=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.Z.je){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){lk(k,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement?
function Z(a,b,c,d,e){Ia.call(this,"Video",a,Z);this.ia=a.model;this.mb=gk[this.ia]||hk;this.Wc=a.memory||0;this.od=a.switches;this.pa=a.mode;if(void 0===this.pa||void 0===ik[this.pa])this.pa=jk;this.Sb=a.charCols;this.wc=a.charRows;if(void 0===this.Sb||void 0===this.wc)this.Sb=ik[this.pa][0],this.wc=ik[this.pa][1];this.oa=a.screenWidth;this.va=a.screenHeight;this.Zd=a.scale;this.Yd=12<=Math.round(this.oa/this.Sb);this.ua=b;this.da=c;this.J=(this.Hd=d)||b||null;this.pd=a.touchScreen;this.xc=kk;this.N=
null;this.Xd=a.autoLock;this.hb=this.Gb=0;this.Fa=[];this.ta=Array(this.mb==Ej?256:16);this.Ua=!1;var k=this;this.kd=xa("Gecko/");b=["","moz","webkit","ms"];if(this.Z=e)if(this.Z.je=e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen,this.Z.je){for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenchange","on"+c in document){document.addEventListener(c,function(){lk(k,document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement?
!0:!1)},!1);break}for(e=0;e<b.length;e++)if(c=b[e]+"fullscreenerror","on"+c in document){document.addEventListener(c,function(){lk(k,null)},!1);break}}this.J&&(this.J.onfocus=function(){return k.Pf(!0)},this.J.onblur=function(){return k.Pf(!1)},this.J.Md=this.J.requestPointerLock||this.J.mozRequestPointerLock||this.J.webkitRequestPointerLock,this.J.pj=this.J.exitPointerLock||this.J.mozExitPointerLock||this.J.webkitExitPointerLock,this.J.Md&&(e=function(){k.Ze(document.pointerLockElement===k.J||document.mozPointerLockElement===
k.J||document.webkitPointerLockElement===k.J)},"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document?document.addEventListener("mozpointerlockchange",e,!1):"onwebkitpointerlockchange"in document&&document.addEventListener("webkitpointerlockchange",e,!1)));if(a=a.fontROM)"json"!=fa(a)&&(a=qa()+"/api/v1/dump?file="+a+"&format=bytes"),pa(a,!0,null,this,this.yj)}Qa(Z);
var hk=1,Ej=7,gk={mda:1,cga:3,ega:5,vga:7},jk=7,mk={2:{Lf:15700,Kf:208,Qf:85,Rf:96},3:{Lf:18432,Kf:364,Qf:85,Rf:96},4:{Lf:21850,Kf:364,Qf:85,Rf:96},7:{Lf:16700,Kf:480,Qf:85,Rf:83}},nk={6:[1,3,!0],7:[2,3,!0],8:[6,3,!0],9:[4,3,!0],10:[3,1,!0],11:[3,2,!0],0:[1,3,!1],1:[2,3,!1],2:[6,3,!1],3:[4,3,!1],4:[3,1,!1],5:[3,2,!1]},ik=[,[40,25,1,0,3],,[80,25,1,0,3],[320,200,8,192],,[640,200,16,192]];ik[jk]=[80,25,1,0,1];ik[13]=[320,200,8];ik[14]=[640,200,8];ik[15]=[640,350,8];ik[16]=[640,350,8];
@ -885,22 +885,22 @@ Bk[226]=function(a,b){var c=a+this.J,d=uk[b&15],d=d^this.controller.rb,d=d&this.
function Ck(a){var b=[];if(void 0!==a.mb){b[0]=a.Xb;b[1]=a.Jc;b[2]=a.ef;b[3]=a.ga;b[4]=a.oc|a.Sf<<8;b[5]=a.ib;if(5<=a.mb){var c=[];c[0]=a.He;c[1]=a.Td;c[2]=a.Ic;c[3]=a.mh;c[4]=a.ff;c[5]=a.Uf;c[6]=a.Ae;c[7]=a.ze;c[8]=a.gj;c[9]=a.hj;c[10]=a.ye;c[11]=a.Dd;c[12]=a.rb;c[13]=[a.hb,a.Gb,a.Wc];var d;a:if(d=a.sd){var e=0,k=[];if(void 0!==d[0])for(var l=0;2>l;l++)for(var p=l;p<d.length;){for(var q=d[p],w=p+2;w<d.length&&d[w]===q;)w+=2;k[e++]=w-p>>1;k[e++]=q;p=w}if(k.length<d.length){d=k;break a}}c[14]=d;c[15]=
a.qg|-2147483648;c[16]=a.hh;c[17]=a.eb;c[18]=a.Hc;c[19]=a.wb;c[20]=a.Ye;c[21]=a.jd;c[22]=a.Bd;c[23]=a.sg;c[24]=a.tg;c[25]=a.af;a.mb==Ej&&(c[26]=a.nh,c[27]=a.lh,c[28]=a.bd,c[29]=a.Ac,c[30]=a.Tf,c[31]=a.xe);b[6]=c}b[7]=a.yg}return b}wk.prototype.Wh=function(a){return[this.sd,a-this.hb]};wk.prototype.ng=function(){return this.A};
wk.prototype.Wf=function(a){if(null!=a&&a!=this.qg){var b=a&65280,c=Bk[b];c||b&4096&&(c=Bk[4096]);var b=a&255,d=Bk[b];d||b&16&&(d=Bk[16]);this.A||(this.A=Array(6));this.A[0]=c;this.A[3]=d;this.qg=a}};var xk=[];xk[hk]=["MDA",948,720896,4096,0,3];xk[3]=["CGA",980,753664,16384,0,2];xk[5]=["EGA",980,753664,16384,65536,4];xk[Ej]=["VGA",980,753664,16384,262144,7];var kk=0;f=Z.prototype;
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;3!=gk[this.ia]&&(Jb(b,this,Dk),Lb(b,this,Ek));gk[this.ia]!=hk&&(Jb(b,this,Fk),Lb(b,this,Gk));5<=this.mb&&(Jb(b,this,Hk),Lb(b,this,Ik));this.mb==Ej&&(Jb(b,this,Jk),Lb(b,this,Kk));if((this.D=hb(a,"Keyboard"))&&this.ta){for(var e in this.qa)0<e.indexOf("lock")&&this.D.Fb("led",e,this.qa[e]);this.D.Fb(this.Hd?"textarea":"canvas","kbd",this.J)}this.Hb=9;(this.T=hb(a,"ChipSet"))&&this.od&&5==this.mb&&(this.Hb=li(this.od,this.Hb));"mouse"==this.pd?(this.N=
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;3!=gk[this.ia]&&(Jb(b,this,Dk),Lb(b,this,Ek));gk[this.ia]!=hk&&(Jb(b,this,Fk),Lb(b,this,Gk));5<=this.mb&&(Jb(b,this,Hk),Lb(b,this,Ik));this.mb==Ej&&(Jb(b,this,Jk),Lb(b,this,Kk));if((this.D=hb(a,"Keyboard"))&&this.ua){for(var e in this.qa)0<e.indexOf("lock")&&this.D.Fb("led",e,this.qa[e]);this.D.Fb(this.Hd?"textarea":"canvas","kbd",this.J)}this.Hb=9;(this.T=hb(a,"ChipSet"))&&this.od&&5==this.mb&&(this.Hb=li(this.od,this.Hb));"mouse"==this.pd?(this.N=
hb(a,"Mouse"))&&Lk(this,2):"keygrid"==this.pd&&this.D&&Lk(this,1)};f.Fb=function(a,b,c){var d=this;if(!this.qa[b])switch(this.qa[b]=c,b){case "fullScreen":return this.Z&&this.Z.je?c.onclick=function(){d.je()}:c.parentNode.removeChild(c),!0;case "lockPointer":return this.Gd=c.textContent,this.J&&this.J.Md?c.onclick=function(){d.Md(!0)}:c.parentNode.removeChild(c),!0;case "refresh":return c.onclick=function(){kc(d,!0)},!0}return!1};f.Tc=function(){this.J&&this.J.focus()};
f.je=function(){var a=!1;if(this.Z){if(this.Z.je){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.oa/this.va;b>c&&(a=Math.round(c/b*100)+"%")}this.kd?(this.ta.style.width=a,this.ta.style.width=a,this.ta.style.display="block",this.ta.style.margin="auto"):(this.Z.style.width=a,this.Z.style.height="auto");this.Z.style.backgroundColor="black";this.Z.je();a=!0}this.Tc()}return a};
function lk(a,b){!b&&a.Z&&(a.kd?a.ta.style.width=a.ta.style.height="":a.Z.style.width=a.Z.style.height="");a.D&&(a.D.kg=b)}f.Md=function(a){var b=!1;this.J&&(a?this.J.Md&&(this.J.Md(),this.N&&this.N.Ze(!0),b=!0):this.J.pj&&(this.J.pj(),this.N&&this.N.Ze(!1),b=!0),this.Tc());return b};f.Ze=function(a){this.N&&(this.N.Ze(a),this.D&&(this.D.kg=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Gd)};
f.je=function(){var a=!1;if(this.Z){if(this.Z.je){a="100%";if(screen&&screen.width&&screen.height){var b=screen.width/screen.height,c=this.oa/this.va;b>c&&(a=Math.round(c/b*100)+"%")}this.kd?(this.ua.style.width=a,this.ua.style.width=a,this.ua.style.display="block",this.ua.style.margin="auto"):(this.Z.style.width=a,this.Z.style.height="auto");this.Z.style.backgroundColor="black";this.Z.je();a=!0}this.Tc()}return a};
function lk(a,b){!b&&a.Z&&(a.kd?a.ua.style.width=a.ua.style.height="":a.Z.style.width=a.Z.style.height="");a.D&&(a.D.kg=b)}f.Md=function(a){var b=!1;this.J&&(a?this.J.Md&&(this.J.Md(),this.N&&this.N.Ze(!0),b=!0):this.J.pj&&(this.J.pj(),this.N&&this.N.Ze(!1),b=!0),this.Tc());return b};f.Ze=function(a){this.N&&(this.N.Ze(a),this.D&&(this.D.kg=a));var b=this.qa.lockPointer;b&&(b.textContent=a?"Press Esc to Unlock Pointer":this.Gd)};
function Lk(a,b){var c=a.J;c&&!a.xc&&(c.addEventListener("touchstart",function(b){Mk(a,b,!0)},!1),c.addEventListener("touchmove",function(b){Mk(a,b)},!0),c.addEventListener("touchend",function(b){Mk(a,b,!1)},!1),a.xc=b,a.vb=a.Ab=a.qd=-1,a.vc=!1,a.Nb=null,a.uc=!1,a.$d=function(){a.uc=!0;a.N.ie(Nk,!0)})}f.Pf=function(a){this.D&&this.D.Pf(a)};
function Mk(a,b,c){var d,e,k=0,l=0;e=a.ta;do isNaN(e.offsetLeft)||(k+=e.offsetLeft,l+=e.offsetTop);while(e=e.offsetParent);var p=a.oa/a.ta.offsetWidth,q=a.va/a.ta.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-k)*p;e=(e-l)*q;if(1==a.xc)d=d/(a.oa/3)|0,e=e/(a.va/3)|0,1!=e?e?Xj(a.D,1040,!0):Xj(a.D,1038,!0):1!=d&&(d?Xj(a.D,1039,!0):Xj(a.D,1037,!0));else if(a.N){l=a.vc;k=b.timeStamp-a.qd;!0===c?(a.vc=500<k,a.qd=b.timeStamp,
function Mk(a,b,c){var d,e,k=0,l=0;e=a.ua;do isNaN(e.offsetLeft)||(k+=e.offsetLeft,l+=e.offsetTop);while(e=e.offsetParent);var p=a.oa/a.ua.offsetWidth,q=a.va/a.ua.offsetHeight;b.targetTouches&&b.targetTouches.length?(d=b.targetTouches[0].pageX,e=b.targetTouches[0].pageY):(d=b.pageX,e=b.pageY);d=(d-k)*p;e=(e-l)*q;if(1==a.xc)d=d/(a.oa/3)|0,e=e/(a.va/3)|0,1!=e?e?Xj(a.D,1040,!0):Xj(a.D,1038,!0):1!=d&&(d?Xj(a.D,1039,!0):Xj(a.D,1037,!0));else if(a.N){l=a.vc;k=b.timeStamp-a.qd;!0===c?(a.vc=500<k,a.qd=b.timeStamp,
a.Nb=setTimeout(a.$d,500)):null!=a.Nb&&(clearTimeout(a.Nb),a.Nb=null);void 0===c&&(a.vc=!1);l||b.preventDefault();if(!1===c){a.uc?(a.N.ie(Nk,!1),a.uc=!1,b=!0):b=!1;if(b)return;if(200>k){a.N.ie(Nk,!0);a.N.ie(Nk,!1);return}}if(c||0>a.vb||0>a.Ab)a.vb=d,a.Ab=e;c=Math.round(d-a.vb);b=Math.round(e-a.Ab);a.vb=d;a.Ab=e;a.N.pg(c,b,a.vb,a.Ab)}}f.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.reset=function(){var a=!0,b=0;this.T&&(b=Ei(this.T));this.ia||(this.mb=3==b?hk:3);this.pa=3;switch(this.mb){case Ej:b=7;break;case 5:var c=nk[this.Hb];c&&(b=c[0]);b||(b=4);break;case hk:b=3;this.pa=jk;break;default:b=2}this.sa!==b&&(this.sa=b,a=!0);this.F=null;this.la=this.jc=new wk(this,hk);this.S=this.Ib=new wk(this,3);5>this.mb?this.B=new wk:(this.B=new wk(this,this.mb,null,this.Wc),Ok(this));Pk(this);this.Da=null;this.La=this.ha=-1;this.Ia=0;Qk(this,this.pa);if(this.F.hb&&a){a=this.F.hb+this.fb;
for(b=this.F.hb;b<a;b+=2){var d=65536*Math.random()|0;4==this.sa||7==this.sa?(c=b>>1&255,d=d>>8&-129,d>>4==(d&15)&&(d^=15)):(c=d&255,d=(d&256?7:112)|8&d>>8);Ib(this.na,b,c|d<<8)}kc(this,!0)}};function Ok(a){a.B.ff&1?(a.la=a.jc,a.S=a.B):(a.la=a.B,a.S=a.Ib)}f.save=function(){var a=new Qd(this);D(a,0,Ck(this.jc));D(a,1,Ck(this.Ib));D(a,2,[this.sa,this.pa,this.Da]);D(a,3,Ck(this.B));return a.data()};
f.restore=function(a){var b=a[2];this.sa=b[0];this.pa=b[1];this.Da=b[2];this.F=null;this.la=this.jc=new wk(this,hk,a[0]);this.S=this.Ib=new wk(this,3,a[1]);this.B=new wk(this,this.mb,a[3],this.Wc);this.B.Xb&&Ok(this);Pk(this);if(!Rk(this))return!1;Sk(this);return!0};
f.yj=function(a,b,c){if(c)this.Ka("Unable to load font ROM (error "+c+": "+a+")");else{try{var d=eval("("+b+")");if(!d.length){ra("Empty font ROM: "+a);return}if(1==d.length){ra(d[0]);return}if(8192==d.length)Dj(this,d,[6144,0]);else{this.Ka("Unrecognized font data length ("+d.length+")");return}}catch(e){this.Ka("Font ROM data error: "+e.message);return}(this.da||this.Ta)&&Ya(this)}};
function Tk(a,b){if(1==b)return a.ua[0]=qk[0],a.ua[1]=qk[7],a.ua;if(2==b){var c=a.F.ef;if(a.F===a.B){var d=a.B.Ic[0],c=d&7;d&16&&(c|=8);18!=a.B.Ic[1]&&(c|=32)}a.ua[0]=qk[c&15];c=c&32?sk:rk;for(d=0;d<c.length;d++)a.ua[d+1]=qk[c[d]];return a.ua}if(a.S===a.Ib)return qk;a.Ua&&b&&!a.ua[16]&&(a.Ua=!1);if(!a.Ua){var c=a.B,d=c.xe,e,k,l,p,q;if(8==b)for(k=0;256>k;k++)l=d[k]||0,p=l<<2&252,q=l>>4&252,l=l>>10&252,a.ua[k]=[p,q,l,255];else{var w=d&&d[255];e=null!=c.Ic[15]?c.Ic:tk;for(k=0;16>k;k++)l=e[k]&63,w?(l|=
(c.Ic[20]&12)<<4,c.Ic[16]&128&&(l&=-49,l|=(c.Ic[20]&3)<<4),l=d[l],p=l<<2&252,q=l>>4&252,l=l>>10&252):(p=(l&4?170:0)|(l&32?85:0),q=(l&2?170:0)|(l&16?85:0),l=(l&1?170:0)|(l&8?85:0)),a.ua[k]=[p,q,l,255]}a.Ua=!0}return a.ua}function Dj(a,b,c,d){a.Eb=b;a.kc=c;a.Qa=d}
function Tk(a,b){if(1==b)return a.ta[0]=qk[0],a.ta[1]=qk[7],a.ta;if(2==b){var c=a.F.ef;if(a.F===a.B){var d=a.B.Ic[0],c=d&7;d&16&&(c|=8);18!=a.B.Ic[1]&&(c|=32)}a.ta[0]=qk[c&15];c=c&32?sk:rk;for(d=0;d<c.length;d++)a.ta[d+1]=qk[c[d]];return a.ta}if(a.S===a.Ib)return qk;a.Ua&&b&&!a.ta[16]&&(a.Ua=!1);if(!a.Ua){var c=a.B,d=c.xe,e,k,l,p,q;if(8==b)for(k=0;256>k;k++)l=d[k]||0,p=l<<2&252,q=l>>4&252,l=l>>10&252,a.ta[k]=[p,q,l,255];else{var w=d&&d[255];e=null!=c.Ic[15]?c.Ic:tk;for(k=0;16>k;k++)l=e[k]&63,w?(l|=
(c.Ic[20]&12)<<4,c.Ic[16]&128&&(l&=-49,l|=(c.Ic[20]&3)<<4),l=d[l],p=l<<2&252,q=l>>4&252,l=l>>10&252):(p=(l&4?170:0)|(l&32?85:0),q=(l&2?170:0)|(l&16?85:0),l=(l&1?170:0)|(l&8?85:0)),a.ta[k]=[p,q,l,255]}a.Ua=!0}return a.ta}function Dj(a,b,c,d){a.Eb=b;a.kc=c;a.Qa=d}
function Pk(a,b){var c=!1;if(window&&a.Eb&&(!b||a.K)){var d=0,e=a.Qa?a.Qa:8,k=Tk(a);Uk(a,3,a.kc[0],d,e,8,a.Eb,k)&&(c=!0);d=a.Qa?0:2048;e=a.Qa?a.Qa:9;Uk(a,1,a.kc[1],d,e,14,a.Eb,ok,pk)&&(c=!0);a.Qa&&Uk(a,a.mb,a.kc[1],0,a.Qa,14,a.Eb,k)&&(c=!0)}return c}function Uk(a,b,c,d,e,k,l,p,q){var w=!1;null!=c&&(Vk(a,b,c,d,e,k,l,p,q)&&(w=!0),a.Yd&&Vk(a,b<<1,c,d,e,k,l,p,q)&&(w=!0));return w}
function Vk(a,b,c,d,e,k,l,p,q){var w=!1,B=b&1?0:1,G=a.Fa[b],C=16>p.length?p.length:16;G||(G={qc:e<<B,rc:k<<B,ae:Array(C),Eh:p.slice(0,C),Ee:q,cg:Array(C)});for(q=0;q<C;q++){var J=p[q],V=G.ae[q]?G.Eh[q]:[];if(J[0]!==V[0]||J[1]!==V[1]||J[2]!==V[2]){var w=G,V=q,X=B,ja=c,ka=d,za=e,Aa=k,nd=l,xm=[0,0,0,0],re=window.document.createElement("canvas");re.width=w.qc<<4;re.height=w.rc<<4;for(var Xi=re.getContext("2d"),Bb=void 0,Mc=void 0,ac=void 0,se=8>Aa||!ka?Aa:8,If=Xi.createImageData(w.qc,w.rc),Bb=0;256>Bb;Bb++){for(ac=
0;ac<Aa;ac++)for(var ym=w.Ee&&V&1&&ac>=Aa-2,zm=nd[ac<se?ja+Bb*se+ac:ka+Bb*se+ac-se],Jf=0;Jf<=X;Jf++)for(Mc=0;Mc<za;Mc++){var Yi=Mc<<X,Zi=(ac<<X)+Jf,$i=ym||zm&128>>(8<=Mc&&192<=Bb&&223>=Bb?7:Mc)?J:xm;Wk(If,Yi,Zi,$i);X&&Wk(If,Yi+1,Zi,$i)}Xi.putImageData(If,(Bb&15)*w.qc,(Bb>>4)*w.rc)}w.ae[V]="#"+da(J[0],2)+da(J[1],2)+da(J[2],2);w.Eh[V]=J;w.cg[V]=re;w=!0}}a.Fa[b]=G;return w}function Xk(a){0<a.Ia||0<=a.ha?0>a.La&&(a.La=0):a.La=-1}
function Vk(a,b,c,d,e,k,l,p,q){var w=!1,B=b&1?0:1,G=a.Fa[b],C=16>p.length?p.length:16;G||(G={qc:e<<B,rc:k<<B,ae:Array(C),Eh:p.slice(0,C),Ee:q,cg:Array(C)});for(q=0;q<C;q++){var J=p[q],V=G.ae[q]?G.Eh[q]:[];if(J[0]!==V[0]||J[1]!==V[1]||J[2]!==V[2]){var w=G,V=q,X=B,ja=c,ka=d,za=e,Aa=k,nd=l,xm=[0,0,0,0],re=window.document.createElement("canvas");re.width=w.qc<<4;re.height=w.rc<<4;for(var Xi=re.getContext("2d"),Bb=void 0,Mc=void 0,$b=void 0,se=8>Aa||!ka?Aa:8,If=Xi.createImageData(w.qc,w.rc),Bb=0;256>Bb;Bb++){for($b=
0;$b<Aa;$b++)for(var ym=w.Ee&&V&1&&$b>=Aa-2,zm=nd[$b<se?ja+Bb*se+$b:ka+Bb*se+$b-se],Jf=0;Jf<=X;Jf++)for(Mc=0;Mc<za;Mc++){var Yi=Mc<<X,Zi=($b<<X)+Jf,$i=ym||zm&128>>(8<=Mc&&192<=Bb&&223>=Bb?7:Mc)?J:xm;Wk(If,Yi,Zi,$i);X&&Wk(If,Yi+1,Zi,$i)}Xi.putImageData(If,(Bb&15)*w.qc,(Bb>>4)*w.rc)}w.ae[V]="#"+da(J[0],2)+da(J[1],2)+da(J[2],2);w.Eh[V]=J;w.cg[V]=re;w=!0}}a.Fa[b]=G;return w}function Xk(a){0<a.Ia||0<=a.ha?0>a.La&&(a.La=0):a.La=-1}
function Sk(a){if(a.K){for(var b=10;15>=b;b++)if(null==a.F.ib[b])return;var c=a.F.ib[10],b=c&31,d=a.F.ib[11]&31,e=a.F.ib[9]&31,k=!1;a.F===a.B&&(k=!0,7!=e||4!=b||d||(d=7));if(c&32||b>d&&!k||b>e)Yk(a);else{c=a.F.ib[15]+((a.F.ib[14]&63)<<8);a.ha!=c&&(Yk(a),a.ha=c);d=d-b+1;if(a.rd!=b||a.Zc!=d)a.rd=b,a.Zc=d;a.Ja=e+1;Xk(a)}}}
function Yk(a){if(0<=a.ha){if(void 0!==a.W){var b=a.W[a.ha];if(b&131072){var b=b&-131073,c=a.ha%a.H,d=a.ha/a.H|0;a.K&&a.Fa[a.K]&&(a.Na&&Zk(a,c,d,b,a.Na),Zk(a,c,d,b));a.W[a.ha]=b}}a.ha=-1}}
function $k(a){var b,c=a.F;a.fd=!1;var d=c.Dd[5];if(null!=d){b=1024;var e=0,k=c.Dd[3]&31;switch(d&3){case 0:if(k){e=32;switch(k&24){case 8:e=96;break;case 16:e=160;break;case 24:e=224}c.Hc=k&7}break;case 1:e=1;break;case 2:switch(k&24){default:e=2;break;case 8:e=98;break;case 16:e=162;break;case 24:e=226}break;case 3:a.mb==Ej&&(e=3,c.Hc=k&7)}d&8&&(b=1280);c=c.ze[4];null!=c&&(c&4||(b|=4096,e|=16),d&64&&(c&8&&(b|=16384,e|=4),a.fd=!0));b|=e}return b}
@ -909,7 +909,7 @@ function Rk(a,b){var c,d=a.Da,e=a.F;if(e)if(e.mb==hk)d=jk;else if(5<=e.mb){var d
e.Dd[5]&64?d=l&31?143>=e.ib[18]?19:20:21:l&128||350>k?d=c?13:14:480<=k&&(d=3==a.sa?17:18):d-=c?2:0);c=$k(a)}}else e.Jc&8&&(e.Jc&2?(d=e.Jc&16?6:5,e.Jc&4||--d):(d=e.Jc&1?3:1,e.Jc&4&&--d));else a.Da=null,null==d&&(d=a.pa);if(!Qk(a,d,b))return!1;al(a,c);return!0}
function Qk(a,b,c){if(null!=b&&(b!=a.Da||c)){a.Ed=0;a.Da=b;a.Ua=!1;b=a.F||(b==jk?a.la:a.S);if(b!=a.F||b.hb!=a.hb||b.Gb!=a.Gb){Yk(a);if(a.hb){if(!Ab(a.na,a.hb,a.Gb))return!1;a.F&&(a.F.Xb=!1)}a.F=b;b.Xb=!0;a.hb=b.hb;a.Gb=b.Gb;if(!vb(a.na,b.hb,b.Gb,3,b===a.B?b:null))return!1}a.K=0;a.H=a.Sb;a.R=a.wc;a.ab=a.H;a.Ob=ik[jk][2];b=0;if(c=ik[a.Da])a.H=c[0],a.R=c[1],a.Ob=c[2],b=c[3],a.K=c[4],4!=a.sa&&7!=a.sa||a.F!==a.B||3!=a.K||(7==a.B.ib[9]?a.R=43:a.K=a.mb);a.nd=a.H*a.R|0;a.ld=a.nd/a.Ob|0;a.fb=a.ld;a.lc=0;void 0!==
b&&(a.fb=(a.fb<<1)+b|0,a.lc=a.fb+b>>1);a.Fa.length&&(a.ya=a.oa/a.H|0,a.Ca=a.va/a.R|0,a.K?(b=a.Fa[a.K],c=a.Fa[a.K<<1],a.Zd&&80==a.H?c&&a.ya>=3*c.qc>>2&&(a.K<<=1,b=c):(c&&a.ya>=c.qc&&(a.K<<=1,b=c),b&&(a.ya=b.qc,a.Ca=b.rc)),a.jb=a.ub=0,b&&(a.jb=a.H*b.qc,a.ub=a.R*b.rc)):(a.ya=a.Ca=1,a.jb=a.H,a.ub=a.R),a.Va=a.da.createImageData(a.jb,a.ub),a.Ma=window.document.createElement("canvas"),a.Ma.width=a.jb,a.Ma.height=a.ub,a.Na=a.Ma.getContext("2d"),a.Fc=a.Gc=0,a.mc=a.oa,a.tc=a.va,b=a.oa-a.H*a.ya,c=a.va-a.R*a.Ca,
0<b&&(a.Fc=b>>1,a.mc-=b),0<c&&(a.Gc=c>>1,a.tc-=c),b||c)&&(a.da.fillStyle=a.ta.style.backgroundColor,a.da.fillRect(0,0,a.oa,a.va));bl(a,!0);kc(a)}return!0}function Wk(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function cl(a){a.Ia=-1;a.xa=!1;var b=a.ld;if(void 0===a.W||a.W.length!=b)a.W=Array(b)}function bl(a,b){b||(a.Ua=!1);cl(a)}
0<b&&(a.Fc=b>>1,a.mc-=b),0<c&&(a.Gc=c>>1,a.tc-=c),b||c)&&(a.da.fillStyle=a.ua.style.backgroundColor,a.da.fillRect(0,0,a.oa,a.va));bl(a,!0);kc(a)}return!0}function Wk(a,b,c,d){b=(b+c*a.width)*d.length;a.data[b]=d[0];a.data[b+1]=d[1];a.data[b+2]=d[2];a.data[b+3]=d[3]}function cl(a){a.Ia=-1;a.xa=!1;var b=a.ld;if(void 0===a.W||a.W.length!=b)a.W=Array(b)}function bl(a,b){b||(a.Ua=!1);cl(a)}
function Zk(a,b,c,d,e){var k=d&255,l=d>>8;d=l&15;var p=a.Fa[a.K];p.Ee&&(d=p.Ee[d]);var q=l>>4&15;p.Ee&&(q=p.Ee[q]);e?(b*=p.qc,c*=p.rc,e.fillStyle=p.ae[q],e.fillRect(b,c,p.qc,p.rc)):(b=b*a.ya+a.Fc,c=c*a.Ca+a.Gc,a.da.fillStyle=p.ae[q],a.da.fillRect(b,c,a.ya,a.Ca));l&256&&(q=(k&15)*p.qc,k=(k>>4)*p.rc,e?e.drawImage(p.cg[d],q,k,p.qc,p.rc,b,c,p.qc,p.rc):a.da.drawImage(p.cg[d],q,k,p.qc,p.rc,b,c,a.ya,a.Ca));l&512&&(k=a.rd,l=a.Zc,e?(a.Ja&&a.Ja!==p.rc&&(k=k*p.rc/a.Ja|0,l=l*p.rc/a.Ja|0),e.fillStyle=p.ae[d],
e.fillRect(b,c+k,p.qc,l)):(a.Ja&&a.Ja!==a.Ca&&(k=k*a.Ca/a.Ja|0,l=l*a.Ca/a.Ja|0),a.da.fillStyle=p.ae[d],a.da.fillRect(b,c+k,a.ya,l)))}
function kc(a,b){if(a.ja.Pb){var c=!1,d=a.F;d&&(d!==a.B?d.Jc&8&&(c=!0):d.Td&32&&(c=!0));if(c||b){if(b)cl(a);else if(void 0===a.W)return;var e=!1;!(b||++a.Ed&15)&&0<=a.La&&(a.La++,e=!0);var k=0,l=a.nd,p=a.hb,c=p,q=c+a.Gb;19<=a.Da&&(p=c=655360,q=c+65536);if(dl(a,d)&8||d.we&&d.we<d.ih)d.af=(d.ib[12]<<8)+d.ib[13]|0,d.we=0;var w=d.af;a.K&&(w<<=1);c+=w;w=a.fb;5<=a.mb&&d.ib[19]&&d.ib[19]<<1!=d.ib[1]+1&&(a.ab=d.ib[19]<<(a.K?1:d.ib[20]&64?3:4),w=(a.ab*(a.R-1)+a.H)/a.Ob|0,a.Da<=jk&&(w<<=1));c+w>q&&(w=q-c,0>
@ -928,26 +928,26 @@ var Dk={948:Z.prototype.xk,949:Z.prototype.wk,952:Z.prototype.yk,954:Z.prototype
961:Z.prototype.ej,962:Z.prototype.Jl,964:Z.prototype.Rl,965:Z.prototype.Ql,970:Z.prototype.Cl,972:Z.prototype.Bl,974:Z.prototype.Al,975:Z.prototype.zl,986:Z.prototype.fj},Jk={963:Z.prototype.Kk,966:Z.prototype.jk,967:Z.prototype.kk,969:Z.prototype.ik,970:Z.prototype.Lk,972:Z.prototype.Mk},Kk={963:Z.prototype.Tl,966:Z.prototype.rl,967:Z.prototype.sl,968:Z.prototype.tl,969:Z.prototype.ql};
Ea(function(){for(var a=Wa(window.document,"pcjs","video"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),e=window.document.createElement("canvas");if(void 0===e||!e.getContext){c.innerHTML="<br/>Missing &lt;canvas&gt; support. Please try a newer web browser.";break}e.setAttribute("class","pcjs-canvas");e.setAttribute("width",d.screenWidth);e.setAttribute("height",d.screenHeight);e.style.backgroundColor=d.screenColor;e.style.height="auto";0<=(window?window.navigator.userAgent:"").indexOf("MSIE")&&(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.onresize());c.appendChild(e);var k=window.document.createElement("textarea");xa("iOS")&&(k.setAttribute("autocapitalize","off"),k.setAttribute("autocorrect","off"));c.appendChild(k);var l=e.getContext("2d"),d=new Z(d,e,l,k,c);Va(d,c)}});
function hl(a){this.pa=a.adapter;switch(this.pa){case 1:this.ta=1016;this.Z=4;break;case 2:this.ta=760;this.Z=3;break;default:ra("Unrecognized serial adapter #"+this.pa);return}this.H=this.K=null;this.sa=a.tabSize;this.S=0;Ia.call(this,"SerialPort",a,hl);var b=a.binding;if("console"==b)this.K="";else{var c;a=il;b&&(void 0===c&&(c="Panel"),(c=Ta(c,this.id))&&(b=c.qa[b])&&this.Fb(null,a,b))}}Qa(hl);var il="buffer";f=hl.prototype;f.Hh=function(a,b){return a==this.lf?(this.N=b,this):null};
f.Fb=function(a,b,c){var d=this;switch(b){case il:return this.qa[b]=this.H=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),jl(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;jl(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet");Jb(b,this,kl,this.ta);Lb(b,this,ll,this.ta);Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};f.reset=function(){ml(this)};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.ha;c[b++]=this.oa;c[b++]=this.R;c[b++]=this.da;c[b++]=this.F;c[b++]=this.J;c[b++]=this.D;c[b++]=this.B;c[b++]=this.la;c[b]=this.W;D(a,0,c);return a.data()};
f.restore=function(a){return ml(this,a[0])};function ml(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ha=b[c++];a.oa=b[c++];a.R=b[c++];a.da=b[c++];a.F=b[c++];a.J=b[c++];a.D=b[c++];a.B=b[c++];a.la=b[c++];a.W=b[c];return!0}function jl(a,b){a.W=a.W.concat(b);nl(a)}function nl(a){0<a.W.length&&!(a.B&1)&&(a.ha=a.W.shift(),a.B|=1);var b=-1;a.B&1&&a.da&1&&(b=4);0<=b?(a.F&=-8,a.F|=b,a.T&&a.Z&&Ie(a.T,a.Z,100)):(a.F|=1,a.T&&a.Z&&He(a.T,a.Z))}
f.Gk=function(){var a=this.J&128?this.R&255:this.ha;this.B&=-2;nl(this);return a};f.rk=function(){return this.J&128?this.R>>8:this.da};f.sk=function(){return this.F};f.tk=function(){return this.J};f.vk=function(){return this.D};f.uk=function(){return this.B};f.Ak=function(){return this.la};
f.Sl=function(a,b){if(this.J&128)this.R=this.R&-256|b;else{this.oa=b;this.B&=-97;var c;if(this.H){if(13==b)this.S=0;else if(8==b)this.H.value=this.H.value.slice(0,-1),0<this.S&&this.S--;else{c=String.fromCharCode(b);var d=32<=b?1:0;9==b&&(d=this.sa||8,d=d-this.S%d,this.sa&&(c=" ".slice(0,d)));this.H.value+=c;this.H.scrollTop=this.H.scrollHeight;this.S+=d}c=!0}else if(null!=this.K){if(10==b||1024<=this.K.length)this.ic(this.K),this.K="";10!=b&&(this.K+=String.fromCharCode(b));
c=!0}else c=!1;c&&(this.B|=96)}};f.Dl=function(a,b){this.J&128?this.R=this.R&255|b<<8:this.da=b};f.El=function(a,b){this.J=b};f.Fl=function(a,b){var c=this.D;this.D=b;if(this.N&&(c^b)&3){var c=this.N,d=this.D,e=3==(d&3);if(e){if(!c.Xb){var k=!1;c.D&2||(c.reset(),k=!0);c.D&1||(k=!0);k&&jl(c.H,[77,77]);ol(c);c.Xb=e}}else c.Xb&&(pl(c),c.Xb=e);c.D=d}};
function hl(a){this.sa=a.adapter;switch(this.sa){case 1:this.ua=1016;this.Z=4;break;case 2:this.ua=760;this.Z=3;break;default:ra("Unrecognized serial adapter #"+this.sa);return}this.H=this.K=null;this.ta=a.tabSize;this.pa=a.charBOL;this.R=0;Ia.call(this,"SerialPort",a,hl);var b=a.binding;if("console"==b)this.K="";else{var c;a=il;b&&(void 0===c&&(c="Panel"),(c=Ta(c,this.id))&&(b=c.qa[b])&&this.Fb(null,a,b))}}Qa(hl);var il="buffer";f=hl.prototype;
f.Hh=function(a,b){return a==this.lf?(this.N=b,this):null};f.Fb=function(a,b,c){var d=this;switch(b){case il:return this.qa[b]=this.H=c,c.onkeydown=function(a){a=a||window.event;var b=a.keyCode;if(8===b||a.ctrlKey&&65<=b&&90>=b)a.preventDefault&&a.preventDefault(),64<b&&(b-=64),jl(d,[b]);return!0},c.onkeypress=function(a){a=a||window.event;jl(d,[a.which||a.keyCode]);a.preventDefault&&a.preventDefault();return!0},c.removeAttribute("readonly"),!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.T=hb(a,"ChipSet");Jb(b,this,kl,this.ua);Lb(b,this,ll,this.ua);Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};f.reset=function(){ml(this)};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.ha;c[b++]=this.oa;c[b++]=this.S;c[b++]=this.da;c[b++]=this.F;c[b++]=this.J;c[b++]=this.D;c[b++]=this.B;c[b++]=this.la;c[b]=this.W;D(a,0,c);return a.data()};
f.restore=function(a){return ml(this,a[0])};function ml(a,b){var c=0;void 0===b&&(b=[0,0,384,0,1,0,0,96,48,[]]);a.ha=b[c++];a.oa=b[c++];a.S=b[c++];a.da=b[c++];a.F=b[c++];a.J=b[c++];a.D=b[c++];a.B=b[c++];a.la=b[c++];a.W=b[c];return!0}function jl(a,b){a.W=a.W.concat(b);nl(a)}function nl(a){0<a.W.length&&!(a.B&1)&&(a.ha=a.W.shift(),a.B|=1);var b=-1;a.B&1&&a.da&1&&(b=4);0<=b?(a.F&=-8,a.F|=b,a.T&&a.Z&&Ie(a.T,a.Z,100)):(a.F|=1,a.T&&a.Z&&He(a.T,a.Z))}
f.Gk=function(){var a=this.J&128?this.S&255:this.ha;this.B&=-2;nl(this);return a};f.rk=function(){return this.J&128?this.S>>8:this.da};f.sk=function(){return this.F};f.tk=function(){return this.J};f.vk=function(){return this.D};f.uk=function(){return this.B};f.Ak=function(){return this.la};
f.Sl=function(a,b){if(this.J&128)this.S=this.S&-256|b;else{this.oa=b;this.B&=-97;var c;if(this.H){if(13==b)this.R=0;else if(8==b)this.H.value=this.H.value.slice(0,-1),0<this.R&&this.R--;else{c=String.fromCharCode(b);var d=32<=b?1:0;9==b&&(d=this.ta||8,d=d-this.R%d,this.ta&&(c=" ".slice(0,d)));this.pa&&!this.R&&d&&(c=String.fromCharCode(this.pa)+c);this.H.value+=c;this.H.scrollTop=this.H.scrollHeight;this.R+=d}c=!0}else if(null!=this.K){if(10==b||1024<=this.K.length)this.ic(this.K),
this.K="";10!=b&&(this.K+=String.fromCharCode(b));c=!0}else c=!1;c&&(this.B|=96)}};f.Dl=function(a,b){this.J&128?this.S=this.S&255|b<<8:this.da=b};f.El=function(a,b){this.J=b};f.Fl=function(a,b){var c=this.D;this.D=b;if(this.N&&(c^b)&3){var c=this.N,d=this.D,e=3==(d&3);if(e){if(!c.Xb){var k=!1;c.D&2||(c.reset(),k=!0);c.D&1||(k=!0);k&&jl(c.H,[77,77]);ol(c);c.Xb=e}}else c.Xb&&(pl(c),c.Xb=e);c.D=d}};
var kl={0:hl.prototype.Gk,1:hl.prototype.rk,2:hl.prototype.sk,3:hl.prototype.tk,4:hl.prototype.vk,5:hl.prototype.uk,6:hl.prototype.Ak},ll={0:hl.prototype.Sl,1:hl.prototype.Dl,3:hl.prototype.El,4:hl.prototype.Fl};Ea(function(){for(var a=Wa(window.document,"pcjs","serial"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new hl(d);Va(d,c)}});function ql(a){Ia.call(this,"Mouse",a,ql);if(this.da=a.serial)this.ha="SerialPort";this.Z=this.W=this.Xb=!1;this.F=[];this.B=[];Ya(this)}Qa(ql);var Nk=0;f=ql.prototype;
f.yc=function(a,b,c,d){this.ta=a;this.na=b;this.A=c;this.Ta=d;for(b=null;b=hb(a,"Video",b);)this.F.push(b)};f.ac=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ha&&!this.H){for(var c=null;(c=hb(this.ta,this.ha,c))&&(!c.Hh||!(this.H=c.Hh(this.da,this))););if(this.H)for(this.B=[],c=0;c<this.F.length;c++){var d;d=this.F[c];d.N=this;(d=d.J)&&this.B.push(d)}else ra(this.id+": "+this.ha+" "+this.da+" unavailable")}this.Xb?ol(this):pl(this)}return!0};
f.yc=function(a,b,c,d){this.ua=a;this.na=b;this.A=c;this.Ta=d;for(b=null;b=hb(a,"Video",b);)this.F.push(b)};f.ac=function(a,b){if(!b){if(!a||!this.restore)this.reset();else if(!this.restore(a))return!1;if(this.ha&&!this.H){for(var c=null;(c=hb(this.ua,this.ha,c))&&(!c.Hh||!(this.H=c.Hh(this.da,this))););if(this.H)for(this.B=[],c=0;c<this.F.length;c++){var d;d=this.F[c];d.N=this;(d=d.J)&&this.B.push(d)}else ra(this.id+": "+this.ha+" "+this.da+" unavailable")}this.Xb?ol(this):pl(this)}return!0};
f.$b=function(a){return a?this.save():!0};f.reset=function(){rl(this)};f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.Xb;c[b++]=this.J;c[b++]=this.K;c[b++]=this.N;c[b++]=this.T;c[b++]=this.R;c[b++]=this.S;c[b]=this.D;D(a,0,c);return a.data()};f.restore=function(a){return rl(this,a[0])};function rl(a,b){var c=0;void 0===b&&(b=[!1,-1,-1,0,0,!1,!1,0]);var d=b[c++];a.Xb=d;a.J=b[c++];a.K=b[c++];a.N=b[c++];a.T=b[c++];a.R=b[c++];a.S=b[c++];a.D=b[c];return!0}f.Ze=function(a){this.W=a};
function ol(a){if(!a.Z)for(var b=0;b<a.B.length;b++)sl(a,a.B[b])&&(a.Z=!0)}function pl(a){if(a.Z)for(var b=0;b<a.B.length;b++){var c=a.B[b];c&&(c.style.cursor="auto")}}function sl(a,b){return b?(b.addEventListener("mousemove",function(b){tl(a,b)},!1),b.addEventListener("mousedown",function(b){tl(a,b,!0)},!1),b.addEventListener("mouseup",function(b){tl(a,b,!1)},!1),b.style.cursor="none",!0):!1}
function tl(a,b,c){if(void 0!==c){var d;!(d=!1!==a.W)&&(d=a.F.length)&&(d=a.F[0],d=d.Xd?d.Md(!0):!1);d||(a.W=null);a.ie(b.button,c)}else{if(0>a.J||0>a.K)a.J=b.clientX,a.K=b.clientY;a.W?(c=b.movementX||b.mozMovementX||b.webkitMovementX||0,d=b.movementY||b.mozMovementY||b.webkitMovementY||0):(c=b.clientX-a.J,d=b.clientY-a.K);a.J=b.clientX;a.K=b.clientY;a.pg(c,d,a.J,a.K)}}
f.ie=function(a,b){if(this.Xb&&this.A&&this.A.ja.Qb)switch(a){case Nk:this.R!=b&&(this.R=b,ul(this));break;case 2:this.S!=b&&(this.S=b,ul(this))}};f.pg=function(a,b){this.Xb&&this.A&&this.A.ja.Qb&&(a||b)&&(this.N=a,this.T=b,ul(this))};function ul(a){jl(a.H,[64|(a.R?32:0)|(a.S?16:0)|(a.T&192)>>4|(a.N&192)>>6,a.N&63,a.T&63]);a.N=a.T=0}Ea(function(){for(var a=Wa(window.document,"pcjs","mouse"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new ql(d);Va(d,c)}});
function vl(a,b,c){Ia.call(this,"Disk",{id:a.rh+".disk"+da(++wl,4)},vl);this.controller=a;this.ta=a.ta;this.Ta=a.Ta;this.D=b;this.B=b.name;this.ne=b.ne;this.Cf=this.F=!1;xl(this,c,b.sb,b.tb,b.xb,b.qb);this.K=[];this.R=[];this.H=null;this.W=0;this.S=!1;Ya(this)}var wl=0;Qa(vl);f=vl.prototype;f.yc=function(a,b,c,d){this.Ta=d};f.ac=function(a,b){b||!this.Cf||this.F||(Ya(this,!1),this.load(this.B,this.J,null,this.Kj,this));return!0};f.Kj=function(){Ya(this,!0)};
function vl(a,b,c){Ia.call(this,"Disk",{id:a.rh+".disk"+da(++wl,4)},vl);this.controller=a;this.ua=a.ua;this.Ta=a.Ta;this.D=b;this.B=b.name;this.ne=b.ne;this.Cf=this.F=!1;xl(this,c,b.sb,b.tb,b.xb,b.qb);this.K=[];this.R=[];this.H=null;this.W=0;this.S=!1;Ya(this)}var wl=0;Qa(vl);f=vl.prototype;f.yc=function(a,b,c,d){this.Ta=d};f.ac=function(a,b){b||!this.Cf||this.F||(Ya(this,!1),this.load(this.B,this.J,null,this.Kj,this));return!0};f.Kj=function(){Ya(this,!0)};
f.$b=function(a,b){if(this.F){var c,d=0;if(this.S&&!sa("Disk writes are still in progress, shut down anyway?"))return!1;for(;c=yl(this,!1);)if(d=c[0]){this.controller.Ka('Unable to save "'+this.B+'" (error '+d+")");break}b&&this.F&&(c="action=close&volume="+this.J,c+="&machine="+this.controller.re(),c+="&user="+this.controller.yd(),pa(qa()+"/api/v1/disk?"+c,!0),this.F=!1);!d&&a&&this.controller.Ka(this.B+" saved")}return!0};
function xl(a,b,c,d,e,k){a.mode=b;a.sb=c;a.tb=d;a.xb=e;a.qb=k;a.A=[];if("preload"!=a.mode){b=Array(a.sb);for(c=0;c<b.length;c++){d=Array(a.tb);for(e=0;e<d.length;e++){k=Array(a.xb);for(var l=1;l<=k.length;l++)k[l-1]=zl(null,c,e,l,a.qb,"local"==a.mode?0:null);d[e]=k}b[c]=d}a.A=b}a.T=null}
f.load=function(a,b,c,d,e){var k=b;if(!this.N)if(this.B=a,this.J=b,this.na=ea(b),this.N=d,this.Z=e||this.controller,c){var l=this,p=new FileReader;p.onload=function(){var a=p.result,b,c=a?a.byteLength:0,d=ba[c];if(d){l.sb=d[0];l.tb=d[1];l.xb=d[2];l.qb=512;b=l.qb>>2;var e=d=0,a=new DataView(a,0,c);l.A=Array(l.sb);for(c=0;c<l.A.length;c++)for(var k=l.A[c]=Array(l.tb),V=0;V<k.length;V++)for(var X=k[V]=Array(l.xb),ja=0;ja<X.length;ja++){for(var ka=zl(null,c,V,ja+1,l.qb,0),za=ka.data,Aa=0;Aa<b;Aa++,e+=
4)var nd=za[Aa]=a.getInt32(e,!0),d=d+nd&-1;ka.Cc=b;X[ja]=ka}l.T=d;b=l}else l.Ka("Unrecognized diskette format ("+c+" bytes)");l.N&&(l.N.call(l.controller,l.D,b,l.B,l.J),l.N=null)};p.readAsArrayBuffer(c)}else 0>b.indexOf("/api/v1/dump")&&(a=fa(b),"json"==a||"gz"==a?k=encodeURI(b):"demandrw"==this.mode||"demandro"==this.mode?(k=Al(this,b),this.Cf=!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"),k=qa()+"/api/v1/dump?"+c+"="+encodeURIComponent(b)+(this.ne?"":d)+"&format=json")),pa(k,!0,null,this,this.rj)};
f.rj=function(a,b,c){var d=null;this.qe=!1;var e=0>c&&this.ta&&!this.ta.ja.Pb;if(this.Cf)c?this.controller.Ka('Unable to connect to disk "'+this.J+'" (error '+c+": "+b+")",e):(this.F=!0,d=this);else if(c)this.controller.Ka('Unable to load disk "'+this.B+'" (error '+c+": "+a+")",e);else try{if(0<ea(this.na,!0).toLowerCase().indexOf("-readonly"))this.qe=!0;else{var k=b.indexOf("\n");0<k&&1024>k&&0<b.substring(0,k).indexOf("write-protected")&&(this.qe=!0)}var l;"<"==b.substr(0,1)?l=["Missing disk image: "+
f.rj=function(a,b,c){var d=null;this.qe=!1;var e=0>c&&this.ua&&!this.ua.ja.Pb;if(this.Cf)c?this.controller.Ka('Unable to connect to disk "'+this.J+'" (error '+c+": "+b+")",e):(this.F=!0,d=this);else if(c)this.controller.Ka('Unable to load disk "'+this.B+'" (error '+c+": "+a+")",e);else try{if(0<ea(this.na,!0).toLowerCase().indexOf("-readonly"))this.qe=!0;else{var k=b.indexOf("\n");0<k&&1024>k&&0<b.substring(0,k).indexOf("write-protected")&&(this.qe=!0)}var l;"<"==b.substr(0,1)?l=["Missing disk image: "+
this.B]:l=0>b.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");if(l.length)if(1==l.length)ra(l[0]);else{this.sb=l.length;this.tb=l[0].length;this.xb=l[0][0].length;var p=l[0][0][0];this.qb=p&&p.length||512;for(c=b=0;c<this.sb;c++)for(e=0;e<this.tb;e++)for(k=0;k<this.xb;k++)if(p=l[c][e][k]){var q=p.length;void 0===q&&(q=p.length=512);var q=q>>2,w=p.pattern;void 0===w&&(w=p.pattern=0);var B=p.data;if(void 0===B){var G=p.bytes;
if(void 0!==G&&G.length){for(var C=q<<2,J=G.length;J<C;J++)G[J]=w;Bl(p,G,0)}else B=[],w=p.pattern=w|w<<8|w<<16|w<<24,p.data=B;delete p.bytes}zl(p,c,e);for(C=0;C<B.length;C++)b=b+B[C]&-1}this.A=l;this.T=b;d=this}else ra("Empty disk image: "+this.B)}catch(V){ra("Disk image error ("+a+"): "+V.message)}this.N&&(this.N.call(this.Z,this.D,d,this.B,this.J),this.N=null)};function zl(a,b,c,d,e,k){a||(a={sector:d,length:e,data:[],pattern:k});a.Pj=b;a.Qj=c;a.Sc=a.Cc=0;a.Oa=!1;return a}
function Al(a,b){var c;c="action=open&volume="+b+("&mode="+a.mode);c+="&chs="+a.sb+":"+a.tb+":"+a.xb+":"+a.qb;c+="&machine="+a.controller.re();c+="&user="+a.controller.yd();return qa()+"/api/v1/disk?"+c}function Cl(a,b,c,d,e,k,l){if(a.F){var p;p="action=read&volume="+a.J;p+="&chs="+a.sb+":"+a.tb+":"+a.xb+":"+a.qb;p=p+("&addr="+b+":"+c+":"+d+":"+e)+("&machine="+a.controller.re());p+="&user="+a.controller.yd();pa(qa()+"/api/v1/disk?"+p,k,null,a,a.Lj,[b,c,d,e,k,l])}else l&&l(-1,!1)}
@ -965,8 +965,8 @@ f.toJSON=function(){var a=JSON.stringify(this.A,function(a,c){return"file"==a?vo
function Gl(a){Ia.call(this,"FDC",a,Gl);this.dmaRead=this.sj;this.dmaWrite=this.tj;this.dmaFormat=this.Gj;this.N=a.autoMount||null;this.D=[];this.da=!xa("Mobi")&&window&&"FileReader"in window}Qa(Gl);aa={};var Hl={3:{dd:3,wd:0,name:aa.Cm},4:{dd:2,wd:1,name:aa.Am},5:{dd:9,wd:7,name:aa.Km},6:{dd:9,wd:7,name:aa.vm},7:{dd:2,wd:0,name:aa.xm},8:{dd:1,wd:2,name:aa.Bm},10:{dd:2,wd:7,name:aa.wm},13:{dd:6,wd:7,name:aa.im},15:{dd:3,wd:0,name:aa.zm}};f=Gl.prototype;
f.Fb=function(a,b,c){var d=this;switch(b){case "listDisks":return this.qa[b]=c,c.onchange=function(){var a=d.qa.descDisk,b=c.options[c.selectedIndex];if(a&&b){var l={};if(b=b.getAttribute("data-value"))try{l=eval("("+b+")")}catch(p){ra("FDC option error: "+p.message)}b=l.desc;void 0===b&&(b="");l=l.href;void 0!==l&&(b='<a href="'+l+'" target="_blank">'+b+"</a>");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.qa[b]=c,c.onchange=function(){var a=ca(c.value,10);null!=a&&Il(d,a)},!0;
case "loadDrive":return this.qa[b]=c,c.onclick=function(){var a=d.qa.listDisks;a&&Jl(d,a.options[a.selectedIndex].text,a.value)},!0;case "mountDrive":return this.da?(this.qa[b]=c,c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Jl(d,ea(b,!0),b,a)}return!1}):c.parentNode.removeChild(c),!0}return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ta=a;this.T=hb(a,"ChipSet");if((this.N=Kl(this.ta,"autoMount")||this.N)&&"string"==typeof this.N)try{this.N=eval("("+this.N+")")}catch(e){ra("FDC auto-mount error: "+e.message+" ("+this.N+")"),this.N=null}Ll(this);Jb(b,this,Ml);Lb(b,this,Nl);this.da&&Ol(this,"Local Disk","?");Ol(this,"Remote Disk","??");Pl(this)||Ya(this)};
f.ac=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.ta.lg){this.D=[];for(var c=0;c<this.B.length;c++)Ql(this,c,!0);Pl(this,!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.Z;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Z&&(c.value="0",Il(this,0))}}return!0};f.$b=function(a){return a?this.save():!0};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ua=a;this.T=hb(a,"ChipSet");if((this.N=Kl(this.ua,"autoMount")||this.N)&&"string"==typeof this.N)try{this.N=eval("("+this.N+")")}catch(e){ra("FDC auto-mount error: "+e.message+" ("+this.N+")"),this.N=null}Ll(this);Jb(b,this,Ml);Lb(b,this,Nl);this.da&&Ol(this,"Local Disk","?");Ol(this,"Remote Disk","??");Pl(this)||Ya(this)};
f.ac=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.ua.lg){this.D=[];for(var c=0;c<this.B.length;c++)Ql(this,c,!0);Pl(this,!0)}}else if(!this.restore(a))return!1;if(c=this.qa.listDrives){for(;c.firstChild;)c.removeChild(c.firstChild);c.textContent="";for(var d=0;d<this.Z;d++){var e=window.document.createElement("option");e.value=d;e.textContent=String.fromCharCode(65+d)+":";c.appendChild(e)}0<this.Z&&(c.value="0",Il(this,0))}}return!0};f.$b=function(a){return a?this.save():!0};
f.reset=function(){Ll(this)};
f.save=function(){var a=new Qd(this),b=0,c=[];c[b++]=this.Wa;c[b++]=0;c[b++]=this.ga;c[b++]=this.K;c[b++]=this.H;c[b++]=this.F;c[b++]=this.W;for(var d=b++,e=0,k=[],l=0;l<this.B.length;l++){var p=e++,q=this.B[l],w=0,B=[];B[w++]=q.nb;B[w++]=[q.name,q.sb,q.tb,q.xb,q.qb,q.ne,q.Jf,q.Re,q.Se];B[w++]=q.bb;B[w++]=q.ud+100;B[w++]=q.Bb;B[w++]=q.pb;B[w++]=q.vd;B[w++]=q.zb;B[w++]=q.Xa;B[w++]=q.le;B[w++]=q.ij;B[w]=q.Ud;k[p]=B}c[d]=k;d=b++;for(e=0;e<this.B.length;e++)k=this.B[e],k.Aa&&Rl(this,k.Ud,k.Aa);c[d]=this.D;
c[b++]=this.R;c[b]=this.J;D(a,0,c);return a.data()};f.restore=function(a){return Ll(this,a[0])};
@ -987,15 +987,15 @@ k-e.ud,0>e.Bb&&(e.Bb=0),e.Bb>=e.sb&&(e.Bb=e.sb-1),e.ud=k,e.nb=32,e.Bb||(e.nb|=26
function Ul(a){var b=a.K[a.H];a.H++;return b}function Vl(a){a.H=a.F=0}function Wl(a,b){a.K[a.F++]=b}f.sj=function(a,b,c){if(void 0===b||0>b){b=-1;var d=null,e=0;if(!a.nb&&a.Aa){do{if(a.Za&&(e=a.Xa,0<=(b=a.Aa.read(a.Za,a.Xa++)))){d=a.Za;break}a.Za=a.Aa.seek(a.Bb,a.bb,a.pb);if(!a.Za){a.nb=1088;break}a.Xa=0;Yl(a)}while(1)}c(b,!1,d,e)}else c(-1,!1)};f.tj=function(a,b){return void 0!==b&&0<=b?Zl(a,b):-1};
f.Gj=function(a,b){var c;if(void 0!==b&&0<=b)a:if(c=b,a.nb)c=-1;else{a.Lc[a.he++]=c;if(a.he==a.Lc.length){a.Bb=a.Lc[0];a.bb=a.Lc[1];a.pb=a.Lc[2];a.zb=128<<a.Lc[3];for(var d=a.he=0;d<a.zb;d++)if(0>Zl(a,a.Ih)){c=-1;break a}a.xf++}a.xf>=a.vd&&(c=-1)}else c=-1;return c};function Zl(a,b){if(a.nb||!a.Aa)return-1;do{if(a.Za&&a.Aa.write(a.Za,a.Xa++,b))break;a.Za=a.Aa.seek(a.Bb,a.bb,a.pb);if(!a.Za){a.nb=8256;b=-1;break}a.Xa=0;Yl(a)}while(1);return b}
function Yl(a){a.pb++;a.pb>=a.Se+1&&(a.pb=1,a.bb++,a.bb>=a.Re&&(a.bb=0,a.Bb++))}var Ml={1012:Gl.prototype.nk,1013:Gl.prototype.lk,1015:Gl.prototype.mk},Nl={1010:Gl.prototype.wl,1013:Gl.prototype.vl,1015:Gl.prototype.ul};Ea(function(){for(var a=Wa(window.document,"pcjs","fdc"),b=0;b<a.length;b++){var c=a[b],d=Ua(c),d=new Gl(d);Va(d,c)}});
function $l(a){Ia.call(this,"HDC",a,$l);this.dmaRead=this.uj;this.dmaWrite=this.vj;this.dmaWriteBuffer=this.Hj;this.dmaWriteFormat=this.Ij;this.ua=[];if(a.drives)try{this.ua=eval("("+a.drives+")")}catch(b){ra("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Z="at"==a.type}Qa($l);
function $l(a){Ia.call(this,"HDC",a,$l);this.dmaRead=this.uj;this.dmaWrite=this.vj;this.dmaWriteBuffer=this.Hj;this.dmaWriteFormat=this.Ij;this.ta=[];if(a.drives)try{this.ta=eval("("+a.drives+")")}catch(b){ra("HDC drive configuration error: "+b.message+" ("+a.drives+")")}this.Z="at"==a.type}Qa($l);
var am=["XTC","ATC","COMPAQ"],bm=[{0:[306,2],1:[375,8],2:[306,6],3:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[940,8],5:[940,6],6:[615,4],7:[462,8],8:[733,5],9:[900,15],10:[820,3],11:[855,5],12:[855,7],13:[306,8],14:[733,7],16:[612,4],17:[977,5],18:[977,7],19:[1024,7],20:[733,5],21:[733,7],22:[733,5],23:[306,4]},{1:[306,4],2:[615,4],3:[615,6],4:[1023,8],5:[940,6],6:[697,5],7:[462,8],8:[925,5],9:[900,15],10:[980,5],11:[925,7],12:[925,9],13:[612,8],14:[980,4],16:[612,4],17:[980,5],18:[966,6],19:[1023,
8],20:[733,5],21:[733,7],22:[524,4,40],23:[924,8],24:[966,14],25:[966,16],26:[1023,14],27:[832,6,33],28:[1222,15,34],29:[1240,7,34],30:[615,4,25],31:[615,8,25],32:[905,9,25],33:[832,8,33],34:[966,7,34],35:[966,8,34],36:[966,9,34],37:[966,5,34],38:[612,16,63],39:[1023,11,33],40:[1023,15,34],41:[1630,15,52],42:[1023,16,63],43:[805,4,26],44:[805,2,26],45:[748,8,33],46:[748,6,33],47:[966,5,25]}];f=$l.prototype;f.Fb=function(){return!1};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ta=a;this.T=hb(a,"ChipSet");this.J=0;this.xa=3;Jb(b,this,this.Z?cm:dm);Lb(b,this,this.Z?em:fm);this.Z&&(this.J++,this.T&&5180==this.T.ia&&this.J++,this.xa=2,b.R[496]=2,b.S[496]=2);Md(c,19,this.Rk.bind(this));Md(c,64,this.Sk.bind(this));this.reset();gm(this)||Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)hm(this),this.ta.lg&&gm(this,!0);else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.re=function(){return this.ta?this.ta.re():""};f.yd=function(){return this.ta?this.ta.yd():""};f.reset=function(){hm(this,null,!0)};
f.yc=function(a,b,c,d){this.na=b;this.A=c;this.Ta=d;this.ua=a;this.T=hb(a,"ChipSet");this.J=0;this.xa=3;Jb(b,this,this.Z?cm:dm);Lb(b,this,this.Z?em:fm);this.Z&&(this.J++,this.T&&5180==this.T.ia&&this.J++,this.xa=2,b.R[496]=2,b.S[496]=2);Md(c,19,this.Rk.bind(this));Md(c,64,this.Sk.bind(this));this.reset();gm(this)||Ya(this)};f.ac=function(a,b){if(!b)if(!a||!this.restore)hm(this),this.ua.lg&&gm(this,!0);else if(!this.restore(a))return!1;return!0};f.$b=function(a){return a?this.save():!0};
f.re=function(){return this.ua?this.ua.re():""};f.yd=function(){return this.ua?this.ua.yd():""};f.reset=function(){hm(this,null,!0)};
f.save=function(){var a=new Qd(this),b=0,c=[];this.Z?(c[b++]=this.N,c[b++]=this.Fa,c[b++]=this.R,c[b++]=this.sa,c[b++]=this.pa,c[b++]=this.oa,c[b++]=this.ha,c[b++]=this.ga,c[b++]=this.va,c[b++]=[this.W,this.Wa]):(c[b++]=this.la,c[b++]=this.ga,c[b++]=this.K,c[b++]=this.H,c[b++]=this.F,c[b++]=this.Da,c[b++]=this.Ca,c[b++]=this.ya,c[b++]=this.da);for(var d=0,e=[],k=0;k<this.B.length;k++){var l=d++,p=this.B[k],q=0,w=[];w[q++]=p.errorCode;w[q++]=p.jj;w[q++]=p.ne;w[q++]=p.ce;w[q++]=p.de;w[q++]=p.bb;w[q++]=
p.tb;w[q++]=p.Fd;w[q++]=p.pb;w[q++]=p.vd;w[q++]=p.zb;w[q++]=p.Xa;w[q]=p.Aa?p.Aa.save():null;e[l]=w}c[b]=e;D(a,0,c);return a.data()};f.restore=function(a){return hm(this,a[0])};
function hm(a,b,c){var d=0,e=!0;a.Wa=-1;if(a.Z){if(null==b&&(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.N=b[d++],a.Fa=b[d++],a.R=b[d++],a.sa=b[d++],a.pa=b[d++],a.oa=b[d++],a.ha=b[d++],a.ga=b[d++],a.va=b[d++],a.W=b[d++],"object"==typeof a.W){var k=a.W;a.W=k[0];a.Wa=k[1]}}else null==b&&(b=[0,0,Array(14),0,0]),a.la=b[d++],a.ga=b[d++],a.K=b[d++],a.H=b[d++],a.F=b[d++],a.Da=b[d++],a.Ca=b[d++],a.ya=b[d++],k=b[d++],void 0!==k?a.da=k:void 0===a.da&&(a.da=-1);void 0===a.B&&(a.B=Array(a.ua.length));b=b[d];void 0===b&&
(b=[]);for(d=0;d<a.B.length;d++){void 0===a.B[d]&&(a.B[d]={});var k=a.B[d],l=a,p=d,q=k,w=a.ua[d],B=b[d],G=c,C=0,J=!0;void 0===B&&(B=[0,0,!1,Array(8)]);q.Wa=p;q.errorCode=B[C++];q.jj=B[C++];q.ne=B[C++];q.ce=B[C++];q.de=B[C++];q.bb=B[C++];q.tb=B[C++];q.Fd=B[C++];q.pb=B[C++];q.vd=B[C++];q.zb=B[C++];q.wf=l.Z?0:1;q.name=w.name;void 0===q.name&&(q.name="Hard Drive");q.path=w.path;q.mode=w.mode||(q.path?"preload":"local");"demandro"!=q.mode&&"demandrw"!=q.mode||l.yd()||(q.mode="local");q.type=w.type;if(void 0===
function hm(a,b,c){var d=0,e=!0;a.Wa=-1;if(a.Z){if(null==b&&(b=[0,0,0,0,0,0,0,64,0,[0,-1]]),a.N=b[d++],a.Fa=b[d++],a.R=b[d++],a.sa=b[d++],a.pa=b[d++],a.oa=b[d++],a.ha=b[d++],a.ga=b[d++],a.va=b[d++],a.W=b[d++],"object"==typeof a.W){var k=a.W;a.W=k[0];a.Wa=k[1]}}else null==b&&(b=[0,0,Array(14),0,0]),a.la=b[d++],a.ga=b[d++],a.K=b[d++],a.H=b[d++],a.F=b[d++],a.Da=b[d++],a.Ca=b[d++],a.ya=b[d++],k=b[d++],void 0!==k?a.da=k:void 0===a.da&&(a.da=-1);void 0===a.B&&(a.B=Array(a.ta.length));b=b[d];void 0===b&&
(b=[]);for(d=0;d<a.B.length;d++){void 0===a.B[d]&&(a.B[d]={});var k=a.B[d],l=a,p=d,q=k,w=a.ta[d],B=b[d],G=c,C=0,J=!0;void 0===B&&(B=[0,0,!1,Array(8)]);q.Wa=p;q.errorCode=B[C++];q.jj=B[C++];q.ne=B[C++];q.ce=B[C++];q.de=B[C++];q.bb=B[C++];q.tb=B[C++];q.Fd=B[C++];q.pb=B[C++];q.vd=B[C++];q.zb=B[C++];q.wf=l.Z?0:1;q.name=w.name;void 0===q.name&&(q.name="Hard Drive");q.path=w.path;q.mode=w.mode||(q.path?"preload":"local");"demandro"!=q.mode&&"demandrw"!=q.mode||l.yd()||(q.mode="local");q.type=w.type;if(void 0===
q.type||void 0===bm[l.J][q.type])q.type=l.xa;w=bm[l.J][q.type];q.xb=w[2]||17;q.qb=w[3]||512;if(G&&l.T){var V=l.T,X=q.type;if(V.B){var G=null,w=void 0,ja=V.B[18];15<X&&(G=X,X=15);p?(ja=ja&240|X,w=26):(ja=ja&15|X<<4,w=25);X=V;X.B&&(X.B[18]=ja,Hi(X));null!=G&&V.B&&(V.B[w]=G,Hi(V))}}void 0===q.Aa&&(q.Aa=null,l.Ka("Type "+q.type+' "'+q.name+'" is fixed disk '+p,!0));im(l,q);q.Xa=B[C++];q.Za=null;q.Aa&&(l=B[C],void 0!==l&&0>q.Aa.restore(l)&&(J=!1),J&&void 0!==q.Xa&&(q.Za=q.Aa.seek(q.Fd,q.bb,q.pb+q.wf)));
J||(e=!1);null!=a.la&&1>=d&&(a.la|=(k.type&3)<<(1-d<<1))}0<=a.Wa&&(a.D=a.B[a.Wa]);return e}function im(a,b,c){if(b){var d=0,e=0;null==c&&((d=b.ce[2])?e=b.ce[0]<<8|b.ce[1]:c=b.type);null==c||d||(d=bm[a.J][c][1],e=bm[a.J][c][0]);d&&((c=bm[a.J][b.type])&&e!=c[0]&&d!=c[1]&&a.Ka("Warning: drive parameters ("+e+","+d+") do not match drive type "+b.type+" ("+c[0]+","+c[1]+")"),b.sb=e,b.tb=d,null==b.Aa&&(b.Aa=new vl(a,b,b.mode)))}}
function gm(a,b){b||(a.S=0);for(var c=0;c<a.B.length;c++){var d=a.B[c];if(d.name&&d.path){if(!(b&&d.Aa&&d.Aa.Cf)){var e;e=a;var k=d.name,d=d.path,l=e.B[c];l.Nc?(e.Ka("Drive "+c+" busy"),e=!0):(l.Nc=!0,l.Kd=!0,e.S++,(l.Aa||new vl(e,l,l.mode)).load(k,d,null,e.Jj),e=!1);!e&&b&&Ya(a,!1)}}else b&&void 0!==d.type&&(d.Aa=null,im(a,d,d.type))}return!!a.S}