diff --git a/README.md b/README.md
index 44985f8b4..b2ec6f109 100644
--- a/README.md
+++ b/README.md
@@ -44,7 +44,7 @@ Some pre-configured machines are shown below, ready to run BASIC, DOS, Windows 1
[
](/devices/pc/machine/5160/cga/256kb/win101/)
[
](/devices/pc/machine/5160/ega/640kb/win101/)
[
](/disks/pc/os2/ibm/1.0/)
-[
](/disks/pc/cpm/)
+[
](/disks/pc/cpm/1.1b/)
[
](/disks/pc/games/microsoft/adventure/)
[
](/disks/pc/games/infocom/zork1/)
diff --git a/apps/README.md b/apps/README.md
index 21a6358f3..bd67b0d70 100644
--- a/apps/README.md
+++ b/apps/README.md
@@ -93,8 +93,8 @@ be re-generated.
### Example: CP/M-86
-CPM-86 is stored as two disk images in a [/disks folder](/disks/pc/cpm/). The disk images are described in that
-folder's [manifest](/disks/pc/cpm/manifest.xml):
+CPM-86 is stored as two disk images in a [/disks folder](/disks/pc/cpm/1.1b/). The disk images are described in that
+folder's [manifest](/disks/pc/cpm/1.1b/manifest.xml):
CP/M-86
@@ -104,11 +104,11 @@ folder's [manifest](/disks/pc/cpm/manifest.xml):
Digital Research
Eagle Computer
May 20, 1983
-
-
+
+
CP/M-86 (Disk 1)
-
+
CP/M-86 (Disk 2)
@@ -121,10 +121,10 @@ the disk images.
If a machine file wanted to use only the first disk, then it would specify:
-
+
and if it wanted to use all the disks listed in the manifest, it would specify:
-
+
-which is what our [CP/M Machine Configuration](/disks/pc/cpm/machine.xml) does.
+which is what our [CP/M Machine Configuration](/disks/pc/cpm/1.1b/machine.xml) does.
diff --git a/apps/pc/1981/visicalc/manifest.xml b/apps/pc/1981/visicalc/manifest.xml
index f5847abd1..dcb9ad98d 100644
--- a/apps/pc/1981/visicalc/manifest.xml
+++ b/apps/pc/1981/visicalc/manifest.xml
@@ -1,5 +1,5 @@
-
+
VisiCalc
diff --git a/apps/pc/1982/esuite/manifest.xml b/apps/pc/1982/esuite/manifest.xml
index 5c57c53b1..b9500180d 100644
--- a/apps/pc/1982/esuite/manifest.xml
+++ b/apps/pc/1982/esuite/manifest.xml
@@ -1,5 +1,5 @@
-
+
Executive Suite
diff --git a/apps/pc/1985/rogue/manifest.xml b/apps/pc/1985/rogue/manifest.xml
index cefc23a6b..dca9ba0ff 100644
--- a/apps/pc/1985/rogue/manifest.xml
+++ b/apps/pc/1985/rogue/manifest.xml
@@ -1,5 +1,5 @@
-
+
Rogue
diff --git a/apps/pc/1987/thinktank/manifest.xml b/apps/pc/1987/thinktank/manifest.xml
index aa313d12f..d0f974a74 100644
--- a/apps/pc/1987/thinktank/manifest.xml
+++ b/apps/pc/1987/thinktank/manifest.xml
@@ -1,5 +1,5 @@
-
+
ThinkTank
2.41NP
diff --git a/apps/pc/1988/moria/manifest.xml b/apps/pc/1988/moria/manifest.xml
index f8f6532be..394b82466 100644
--- a/apps/pc/1988/moria/manifest.xml
+++ b/apps/pc/1988/moria/manifest.xml
@@ -1,5 +1,5 @@
-
+
The Dungeons of Moria
4.872
diff --git a/apps/pc/1992/moria/manifest.xml b/apps/pc/1992/moria/manifest.xml
index 8b321005a..aeb2470cf 100644
--- a/apps/pc/1992/moria/manifest.xml
+++ b/apps/pc/1992/moria/manifest.xml
@@ -1,5 +1,5 @@
-
+
The Dungeons of Moria
5.5
diff --git a/devices/c1p/machine/32kb/machine.xml b/devices/c1p/machine/32kb/machine.xml
index f03adb4b9..55cbb15ca 100644
--- a/devices/c1p/machine/32kb/machine.xml
+++ b/devices/c1p/machine/32kb/machine.xml
@@ -1,5 +1,5 @@
-
+
OSI Challenger 1P (32Kb) with Disk Support
diff --git a/devices/c1p/machine/8kb/all/debugger/machine.xml b/devices/c1p/machine/8kb/all/debugger/machine.xml
index 1994d28ad..c45677586 100644
--- a/devices/c1p/machine/8kb/all/debugger/machine.xml
+++ b/devices/c1p/machine/8kb/all/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
OSI Challenger 1P (8Kb, Additional Software)
diff --git a/devices/c1p/machine/8kb/array/machine.xml b/devices/c1p/machine/8kb/array/machine.xml
index 5eb7239f5..a90aebbcd 100644
--- a/devices/c1p/machine/8kb/array/machine.xml
+++ b/devices/c1p/machine/8kb/array/machine.xml
@@ -1,5 +1,5 @@
-
+
Challenger 1P (8Kb) "Server Array"
diff --git a/devices/c1p/machine/8kb/large/debugger/machine.xml b/devices/c1p/machine/8kb/large/debugger/machine.xml
index 4dc8627da..b175ece24 100644
--- a/devices/c1p/machine/8kb/large/debugger/machine.xml
+++ b/devices/c1p/machine/8kb/large/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
OSI Challenger 1P (8Kb) with Debugger
diff --git a/devices/c1p/machine/8kb/large/machine.xml b/devices/c1p/machine/8kb/large/machine.xml
index 07077cf61..33834832d 100644
--- a/devices/c1p/machine/8kb/large/machine.xml
+++ b/devices/c1p/machine/8kb/large/machine.xml
@@ -1,5 +1,5 @@
-
+
OSI Challenger 1P (circa 1978)
diff --git a/devices/c1p/machine/8kb/small/machine.xml b/devices/c1p/machine/8kb/small/machine.xml
index fbcc77c5d..f4f23d8c3 100644
--- a/devices/c1p/machine/8kb/small/machine.xml
+++ b/devices/c1p/machine/8kb/small/machine.xml
@@ -1,5 +1,5 @@
-
+
diff --git a/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml b/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml
index fd6964d4c..06c9eb8b4 100644
--- a/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml
+++ b/devices/pc/machine/5150/cga/384kb/softkbd/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150), CGA, 384K
diff --git a/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml b/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml
index a9fee1a21..68382554d 100644
--- a/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml
+++ b/devices/pc/machine/5150/cga/64kb/donkey/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150), CGA, 64K
diff --git a/devices/pc/machine/5150/cga/64kb/donkey/machine.xml b/devices/pc/machine/5150/cga/64kb/donkey/machine.xml
index 0d27ff1da..61731b227 100644
--- a/devices/pc/machine/5150/cga/64kb/donkey/machine.xml
+++ b/devices/pc/machine/5150/cga/64kb/donkey/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150), CGA, 64K
diff --git a/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml b/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml
index ae88998b6..09e8ee594 100644
--- a/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml
+++ b/devices/pc/machine/5150/cga/64kb/softkbd/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150), CGA, 64K
diff --git a/devices/pc/machine/5150/dual/64kb/machine.xml b/devices/pc/machine/5150/dual/64kb/machine.xml
index 699250f9b..50f166709 100644
--- a/devices/pc/machine/5150/dual/64kb/machine.xml
+++ b/devices/pc/machine/5150/dual/64kb/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150) with Dual Display
diff --git a/devices/pc/machine/5150/mda/64kb/debugger/machine.xml b/devices/pc/machine/5150/mda/64kb/debugger/machine.xml
index 0060e0f9b..e5b7593db 100644
--- a/devices/pc/machine/5150/mda/64kb/debugger/machine.xml
+++ b/devices/pc/machine/5150/mda/64kb/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC Model 5150 with Monochrome Display
diff --git a/devices/pc/machine/5150/mda/64kb/machine.xml b/devices/pc/machine/5150/mda/64kb/machine.xml
index 7e2cb5f15..284421bce 100644
--- a/devices/pc/machine/5150/mda/64kb/machine.xml
+++ b/devices/pc/machine/5150/mda/64kb/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150) with Monochrome Display
diff --git a/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml b/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml
index de464e080..03f54d4ad 100644
--- a/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml
+++ b/devices/pc/machine/5150/mda/64kb/softkbd/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150), MDA, 64K
diff --git a/devices/pc/machine/5160/cga/256kb/array/machine.xml b/devices/pc/machine/5160/cga/256kb/array/machine.xml
index 072b0b47e..2553700a4 100644
--- a/devices/pc/machine/5160/cga/256kb/array/machine.xml
+++ b/devices/pc/machine/5160/cga/256kb/array/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 256K, 10Mb Drive
diff --git a/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml b/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml
index 2e8cc66bb..bb6909d60 100644
--- a/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml
+++ b/devices/pc/machine/5160/cga/256kb/demo/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive
diff --git a/devices/pc/machine/5160/cga/256kb/demo/machine.xml b/devices/pc/machine/5160/cga/256kb/demo/machine.xml
index fdbd580bd..74447595a 100644
--- a/devices/pc/machine/5160/cga/256kb/demo/machine.xml
+++ b/devices/pc/machine/5160/cga/256kb/demo/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 256Kb, 10Mb Drive
diff --git a/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml b/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml
index 00afdab53..de50fae2b 100644
--- a/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml
+++ b/devices/pc/machine/5160/cga/256kb/softkbd/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 256K, 10Mb Drive
diff --git a/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml b/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml
index 37ae784fd..e9ad170ff 100644
--- a/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml
+++ b/devices/pc/machine/5160/cga/256kb/win101/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160) running Windows v1.01
diff --git a/devices/pc/machine/5160/cga/256kb/win101/machine.xml b/devices/pc/machine/5160/cga/256kb/win101/machine.xml
index d008b5626..16301d583 100644
--- a/devices/pc/machine/5160/cga/256kb/win101/machine.xml
+++ b/devices/pc/machine/5160/cga/256kb/win101/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160) running Windows v1.01
diff --git a/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml b/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml
index 326a70000..3586b17f7 100644
--- a/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml
+++ b/devices/pc/machine/5160/cga/256kb/win101/softkbd/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 256K, WIN101
diff --git a/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml b/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml
index 274acff98..b022a4193 100644
--- a/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml
+++ b/devices/pc/machine/5160/cga/512kb/win101/softkbd/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 512K, WIN101
diff --git a/devices/pc/machine/5160/cga/640kb/debugger/machine.xml b/devices/pc/machine/5160/cga/640kb/debugger/machine.xml
index cc364fbb4..3d7daf009 100644
--- a/devices/pc/machine/5160/cga/640kb/debugger/machine.xml
+++ b/devices/pc/machine/5160/cga/640kb/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive
diff --git a/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml b/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml
index 045b472e4..21e80c102 100644
--- a/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml
+++ b/devices/pc/machine/5160/cga/640kb/dos400m/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive
diff --git a/devices/pc/machine/5160/cga/640kb/machine.xml b/devices/pc/machine/5160/cga/640kb/machine.xml
index 5c72354c1..601126d08 100644
--- a/devices/pc/machine/5160/cga/640kb/machine.xml
+++ b/devices/pc/machine/5160/cga/640kb/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), CGA, 640K, 10Mb Drive
diff --git a/devices/pc/machine/5160/ega/256kb/debugger/machine.xml b/devices/pc/machine/5160/ega/256kb/debugger/machine.xml
index d9f3920cd..7091a276f 100644
--- a/devices/pc/machine/5160/ega/256kb/debugger/machine.xml
+++ b/devices/pc/machine/5160/ega/256kb/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), 64K EGA, 256K RAM, 10Mb Hard Drive
diff --git a/devices/pc/machine/5160/ega/640kb/array/machine.xml b/devices/pc/machine/5160/ega/640kb/array/machine.xml
index d1c5c77d0..1f1475cfa 100644
--- a/devices/pc/machine/5160/ega/640kb/array/machine.xml
+++ b/devices/pc/machine/5160/ega/640kb/array/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive
diff --git a/devices/pc/machine/5160/ega/640kb/debugger/machine.xml b/devices/pc/machine/5160/ega/640kb/debugger/machine.xml
index d45edf4e6..4d210c815 100644
--- a/devices/pc/machine/5160/ega/640kb/debugger/machine.xml
+++ b/devices/pc/machine/5160/ega/640kb/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive
diff --git a/devices/pc/machine/5160/ega/640kb/machine.xml b/devices/pc/machine/5160/ega/640kb/machine.xml
index c686a3425..b09c1f0ce 100644
--- a/devices/pc/machine/5160/ega/640kb/machine.xml
+++ b/devices/pc/machine/5160/ega/640kb/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive
diff --git a/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml b/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml
index 0992daef5..c4202277a 100644
--- a/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml
+++ b/devices/pc/machine/5160/ega/640kb/win101/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive
diff --git a/devices/pc/machine/5160/ega/640kb/win101/machine.xml b/devices/pc/machine/5160/ega/640kb/win101/machine.xml
index d1da74be2..589003908 100644
--- a/devices/pc/machine/5160/ega/640kb/win101/machine.xml
+++ b/devices/pc/machine/5160/ega/640kb/win101/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT, 128K EGA, 640K RAM, 10Mb Hard Drive
diff --git a/devices/pc/machine/5160/mda/256kb/debugger/machine.xml b/devices/pc/machine/5160/mda/256kb/debugger/machine.xml
index 83ffbad28..310770d8a 100644
--- a/devices/pc/machine/5160/mda/256kb/debugger/machine.xml
+++ b/devices/pc/machine/5160/mda/256kb/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive
diff --git a/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml b/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml
index dadea4031..97f506607 100644
--- a/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml
+++ b/devices/pc/machine/5160/mda/256kb/fake188/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive
diff --git a/devices/pc/machine/5160/mda/256kb/fake188/machine.xml b/devices/pc/machine/5160/mda/256kb/fake188/machine.xml
index 439a2799e..3df2717f1 100644
--- a/devices/pc/machine/5160/mda/256kb/fake188/machine.xml
+++ b/devices/pc/machine/5160/mda/256kb/fake188/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive
diff --git a/devices/pc/machine/5160/mda/256kb/machine.xml b/devices/pc/machine/5160/mda/256kb/machine.xml
index ab572c868..d61e1524c 100644
--- a/devices/pc/machine/5160/mda/256kb/machine.xml
+++ b/devices/pc/machine/5160/mda/256kb/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), MDA, 256Kb, 10Mb Drive
diff --git a/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml b/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml
index a6a2152d7..64cbbd398 100644
--- a/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml
+++ b/devices/pc/machine/5160/mda/64kb/softkbd/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC XT (Model 5160), MDA, 64K, 10Mb Drive
diff --git a/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml b/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml
index 8749d352b..90e8d014c 100644
--- a/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml
+++ b/devices/pc/machine/5170/ega/1152kb/rev1/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT (6Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk
diff --git a/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml b/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml
index f68af8bf3..f2d25d3d4 100644
--- a/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml
+++ b/devices/pc/machine/5170/ega/1152kb/rev3/backtrack/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk
diff --git a/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml b/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml
index f2c5b09f5..b7dc0fdee 100644
--- a/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml
+++ b/devices/pc/machine/5170/ega/1152kb/rev3/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk
diff --git a/devices/pc/machine/5170/ega/640kb/rev1/machine.xml b/devices/pc/machine/5170/ega/640kb/rev1/machine.xml
index 9214e2e84..31da2e92a 100644
--- a/devices/pc/machine/5170/ega/640kb/rev1/machine.xml
+++ b/devices/pc/machine/5170/ega/640kb/rev1/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT, 128K EGA, 640K RAM
diff --git a/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml b/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml
index 8d3e45f88..6f9bbf23d 100644
--- a/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml
+++ b/devices/pc/machine/5170/ega/640kb/rev1/manifest.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT References
diff --git a/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml b/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml
index 6f38617cd..dfd95a418 100644
--- a/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml
+++ b/devices/pc/machine/compaq/deskpro386/ega/2048kb/machine.xml
@@ -1,5 +1,5 @@
-
+
diff --git a/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml b/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml
index 5917df095..36dc069ee 100644
--- a/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml
+++ b/devices/pc/machine/compaq/deskpro386/other/2048kb/machine.xml
@@ -1,5 +1,5 @@
-
+
diff --git a/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml b/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml
index b03cc6587..0730063bc 100644
--- a/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml
+++ b/devices/pc/machine/compaq/deskpro386/vga/2048kb/machine.xml
@@ -1,5 +1,5 @@
-
+
diff --git a/devices/pc/machine/compaq/deskpro386/vga/4096kb/machine.xml b/devices/pc/machine/compaq/deskpro386/vga/4096kb/machine.xml
index c9d2398a3..8a28dc5c5 100644
--- a/devices/pc/machine/compaq/deskpro386/vga/4096kb/machine.xml
+++ b/devices/pc/machine/compaq/deskpro386/vga/4096kb/machine.xml
@@ -1,5 +1,5 @@
-
+
diff --git a/disks/pc/README.md b/disks/pc/README.md
index a96e94170..a9ddabd0b 100644
--- a/disks/pc/README.md
+++ b/disks/pc/README.md
@@ -9,11 +9,105 @@ IBM PC Disk Archive
Below are selected Disk Sets featuring "Ready-to-Boot" machine configurations:
-* [IBM PC (Model 5150), MDA, 64K, CP/M-86](/disks/pc/cpm/)
+* [IBM PC (Model 5150), MDA, 64K, CP/M-86](/disks/pc/cpm/1.1b/)
* [IBM PC (Model 5150), MDA, 64K, IBM Diagnostics v2.20](/disks/pc/diags/ibm/2.20/)
* [IBM PC (Model 5150), CGA, 64K, Zork I](/disks/pc/games/infocom/zork1/)
-You can browse the rest of the disk archive by type. There is no search capability at this time.
+The rest of our disk disk archive is listed below, organized by category. There is no search capability at this time.
+
+### PC-DOS (IBM)
+
+* [PC-DOS 1.00](/disks/pc/dos/ibm/1.00/)
+* [PC-DOS 1.10](/disks/pc/dos/ibm/1.10/)
+* PC-DOS 2.00
+* PC-DOS 2.10
+* PC-DOS 3.00
+* PC-DOS 3.10
+* PC-DOS 3.20
+* PC-DOS 3.30
+* PC-DOS 4.00
+* PC-DOS 5.00
+* PC-DOS 6.10
+* PC-DOS 7.00
+
+### MS-DOS (Microsoft)
+
+* MS-DOS 1.25
+* MS-DOS 2.00
+* [MS-DOS 3.20](/disks/pc/dos/microsoft/3.20/)
+* MS-DOS 3.21
+* MS-DOS 3.30
+* MS-DOS 3.31
+* [MS-DOS 4.00](/disks/pc/dos/microsoft/4.00/)
+* [MS-DOS 4.01](/disks/pc/dos/microsoft/4.01/)
+* [MS-DOS 4.0M](/disks/pc/dos/microsoft/4.0M/)
+* MS-DOS 5.00
+* MS-DOS 6.00
+* MS-DOS 6.20
+* MS-DOS 6.22
+
+### Compaq DOS
+
+* Compaq DOS 3.10
+* Compaq DOS 3.31
+
+### OS/2
+
+* [IBM OS/2 1.0](/disks/pc/os2/ibm/1.0/)
+* IBM OS/2 1.1
+* IBM OS/2 1.3
+* Misc. OS/2 Files
+
+### Microsoft Windows
+
+* Microsoft Windows 1.01
+* Microsoft Windows 1.03
+* Microsoft Windows 1.03A
+* Microsoft Windows 1.04
+* Microsoft Windows 2.01
+* Microsoft Windows 2.03
+* Microsoft Windows 3.00
+* Microsoft Windows 3.11
+* Microsoft Windows 95
+
+### Non-DOS Operating Systems
+
+* Minix 1.1
+* PC/IX 1.0
+* [Microport's AT&T UNIX System V-AT 2.3](/disks/pc/unix/microport/system-v/2.3/)
+* [SCO Xenix 8086 Operating System v2.1.3](/disks/pc/xenix/sco/8086/2.1.3/)
+
+### Applications
+
+* Lotus 1-2-3 1.0A
+* Microsoft Chart 2.02
+* Microsoft Word 3.0
+* Microsoft Word 3.1
+* Microsoft Word 5.0
+* Microsoft Word for Windows 2.0C
+
+### Borland Tools
+* Borland Pascal 3.00B
+* Borland Pascal 3.01A
+
+### Microsoft Tools
+
+* Microsoft BASIC
+* [Microsoft C 4.00](/disks/pc/tools/microsoft/c/4.00/)
+* Microsoft MASM 4.00
+* Microsoft Mouse 5.00
+* Microsoft Windows SDK 1.01
+* Microsoft Windows SDK 1.03
+* Microsoft Windows SDK 1.04
+* Microsoft Windows SDK 2.03
+* Microsoft Windows SDK 3.00
+
+We also have links to all the [Microsoft Languages NewsLetters](/disks/pc/tools/microsoft/) that were published
+in [PC Tech Journal](/pubs/pc/magazines/pctj/).
+
+### Microsoft Games
+
+* Microsoft Flight Simulator
Learn more about
[Disk Sets](https://github.com/jeffpar/pcjs/tree/gh-pages/disks/pc) in the
diff --git a/disks/pc/apps/lotus/123/1.0a/manifest.xml b/disks/pc/apps/lotus/123/1.0a/manifest.xml
index 7a6e8369d..f76ced292 100644
--- a/disks/pc/apps/lotus/123/1.0a/manifest.xml
+++ b/disks/pc/apps/lotus/123/1.0a/manifest.xml
@@ -1,5 +1,5 @@
-
+
1-2-3
1.0a
diff --git a/disks/pc/apps/microsoft/chart/2.02/manifest.xml b/disks/pc/apps/microsoft/chart/2.02/manifest.xml
index 706e1f264..2c83d3704 100644
--- a/disks/pc/apps/microsoft/chart/2.02/manifest.xml
+++ b/disks/pc/apps/microsoft/chart/2.02/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Chart
2.02
diff --git a/disks/pc/apps/microsoft/winword/2.0c/manifest.xml b/disks/pc/apps/microsoft/winword/2.0c/manifest.xml
index d687e5fd4..178c3d0d0 100644
--- a/disks/pc/apps/microsoft/winword/2.0c/manifest.xml
+++ b/disks/pc/apps/microsoft/winword/2.0c/manifest.xml
@@ -1,5 +1,5 @@
-
+
Word for Windows
2.0c
diff --git a/disks/pc/apps/microsoft/word/3.0/manifest.xml b/disks/pc/apps/microsoft/word/3.0/manifest.xml
index e359bc9b4..46297bacc 100644
--- a/disks/pc/apps/microsoft/word/3.0/manifest.xml
+++ b/disks/pc/apps/microsoft/word/3.0/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS Word
3.0
diff --git a/disks/pc/apps/microsoft/word/3.1/manifest.xml b/disks/pc/apps/microsoft/word/3.1/manifest.xml
index 8728723de..a4b0030c3 100644
--- a/disks/pc/apps/microsoft/word/3.1/manifest.xml
+++ b/disks/pc/apps/microsoft/word/3.1/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS Word
3.1
diff --git a/disks/pc/apps/microsoft/word/5.0/manifest.xml b/disks/pc/apps/microsoft/word/5.0/manifest.xml
index dc0e98bb7..f58cbb357 100644
--- a/disks/pc/apps/microsoft/word/5.0/manifest.xml
+++ b/disks/pc/apps/microsoft/word/5.0/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS Word
5.0
diff --git a/disks/pc/cpm/cpm86-disk1.json b/disks/pc/cpm/1.1b/cpm86-disk1.json
similarity index 100%
rename from disks/pc/cpm/cpm86-disk1.json
rename to disks/pc/cpm/1.1b/cpm86-disk1.json
diff --git a/disks/pc/cpm/cpm86-disk2.json b/disks/pc/cpm/1.1b/cpm86-disk2.json
similarity index 100%
rename from disks/pc/cpm/cpm86-disk2.json
rename to disks/pc/cpm/1.1b/cpm86-disk2.json
diff --git a/disks/pc/cpm/machine.md b/disks/pc/cpm/1.1b/machine.md
similarity index 82%
rename from disks/pc/cpm/machine.md
rename to disks/pc/cpm/1.1b/machine.md
index 2ee5245ae..6c4d6918d 100644
--- a/disks/pc/cpm/machine.md
+++ b/disks/pc/cpm/1.1b/machine.md
@@ -1,7 +1,7 @@
---
layout: page
title: "IBM PC (Model 5150) running CP/M-86"
-permalink: /disks/pc/cpm/
+permalink: /disks/pc/cpm/1.1b/
machines:
- type: pc
id: ibm5150
diff --git a/disks/pc/cpm/machine.xml b/disks/pc/cpm/1.1b/machine.xml
similarity index 82%
rename from disks/pc/cpm/machine.xml
rename to disks/pc/cpm/1.1b/machine.xml
index c6fabf743..4cc267911 100644
--- a/disks/pc/cpm/machine.xml
+++ b/disks/pc/cpm/1.1b/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150) running CP/M-86
@@ -12,11 +12,11 @@
Reset
-
+
None
-
+
Load
diff --git a/disks/pc/cpm/manifest.xml b/disks/pc/cpm/1.1b/manifest.xml
similarity index 61%
rename from disks/pc/cpm/manifest.xml
rename to disks/pc/cpm/1.1b/manifest.xml
index 42bb5e10b..93f321d13 100644
--- a/disks/pc/cpm/manifest.xml
+++ b/disks/pc/cpm/1.1b/manifest.xml
@@ -1,5 +1,5 @@
-
+
CP/M-86
1.1B
@@ -8,11 +8,11 @@
Digital Research
Eagle Computer
May 20, 1983
-
-
+
+
CP/M-86 (Disk 1)
-
+
CP/M-86 (Disk 2)
diff --git a/disks/pc/cpm/screenshot.png b/disks/pc/cpm/1.1b/screenshot.png
similarity index 100%
rename from disks/pc/cpm/screenshot.png
rename to disks/pc/cpm/1.1b/screenshot.png
diff --git a/disks/pc/cpm/thumbnail.jpg b/disks/pc/cpm/1.1b/thumbnail.jpg
similarity index 100%
rename from disks/pc/cpm/thumbnail.jpg
rename to disks/pc/cpm/1.1b/thumbnail.jpg
diff --git a/disks/pc/diags/ibm/2.20/machine.xml b/disks/pc/diags/ibm/2.20/machine.xml
index c530cb77c..6e32bb11e 100644
--- a/disks/pc/diags/ibm/2.20/machine.xml
+++ b/disks/pc/diags/ibm/2.20/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150) running IBM Advanced Diagnostics 2.20
diff --git a/disks/pc/diags/ibm/2.20/manifest.xml b/disks/pc/diags/ibm/2.20/manifest.xml
index 0383191c9..82ce758a5 100644
--- a/disks/pc/diags/ibm/2.20/manifest.xml
+++ b/disks/pc/diags/ibm/2.20/manifest.xml
@@ -1,5 +1,5 @@
-
+
IBM Advanced Diagnostics
2.20
diff --git a/disks/pc/dos/compaq/3.10/manifest.xml b/disks/pc/dos/compaq/3.10/manifest.xml
index c9335c2a8..3f93d4ece 100644
--- a/disks/pc/dos/compaq/3.10/manifest.xml
+++ b/disks/pc/dos/compaq/3.10/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
3.10
diff --git a/disks/pc/dos/compaq/3.31/manifest.xml b/disks/pc/dos/compaq/3.31/manifest.xml
index 447119463..802f391bb 100644
--- a/disks/pc/dos/compaq/3.31/manifest.xml
+++ b/disks/pc/dos/compaq/3.31/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
3.31
diff --git a/disks/pc/dos/ibm/1.00/README.md b/disks/pc/dos/ibm/1.00/README.md
index 81e63bf05..3c6a205bb 100644
--- a/disks/pc/dos/ibm/1.00/README.md
+++ b/disks/pc/dos/ibm/1.00/README.md
@@ -1,9 +1,18 @@
+---
+layout: page
+title: PC-DOS 1.00
+permalink: /disks/pc/dos/ibm/1.00/
+machines:
+ - type: pc
+ id: ibm5150-pcdos100
+---
+
PC-DOS 1.00
---
The PCjs machine below is running PC-DOS 1.00.
-[IBM Model 5150](machine.xml "PCjs:ibm5150-pcdos100")
+{% include machine.html id="ibm5150-pcdos100" %}
Vital Statistics
---
diff --git a/disks/pc/dos/ibm/1.00/machine.xml b/disks/pc/dos/ibm/1.00/machine.xml
index b6ac3488e..e3294f77b 100644
--- a/disks/pc/dos/ibm/1.00/machine.xml
+++ b/disks/pc/dos/ibm/1.00/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150) with Monochrome Display
diff --git a/disks/pc/dos/ibm/1.00/manifest.xml b/disks/pc/dos/ibm/1.00/manifest.xml
index 0808e08e5..3bab94140 100644
--- a/disks/pc/dos/ibm/1.00/manifest.xml
+++ b/disks/pc/dos/ibm/1.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
1.00
diff --git a/disks/pc/dos/ibm/1.10/README.md b/disks/pc/dos/ibm/1.10/README.md
index 4bec90a9d..63f50682d 100644
--- a/disks/pc/dos/ibm/1.10/README.md
+++ b/disks/pc/dos/ibm/1.10/README.md
@@ -1,9 +1,18 @@
+---
+layout: page
+title: PC-DOS 1.10
+permalink: /disks/pc/dos/ibm/1.10/
+machines:
+ - type: pc
+ id: ibm5150-pcdos110
+---
+
PC-DOS 1.10
---
The PCjs machine below is running PC-DOS 1.10.
-[IBM Model 5150](machine.xml "PCjs:ibm5150-pcdos110")
+{% include machine.html id="ibm5150-pcdos110" %}
Vital Statistics
---
diff --git a/disks/pc/dos/ibm/1.10/machine.xml b/disks/pc/dos/ibm/1.10/machine.xml
index 95b306354..2cbeaff15 100644
--- a/disks/pc/dos/ibm/1.10/machine.xml
+++ b/disks/pc/dos/ibm/1.10/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150) with Monochrome Display
diff --git a/disks/pc/dos/ibm/1.10/manifest.xml b/disks/pc/dos/ibm/1.10/manifest.xml
index e040af83d..7a76d26e0 100644
--- a/disks/pc/dos/ibm/1.10/manifest.xml
+++ b/disks/pc/dos/ibm/1.10/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
1.10
diff --git a/disks/pc/dos/ibm/2.00/manifest.xml b/disks/pc/dos/ibm/2.00/manifest.xml
index 244c94ef7..4f5b78033 100644
--- a/disks/pc/dos/ibm/2.00/manifest.xml
+++ b/disks/pc/dos/ibm/2.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
2.00
diff --git a/disks/pc/dos/ibm/2.10/manifest.xml b/disks/pc/dos/ibm/2.10/manifest.xml
index 3d161c710..4ca5eae53 100644
--- a/disks/pc/dos/ibm/2.10/manifest.xml
+++ b/disks/pc/dos/ibm/2.10/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
2.10
diff --git a/disks/pc/dos/ibm/3.00/manifest.xml b/disks/pc/dos/ibm/3.00/manifest.xml
index f52697f75..3259ea1c0 100644
--- a/disks/pc/dos/ibm/3.00/manifest.xml
+++ b/disks/pc/dos/ibm/3.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
3.00
diff --git a/disks/pc/dos/ibm/3.10/manifest.xml b/disks/pc/dos/ibm/3.10/manifest.xml
index d07a2af81..963a48cd4 100644
--- a/disks/pc/dos/ibm/3.10/manifest.xml
+++ b/disks/pc/dos/ibm/3.10/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
3.10
diff --git a/disks/pc/dos/ibm/3.20/manifest.xml b/disks/pc/dos/ibm/3.20/manifest.xml
index c1a9a3e7b..3cd6871fd 100644
--- a/disks/pc/dos/ibm/3.20/manifest.xml
+++ b/disks/pc/dos/ibm/3.20/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
3.20
diff --git a/disks/pc/dos/ibm/3.30/manifest.xml b/disks/pc/dos/ibm/3.30/manifest.xml
index b43cb012d..d9b0f3eac 100644
--- a/disks/pc/dos/ibm/3.30/manifest.xml
+++ b/disks/pc/dos/ibm/3.30/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
3.30
diff --git a/disks/pc/dos/ibm/4.00/manifest.xml b/disks/pc/dos/ibm/4.00/manifest.xml
index 3606a6369..033d24e90 100644
--- a/disks/pc/dos/ibm/4.00/manifest.xml
+++ b/disks/pc/dos/ibm/4.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
4.00
diff --git a/disks/pc/dos/ibm/5.00/manifest.xml b/disks/pc/dos/ibm/5.00/manifest.xml
index acafbd2ce..9cbe06752 100644
--- a/disks/pc/dos/ibm/5.00/manifest.xml
+++ b/disks/pc/dos/ibm/5.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
5.00
diff --git a/disks/pc/dos/ibm/6.10/manifest.xml b/disks/pc/dos/ibm/6.10/manifest.xml
index dd4756724..25dc02f46 100644
--- a/disks/pc/dos/ibm/6.10/manifest.xml
+++ b/disks/pc/dos/ibm/6.10/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
6.10
diff --git a/disks/pc/dos/ibm/7.00/manifest.xml b/disks/pc/dos/ibm/7.00/manifest.xml
index 03860209a..033f9c88d 100644
--- a/disks/pc/dos/ibm/7.00/manifest.xml
+++ b/disks/pc/dos/ibm/7.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
PC-DOS
7.00
diff --git a/disks/pc/dos/microsoft/1.25/manifest.xml b/disks/pc/dos/microsoft/1.25/manifest.xml
index 03ed17144..81c98669b 100644
--- a/disks/pc/dos/microsoft/1.25/manifest.xml
+++ b/disks/pc/dos/microsoft/1.25/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
1.25
diff --git a/disks/pc/dos/microsoft/2.00/manifest.xml b/disks/pc/dos/microsoft/2.00/manifest.xml
index f2c154d27..65895e298 100644
--- a/disks/pc/dos/microsoft/2.00/manifest.xml
+++ b/disks/pc/dos/microsoft/2.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
2.00
diff --git a/disks/pc/dos/microsoft/3.20/README.md b/disks/pc/dos/microsoft/3.20/README.md
index 1deda0cb6..fa59dd0c2 100644
--- a/disks/pc/dos/microsoft/3.20/README.md
+++ b/disks/pc/dos/microsoft/3.20/README.md
@@ -1,3 +1,9 @@
+---
+layout: page
+title: MS-DOS 3.20
+permalink: /disks/pc/dos/microsoft/3.20/
+---
+
MS-DOS 3.20
---
diff --git a/disks/pc/dos/microsoft/3.20/manifest.xml b/disks/pc/dos/microsoft/3.20/manifest.xml
index 3aea4f2aa..0a9cb037b 100644
--- a/disks/pc/dos/microsoft/3.20/manifest.xml
+++ b/disks/pc/dos/microsoft/3.20/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
3.20
diff --git a/disks/pc/dos/microsoft/3.21/manifest.xml b/disks/pc/dos/microsoft/3.21/manifest.xml
index 131e8bcac..713bc019b 100644
--- a/disks/pc/dos/microsoft/3.21/manifest.xml
+++ b/disks/pc/dos/microsoft/3.21/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
3.21
diff --git a/disks/pc/dos/microsoft/3.30/manifest.xml b/disks/pc/dos/microsoft/3.30/manifest.xml
index 08dd46683..c06b8874e 100644
--- a/disks/pc/dos/microsoft/3.30/manifest.xml
+++ b/disks/pc/dos/microsoft/3.30/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
3.30
diff --git a/disks/pc/dos/microsoft/3.31/manifest.xml b/disks/pc/dos/microsoft/3.31/manifest.xml
index 69f78749d..ec7029f8e 100644
--- a/disks/pc/dos/microsoft/3.31/manifest.xml
+++ b/disks/pc/dos/microsoft/3.31/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
3.31
diff --git a/disks/pc/dos/microsoft/4.00/README.md b/disks/pc/dos/microsoft/4.00/README.md
index ec5081fde..6a9bb1323 100644
--- a/disks/pc/dos/microsoft/4.00/README.md
+++ b/disks/pc/dos/microsoft/4.00/README.md
@@ -1,9 +1,18 @@
+---
+layout: page
+title: MS-DOS 4.00
+permalink: /disks/pc/dos/microsoft/4.00/
+machines:
+ - type: pc
+ id: ibm5170-msdos400
+---
+
MS-DOS 4.00
---
The PCjs machine below is running PC-DOS 4.00.
-[IBM Model 5170](machine.xml "PCjs:ibm5170-msdos400")
+{% include machine.html id="ibm5170-msdos400" %}
Vital Statistics
---
diff --git a/disks/pc/dos/microsoft/4.00/machine.xml b/disks/pc/dos/microsoft/4.00/machine.xml
index 025429c56..11756b64f 100644
--- a/disks/pc/dos/microsoft/4.00/machine.xml
+++ b/disks/pc/dos/microsoft/4.00/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT, 128K EGA, 640K RAM
diff --git a/disks/pc/dos/microsoft/4.00/manifest.xml b/disks/pc/dos/microsoft/4.00/manifest.xml
index 09846f48e..5fc6aafc9 100644
--- a/disks/pc/dos/microsoft/4.00/manifest.xml
+++ b/disks/pc/dos/microsoft/4.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
4.00
diff --git a/disks/pc/dos/microsoft/4.01/720K/manifest.xml b/disks/pc/dos/microsoft/4.01/720K/manifest.xml
index 5f82305de..09d9fee50 100644
--- a/disks/pc/dos/microsoft/4.01/720K/manifest.xml
+++ b/disks/pc/dos/microsoft/4.01/720K/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
4.01
diff --git a/disks/pc/dos/microsoft/4.01/README.md b/disks/pc/dos/microsoft/4.01/README.md
index 691965d46..8b3608a5f 100644
--- a/disks/pc/dos/microsoft/4.01/README.md
+++ b/disks/pc/dos/microsoft/4.01/README.md
@@ -1,9 +1,18 @@
+---
+layout: page
+title: MS-DOS 4.01
+permalink: /disks/pc/dos/microsoft/4.01/
+machines:
+ - type: pc
+ id: ibm5170-msdos401
+---
+
MS-DOS 4.01
---
The PCjs machine below is running PC-DOS 4.01.
-[IBM Model 5170](machine.xml "PCjs:ibm5170-msdos401")
+{% include machine.html id="ibm5170-msdos401" %}
Vital Statistics
---
diff --git a/disks/pc/dos/microsoft/4.01/machine.xml b/disks/pc/dos/microsoft/4.01/machine.xml
index 203ff6d33..60f214408 100644
--- a/disks/pc/dos/microsoft/4.01/machine.xml
+++ b/disks/pc/dos/microsoft/4.01/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT, 128K EGA, 640K RAM
diff --git a/disks/pc/dos/microsoft/4.01/manifest.xml b/disks/pc/dos/microsoft/4.01/manifest.xml
index 1c7751166..7016913bd 100644
--- a/disks/pc/dos/microsoft/4.01/manifest.xml
+++ b/disks/pc/dos/microsoft/4.01/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
4.01
diff --git a/disks/pc/dos/microsoft/4.0M/README.md b/disks/pc/dos/microsoft/4.0M/README.md
index 68815aaa9..29a6418f4 100644
--- a/disks/pc/dos/microsoft/4.0M/README.md
+++ b/disks/pc/dos/microsoft/4.0M/README.md
@@ -1,3 +1,13 @@
+---
+layout: page
+title: Multitasking MS-DOS 4.00
+permalink: /disks/pc/dos/microsoft/4.0M/
+machines:
+ - type: pc-dbg
+ id: ibm5160
+ config: /devices/pc/machine/5160/cga/640kb/dos400m/machine.xml
+---
+
Multitasking MS-DOS 4.00
---
@@ -14,7 +24,7 @@ differentiate these disk images from those of the official MS-DOS 4.00 release i
The [IBM Model 5160](/devices/pc/machine/) machine configuration below boots MS-DOS 4.0M. To access the MS-DOS
"Session Manager" after it's booted, tap the **Alt** key.
-[IBM Model 5160](/devices/pc/machine/5160/cga/640kb/dos400m/ "PCjs:ibm5160:::debugger")
+{% include machine.html id="ibm5160" %}
Additional Information From [PC DOS Retro](https://sites.google.com/site/pcdosretro/multitaskingdos4) by Vernon Brooks
---
diff --git a/disks/pc/dos/microsoft/4.0M/manifest.xml b/disks/pc/dos/microsoft/4.0M/manifest.xml
index c4c4336ff..a5fe6e651 100644
--- a/disks/pc/dos/microsoft/4.0M/manifest.xml
+++ b/disks/pc/dos/microsoft/4.0M/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
4.0M
diff --git a/disks/pc/dos/microsoft/5.00/manifest.xml b/disks/pc/dos/microsoft/5.00/manifest.xml
index cddf290f5..0827f68e1 100644
--- a/disks/pc/dos/microsoft/5.00/manifest.xml
+++ b/disks/pc/dos/microsoft/5.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
5.00
diff --git a/disks/pc/dos/microsoft/6.00/manifest.xml b/disks/pc/dos/microsoft/6.00/manifest.xml
index d1f14352b..f40c6f36b 100644
--- a/disks/pc/dos/microsoft/6.00/manifest.xml
+++ b/disks/pc/dos/microsoft/6.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
6.00
diff --git a/disks/pc/dos/microsoft/6.20/manifest.xml b/disks/pc/dos/microsoft/6.20/manifest.xml
index b192a92a0..7ce740697 100644
--- a/disks/pc/dos/microsoft/6.20/manifest.xml
+++ b/disks/pc/dos/microsoft/6.20/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
6.20
diff --git a/disks/pc/dos/microsoft/6.22/manifest.xml b/disks/pc/dos/microsoft/6.22/manifest.xml
index b10d57a32..2731bd4b2 100644
--- a/disks/pc/dos/microsoft/6.22/manifest.xml
+++ b/disks/pc/dos/microsoft/6.22/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS-DOS
6.22
diff --git a/disks/pc/games/infocom/hhiker/manifest.xml b/disks/pc/games/infocom/hhiker/manifest.xml
index 5eee8d52b..b53bf02b5 100644
--- a/disks/pc/games/infocom/hhiker/manifest.xml
+++ b/disks/pc/games/infocom/hhiker/manifest.xml
@@ -1,5 +1,5 @@
-
+
The Hitchhiker's Guide to the Galaxy
diff --git a/disks/pc/games/infocom/machine-debug.xml b/disks/pc/games/infocom/machine-debug.xml
index fe8e8c1cd..b8ec4f8c0 100644
--- a/disks/pc/games/infocom/machine-debug.xml
+++ b/disks/pc/games/infocom/machine-debug.xml
@@ -1,5 +1,5 @@
-
+
IBM PC Model 5150 (CGA, 64K)
diff --git a/disks/pc/games/infocom/machine.xml b/disks/pc/games/infocom/machine.xml
index 93e39425e..352a48c1c 100644
--- a/disks/pc/games/infocom/machine.xml
+++ b/disks/pc/games/infocom/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC Model 5150 (CGA, 64K)
diff --git a/disks/pc/games/infocom/planet/manifest.xml b/disks/pc/games/infocom/planet/manifest.xml
index 7d457464e..2dac56c4c 100644
--- a/disks/pc/games/infocom/planet/manifest.xml
+++ b/disks/pc/games/infocom/planet/manifest.xml
@@ -1,5 +1,5 @@
-
+
Planetfall
diff --git a/disks/pc/games/infocom/zork1/debugger/machine.xml b/disks/pc/games/infocom/zork1/debugger/machine.xml
index 14443dcb8..f06433f23 100644
--- a/disks/pc/games/infocom/zork1/debugger/machine.xml
+++ b/disks/pc/games/infocom/zork1/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
Zork I (IBM PC Model 5150)
diff --git a/disks/pc/games/infocom/zork1/manifest.xml b/disks/pc/games/infocom/zork1/manifest.xml
index 90d277a5f..4adac7dcf 100644
--- a/disks/pc/games/infocom/zork1/manifest.xml
+++ b/disks/pc/games/infocom/zork1/manifest.xml
@@ -1,5 +1,5 @@
-
+
Zork I
diff --git a/disks/pc/games/infocom/zork2/manifest.xml b/disks/pc/games/infocom/zork2/manifest.xml
index be10c87f7..4ad3151b2 100644
--- a/disks/pc/games/infocom/zork2/manifest.xml
+++ b/disks/pc/games/infocom/zork2/manifest.xml
@@ -1,5 +1,5 @@
-
+
Zork II
diff --git a/disks/pc/games/infocom/zork3/manifest.xml b/disks/pc/games/infocom/zork3/manifest.xml
index d5cf83bf6..e67f961df 100644
--- a/disks/pc/games/infocom/zork3/manifest.xml
+++ b/disks/pc/games/infocom/zork3/manifest.xml
@@ -1,5 +1,5 @@
-
+
Zork III
diff --git a/disks/pc/games/microsoft/adventure/machine.xml b/disks/pc/games/microsoft/adventure/machine.xml
index e9236d13e..681c323b9 100644
--- a/disks/pc/games/microsoft/adventure/machine.xml
+++ b/disks/pc/games/microsoft/adventure/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC (Model 5150) running Microsoft Adventure
diff --git a/disks/pc/games/microsoft/adventure/manifest.xml b/disks/pc/games/microsoft/adventure/manifest.xml
index 791def3f9..1bd09e934 100644
--- a/disks/pc/games/microsoft/adventure/manifest.xml
+++ b/disks/pc/games/microsoft/adventure/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Adventure
1.00
diff --git a/disks/pc/games/microsoft/flightsim/manifest.xml b/disks/pc/games/microsoft/flightsim/manifest.xml
index af375c166..c49732c9b 100644
--- a/disks/pc/games/microsoft/flightsim/manifest.xml
+++ b/disks/pc/games/microsoft/flightsim/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Flight Simulator
diff --git a/disks/pc/library.xml b/disks/pc/library.xml
index 3c7b18e61..5ae315bf1 100644
--- a/disks/pc/library.xml
+++ b/disks/pc/library.xml
@@ -3,6 +3,7 @@
None
+
@@ -45,7 +46,7 @@
-
+
diff --git a/disks/pc/minix/1.1/manifest.xml b/disks/pc/minix/1.1/manifest.xml
index 4ba663229..7db7a2b78 100644
--- a/disks/pc/minix/1.1/manifest.xml
+++ b/disks/pc/minix/1.1/manifest.xml
@@ -1,5 +1,5 @@
-
+
MINIX
1.1
diff --git a/disks/pc/os2/ibm/1.0/machine.md b/disks/pc/os2/ibm/1.0/README.md
similarity index 78%
rename from disks/pc/os2/ibm/1.0/machine.md
rename to disks/pc/os2/ibm/1.0/README.md
index 2b84921fe..8df7ac332 100644
--- a/disks/pc/os2/ibm/1.0/machine.md
+++ b/disks/pc/os2/ibm/1.0/README.md
@@ -1,6 +1,6 @@
---
layout: page
-title: "IBM PC AT (8Mhz) running OS/2 1.0"
+title: IBM OS/2 1.0
permalink: /disks/pc/os2/ibm/1.0/
machines:
- type: pc-dbg
diff --git a/disks/pc/os2/ibm/1.0/machine.xml b/disks/pc/os2/ibm/1.0/machine.xml
index 79d3c4176..a6516a119 100644
--- a/disks/pc/os2/ibm/1.0/machine.xml
+++ b/disks/pc/os2/ibm/1.0/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT (8Mhz), 128Kb EGA, 2Mb RAM, 20Mb Hard Disk
diff --git a/disks/pc/os2/ibm/1.0/manifest.xml b/disks/pc/os2/ibm/1.0/manifest.xml
index 215bfbff0..93d58ccdf 100644
--- a/disks/pc/os2/ibm/1.0/manifest.xml
+++ b/disks/pc/os2/ibm/1.0/manifest.xml
@@ -1,5 +1,5 @@
-
+
IBM OS/2 1.0
diff --git a/disks/pc/os2/ibm/1.1/manifest.xml b/disks/pc/os2/ibm/1.1/manifest.xml
index fb677e41b..1c630eab0 100644
--- a/disks/pc/os2/ibm/1.1/manifest.xml
+++ b/disks/pc/os2/ibm/1.1/manifest.xml
@@ -1,5 +1,5 @@
-
+
IBM OS/2 1.1
diff --git a/disks/pc/os2/ibm/1.3/manifest.xml b/disks/pc/os2/ibm/1.3/manifest.xml
index a05e635ce..122ba5b91 100644
--- a/disks/pc/os2/ibm/1.3/manifest.xml
+++ b/disks/pc/os2/ibm/1.3/manifest.xml
@@ -1,5 +1,5 @@
-
+
IBM OS/2 1.3
diff --git a/disks/pc/os2/misc/1.0/debugger/machine.xml b/disks/pc/os2/misc/1.0/debugger/machine.xml
index aef887b8a..6a1907063 100644
--- a/disks/pc/os2/misc/1.0/debugger/machine.xml
+++ b/disks/pc/os2/misc/1.0/debugger/machine.xml
@@ -1,5 +1,5 @@
-
+
IBM PC AT (8Mhz), 128Kb EGA, 1152Kb RAM, 20Mb Hard Disk
diff --git a/disks/pc/os2/misc/manifest.xml b/disks/pc/os2/misc/manifest.xml
index 24250d9f6..703ebb487 100644
--- a/disks/pc/os2/misc/manifest.xml
+++ b/disks/pc/os2/misc/manifest.xml
@@ -1,5 +1,5 @@
-
+
OS/2 Miscellaneous Disks
diff --git a/disks/pc/tools/borland/pascal/3.00b/README.md b/disks/pc/tools/borland/pascal/3.00b/README.md
deleted file mode 100644
index 98de9b645..000000000
--- a/disks/pc/tools/borland/pascal/3.00b/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-Turbo Pascal 3.00B
----
-
-[Manifest](manifest.xml) updated using:
-
- diskdump --disk=static/TURBO-PASCAL-300B.img --format=json --output=TURBO-PASCAL-300B.json --manifest
-
-The original diskettes are not part of the repository/website.
diff --git a/disks/pc/tools/borland/pascal/3.00b/manifest.xml b/disks/pc/tools/borland/pascal/3.00b/manifest.xml
index 7649ba521..715c23f8d 100644
--- a/disks/pc/tools/borland/pascal/3.00b/manifest.xml
+++ b/disks/pc/tools/borland/pascal/3.00b/manifest.xml
@@ -1,5 +1,5 @@
-
+
Borland Turbo Pascal
diff --git a/disks/pc/tools/borland/pascal/3.01a/manifest.xml b/disks/pc/tools/borland/pascal/3.01a/manifest.xml
index 1b9befbad..4ef22a1e2 100644
--- a/disks/pc/tools/borland/pascal/3.01a/manifest.xml
+++ b/disks/pc/tools/borland/pascal/3.01a/manifest.xml
@@ -1,5 +1,5 @@
-
+
Borland Turbo Pascal
diff --git a/disks/pc/tools/microsoft/README.md b/disks/pc/tools/microsoft/README.md
index e87c318f7..5b9c92536 100644
--- a/disks/pc/tools/microsoft/README.md
+++ b/disks/pc/tools/microsoft/README.md
@@ -1,7 +1,11 @@
-Microsoft Languages and Tools
+---
+layout: page
+title: Microsoft Languages and Tools
+permalink: /disks/pc/tools/microsoft/
---
-Browse an assortment of old Microsoft software development tools on the left.
+Microsoft Languages and Tools
+---
Below are all the "Microsoft Languages NewsLetters" that Microsoft published in
[PC Tech Journal](/pubs/pc/magazines/pctj/), before they decided to focus exclusively
diff --git a/disks/pc/tools/microsoft/basic/manifest.xml b/disks/pc/tools/microsoft/basic/manifest.xml
index 65bab59c4..cacc72347 100644
--- a/disks/pc/tools/microsoft/basic/manifest.xml
+++ b/disks/pc/tools/microsoft/basic/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS BASIC
diff --git a/disks/pc/tools/microsoft/c/4.00/README.md b/disks/pc/tools/microsoft/c/4.00/README.md
index 66827312c..a7b4a9084 100644
--- a/disks/pc/tools/microsoft/c/4.00/README.md
+++ b/disks/pc/tools/microsoft/c/4.00/README.md
@@ -1,3 +1,9 @@
+---
+layout: page
+title: Microsoft C Compiler v4.00
+permalink: /disks/pc/tools/microsoft/c/4.00/
+---
+
Microsoft C Compiler v4.00
---
@@ -210,9 +216,3 @@ Microsoft C Compiler v4.00
CHELLO DEF 311 7-18-86 4:00a
LHELLO DEF 262 7-18-86 4:00a
19 File(s) 11264 bytes free
-
-[Manifest](manifest.xml) was updated using:
-
- find -L static -name "*" -type f -exec node http://static.pcjs.org/../../modules/diskdump/bin/diskdump --format=json --output=. --manifest --disk={} \;
-
-The original diskettes are not part of the repository/website.
diff --git a/disks/pc/tools/microsoft/c/4.00/manifest.xml b/disks/pc/tools/microsoft/c/4.00/manifest.xml
index 12335dd46..a09cd4fe9 100644
--- a/disks/pc/tools/microsoft/c/4.00/manifest.xml
+++ b/disks/pc/tools/microsoft/c/4.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft C Compiler
4.00
diff --git a/disks/pc/tools/microsoft/masm/4.00/manifest.xml b/disks/pc/tools/microsoft/masm/4.00/manifest.xml
index 80aad7f6b..ca6df024f 100644
--- a/disks/pc/tools/microsoft/masm/4.00/manifest.xml
+++ b/disks/pc/tools/microsoft/masm/4.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Macro Assember
Tool
diff --git a/disks/pc/tools/microsoft/mouse/5.00/manifest.xml b/disks/pc/tools/microsoft/mouse/5.00/manifest.xml
index ff3904090..d055ee807 100644
--- a/disks/pc/tools/microsoft/mouse/5.00/manifest.xml
+++ b/disks/pc/tools/microsoft/mouse/5.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
MS Mouse
5.00
diff --git a/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml
index fd8114073..0fea83c48 100644
--- a/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml
+++ b/disks/pc/tools/microsoft/windows/sdk/1.01/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows 1.01 SDK
diff --git a/disks/pc/tools/microsoft/windows/sdk/1.03/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/1.03/manifest.xml
index 2f6ed8515..8e24cf8f2 100644
--- a/disks/pc/tools/microsoft/windows/sdk/1.03/manifest.xml
+++ b/disks/pc/tools/microsoft/windows/sdk/1.03/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows 1.03 SDK
diff --git a/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml
index f3e95f20f..217a74e73 100644
--- a/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml
+++ b/disks/pc/tools/microsoft/windows/sdk/1.04/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows 1.04 SDK
os2museum.com
diff --git a/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml
index 8a8b5dce8..c21f97fe1 100644
--- a/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml
+++ b/disks/pc/tools/microsoft/windows/sdk/2.03/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows 2.03 SDK
os2museum.com
diff --git a/disks/pc/tools/microsoft/windows/sdk/3.00/manifest.xml b/disks/pc/tools/microsoft/windows/sdk/3.00/manifest.xml
index 7115fb1ca..f8ae2d91d 100644
--- a/disks/pc/tools/microsoft/windows/sdk/3.00/manifest.xml
+++ b/disks/pc/tools/microsoft/windows/sdk/3.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows 3.0 SDK
diff --git a/disks/pc/unix/ibm/pcix/01MAINT.json b/disks/pc/unix/ibm/pcix/1.0/01MAINT.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/01MAINT.json
rename to disks/pc/unix/ibm/pcix/1.0/01MAINT.json
diff --git a/disks/pc/unix/ibm/pcix/02CORE1.json b/disks/pc/unix/ibm/pcix/1.0/02CORE1.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/02CORE1.json
rename to disks/pc/unix/ibm/pcix/1.0/02CORE1.json
diff --git a/disks/pc/unix/ibm/pcix/03CORE2.json b/disks/pc/unix/ibm/pcix/1.0/03CORE2.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/03CORE2.json
rename to disks/pc/unix/ibm/pcix/1.0/03CORE2.json
diff --git a/disks/pc/unix/ibm/pcix/04CORE3.json b/disks/pc/unix/ibm/pcix/1.0/04CORE3.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/04CORE3.json
rename to disks/pc/unix/ibm/pcix/1.0/04CORE3.json
diff --git a/disks/pc/unix/ibm/pcix/05CORE4.json b/disks/pc/unix/ibm/pcix/1.0/05CORE4.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/05CORE4.json
rename to disks/pc/unix/ibm/pcix/1.0/05CORE4.json
diff --git a/disks/pc/unix/ibm/pcix/06CORE5.json b/disks/pc/unix/ibm/pcix/1.0/06CORE5.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/06CORE5.json
rename to disks/pc/unix/ibm/pcix/1.0/06CORE5.json
diff --git a/disks/pc/unix/ibm/pcix/07CORE6.json b/disks/pc/unix/ibm/pcix/1.0/07CORE6.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/07CORE6.json
rename to disks/pc/unix/ibm/pcix/1.0/07CORE6.json
diff --git a/disks/pc/unix/ibm/pcix/08CORE7.json b/disks/pc/unix/ibm/pcix/1.0/08CORE7.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/08CORE7.json
rename to disks/pc/unix/ibm/pcix/1.0/08CORE7.json
diff --git a/disks/pc/unix/ibm/pcix/09CORE8.json b/disks/pc/unix/ibm/pcix/1.0/09CORE8.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/09CORE8.json
rename to disks/pc/unix/ibm/pcix/1.0/09CORE8.json
diff --git a/disks/pc/unix/ibm/pcix/10PROG1.json b/disks/pc/unix/ibm/pcix/1.0/10PROG1.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/10PROG1.json
rename to disks/pc/unix/ibm/pcix/1.0/10PROG1.json
diff --git a/disks/pc/unix/ibm/pcix/11PROG2.json b/disks/pc/unix/ibm/pcix/1.0/11PROG2.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/11PROG2.json
rename to disks/pc/unix/ibm/pcix/1.0/11PROG2.json
diff --git a/disks/pc/unix/ibm/pcix/12PROG3.json b/disks/pc/unix/ibm/pcix/1.0/12PROG3.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/12PROG3.json
rename to disks/pc/unix/ibm/pcix/1.0/12PROG3.json
diff --git a/disks/pc/unix/ibm/pcix/13PROG4.json b/disks/pc/unix/ibm/pcix/1.0/13PROG4.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/13PROG4.json
rename to disks/pc/unix/ibm/pcix/1.0/13PROG4.json
diff --git a/disks/pc/unix/ibm/pcix/14COMMS.json b/disks/pc/unix/ibm/pcix/1.0/14COMMS.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/14COMMS.json
rename to disks/pc/unix/ibm/pcix/1.0/14COMMS.json
diff --git a/disks/pc/unix/ibm/pcix/15SCCS.json b/disks/pc/unix/ibm/pcix/1.0/15SCCS.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/15SCCS.json
rename to disks/pc/unix/ibm/pcix/1.0/15SCCS.json
diff --git a/disks/pc/unix/ibm/pcix/16TEXT.json b/disks/pc/unix/ibm/pcix/1.0/16TEXT.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/16TEXT.json
rename to disks/pc/unix/ibm/pcix/1.0/16TEXT.json
diff --git a/disks/pc/unix/ibm/pcix/17SPECIA.json b/disks/pc/unix/ibm/pcix/1.0/17SPECIA.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/17SPECIA.json
rename to disks/pc/unix/ibm/pcix/1.0/17SPECIA.json
diff --git a/disks/pc/unix/ibm/pcix/18GAMES.json b/disks/pc/unix/ibm/pcix/1.0/18GAMES.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/18GAMES.json
rename to disks/pc/unix/ibm/pcix/1.0/18GAMES.json
diff --git a/disks/pc/unix/ibm/pcix/19ACCNT.json b/disks/pc/unix/ibm/pcix/1.0/19ACCNT.json
similarity index 100%
rename from disks/pc/unix/ibm/pcix/19ACCNT.json
rename to disks/pc/unix/ibm/pcix/1.0/19ACCNT.json
diff --git a/disks/pc/unix/ibm/pcix/1.0/manifest.xml b/disks/pc/unix/ibm/pcix/1.0/manifest.xml
new file mode 100644
index 000000000..146362add
--- /dev/null
+++ b/disks/pc/unix/ibm/pcix/1.0/manifest.xml
@@ -0,0 +1,62 @@
+
+
+
+ PC/IX 1.0
+
+ PC/IX 1.0 (MAINT)
+
+
+ PC/IX 1.0 (CORE1)
+
+
+ PC/IX 1.0 (CORE2)
+
+
+ PC/IX 1.0 (CORE3)
+
+
+ PC/IX 1.0 (CORE4)
+
+
+ PC/IX 1.0 (CORE5)
+
+
+ PC/IX 1.0 (CORE6)
+
+
+ PC/IX 1.0 (CORE7)
+
+
+ PC/IX 1.0 (CORE8)
+
+
+ PC/IX 1.0 (PROG1)
+
+
+ PC/IX 1.0 (PROG2)
+
+
+ PC/IX 1.0 (PROG3)
+
+
+ PC/IX 1.0 (PROG4)
+
+
+ PC/IX 1.0 (COMMS)
+
+
+ PC/IX 1.0 (SCCS)
+
+
+ PC/IX 1.0 (TEXT)
+
+
+ PC/IX 1.0 (SPECIA)
+
+
+ PC/IX 1.0 (GAMES)
+
+
+ PC/IX 1.0 (ACCNT)
+
+
diff --git a/disks/pc/unix/ibm/pcix/manifest.xml b/disks/pc/unix/ibm/pcix/manifest.xml
deleted file mode 100644
index c19cb0f6c..000000000
--- a/disks/pc/unix/ibm/pcix/manifest.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
- PC/IX 1.0
-
- PC/IX 1.0 (MAINT)
-
-
- PC/IX 1.0 (CORE1)
-
-
- PC/IX 1.0 (CORE2)
-
-
- PC/IX 1.0 (CORE3)
-
-
- PC/IX 1.0 (CORE4)
-
-
- PC/IX 1.0 (CORE5)
-
-
- PC/IX 1.0 (CORE6)
-
-
- PC/IX 1.0 (CORE7)
-
-
- PC/IX 1.0 (CORE8)
-
-
- PC/IX 1.0 (PROG1)
-
-
- PC/IX 1.0 (PROG2)
-
-
- PC/IX 1.0 (PROG3)
-
-
- PC/IX 1.0 (PROG4)
-
-
- PC/IX 1.0 (COMMS)
-
-
- PC/IX 1.0 (SCCS)
-
-
- PC/IX 1.0 (TEXT)
-
-
- PC/IX 1.0 (SPECIA)
-
-
- PC/IX 1.0 (GAMES)
-
-
- PC/IX 1.0 (ACCNT)
-
-
diff --git a/disks/pc/unix/microport/system-v/2.3/README.md b/disks/pc/unix/microport/system-v/2.3/README.md
index 669a7e90c..65c38bb95 100644
--- a/disks/pc/unix/microport/system-v/2.3/README.md
+++ b/disks/pc/unix/microport/system-v/2.3/README.md
@@ -1,5 +1,13 @@
-Debugging Notes
---
+layout: page
+title: Microport's AT&T UNIX System V-AT 2.3
+permalink: /disks/pc/unix/microport/system-v/2.3/
+---
+
+Microport's AT&T UNIX System V-AT 2.3
+---
+
+### Debugging Notes
The boot sector contains the following code:
diff --git a/disks/pc/unix/microport/system-v/2.3/manifest.xml b/disks/pc/unix/microport/system-v/2.3/manifest.xml
index ef2b9e531..80bd7edb8 100644
--- a/disks/pc/unix/microport/system-v/2.3/manifest.xml
+++ b/disks/pc/unix/microport/system-v/2.3/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microport's AT&T UNIX System V-AT 2.3 (5¨)
diff --git a/disks/pc/windows/1.01/README.md b/disks/pc/windows/1.01/README.md
deleted file mode 100644
index 179fe5ecc..000000000
--- a/disks/pc/windows/1.01/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
-Windows 1.01 Installation Disks
----
-
-[Manifest](manifest.xml) updated using:
-
- diskdump --dir=private/01-SETUP/ --format=json --output=WIN101-DISK1-SETUP.json --manifest
- diskdump --dir=private/02-BUILD/ --format=json --output=WIN101-DISK2-BUILD.json --manifest
- diskdump --dir=private/03-UTILITY/ --format=json --output=WIN101-DISK3-UTILITY.json --manifest
- diskdump --dir=private/04-APPS/ --format=json --output=WIN101-DISK4-APPS.json --manifest
- diskdump --dir=private/05-WRITE/ --format=json --output=WIN101-DISK5-WRITE.json --manifest
-
-The original diskettes are not part of the repository/website.
\ No newline at end of file
diff --git a/disks/pc/windows/1.01/manifest.xml b/disks/pc/windows/1.01/manifest.xml
index 382cfc512..4e0a63dcf 100644
--- a/disks/pc/windows/1.01/manifest.xml
+++ b/disks/pc/windows/1.01/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 1.01
diff --git a/disks/pc/windows/1.03/README.md b/disks/pc/windows/1.03/README.md
deleted file mode 100644
index 1eea1a279..000000000
--- a/disks/pc/windows/1.03/README.md
+++ /dev/null
@@ -1,13 +0,0 @@
-Windows 1.03 Installation Disks
----
-
-[Manifest](manifest.xml) updated using:
-
- diskdump --dir=private/01-SETUP/ --format=json --output=WIN103-DISK1-SETUP.json --manifest
- diskdump --dir=private/02-BUILD/ --format=json --output=WIN103-DISK2-BUILD.json --manifest
- diskdump --dir=private/03-UTILITY/ --format=json --output=WIN103-DISK3-UTILITY.json --manifest
- diskdump --dir=private/04-FONT/ --format=json --output=WIN103-DISK4-FONT.json --manifest
- diskdump --dir=private/05-APPS/ --format=json --output=WIN103-DISK5-APPS.json --manifest
- diskdump --dir=private/06-WRITE/ --format=json --output=WIN103-DISK6-WRITE.json --manifest
-
-The original diskettes are not part of the repository/website.
\ No newline at end of file
diff --git a/disks/pc/windows/1.03/manifest.xml b/disks/pc/windows/1.03/manifest.xml
index 51ed9d57c..8bb98d056 100644
--- a/disks/pc/windows/1.03/manifest.xml
+++ b/disks/pc/windows/1.03/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 1.03
diff --git a/disks/pc/windows/1.03a/README.md b/disks/pc/windows/1.03a/README.md
deleted file mode 100644
index 8b99b1ddb..000000000
--- a/disks/pc/windows/1.03a/README.md
+++ /dev/null
@@ -1,15 +0,0 @@
-Windows 1.03a Installation Disks
----
-
-[Manifest](manifest.xml) updated using:
-
- diskdump --disk=static/WIN103A-DISK1-SETUP.img --format=json --output=WIN103A-DISK1-SETUP.json --manifest
- diskdump --disk=static/WIN103A-DISK2-BUILD.img --format=json --output=WIN103A-DISK2-BUILD.json --manifest
- diskdump --disk=static/WIN103A-DISK3-UTILITY.img --format=json --output=WIN103A-DISK3-UTILITY.json --manifest
- diskdump --disk=static/WIN103A-DISK4-FONTS.img --format=json --output=WIN103A-DISK4-FONTS.json --manifest
- diskdump --disk=static/WIN103A-DISK5-APPS.img --format=json --output=WIN103A-DISK5-APPS.json --manifest
- diskdump --disk=static/WIN103A-DISK6-PROGRAM.img --format=json --output=WIN103A-DISK6-PROGRAM.json --manifest
- diskdump --disk=static/WIN103A-DISK7-SYMBOLSA.img --format=json --output=WIN103A-DISK7-SYMBOLSA.json --manifest
- diskdump --disk=static/WIN103A-DISK8-SYMBOLSB.img --format=json --output=WIN103A-DISK8-SYMBOLSB.json --manifest
-
-The original diskettes are not part of the repository/website.
diff --git a/disks/pc/windows/1.03a/manifest.xml b/disks/pc/windows/1.03a/manifest.xml
index 63bdb74aa..c8c88a92f 100644
--- a/disks/pc/windows/1.03a/manifest.xml
+++ b/disks/pc/windows/1.03a/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 1.03a
diff --git a/disks/pc/windows/1.04/README.md b/disks/pc/windows/1.04/README.md
deleted file mode 100644
index 30a684744..000000000
--- a/disks/pc/windows/1.04/README.md
+++ /dev/null
@@ -1,14 +0,0 @@
-Windows 1.04 Installation Disks
----
-
-[Manifest](manifest.xml) updated using:
-
- diskdump --disk=static/WIN104-DISK1-SETUP.img --format=json --output=WIN104-DISK1-SETUP.json --manifest
- diskdump --disk=static/WIN104-DISK2-BUILD.img --format=json --output=WIN104-DISK2-BUILD.json --manifest
- diskdump --disk=static/WIN104-DISK3-UTILITY.img --format=json --output=WIN104-DISK3-UTILITY.json --manifest
- diskdump --disk=static/WIN104-DISK4-FONT.img --format=json --output=WIN104-DISK4-FONT.json --manifest
- diskdump --disk=static/WIN104-DISK5-APPS.img --format=json --output=WIN104-DISK5-APPS.json --manifest
- diskdump --disk=static/WIN104-DISK6-WRITE.img --format=json --output=WIN104-DISK6-WRITE.json --manifest
- diskdump --disk=static/WIN104-DISK7-SUPPDRV.img --format=json --output=WIN104-DISK7-SUPPDRV.json --manifest
-
-The original diskettes are not part of the repository/website.
diff --git a/disks/pc/windows/1.04/manifest.xml b/disks/pc/windows/1.04/manifest.xml
index 3b921f5bb..794e78e71 100644
--- a/disks/pc/windows/1.04/manifest.xml
+++ b/disks/pc/windows/1.04/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 1.04
os2museum.com
diff --git a/disks/pc/windows/2.01/manifest.xml b/disks/pc/windows/2.01/manifest.xml
index cd5b3956f..8ad48612e 100644
--- a/disks/pc/windows/2.01/manifest.xml
+++ b/disks/pc/windows/2.01/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 2.01
diff --git a/disks/pc/windows/2.03/README.md b/disks/pc/windows/2.03/README.md
deleted file mode 100644
index 4a1dd3949..000000000
--- a/disks/pc/windows/2.03/README.md
+++ /dev/null
@@ -1,16 +0,0 @@
-Windows 2.03 Installation Disks
----
-
-[Manifest](manifest.xml) updated using:
-
- diskdump --disk=static/WIN203-DISK1-SETUP.img --format=json --output=WIN203-DISK1-SETUP.json --manifest
- diskdump --disk=static/WIN203-DISK2-BUILD.img --format=json --output=WIN203-DISK2-BUILD.json --manifest
- diskdump --disk=static/WIN203-DISK3-DISPLAYS.img --format=json --output=WIN203-DISK3-DISPLAYS.json --manifest
- diskdump --disk=static/WIN203-DISK4-UTILS1.img --format=json --output=WIN203-DISK4-UTILS1.json --manifest
- diskdump --disk=static/WIN203-DISK5-UTILS2.img --format=json --output=WIN203-DISK5-UTILS2.json --manifest
- diskdump --disk=static/WIN203-DISK6-FONTS1.img --format=json --output=WIN203-DISK6-FONTS1.json --manifest
- diskdump --disk=static/WIN203-DISK7-FONTS2.img --format=json --output=WIN203-DISK7-FONTS2.json --manifest
- diskdump --disk=static/WIN203-DISK8-APPS.img --format=json --output=WIN203-DISK8-APPS.json --manifest
- diskdump --disk=static/WIN203-DISK9-WRITE.img --format=json --output=WIN203-DISK9-WRITE.json --manifest
-
-The original diskettes are not part of the repository/website.
diff --git a/disks/pc/windows/2.03/manifest.xml b/disks/pc/windows/2.03/manifest.xml
index df45e028e..9bcfb9fbf 100644
--- a/disks/pc/windows/2.03/manifest.xml
+++ b/disks/pc/windows/2.03/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 2.03
os2museum.com
diff --git a/disks/pc/windows/3.00/720K/manifest.xml b/disks/pc/windows/3.00/720K/manifest.xml
index 15c534966..c86d875bb 100644
--- a/disks/pc/windows/3.00/720K/manifest.xml
+++ b/disks/pc/windows/3.00/720K/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 3.00
diff --git a/disks/pc/windows/3.00/manifest.xml b/disks/pc/windows/3.00/manifest.xml
index 76354338b..263efd133 100644
--- a/disks/pc/windows/3.00/manifest.xml
+++ b/disks/pc/windows/3.00/manifest.xml
@@ -1,5 +1,5 @@
-
+
Microsoft Windows 3.00
diff --git a/disks/pc/windows/3.11/manifest.xml b/disks/pc/windows/3.11/manifest.xml
index e4eebdf69..e88b67035 100644
--- a/disks/pc/windows/3.11/manifest.xml
+++ b/disks/pc/windows/3.11/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows for Workgroups
3.11
diff --git a/disks/pc/windows/win95/4.00.950/manifest.xml b/disks/pc/windows/win95/4.00.950/manifest.xml
index 1313336e6..1e321a022 100644
--- a/disks/pc/windows/win95/4.00.950/manifest.xml
+++ b/disks/pc/windows/win95/4.00.950/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows 95 (RTM)
4.00.950
diff --git a/disks/pc/windows/wincomm/README.md b/disks/pc/windows/wincomm/README.md
deleted file mode 100644
index f8c1effa4..000000000
--- a/disks/pc/windows/wincomm/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-Windows COMM Driver (Source)
----
-
-[Manifest](manifest.xml) updated using:
-
- diskdump --disk=static/WINCOMM.img --format=json --output=WINCOMM.json --manifest
-
-The original diskettes are not part of the repository/website.
diff --git a/disks/pc/windows/wincomm/manifest.xml b/disks/pc/windows/wincomm/manifest.xml
index 1d10f512c..33248aca0 100644
--- a/disks/pc/windows/wincomm/manifest.xml
+++ b/disks/pc/windows/wincomm/manifest.xml
@@ -1,5 +1,5 @@
-
+
Windows COMM Driver (Source)
diff --git a/disks/pc/xenix/sco/8086/2.1.3/README.md b/disks/pc/xenix/sco/8086/2.1.3/README.md
index 7640bed22..31af2c81e 100644
--- a/disks/pc/xenix/sco/8086/2.1.3/README.md
+++ b/disks/pc/xenix/sco/8086/2.1.3/README.md
@@ -1,3 +1,9 @@
+---
+layout: page
+title: SCO Xenix 8086 Operating System v2.1.3
+permalink: /disks/pc/xenix/sco/8086/2.1.3/
+---
+
Installation Notes
---
@@ -8,10 +14,3 @@ activation key: thmjvbqz
Note: this Xenix version can't run with a VGA card.
You can use a Hercules monochrome card or a CGA/EGA card.
-
-Manifest Details
----
-
-[Manifest](manifest.xml) update using:
-
- find -L private -name "*" -type f -exec node ../../../../../modules/diskdump/bin/diskdump --format=json --output=. --manifest --title="SCO Xenix 8086 Operating System v2.1.3" --disk={} \;
diff --git a/disks/pc/xenix/sco/8086/2.1.3/manifest.xml b/disks/pc/xenix/sco/8086/2.1.3/manifest.xml
index e7c2c98bd..49b908c54 100644
--- a/disks/pc/xenix/sco/8086/2.1.3/manifest.xml
+++ b/disks/pc/xenix/sco/8086/2.1.3/manifest.xml
@@ -1,5 +1,5 @@
-
+
SCO Xenix 8086 Operating System v2.1.3
diff --git a/docs/pcjs/demos/components.css b/docs/pcjs/demos/components.css
index 48d6d6bb3..3bb1bfd0c 100644
--- a/docs/pcjs/demos/components.css
+++ b/docs/pcjs/demos/components.css
@@ -9,6 +9,10 @@
.pcjs-embed:after {
clear:both;
}
+.pcjs-machine {
+ padding-right: 16px;
+ padding-bottom: 16px;
+}
.pcjs-name, .pcjs-menu {
clear: both;
font-weight: bold;
diff --git a/docs/pcjs/demos/components.xsl b/docs/pcjs/demos/components.xsl
index 37a2600b6..382cf8bca 100644
--- a/docs/pcjs/demos/components.xsl
+++ b/docs/pcjs/demos/components.xsl
@@ -3,12 +3,15 @@
+
+
+
pc
pcjs
- 1.20.1
+ 1.20.2
www.pcjs.org
diff --git a/docs/pcjs/demos/pc-dbg.js b/docs/pcjs/demos/pc-dbg.js
index 36ea0b8b9..91f3ade36 100644
--- a/docs/pcjs/demos/pc-dbg.js
+++ b/docs/pcjs/demos/pc-dbg.js
@@ -11,19 +11,19 @@ function Fa(){if(null==Ea){var a=!1;if(window)try{window.localStorage.setItem("P
function Ja(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function Ka(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0=this.x&&a=this.y&&b=c>>2);d?(b=new Cb(a.x,a.y,a.Xc,a.A*b/c|0),a.y+=b.A,a.A-=b.A):(b=new Cb(a.x,a.y,a.Xc*b/c|0,a.A),a.x+=b.Xc,a.Xc-=b.Xc);return b}h=zb.prototype;
h.Yb=function(a,b,c){return this.ia&&this.ia.Yb(a,b,c)||this.M&&this.M.Yb(a,b,c)||this.O&&this.O.Yb(a,b,c)||this.ma&&this.ma.Yb(a,b,c)?!0:this.parent.Yb.call(this,a,b,c)};h.Hc=function(a,b,c,d){this.ia=a;this.ja=b;this.M=c;this.ma=d;this.O=Eb(a,"Keyboard")};h.mc=function(a,b){b||Fb();return!0};h.lc=function(){return!0};h.je=function(a,b){a.button||(this.ka=b?0:-1,Hb(this,a,b))};h.yf=function(a){Hb(this,a)};
-function Hb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.ka||(a.ka=Math.abs(a.P-d)>Math.abs(a.Z-b)?1:2),1==a.ka?b=a.Z:2==a.ka&&(d=a.P));a.P=d;a.Z=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Ke)for(f=0;fd&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ha)){b=c;if(a.context&&a.qa&&a.sa){e=a.qa.width;a.sa.fillStyle="black";a.sa.fillRect(0,360,e,360);Jb(a,378,a.qa,a.sa);a.va=a.Ka.width/24|0;if(null==b)Kb(a,"Mouse over memory to dump");else for(Kb(a,"0x"+l(b),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var k=Lb(a.ja,b++);Kb(a,l(k,2),null,1);d+=32<=k&&128>k?String.fromCharCode(k):"."}Kb(a,d,null,0,1)}a.context.drawImage(a.qa,0,360,e,360,a.xb,a.Eb,a.ab,a.Vb)}a.Ha=c}}}h.od=function(){};
+function Hb(a,b,c){var d=1280/null.offsetWidth,e=720/null.offsetHeight,f=null.getBoundingClientRect(),d=(b.clientX-f.left)*d|0;b=(b.clientY-f.top)*e|0;null==c&&(a.ka||(a.ka=Math.abs(a.P-d)>Math.abs(a.Z-b)?1:2),1==a.ka?b=a.Z:2==a.ka&&(d=a.P));a.P=d;a.Z=b;if(0<=d&&1280>d&&0<=b&&720>b){a:{c=d;if(960>c&&a.A&&a.A.Ke)for(f=0;fd&&(f=d);c=f;break a}c=-1}if(-1!==c&&(c&=-16,c!=a.Ha)){b=c;if(a.context&&a.qa&&a.ta){e=a.qa.width;a.ta.fillStyle="black";a.ta.fillRect(0,360,e,360);Jb(a,378,a.qa,a.ta);a.va=a.Ka.width/24|0;if(null==b)Kb(a,"Mouse over memory to dump");else for(Kb(a,"0x"+l(b),null,0,1),f=1;16>=f;f++){d="";for(g=1;8>=g;g++){var k=Lb(a.ja,b++);Kb(a,l(k,2),null,1);d+=32<=k&&128>k?String.fromCharCode(k):"."}Kb(a,d,null,0,1)}a.context.drawImage(a.qa,0,360,e,360,a.xb,a.Fb,a.bb,a.Vb)}a.Ha=c}}}h.od=function(){};
function Mb(a,b,c,d){a.A.sf[a.A.ti++]={Lk:b,Qd:c,type:d};return va(Ib,b,c,0,d)}function Jb(a,b,c,d){var e,f=null.style.color,g=a.Ua=10;a.C=g;a.W=b;a.Y=a.Fa=18;e||(e=a.Aa||a.Fa+"px Monaco, Lucida Console, Courier New");a.la=a.Aa=e;c&&(a.Ka=c);d&&(a.R=d,a.Na=f||"white")}
-function Kb(a,b,c,d,e){a.R.font=a.la;a.R.fillStyle=a.Na;a.R.fillText(b,a.C,a.W);a.C+=a.va;null!=c&&(16!=a.qb?b=c.toString():(b=8>a.Ra?"0x":"",b+=l(c,a.Ra)),a.R.fillText(b,a.C,a.W),a.C+=a.va);d&&(a.C+=a.va*d);e&&(a.C=a.Ua,a.W+=(a.Y+2)*(e||1))}function Fb(){for(var a=!1,b=kb(window.document,"pcjs","panel"),c=0;c=this.O?12:24>=this.O?14:15;this.Ob=1<>2;this.A=this.Ob-1;this.W=this.Y/this.Ob|0;this.P=this.W-1;this.C=[];this.R=[];this.ia=this.Z=!1;this.da=[];this.ka=[];a=new Ob;Pb(a,this.ma);this.wa=Array(this.W);for(b=0;b>>a.La;0a.Ob?a.Ob:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Sa)return g.Ie+=g.Sa-b,g.Sa=b,!0;if(b>=g.Sa+g.Ie){q=g.size-(b-k);q>c&&(q=c);g.Ie=b-g.Sa+q;c-=q;b=k+a.Ob;continue}}return Wb(a,1,b,c)}g=a.wa[f];b=new Ob(b,q,a.Ob,d,e);Pb(b,a.ma,g);a.wa[f++]=b;b=k+a.Ob;c-=q}return 0>>this.La;0>>a.La;0>>=a.La;0>>a.La;0>>this.La].nc(a&this.A,a)};function Lb(a,b){return a.wa[(b&a.Ib)>>>a.La].ne(b&a.A,b)}
-h.ua=function(a){var b=a&this.A,c=(a&this.Ib)>>>this.La;return b!=this.A?this.wa[c].Tf(b,a):this.wa[c++].nc(b,a)|this.wa[c&this.P].nc(0,a+1)<<8};function fc(a,b){var c=b&a.A,d=(b&a.Ib)>>>a.La;return c!=a.A?a.wa[d].Uf(c,b):a.wa[d++].ne(c,b)|a.wa[d&a.P].ne(0,b+1)<<8}h.Ta=function(a){var b=a&this.A,c=(a&this.Ib)>>>this.La;if(b>>this.La].yc(a&this.A,b&255,a)};h.ob=function(a,b){var c=a&this.A,d=(a&this.Ib)>>>this.La;c!=this.A?this.wa[d].bg(c,b&65535,a):(this.wa[d++].yc(c,b&255,a),this.wa[d&this.P].yc(0,b>>8&255,a+1))};function gc(a,b,c){var d=b&a.A,e=(b&a.Ib)>>>a.La;d!=a.A?a.wa[e].li(d,c&65535,b):(a.wa[e++].of(d,c&255,b),a.wa[e&a.P].of(0,c>>8&255,b+1))}
-h.tb=function(a,b){var c=a&this.A,d=(a&this.Ib)>>>this.La;if(c>>=8};h.Ki=function(){return null};function hc(a,b){if(void 0===b)return a.ia=!a.ia,a.ia;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}
+function Kb(a,b,c,d,e){a.R.font=a.la;a.R.fillStyle=a.Na;a.R.fillText(b,a.C,a.W);a.C+=a.va;null!=c&&(16!=a.rb?b=c.toString():(b=8>a.Ra?"0x":"",b+=l(c,a.Ra)),a.R.fillText(b,a.C,a.W),a.C+=a.va);d&&(a.C+=a.va*d);e&&(a.C=a.Ua,a.W+=(a.Y+2)*(e||1))}function Fb(){for(var a=!1,b=kb(window.document,"pcjs","panel"),c=0;c=this.O?12:24>=this.O?14:15;this.Pb=1<>2;this.A=this.Pb-1;this.W=this.Y/this.Pb|0;this.P=this.W-1;this.C=[];this.R=[];this.ia=this.Z=!1;this.da=[];this.ka=[];a=new Ob;Pb(a,this.ma);this.wa=Array(this.W);for(b=0;b>>a.La;0a.Pb?a.Pb:c;if(g&&g.size){if(g.type==d&&g.controller==e){if(b+c<=g.Sa)return g.Ie+=g.Sa-b,g.Sa=b,!0;if(b>=g.Sa+g.Ie){q=g.size-(b-k);q>c&&(q=c);g.Ie=b-g.Sa+q;c-=q;b=k+a.Pb;continue}}return Wb(a,1,b,c)}g=a.wa[f];b=new Ob(b,q,a.Pb,d,e);Pb(b,a.ma,g);a.wa[f++]=b;b=k+a.Pb;c-=q}return 0>>this.La;0>>a.La;0>>=a.La;0>>a.La;0>>this.La].nc(a&this.A,a)};function Lb(a,b){return a.wa[(b&a.Jb)>>>a.La].ne(b&a.A,b)}
+h.ua=function(a){var b=a&this.A,c=(a&this.Jb)>>>this.La;return b!=this.A?this.wa[c].Tf(b,a):this.wa[c++].nc(b,a)|this.wa[c&this.P].nc(0,a+1)<<8};function fc(a,b){var c=b&a.A,d=(b&a.Jb)>>>a.La;return c!=a.A?a.wa[d].Uf(c,b):a.wa[d++].ne(c,b)|a.wa[d&a.P].ne(0,b+1)<<8}h.Ta=function(a){var b=a&this.A,c=(a&this.Jb)>>>this.La;if(b>>this.La].yc(a&this.A,b&255,a)};h.pb=function(a,b){var c=a&this.A,d=(a&this.Jb)>>>this.La;c!=this.A?this.wa[d].bg(c,b&65535,a):(this.wa[d++].yc(c,b&255,a),this.wa[d&this.P].yc(0,b>>8&255,a+1))};function gc(a,b,c){var d=b&a.A,e=(b&a.Jb)>>>a.La;d!=a.A?a.wa[e].li(d,c&65535,b):(a.wa[e++].of(d,c&255,b),a.wa[e&a.P].of(0,c>>8&255,b+1))}
+h.ub=function(a,b){var c=a&this.A,d=(a&this.Jb)>>>this.La;if(c>>=8};h.Ki=function(){return null};function hc(a,b){if(void 0===b)return a.ia=!a.ia,a.ia;void 0===a.C[b]&&(a.C[b]=[null,!1]);a.C[b][1]=!a.C[b][1];return a.C[b][1]}
function ic(a,b,c,d){void 0===d&&(d=0);for(var e in c){var f=a,g=+e+d,k=c[e].bind(b);if(void 0!==k)for(var q=+e+d;q<=g;q++)void 0!==f.C[q]?Ba("Input port "+ga(q)+" already registered"):f.C[q]=[k,!1]}}function jc(a,b,c,d){for(var e=0,f=0;0>>=f)&q;if(void 0!==g){if(g[0])g[0](b,q,e);a.ma&&a.Z!=g[1]&&oc(a.ma,b,q)}else a.ma&&(mb(a.ma,a,b,q,e),a.Z&&oc(a.ma,b,q));f+=k<<3;b+=k;c-=k}}function Wb(a,b,c,d,e){b="Memory block error ("+b+": "+l(c)+","+l(d)+")";e?a.log(b):Ba(b);return!1}var pc;if(vb){var uc=new ArrayBuffer(2);(new DataView(uc)).setUint16(0,256,!0);pc=256===(new Uint16Array(uc))[0]}else pc=!1;var bc=pc;
-function Ob(a,b,c,d,e,f){this.id=vc+=2;this.fa=null;this.P=0;this.Sa=a;this.Ie=b;this.size=c||0;this.type=d||wc;this.ja=d==ac;this.controller=null;this.M=f;Pb(this);this.Ya=this.Fi=!1;if(c)if(e)this.controller=e,a=e.Ji(a),this.fa=a[0],this.P=a[1],Zb(this,e.dh());else if(vb)this.Z=new ArrayBuffer(c),this.ia=new DataView(this.Z,0,c),this.bb=new Uint8Array(this.Z,0,c),this.fe=new Uint16Array(this.Z,0,c>>1),this.fa=new Int32Array(this.Z,0,c>>2),Zb(this,bc?cc:dc);else{this.fa=Array(c>>2);for(e=0;e>1),this.fa=new Int32Array(this.Z,0,c>>2),Zb(this,bc?cc:dc);else{this.fa=Array(c>>2);for(e=0;e>8&65280|a>>>24);return a}
-Ob.prototype={constructor:Ob,parent:null,eh:function(a){this.Sa=a},save:function(){var a,b;if(this.controller)a=null;else if(vb)for(a=Array(this.size>>2),b=0;b>8,c)},la:function(a,
-b,c){this.yc(a++,b&255,c++);this.yc(a++,b>>8&255,c++);this.yc(a++,b>>16&255,c++);this.yc(a,b>>>24,c)},Ka:function(a){return this.fa[a>>2]>>>((a&3)<<3)&255},Db:function(a){var b=a>>2;a=(a&3)<<3;var c=this.fa[b]>>a;return 24>a?c&65535:c&255|(this.fa[b+1]&255)<<8},ab:function(a){var b=a>>2;a=(a&3)<<3;var c=this.fa[b];a&&(c=c>>>a|this.fa[b+1]<<32-a);return c},ce:function(a,b){var c=a>>2,d=(a&3)<<3;this.fa[c]=this.fa[c]&~(255<>2,d=(a&3)<<3;24>d?this.fa[c]=
-this.fa[c]&~(65535<>8);this.Ya=!0},qd:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<>>32-d}else this.fa[c]=b;this.Ya=!0},Ga:function(a,b){this.ma&&Dc(this.ma,b)||this.M&&Ec(this.M,b,1,!1);return this.ne(a,b)},qb:function(a,b){this.ma&&Dc(this.ma,b,2)||this.M&&Ec(this.M,b,2,!1);return this.Uf(a,b)},Ua:function(a,b){this.ma&&Dc(this.ma,b,4)||this.M&&Ec(this.M,
+Ob.prototype={constructor:Ob,parent:null,eh:function(a){this.Sa=a},save:function(){var a,b;if(this.controller)a=null;else if(vb)for(a=Array(this.size>>2),b=0;b>8,c)},la:function(a,
+b,c){this.yc(a++,b&255,c++);this.yc(a++,b>>8&255,c++);this.yc(a++,b>>16&255,c++);this.yc(a,b>>>24,c)},Ka:function(a){return this.fa[a>>2]>>>((a&3)<<3)&255},Eb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.fa[b]>>a;return 24>a?c&65535:c&255|(this.fa[b+1]&255)<<8},bb:function(a){var b=a>>2;a=(a&3)<<3;var c=this.fa[b];a&&(c=c>>>a|this.fa[b+1]<<32-a);return c},ce:function(a,b){var c=a>>2,d=(a&3)<<3;this.fa[c]=this.fa[c]&~(255<>2,d=(a&3)<<3;24>d?this.fa[c]=
+this.fa[c]&~(65535<>8);this.Za=!0},qd:function(a,b){var c=a>>2,d=(a&3)<<3;if(d){var e=-1<>>32-d}else this.fa[c]=b;this.Za=!0},Ga:function(a,b){this.ma&&Dc(this.ma,b)||this.M&&Ec(this.M,b,1,!1);return this.ne(a,b)},rb:function(a,b){this.ma&&Dc(this.ma,b,2)||this.M&&Ec(this.M,b,2,!1);return this.Uf(a,b)},Ua:function(a,b){this.ma&&Dc(this.ma,b,4)||this.M&&Ec(this.M,
b,4,!1);return this.fi(a,b)},ic:function(a,b,c){this.ma&&Fc(this.ma,c)||this.M&&Ec(this.M,c,1,!0);this.ja?this.W(a,b,c):this.of(a,b,c)},Ed:function(a,b,c){this.ma&&Fc(this.ma,c,2)||this.M&&Ec(this.M,c,2,!0);this.ja?this.W(a,b,c):this.li(a,b,c)},dd:function(a,b,c){this.ma&&Fc(this.ma,c,4)||this.M&&Ec(this.M,c,4,!0);this.ja?this.W(a,b,c):this.Aa(a,b,c)},Oa:function(a,b){this.A.fa[this.R]|=this.ya;this.C.fa[this.O]|=this.ya;return this.zd.nc(a,b)},Qb:function(a,b){this.A.fa[this.R]|=this.ya;this.C.fa[this.O]|=
this.ya;return this.zd.Tf(a,b)},Vb:function(a,b){this.A.fa[this.R]|=this.ya;this.C.fa[this.O]|=this.ya;return this.zd.Yd(a,b)},Qc:function(a,b,c){this.A.fa[this.R]|=this.ya;this.C.fa[this.O]|=this.ka;this.zd.yc(a,b,c)},Id:function(a,b,c){this.A.fa[this.R]|=this.ya;this.C.fa[this.O]|=this.ka;this.zd.bg(a,b,c)},sd:function(a,b,c){this.A.fa[this.R]|=this.ya;this.C.fa[this.O]|=this.ka;this.zd.ag(a,b,c)},Pa:function(a,b){return Gc(this.M,b,!1).nc(a,b)},Wb:function(a,b){return Gc(this.M,b,!1).Tf(a,b)},
-lb:function(a,b){return Gc(this.M,b,!1).Yd(a,b)},Rc:function(a,b,c){Gc(this.M,c,!0).yc(a,b,c)},Jd:function(a,b,c){Gc(this.M,c,!0).bg(a,b,c)},Ad:function(a,b,c){Gc(this.M,c,!0).ag(a,b,c)},Fa:function(a){return this.bb[a]},Ha:function(a){return this.bb[a]},Na:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=32;return this.bb[a]},pb:function(a){return this.ia.getUint16(a,!0)},xb:function(a){return a&1?this.bb[a]|this.bb[a+1]<<8:this.fe[a>>1]},Eb:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=
-32;return a&1?this.bb[a]|this.bb[a+1]<<8:this.fe[a>>1]},Ra:function(a){return this.ia.getInt32(a,!0)},Kc:function(a){return a&3?this.bb[a]|this.bb[a+1]<<8|this.bb[a+2]<<16|this.bb[a+3]<<24:this.fa[a>>2]},ib:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=32;return a&3?this.bb[a]|this.bb[a+1]<<8|this.bb[a+2]<<16|this.bb[a+3]<<24:this.fa[a>>2]},$b:function(a,b){this.bb[a]=b;this.Ya=!0},jc:function(a,b){this.bb[a]=b;this.Ya=!0},Ec:function(a,b){this.bb[a]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=
-96;this.zd.Ya=!0},Dd:function(a,b){this.ia.setUint16(a,b,!0);this.Ya=!0},Fd:function(a,b){a&1?(this.bb[a]=b,this.bb[a+1]=b>>8):this.fe[a>>1]=b;this.Ya=!0},Hd:function(a,b){a&1?(this.bb[a]=b,this.bb[a+1]=b>>8):this.fe[a>>1]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=96;this.zd.Ya=!0},Sc:function(a,b){this.ia.setInt32(a,b,!0);this.Ya=!0},ed:function(a,b){a&3?(this.bb[a]=b,this.bb[a+1]=b>>8,this.bb[a+2]=b>>16,this.bb[a+3]=b>>24):this.fa[a>>2]=b;this.Ya=!0},pd:function(a,b){a&3?(this.bb[a]=b,this.bb[a+
-1]=b>>8,this.bb[a+2]=b>>16,this.bb[a+3]=b>>24):this.fa[a>>2]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=96;this.zd.Ya=!0}};function Pb(a,b,c){a.ma=b;a.Y=a.da=0;c&&(c.M&&(a.M=c.M),(a.Y=c.Y)&&Ac(a,Bc,!1),(a.da=c.da)&&Cc(a,Bc,!1))}function Hc(a,b){b?0===--a.da&&(a.yc=a.ja?a.W:a.of,a.bg=a.ja?a.qa:a.li,a.ag=a.ja?a.la:a.Aa):0===--a.Y&&(a.nc=a.ne,a.Tf=a.Uf,a.Yd=a.fi)}
-function Cc(a,b,c){c&&a.da||(a.yc=!a.ja&&b[3]||a.W,a.bg=!a.ja&&b[4]||a.qa,a.ag=!a.ja&&b[5]||a.la);if(c||void 0===c)a.of=b[3]||a.W,a.li=b[4]||a.qa,a.Aa=b[5]||a.la}function Ac(a,b,c){c&&a.Y||(a.nc=b[0]||a.va,a.Tf=b[1]||a.xa,a.Yd=b[2]||a.sa);if(c||void 0===c)a.ne=b[0]||a.va,a.Uf=b[1]||a.xa,a.fi=b[2]||a.sa}function Zb(a,b,c){b||(b=5==a.type?Ic:6==a.type?Jc:Kc);Ac(a,b,c);Cc(a,b,c)}
-var Kc=[],ec=[Ob.prototype.Ka,Ob.prototype.Db,Ob.prototype.ab,Ob.prototype.ce,Ob.prototype.Gd,Ob.prototype.qd],Bc=[Ob.prototype.Ga,Ob.prototype.qb,Ob.prototype.Ua,Ob.prototype.ic,Ob.prototype.Ed,Ob.prototype.dd],Jc=[Ob.prototype.Oa,Ob.prototype.Qb,Ob.prototype.Vb,Ob.prototype.Qc,Ob.prototype.Id,Ob.prototype.sd],Ic=[Ob.prototype.Pa,Ob.prototype.Wb,Ob.prototype.lb,Ob.prototype.Rc,Ob.prototype.Jd,Ob.prototype.Ad];
-if(vb)var dc=[Ob.prototype.Fa,Ob.prototype.pb,Ob.prototype.Ra,Ob.prototype.$b,Ob.prototype.Dd,Ob.prototype.Sc],cc=[Ob.prototype.Ha,Ob.prototype.xb,Ob.prototype.Kc,Ob.prototype.jc,Ob.prototype.Fd,Ob.prototype.ed],Lc=[Ob.prototype.Na,Ob.prototype.Eb,Ob.prototype.ib,Ob.prototype.Ec,Ob.prototype.Hd,Ob.prototype.pd];
-function Mc(a,b){Wa.call(this,"CPU",a,Mc,1);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Kd=c;this.ba.Ud=d;this.ba.og=Math.round(this.ba.Kd/1E4)/100;this.ba.ze=this.ba.og*this.ba.Ud;this.ra.Lb=!1;this.ra.ah=!1;this.ra.Xg=a.autoStart;this.ra.Gi=!1;c=$a.autostart;void 0!==c&&(this.ra.Xg="true"==c?!0:"false"==c?!1:null);this.ra.Re=!1;this.ba.zf=this.ba.bf=0;this.ba.Af=a.csStart;this.ba.af=a.csInterval;this.ba.cf=a.csStop;this.dd=[];this.Lg=this.Fe.bind(this);sb(this)}eb(Mc);h=Mc.prototype;
+lb:function(a,b){return Gc(this.M,b,!1).Yd(a,b)},Rc:function(a,b,c){Gc(this.M,c,!0).yc(a,b,c)},Jd:function(a,b,c){Gc(this.M,c,!0).bg(a,b,c)},Ad:function(a,b,c){Gc(this.M,c,!0).ag(a,b,c)},Fa:function(a){return this.cb[a]},Ha:function(a){return this.cb[a]},Na:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=32;return this.cb[a]},qb:function(a){return this.ia.getUint16(a,!0)},xb:function(a){return a&1?this.cb[a]|this.cb[a+1]<<8:this.fe[a>>1]},Fb:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=
+32;return a&1?this.cb[a]|this.cb[a+1]<<8:this.fe[a>>1]},Ra:function(a){return this.ia.getInt32(a,!0)},Kc:function(a){return a&3?this.cb[a]|this.cb[a+1]<<8|this.cb[a+2]<<16|this.cb[a+3]<<24:this.fa[a>>2]},ib:function(a){this.A.fa[this.R]|=32;this.C.fa[this.O]|=32;return a&3?this.cb[a]|this.cb[a+1]<<8|this.cb[a+2]<<16|this.cb[a+3]<<24:this.fa[a>>2]},$b:function(a,b){this.cb[a]=b;this.Za=!0},jc:function(a,b){this.cb[a]=b;this.Za=!0},Ec:function(a,b){this.cb[a]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=
+96;this.zd.Za=!0},Dd:function(a,b){this.ia.setUint16(a,b,!0);this.Za=!0},Fd:function(a,b){a&1?(this.cb[a]=b,this.cb[a+1]=b>>8):this.fe[a>>1]=b;this.Za=!0},Hd:function(a,b){a&1?(this.cb[a]=b,this.cb[a+1]=b>>8):this.fe[a>>1]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=96;this.zd.Za=!0},Sc:function(a,b){this.ia.setInt32(a,b,!0);this.Za=!0},ed:function(a,b){a&3?(this.cb[a]=b,this.cb[a+1]=b>>8,this.cb[a+2]=b>>16,this.cb[a+3]=b>>24):this.fa[a>>2]=b;this.Za=!0},pd:function(a,b){a&3?(this.cb[a]=b,this.cb[a+
+1]=b>>8,this.cb[a+2]=b>>16,this.cb[a+3]=b>>24):this.fa[a>>2]=b;this.A.fa[this.R]|=32;this.C.fa[this.O]|=96;this.zd.Za=!0}};function Pb(a,b,c){a.ma=b;a.Y=a.da=0;c&&(c.M&&(a.M=c.M),(a.Y=c.Y)&&Ac(a,Bc,!1),(a.da=c.da)&&Cc(a,Bc,!1))}function Hc(a,b){b?0===--a.da&&(a.yc=a.ja?a.W:a.of,a.bg=a.ja?a.qa:a.li,a.ag=a.ja?a.la:a.Aa):0===--a.Y&&(a.nc=a.ne,a.Tf=a.Uf,a.Yd=a.fi)}
+function Cc(a,b,c){c&&a.da||(a.yc=!a.ja&&b[3]||a.W,a.bg=!a.ja&&b[4]||a.qa,a.ag=!a.ja&&b[5]||a.la);if(c||void 0===c)a.of=b[3]||a.W,a.li=b[4]||a.qa,a.Aa=b[5]||a.la}function Ac(a,b,c){c&&a.Y||(a.nc=b[0]||a.va,a.Tf=b[1]||a.xa,a.Yd=b[2]||a.ta);if(c||void 0===c)a.ne=b[0]||a.va,a.Uf=b[1]||a.xa,a.fi=b[2]||a.ta}function Zb(a,b,c){b||(b=5==a.type?Ic:6==a.type?Jc:Kc);Ac(a,b,c);Cc(a,b,c)}
+var Kc=[],ec=[Ob.prototype.Ka,Ob.prototype.Eb,Ob.prototype.bb,Ob.prototype.ce,Ob.prototype.Gd,Ob.prototype.qd],Bc=[Ob.prototype.Ga,Ob.prototype.rb,Ob.prototype.Ua,Ob.prototype.ic,Ob.prototype.Ed,Ob.prototype.dd],Jc=[Ob.prototype.Oa,Ob.prototype.Qb,Ob.prototype.Vb,Ob.prototype.Qc,Ob.prototype.Id,Ob.prototype.sd],Ic=[Ob.prototype.Pa,Ob.prototype.Wb,Ob.prototype.lb,Ob.prototype.Rc,Ob.prototype.Jd,Ob.prototype.Ad];
+if(vb)var dc=[Ob.prototype.Fa,Ob.prototype.qb,Ob.prototype.Ra,Ob.prototype.$b,Ob.prototype.Dd,Ob.prototype.Sc],cc=[Ob.prototype.Ha,Ob.prototype.xb,Ob.prototype.Kc,Ob.prototype.jc,Ob.prototype.Fd,Ob.prototype.ed],Lc=[Ob.prototype.Na,Ob.prototype.Fb,Ob.prototype.ib,Ob.prototype.Ec,Ob.prototype.Hd,Ob.prototype.pd];
+function Mc(a,b){Wa.call(this,"CPU",a,Mc,1);var c=a.cycles||b,d=a.multiplier||1;this.ba={};this.ba.Kd=c;this.ba.Ud=d;this.ba.og=Math.round(this.ba.Kd/1E4)/100;this.ba.ze=this.ba.og*this.ba.Ud;this.sa.Mb=!1;this.sa.ah=!1;this.sa.Xg=a.autoStart;this.sa.Gi=!1;c=$a.autostart;void 0!==c&&(this.sa.Xg="true"==c?!0:"false"==c?!1:null);this.sa.Re=!1;this.ba.zf=this.ba.bf=0;this.ba.Af=a.csStart;this.ba.af=a.csInterval;this.ba.cf=a.csStop;this.dd=[];this.Lg=this.Fe.bind(this);sb(this)}eb(Mc);h=Mc.prototype;
h.Hc=function(a,b,c,d){this.ia=a;this.ja=b;this.ma=d;this.Vb=Eb(a,"FPU");for(b=null;b=Eb(a,"Video",b);)this.dd.push(b);this.R=Eb(a,"ChipSet");sb(this)};h.reset=function(){};h.save=function(){return null};h.restore=function(){return!1};h.mc=function(a,b){if(!b){if(a&&this.restore){Nc(this);if(!this.restore(a))return!1;Oc(this)}else this.reset();this.ma?this.ma.eh():this.U("No debugger detected")}Qc(this);return!0};h.lc=function(a){return a?this.save():!0};
-function Tc(a){(!0===a.ra.Xg||null===a.ra.Xg&&!a.ma&&void 0===a.ya.run)&&a.Fe()}h.Ii=function(){return 0};function Oc(a){void 0===a.ba.Af&&(a.ba.Af=0);void 0===a.ba.af&&(a.ba.af=-1);void 0===a.ba.cf&&(a.ba.cf=-1);a.ra.Re=0<=a.ba.Af&&0=a.ba.bf&&(a.ba.bf+=a.ba.af,c=!0);0<=a.ba.cf&&a.ba.cf<=Vc(a)&&(a.ba.af=a.ba.cf=-1,Oc(a),a.Zb(),c=!0);c&&a.U(Vc(a)+" cycles: checksum="+l(a.ba.zf))}}h.od=function(){this.ia&&this.ia.Xd&&this.ia.Xd.od()};
-function Wc(a,b){for(var c=0;c>>d.La;f=f+g-1>>>d.La;e.Wg=0;for(e.Qd=0;k<=f;)g=d.wa[k],e.Wg+=g.size,g.size&&(e.Ng.push(va(Ib,k,0,0,g.type)),e.Qd++),k++;c.A=e;c.Ga=c.A.Qd*c.ja.Ob/691200;d=0;c.A.ti=0;c.A.sf||(c.A.sf=[]);var e=-1,k=0,q=-1;for(f=0;f=a.ba.bf&&(a.ba.bf+=a.ba.af,c=!0);0<=a.ba.cf&&a.ba.cf<=Vc(a)&&(a.ba.af=a.ba.cf=-1,Oc(a),a.Zb(),c=!0);c&&a.U(Vc(a)+" cycles: checksum="+l(a.ba.zf))}}h.od=function(){this.ia&&this.ia.Xd&&this.ia.Xd.od()};
+function Wc(a,b){for(var c=0;c>>d.La;f=f+g-1>>>d.La;e.Wg=0;for(e.Qd=0;k<=f;)g=d.wa[k],e.Wg+=g.size,g.size&&(e.Ng.push(va(Ib,k,0,0,g.type)),e.Qd++),k++;c.A=e;c.Ga=c.A.Qd*c.ja.Pb/691200;d=0;c.A.ti=0;c.A.sf||(c.A.sf=[]);var e=-1,k=0,q=-1;for(f=0;f>1),q=g.y+(g.A>>1),r=g.A,g.Xc>1,k.W+=(k.Y>>1)-2,Kb(k,e),k.xa&&(k.R.restore(),k.xa=!1)}}else Kb(c,"This space intentionally left blank");c.context.drawImage(c.da,0,0,c.da.width,c.da.height,c.Db,c.Qb,c.ib,c.lb);c.Pa=!1}}h.bd=function(){this.dd.length&&this.dd[0].bd()};
-h.Yb=function(a,b,c){var d=this;a=!1;switch(b){case "run":this.ya[b]=c;c.onclick=function(){var a;if(a=d.ia)if(a=d.ia,a.ra.tc)a=!0;else{var b=null,c,k=fb(a.id);for(c=0;cc&&(c=60);2>c&&(c=2);var d=1;b&&1a.ba.og&&(c=Math.round(c/a.ba.Ud));return c}function Nc(a){a.ba.le=0;a.Wb=a.Eb=a.ab=a.A=0;Oc(a);Zc(a,1)}
-function Zc(a,b,c){var d=!1;if(void 0!==b){.8>a.ba.le/a.ba.ze?b=1:d=!0;a.ba.Ud=b;b=a.ba.og*a.ba.Ud;if(a.ba.ze!=b){a.ba.ze=b;b=a.ba.ze.toFixed(2)+"Mhz";var e=a.ya.setSpeed;e&&(e.textContent=b);a.U("target speed: "+b)}c&&a.bd()}ad(a,a.Eb);a.Eb=0;a.ba.$e=ra();a.ba.Ae=0;bd(a);return d}
-h.Fe=function(a){if(qb(this,!0)){if(!this.ra.Lb){Zc(this);this.ia&&this.ia.start(this.ba.$e,Vc(this));this.ra.Lb=!0;this.ra.ah=!0;this.R&&cd(this.R);var b=this.ya.run;b&&(b.textContent="Halt");this.od(!0);a&&this.bd()}this.ba.ph>=this.ba.Kd&&bd(this,!0);this.ba.Df=0;this.ba.pg=ra();this.ba.Ae&&(a=this.ba.pg-this.ba.Ae,a>this.ba.Ni&&(this.ba.$e+=a,this.ba.$e>this.ba.pg&&(this.ba.$e=this.ba.pg)));try{do{var c=this.ra.Re?1:this.ba.$l;if(this.R){dd(this.R);var d=this.R;a=c;var e=d.P[0];if(e.ve){var f=
-(Vc(d.M,d.va)-e.wd)/d.xb|0,g=ed(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.Ha-Vc(q.M,q.va);0r&&(a=r)}c=a}try{this.nf(c)}catch(B){if("number"!=typeof B)throw B;}var x=this.ab-this.A;this.Eb+=x;this.ba.Df+=x;ad(this,0,!0);Uc(this,x);this.ba.Cf-=x;0>=this.ba.Cf&&(this.ba.Cf+=this.ba.Pi,Wc(this));this.ba.Bf-=x;0>=this.ba.Bf&&(this.ba.Bf+=this.ba.Oi,this.od());this.ba.df-=x;if(0>=this.ba.df){this.ba.df+=this.ba.oh;break}}while(this.ra.Lb)}catch(B){this.Zb();
-Qc(this);this.ia&&this.ia.stop(ra(),Vc(this));qb(this,!1);ub(this,B.stack||B.message);return}c=setTimeout;d=this.Lg;this.ba.Ae=ra();e=this.ba.Ni;this.ba.Df&&(e=Math.round(e*this.ba.Df/this.ba.oh));e-=this.ba.Ae-this.ba.pg;if(f=this.ba.Ae-this.ba.$e)this.ba.le=Math.round(this.Eb/(10*f))/100,864E5<=f&&(this.Wb=0,this.R&&dd(this.R,!0),Zc(this));if(0>e||this.ba.lethis.id&&p.call(e,13,a&65532)}return-1};h.Wl=function(a){var b=this.M;a=b.hd+(a<<2);var c=b.ua(a);b.ea&=-769;return this.load(b.ua(a+2))+c|0};h.Vl=function(a){var b=this.M;a<<=3;var c=b.hd+a|0;if(7<=(b.ee-c|0))return this.R=!0,a=jd(this,c,a),-1!==a&&(a+=this.Nf),a;p.call(b,13,a|2);return-1};
+(r=g.Xc,k.xa=!0,k.R.save(),k.R.translate(f,q),k.R.rotate(-Math.PI/2),f=q=0),r>1,k.W+=(k.Y>>1)-2,Kb(k,e),k.xa&&(k.R.restore(),k.xa=!1)}}else Kb(c,"This space intentionally left blank");c.context.drawImage(c.da,0,0,c.da.width,c.da.height,c.Eb,c.Qb,c.ib,c.lb);c.Pa=!1}}h.bd=function(){this.dd.length&&this.dd[0].bd()};
+h.Yb=function(a,b,c){var d=this;a=!1;switch(b){case "run":this.ya[b]=c;c.onclick=function(){var a;if(a=d.ia)if(a=d.ia,a.sa.tc)a=!0;else{var b=null,c,k=fb(a.id);for(c=0;cc&&(c=60);2>c&&(c=2);var d=1;b&&1a.ba.og&&(c=Math.round(c/a.ba.Ud));return c}function Nc(a){a.ba.le=0;a.Wb=a.Fb=a.bb=a.A=0;Oc(a);Zc(a,1)}
+function Zc(a,b,c){var d=!1;if(void 0!==b){.8>a.ba.le/a.ba.ze?b=1:d=!0;a.ba.Ud=b;b=a.ba.og*a.ba.Ud;if(a.ba.ze!=b){a.ba.ze=b;b=a.ba.ze.toFixed(2)+"Mhz";var e=a.ya.setSpeed;e&&(e.textContent=b);a.U("target speed: "+b)}c&&a.bd()}ad(a,a.Fb);a.Fb=0;a.ba.$e=ra();a.ba.Ae=0;bd(a);return d}
+h.Fe=function(a){if(qb(this,!0)){if(!this.sa.Mb){Zc(this);this.ia&&this.ia.start(this.ba.$e,Vc(this));this.sa.Mb=!0;this.sa.ah=!0;this.R&&cd(this.R);var b=this.ya.run;b&&(b.textContent="Halt");this.od(!0);a&&this.bd()}this.ba.ph>=this.ba.Kd&&bd(this,!0);this.ba.Df=0;this.ba.pg=ra();this.ba.Ae&&(a=this.ba.pg-this.ba.Ae,a>this.ba.Ni&&(this.ba.$e+=a,this.ba.$e>this.ba.pg&&(this.ba.$e=this.ba.pg)));try{do{var c=this.sa.Re?1:this.ba.$l;if(this.R){dd(this.R);var d=this.R;a=c;var e=d.P[0];if(e.ve){var f=
+(Vc(d.M,d.va)-e.wd)/d.xb|0,g=ed(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.Ha-Vc(q.M,q.va);0r&&(a=r)}c=a}try{this.nf(c)}catch(B){if("number"!=typeof B)throw B;}var x=this.bb-this.A;this.Fb+=x;this.ba.Df+=x;ad(this,0,!0);Uc(this,x);this.ba.Cf-=x;0>=this.ba.Cf&&(this.ba.Cf+=this.ba.Pi,Wc(this));this.ba.Bf-=x;0>=this.ba.Bf&&(this.ba.Bf+=this.ba.Oi,this.od());this.ba.df-=x;if(0>=this.ba.df){this.ba.df+=this.ba.oh;break}}while(this.sa.Mb)}catch(B){this.Zb();
+Qc(this);this.ia&&this.ia.stop(ra(),Vc(this));qb(this,!1);ub(this,B.stack||B.message);return}c=setTimeout;d=this.Lg;this.ba.Ae=ra();e=this.ba.Ni;this.ba.Df&&(e=Math.round(e*this.ba.Df/this.ba.oh));e-=this.ba.Ae-this.ba.pg;if(f=this.ba.Ae-this.ba.$e)this.ba.le=Math.round(this.Fb/(10*f))/100,864E5<=f&&(this.Wb=0,this.R&&dd(this.R,!0),Zc(this));if(0>e||this.ba.lethis.id&&p.call(e,13,a&65532)}return-1};h.Wl=function(a){var b=this.M;a=b.hd+(a<<2);var c=b.ua(a);b.ea&=-769;return this.load(b.ua(a+2))+c|0};h.Vl=function(a){var b=this.M;a<<=3;var c=b.hd+a|0;if(7<=(b.ee-c|0))return this.R=!0,a=jd(this,c,a),-1!==a&&(a+=this.Nf),a;p.call(b,13,a|2);return-1};
h.wi=function(a){return this.Ca+a|0};h.yi=function(a){return this.Ca+a|0};h.vi=function(a,b){return(a>>>0)+b<=this.fc?this.Ca+a|0:this.hg()};h.Bk=function(a,b){return(a>>>0)+b>this.fc?this.Ca+a|0:this.hg()};h.hg=function(){p.call(this.M,13,0);return-1};h.xi=function(a,b){return(a>>>0)+b<=this.fc?this.Ca+a|0:this.ig()};h.Ck=function(a,b){return(a>>>0)+b>this.fc?this.Ca+a|0:this.ig()};h.ig=function(){p.call(this.M,13,0);return-1};
-function kd(a,b,c){var d=a.M,e=d.ua(b+2),f=d.ua(b)|(e&255)<<16,d=d.ua(b+4);a.ga=c;a.Ca=f;a.Za=d;a.fc=(d>>>0)+1;a.Fb=e;a.type=e&7936;a.ext=0;a.cc=b;gd(a,!0)}
-function jd(a,b,c,d){var e=a.M;if(!d&&c===a.A.ga)return a.ga=c,a.Ca=a.A.Ca,a.Za=a.A.Za,a.fc=(a.A.Za>>>0)+1,a.Fb=a.A.Fb,a.type=a.A.type,a.ext=a.A.ext,a.cc=a.A.cc,a.A.ga=-1,gd(a,!0,!0,!1),a.Ca;a.A.ga=-1;var f=e.ua(b+0),g=e.ua(b+4),k=g&7936,q=e.ua(b+2)|(g&255)<<16,r=e.ua(b+6),x=c&65528;if(80386<=e.na){var B=f,q=q|(r&65280)<<16,f=f|(r&15)<<16;r&128&&(f=f<<12|4095)}switch(a.id){case 1:var y=a.R;a.We=!1;if(y&&1==c&&a.C.length){var L=a.C[a.Nf-1];if(L&&!L())return-1}var L=c&3,H=(g&24576)>>13,J,Z,P;if(x&&
-!(g&32768))return 6>a.id&&p.call(e,11,c&65532),-1;if(6144<=k){L=c&3;if(L>a.ac){if(!1!==y&&!(H==a.ac||k&1024&&H<=a.ac))return-1;J=ld(e);md(e,ld(e),!0);t(e,J);a.We=!0}J=0}else{if(256==k||2304==k)return nd(a,c,y)?a.Ca:-1;if(1024==k)J=2,P=0,La.id&&p.call(e,13,c&65532|(Z?2:0)),-1;break;case 2:if(x){if(4096>k||2048==(k&2560))return 6>a.id&&p.call(e,13,c&65532),-1;if(!(g&32768))return 6>a.id&&p.call(e,11,c&65532),-1}break;case 3:if(!(g&32768))return 6>a.id&&p.call(e,12,c&65532),-1;if(!x||4096>k||512!=(k&2560))return 6>a.id&&p.call(e,13,c&65532),-1;break;case 4:y=k&-513;if(!x||256!=y&&2304!=y)return 6>a.id&&p.call(e,13,c&65532),-1;2304==y&&(a.oi=
-q+e.ua(q+100+2)|0,a.yk=q+a.Za|0);break;case 6:if(!(k&4096)&&768>>0)+1,a.Fb=g,a.type=k,a.ext=r,a.cc=b,gd(a,!0,!0,!1));return q}
-function nd(a,b,c){var d=a.M,e=a.ac,f=d.$a.ga,g=d.$a.Ca;if(!c){if(!(d.$a.type&512))return p.call(d,13,b&65532),!1;d.ob(d.$a.cc+4,d.$a.Fb&=-513)}if(-1===d.$a.load(b))return!1;var k=d.$a.Ca;if(!1!==c){if(d.$a.type&512)return p.call(d,13,b&65532),!1;d.ob(d.$a.cc+4,d.$a.Fb|=512)}d.$a.type=d.$a.type&-513|d.$a.Fb&512;256==d.$a.type||768==d.$a.type?(d.ob(g+14,v(d)),d.ob(g+16,yd(d)),d.ob(g+18,d.F),d.ob(g+20,d.G),d.ob(g+22,d.H),d.ob(g+24,d.D),d.ob(g+26,u(d)),d.ob(g+28,d.K),d.ob(g+30,d.J),d.ob(g+32,d.I),d.ob(g+
-34,d.hb.ga),d.ob(g+36,d.Ba.ga),d.ob(g+38,d.za.ga),d.ob(g+40,d.Cb.ga),d.Jc.load(d.ua(k+42)),zd(d,d.ua(k+16)|(c?16384:0)),d.F=d.ua(k+18),d.G=d.ua(k+20),d.H=d.ua(k+22),d.D=d.ua(k+24),d.K=d.ua(k+28),d.J=d.ua(k+30),d.I=d.ua(k+32),d.hb.load(d.ua(k+34)),d.Cb.load(d.ua(k+40)),Ad(d,d.ua(k+14),d.ua(k+36)),b=38,g=26,a.ac>>0)+1)};
-function gd(a,b,c,d){void 0===c&&(c=!!(a.M.gb&1));a.Zc=!1;if(c)if(a.load=a.mg,a.Mi=a.Vl,a.Fc=a.vi,a.Ac=a.xi,void 0===d&&(d=!!(a.M.ea&131072)),d)a.load=a.ya,a.Fc=a.P,a.Ac=a.ja,a.ac=a.Gc=3,a.ha=a.cd=2,a.B=a.Ea=65535,a.Za=65535,a.fc=a.Za+1,a.cd=a.ha,a.cc=-1,a.We=!1;else{if(!(a.ga&-4))a.Fc=a.hg,a.Ac=a.ig;else if(a.type&4096){6144==(a.type&6656)&&(a.Fc=a.hg);if(a.type&2048||!(a.type&512))a.Ac=a.ig;1024==(a.type&3072)&&(a.Fc==a.vi&&(a.Fc=a.Bk),a.Ac==a.xi&&(a.Ac=a.Ck),a.Zc=!0);b&&6>a.id&&a.ga&-4&&-1!==a.cc&&
-(c=a.cc+5,a.M.xc(c,a.M.Va(c)|1))}b&&(a.ac=a.ga&3,a.Gc=(a.Fb&24576)>>13,80386>a.M.na||!(a.ext&64)?(a.ha=2,a.B=65535):(a.ha=4,a.B=-1),a.cd=a.ha,a.Ea=a.B)}else a.load=a.ih,a.Mi=a.Wl,a.Fc=a.wi,a.Ac=a.yi,a.ac=a.Gc=0,a.cc=-1,a.We=!1}
+function kd(a,b,c){var d=a.M,e=d.ua(b+2),f=d.ua(b)|(e&255)<<16,d=d.ua(b+4);a.ga=c;a.Ca=f;a.$a=d;a.fc=(d>>>0)+1;a.Gb=e;a.type=e&7936;a.ext=0;a.cc=b;gd(a,!0)}
+function jd(a,b,c,d){var e=a.M;if(!d&&c===a.A.ga)return a.ga=c,a.Ca=a.A.Ca,a.$a=a.A.$a,a.fc=(a.A.$a>>>0)+1,a.Gb=a.A.Gb,a.type=a.A.type,a.ext=a.A.ext,a.cc=a.A.cc,a.A.ga=-1,gd(a,!0,!0,!1),a.Ca;a.A.ga=-1;var f=e.ua(b+0),g=e.ua(b+4),k=g&7936,q=e.ua(b+2)|(g&255)<<16,r=e.ua(b+6),x=c&65528;if(80386<=e.na){var B=f,q=q|(r&65280)<<16,f=f|(r&15)<<16;r&128&&(f=f<<12|4095)}switch(a.id){case 1:var y=a.R;a.We=!1;if(y&&1==c&&a.C.length){var L=a.C[a.Nf-1];if(L&&!L())return-1}var L=c&3,F=(g&24576)>>13,I,V,P;if(x&&
+!(g&32768))return 6>a.id&&p.call(e,11,c&65532),-1;if(6144<=k){L=c&3;if(L>a.ac){if(!1!==y&&!(F==a.ac||k&1024&&F<=a.ac))return-1;I=ld(e);md(e,ld(e),!0);t(e,I);a.We=!0}I=0}else{if(256==k||2304==k)return nd(a,c,y)?a.Ca:-1;if(1024==k)I=2,P=0,La.id&&p.call(e,13,c&65532|(V?2:0)),-1;break;case 2:if(x){if(4096>k||2048==(k&2560))return 6>a.id&&p.call(e,13,c&65532),-1;if(!(g&32768))return 6>a.id&&p.call(e,11,c&65532),-1}break;case 3:if(!(g&32768))return 6>a.id&&p.call(e,12,c&65532),-1;if(!x||4096>k||512!=(k&2560))return 6>a.id&&p.call(e,13,c&65532),-1;break;case 4:y=k&-513;if(!x||256!=y&&2304!=y)return 6>a.id&&p.call(e,13,c&65532),-1;2304==y&&(a.oi=
+q+e.ua(q+100+2)|0,a.yk=q+a.$a|0);break;case 6:if(!(k&4096)&&768>>0)+1,a.Gb=g,a.type=k,a.ext=r,a.cc=b,gd(a,!0,!0,!1));return q}
+function nd(a,b,c){var d=a.M,e=a.ac,f=d.ab.ga,g=d.ab.Ca;if(!c){if(!(d.ab.type&512))return p.call(d,13,b&65532),!1;d.pb(d.ab.cc+4,d.ab.Gb&=-513)}if(-1===d.ab.load(b))return!1;var k=d.ab.Ca;if(!1!==c){if(d.ab.type&512)return p.call(d,13,b&65532),!1;d.pb(d.ab.cc+4,d.ab.Gb|=512)}d.ab.type=d.ab.type&-513|d.ab.Gb&512;256==d.ab.type||768==d.ab.type?(d.pb(g+14,v(d)),d.pb(g+16,yd(d)),d.pb(g+18,d.F),d.pb(g+20,d.G),d.pb(g+22,d.H),d.pb(g+24,d.D),d.pb(g+26,u(d)),d.pb(g+28,d.K),d.pb(g+30,d.J),d.pb(g+32,d.I),d.pb(g+
+34,d.hb.ga),d.pb(g+36,d.Ba.ga),d.pb(g+38,d.za.ga),d.pb(g+40,d.Db.ga),d.Jc.load(d.ua(k+42)),zd(d,d.ua(k+16)|(c?16384:0)),d.F=d.ua(k+18),d.G=d.ua(k+20),d.H=d.ua(k+22),d.D=d.ua(k+24),d.K=d.ua(k+28),d.J=d.ua(k+30),d.I=d.ua(k+32),d.hb.load(d.ua(k+34)),d.Db.load(d.ua(k+40)),Ad(d,d.ua(k+14),d.ua(k+36)),b=38,g=26,a.ac>>0)+1)};
+function gd(a,b,c,d){void 0===c&&(c=!!(a.M.gb&1));a.Zc=!1;if(c)if(a.load=a.mg,a.Mi=a.Vl,a.Fc=a.vi,a.Ac=a.xi,void 0===d&&(d=!!(a.M.ea&131072)),d)a.load=a.ya,a.Fc=a.P,a.Ac=a.ja,a.ac=a.Gc=3,a.ha=a.cd=2,a.B=a.Ea=65535,a.$a=65535,a.fc=a.$a+1,a.cd=a.ha,a.cc=-1,a.We=!1;else{if(!(a.ga&-4))a.Fc=a.hg,a.Ac=a.ig;else if(a.type&4096){6144==(a.type&6656)&&(a.Fc=a.hg);if(a.type&2048||!(a.type&512))a.Ac=a.ig;1024==(a.type&3072)&&(a.Fc==a.vi&&(a.Fc=a.Bk),a.Ac==a.xi&&(a.Ac=a.Ck),a.Zc=!0);b&&6>a.id&&a.ga&-4&&-1!==a.cc&&
+(c=a.cc+5,a.M.xc(c,a.M.Wa(c)|1))}b&&(a.ac=a.ga&3,a.Gc=(a.Gb&24576)>>13,80386>a.M.na||!(a.ext&64)?(a.ha=2,a.B=65535):(a.ha=4,a.B=-1),a.cd=a.ha,a.Ea=a.B)}else a.load=a.ih,a.Mi=a.Wl,a.Fc=a.wi,a.Ac=a.yi,a.ac=a.Gc=0,a.cc=-1,a.We=!1}
function Cd(a){this.na=a.model||8088;var b=a.stepping;this.ic=this.na+(b?ca(b,16):0);b=0;switch(this.na){default:b=4772727;break;case 80286:b=6E6;break;case 80386:b=16E6}Mc.call(this,a,b);this.Rf=61442;this.$b=1792;this.Pf=28672;this.Ad=4;this.va=255;this.C=80286<=this.na?xb:wb;this.W=Dd;this.Yf=Ed;this.Zf=Fd;this.$f=Gd;if(80186<=this.na&&(this.W=Dd.slice(),this.Yf=Ed.slice(),this.Zf=Fd.slice(),this.va=31,this.W[15]=Hd,this.W[96]=Id,this.W[97]=Jd,this.W[98]=Kd,this.W[99]=Hd,this.W[100]=Hd,this.W[101]=
Hd,this.W[102]=Hd,this.W[103]=Hd,this.W[104]=Ld,this.W[105]=Md,this.W[106]=Nd,this.W[107]=Rd,this.W[108]=Sd,this.W[109]=Td,this.W[110]=Yd,this.W[111]=Zd,this.W[192]=$d,this.W[193]=ae,this.W[200]=be,this.W[201]=ce,this.W[241]=de,this.Yf[7]=ee,this.Zf[7]=ee,80286<=this.na)){this.Rf=2;this.$b|=28672;this.Ad=0;this.W[15]=fe;this.Qb=ge.slice();for(a=0;a=this.ic&&(this.Qb[166]=oe,this.Qb[167]=pe)}}this.Fd=[];this.Gd=[];this.Id=0;Nc(this);this.ra.Sd=this.ra.Ei=!1;this.Kg=0;this.Lc=this.wa=[];this.La=this.Ob=this.Ga=this.Dd=this.ed=this.Ib=this.pb=0;qe(this)}eb(Cd,Mc);
+le;this.W[102]=me;this.W[103]=ne;for(c in w)this.Qb[+c]=w[c];80546<=this.ic&&80562>=this.ic&&(this.Qb[166]=oe,this.Qb[167]=pe)}}this.Fd=[];this.Gd=[];this.Id=0;Nc(this);this.sa.Sd=this.sa.Ei=!1;this.Kg=0;this.Lc=this.wa=[];this.La=this.Pb=this.Ga=this.Dd=this.ed=this.Jb=this.qb=0;qe(this)}eb(Cd,Mc);
function re(a){var b;if(a.wa===a.Lc){a.wa=Array(a.Dd);a.Hd=new Ob(null,0,0,5,null,a);Pb(a.Hd,a.ma);for(b=0;ba.Jd&&(a.Sf[a.Jd++]=d);a.wa[b]=a.Hd}a.Ed=[]}
-function Gc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.Lc[(a.Nd+e&a.Ib)>>>a.La],g=f.Yd(e);if(!(g&1))return d||se.call(a,b,!1,c),a.qd;if(!(g&4)&&3==a.sa)return d||se.call(a,b,!0,c),a.qd;var k=(b&4190208)>>>10,g=a.Lc[((g&-4096)+k&a.Ib)>>>a.La],q=g.Yd(k);if(!(q&1))return d||se.call(a,b,!1,c),a.qd;if(!(q&4)&&3==a.sa)return d||se.call(a,b,!0,c),a.qd;c=a.Lc[((q&-4096)+(b&4095)&a.Ib)>>>a.La];if(d)return c;d=b>>>a.La;q=a.wa[d];b=b&-4096;var r;0>2;b.C=g;b.O=k>>2;vb&&bc&&c.fa&&!c.controller?(b.bb=c.bb,b.fe=c.fe,b.fa=c.fa,Zb(b,Lc)):(b.ya=c?zc(32):0,b.ka=c?zc(96):0,Zb(b,Jc));Pb(b,a.ma,q);a.wa[d]=b;a.Ed.push(d);return b}function te(a){a.wa!==a.Lc&&(a.wa=a.Lc,a.Hd=null,a.Ed=null,a.qd=null)}h=Cd.prototype;h.reset=function(){this.ra.Lb&&this.Zb();qe(this);Nc(this);this.ra.td=!1};
+function Gc(a,b,c,d){var e=(b&-4194304)>>>20,f=a.Lc[(a.Nd+e&a.Jb)>>>a.La],g=f.Yd(e);if(!(g&1))return d||se.call(a,b,!1,c),a.qd;if(!(g&4)&&3==a.ta)return d||se.call(a,b,!0,c),a.qd;var k=(b&4190208)>>>10,g=a.Lc[((g&-4096)+k&a.Jb)>>>a.La],q=g.Yd(k);if(!(q&1))return d||se.call(a,b,!1,c),a.qd;if(!(q&4)&&3==a.ta)return d||se.call(a,b,!0,c),a.qd;c=a.Lc[((q&-4096)+(b&4095)&a.Jb)>>>a.La];if(d)return c;d=b>>>a.La;q=a.wa[d];b=b&-4096;var r;0>2;b.C=g;b.O=k>>2;vb&&bc&&c.fa&&!c.controller?(b.cb=c.cb,b.fe=c.fe,b.fa=c.fa,Zb(b,Lc)):(b.ya=c?zc(32):0,b.ka=c?zc(96):0,Zb(b,Jc));Pb(b,a.ma,q);a.wa[d]=b;a.Ed.push(d);return b}function te(a){a.wa!==a.Lc&&(a.wa=a.Lc,a.Hd=null,a.Ed=null,a.qd=null)}h=Cd.prototype;h.reset=function(){this.sa.Mb&&this.Zb();qe(this);Nc(this);this.sa.td=!1};
function ue(a,b){var c;switch(b){case 0:c=a.F;break;case 1:c=a.G;break;case 2:c=a.H;break;case 3:c=a.D;break;case 4:c=u(a);break;case 5:c=a.K;break;case 6:c=a.J;break;case 7:c=a.I}return c}function ve(a,b,c){switch(b){case 0:a.F=c;break;case 1:a.G=c;break;case 2:a.H=c;break;case 3:a.D=c;break;case 4:t(a,c);break;case 5:a.K=c;break;case 6:a.J=c;break;case 7:a.I=c}}
-function qe(a){a.F=0;a.D=0;a.G=0;a.H=0;a.ib=0;a.K=0;a.J=0;a.I=0;a.Ua=!1;a.la=a.Aa=0;a.xb=0;a.Jg=0;a.jc=0;a.gb=65520;a.hd=0;a.ee=1023;a.ea=a.Pa=0;a.Rc=a.sd=a.Qc=a.Sc=0;a.lb=-1;a.Ec=-1;a.De=a.Y=-1;a.Ba=new fd(a,1,"CS");a.Cb=new fd(a,2,"DS");a.hb=new fd(a,2,"ES");a.za=new fd(a,3,"SS");t(a,0);md(a,0);if(80386<=a.na){switch(a.ic){case 80562:case 80563:a.H=771;break;case 80578:a.H=772;break;case 80594:a.H=773;break;case 80595:case 80596:a.H=776}a.gb=16;a.gi=0;a.oe=0;a.Nd=0;a.Ka=[0,0,0,0,null,null,0,0];
-a.we=[null,null,null,null,null,null,0,0];a.Tb=new fd(a,2,"FS");a.Ub=new fd(a,2,"GS");te(a)}a.jf=new fd(a,0,"NULL");a.O=a.Cb;a.P=a.za;a.V=a.Ja=0;a.X=a.Z=-1;a.nd=a.jf;a.xa=0;if(80286>a.na)Ad(a,0,65535);else{a.gd=0;a.de=65535;a.Jc=new fd(a,5,"LDT",!0);a.$a=new fd(a,4,"TSS",!0);a.Fa=new fd(a,6,"VER",!0);Ad(a,65520,61440);var b,c=v(a);b=a.Ba;var d=-65536;80386>b.M.na&&(d&=16777215);b=b.Ca=d;a.Ma=b+c|0;a.hf=b+a.Ba.Za|0}zd(a,0);sd(a)}function we(a,b){b.ga&65528&&b.Gca.na)Ad(a,0,65535);else{a.gd=0;a.de=65535;a.Jc=new fd(a,5,"LDT",!0);a.ab=new fd(a,4,"TSS",!0);a.Fa=new fd(a,6,"VER",!0);Ad(a,65520,61440);var b,c=v(a);b=a.Ba;var d=-65536;80386>b.M.na&&(d&=16777215);b=b.Ca=d;a.Ma=b+c|0;a.hf=b+a.Ba.$a|0}zd(a,0);sd(a)}function we(a,b){b.ga&65528&&b.Gc>16,e=0;4>e;e++){if(c&3){var f=!!(d&1),g=a.Ka[e],g=g&~(d>>2&3);b?a.wa[g>>>a.La].Pd(g&a.Ga,f,a):Hc(a.wa[g>>>a.La],f)}c>>=2;d>>=4}}function Ec(a,b,c,d){if(!(a.V&8192)&&a.Ka[7]&255){c--;var e=a.Ka[7],f=e>>16;d=d?1:0==d?3:0;for(var g=0;4>g;g++){if(e&3&&(f&3)==d){var k=f>>2;if(b+c>=a.Ka[g]&&b<=a.Ka[g]+k){a.Ka[6]|=1<>=2;f>>=4}}}
-function sd(a,b,c){void 0===b&&(b=!!(a.gb&1));void 0===c&&(c=!!(a.ea&131072));a.$f=b&&!c?Ve:Gd;gd(a.Ba,!1,b,c);gd(a.Cb,!1,b,c);gd(a.za,!1,b,c);gd(a.hb,!1,b,c);80386<=a.na&&(gd(a.Tb,!1,b,c),gd(a.Ub,!1,b,c),Je(a))}
-h.save=function(){var a=new We(this);Xe(a,0,[this.F,this.D,this.G,this.H,u(this),this.K,this.J,this.I]);var b=v(this),c=this.Ba.save(),d=this.Cb.save(),e=this.za.save(),f=this.hb.save(),g;null!=this.gd?(g=[this.gb,this.gd,this.de,this.hd,this.ee,this.Jc.save(),this.$a.save(),this.Pa],80386<=this.na&&(g.push(this.gi),g.push(this.oe),g.push(this.Nd),g.push(this.Ka),g.push(this.we))):g=null;b=[b,c,d,e,f,g,yd(this)];80386<=this.na&&(b.push(this.Tb.save()),b.push(this.Ub.save()));Xe(a,1,b);Xe(a,2,[this.O.hc,
-this.P.hc,this.V,this.Ja,this.xa,this.X,this.Z]);Xe(a,3,[0,this.Wb,this.ba.Ud]);b=this.ja;c=!!(this.gb&-2147483648);d=0;e=[];(f=!b.ja&&b.rg==b.Ib)||Ub(b,!0);for(g=0;gc&&0<=(a.hf^a.Ma)&&(8088>=a.na||a.Ba.Za==a.Ba.Ea?$e(a,a.Ma-a.Ba.Ca):-1>c&&p.call(a,13,0))}function cf(a){a.Ma=a.De}function u(a){return a.ib&~a.za.Ea|a.ka-a.za.Ca}function t(a,b){a.ib=b;a.ka=a.za.Ca+(b&a.za.Ea)|0}function df(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&ef(a),g&2&&ff(a),g&4&&gf(a),g&8&&hf(a),g&16&&jf(a),g&32&&kf(a))}f?(a.Rc=d,a.Qc=b):(a.Rc=b,a.Qc=d);a.sd=c;a.Sc=d;a.resultType=e}
+function sd(a,b,c){void 0===b&&(b=!!(a.gb&1));void 0===c&&(c=!!(a.ea&131072));a.$f=b&&!c?Ve:Gd;gd(a.Ba,!1,b,c);gd(a.Db,!1,b,c);gd(a.za,!1,b,c);gd(a.hb,!1,b,c);80386<=a.na&&(gd(a.Tb,!1,b,c),gd(a.Ub,!1,b,c),Je(a))}
+h.save=function(){var a=new We(this);Xe(a,0,[this.F,this.D,this.G,this.H,u(this),this.K,this.J,this.I]);var b=v(this),c=this.Ba.save(),d=this.Db.save(),e=this.za.save(),f=this.hb.save(),g;null!=this.gd?(g=[this.gb,this.gd,this.de,this.hd,this.ee,this.Jc.save(),this.ab.save(),this.Pa],80386<=this.na&&(g.push(this.gi),g.push(this.oe),g.push(this.Nd),g.push(this.Ka),g.push(this.we))):g=null;b=[b,c,d,e,f,g,yd(this)];80386<=this.na&&(b.push(this.Tb.save()),b.push(this.Ub.save()));Xe(a,1,b);Xe(a,2,[this.O.hc,
+this.P.hc,this.V,this.Ja,this.xa,this.X,this.Z]);Xe(a,3,[0,this.Wb,this.ba.Ud]);b=this.ja;c=!!(this.gb&-2147483648);d=0;e=[];(f=!b.ja&&b.rg==b.Jb)||Ub(b,!0);for(g=0;gc&&0<=(a.hf^a.Ma)&&(8088>=a.na||a.Ba.$a==a.Ba.Ea?$e(a,a.Ma-a.Ba.Ca):-1>c&&p.call(a,13,0))}function cf(a){a.Ma=a.De}function u(a){return a.ib&~a.za.Ea|a.ka-a.za.Ca}function t(a,b){a.ib=b;a.ka=a.za.Ca+(b&a.za.Ea)|0}function df(a,b,c,d,e,f){if(63!=(e&63)&&e!=a.resultType){var g=(e^a.resultType)&a.resultType;g&&(g&1&&ef(a),g&2&&ff(a),g&4&&gf(a),g&8&&hf(a),g&16&&jf(a),g&32&&kf(a))}f?(a.Rc=d,a.Qc=b):(a.Rc=b,a.Qc=d);a.sd=c;a.Sc=d;a.resultType=e}
function lf(a,b,c,d,e){a.resultType=c|26;a.Sc=b;d?mf(a):nf(a);e?of(a):pf(a);return b}function qf(a,b,c,d){c&d?mf(a):nf(a);(b^c)&d?of(a):pf(a)}function rf(a){return ef(a)?1:0}function ef(a){a.resultType&1&&(a.ea&=-2,(a.Rc^(a.Rc^a.sd)&(a.sd^a.Qc))&a.resultType&-2147450752&&(a.ea|=1),a.resultType&=-2);return a.ea&1}function ff(a){a.resultType&2&&(a.ea&=-5,38505>>((a.Sc^a.Sc>>4)&15)&1&&(a.ea|=4),a.resultType&=-3);return a.ea&4}
function gf(a){a.resultType&4&&(a.ea&=-17,(a.Qc^a.Rc^a.sd)&16&&(a.ea|=16),a.resultType&=-5);return a.ea&16}function hf(a){a.resultType&8&&(a.ea&=-65,a.Sc&((a.resultType&-2147450752)-1|a.resultType&-2147450752)||(a.ea|=64),a.resultType&=-9);return a.ea&64}function jf(a){a.resultType&16&&(a.ea&=-129,a.Sc&a.resultType&-2147450752&&(a.ea|=128),a.resultType&=-17);return a.ea&128}
function kf(a){a.resultType&32&&(a.ea&=-2049,(a.Rc^a.Qc)&(a.sd^a.Qc)&a.resultType&-2147450752&&(a.ea|=2048),a.resultType&=-33);return a.ea&2048}function nf(a){a.resultType&=-2;a.ea&=-2}function sf(a){a.resultType&=-5;a.ea&=-17}function tf(a){a.resultType&=-9;a.ea&=-65}function pf(a){a.resultType&=-33;a.ea&=-2049}function mf(a){a.resultType&=-2;a.ea|=1}function uf(a){a.resultType&=-5;a.ea|=16}function vf(a){a.resultType&=-9;a.ea|=64}function of(a){a.resultType&=-33;a.ea|=2048}
-function yd(a){return a.ea&-2262|ef(a)|ff(a)|gf(a)|hf(a)|jf(a)|kf(a)}function wf(a,b){b=b|a.gb&1|65520;a.gb=a.gb&-65536|b&65535;a.gb&1&&sd(a,!0)}function zd(a,b,c){a.gb&1||(b&=~a.Pf);void 0===c&&(c=a.sa);c?b=b&-12289|a.ea&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.$b|2261)|b&(a.$b|2261)|a.Rf;a.ea&256&&(a.xa|=2,a.V|=4)}
-function xf(a,b,c,d){var e=0;if(a.gb&1&&(a.sa>a.Pa||a.ea&131072)&&a.$a.oi)for(var f=a.$a.oi+(b>>>3),e=(1<>>=8,f++;return e?(n(a,256)&&nb(a,"checkIOPM("+ga(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),p.call(a,13,0),!1):!0}
+function yd(a){return a.ea&-2262|ef(a)|ff(a)|gf(a)|hf(a)|jf(a)|kf(a)}function wf(a,b){b=b|a.gb&1|65520;a.gb=a.gb&-65536|b&65535;a.gb&1&&sd(a,!0)}function zd(a,b,c){a.gb&1||(b&=~a.Pf);void 0===c&&(c=a.ta);c?b=b&-12289|a.ea&12288:a.Pa=(b&12288)>>12;c>a.Pa&&(b=b&-513|a.ea&512);a.resultType=128;a.ea=a.ea&~(a.$b|2261)|b&(a.$b|2261)|a.Rf;a.ea&256&&(a.xa|=2,a.V|=4)}
+function xf(a,b,c,d){var e=0;if(a.gb&1&&(a.ta>a.Pa||a.ea&131072)&&a.ab.oi)for(var f=a.ab.oi+(b>>>3),e=(1<>>=8,f++;return e?(n(a,256)&&nb(a,"checkIOPM("+ga(b)+","+c+","+(d?"input":"output")+"): trapped",!0,!0),p.call(a,13,0),!1):!0}
h.Yb=function(a,b,c){var d=!1;switch(b){case "EAX":case "EBX":case "ECX":case "EDX":case "ESP":case "EBP":case "ESI":case "EDI":case "EIP":case "AX":case "BX":case "CX":case "DX":case "SP":case "BP":case "SI":case "DI":case "IP":case "PC":case "CS":case "DS":case "SS":case "ES":case "FS":case "GS":case "CR0":case "CR2":case "CR3":case "PS":case "C":case "P":case "A":case "Z":case "S":case "T":case "I":case "D":case "V":this.ya[b]=c;this.Kg++;d=!0;break;default:d=this.parent.Yb.call(this,a,b,c)}return d};
-function yf(a,b,c,d){var e=(!1===d?a.Lc:a.wa)[(b&a.pb)>>>a.La];e&&5==e.type&&(e=Gc(a,b,!1,!0));if(e){var f=b&a.Ga;if(!c||1==c)return e.ne(f,b);if(2==c)return f>>this.La].nc(a&this.Ga,a)};
-h.ua=function(a){var b=a&this.Ga,c=(a&this.pb)>>>this.La;this.A-=this.C.yg;if(b>>this.La;if(b>>this.La].yc(a&this.Ga,b&255,a)};
-h.ob=function(a,b){var c=a&this.Ga,d=(a&this.pb)>>>this.La;this.A-=this.C.yg;c>8&255,a+1))};h.tb=function(a,b){var c=a&this.Ga,d=(a&this.pb)>>>this.La;this.A-=this.C.yg;if(c>>=8}};function zf(a,b,c){a.nd=b;a.X=b.Fc(a.qb=c,1);return a.V&1?0:a.Va(a.X)}
-function E(a,b){return zf(a,a.O,b&a.Ea)}function F(a,b){return zf(a,a.P,b&a.Ea)}function Af(a,b,c){a.nd=b;a.X=b.Fc(a.qb=c,a.ha);return a.V&1?0:a.ub(a.X)}function G(a,b){return Af(a,a.O,b&a.Ea)}function I(a,b){return Af(a,a.P,b&a.Ea)}function Bf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.qb=c,1);return a.V&1?0:a.Va(a.X)}function K(a,b){return Bf(a,a.O,b&a.Ea)}function M(a,b){return Bf(a,a.P,b&a.Ea)}function Cf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.qb=c,a.ha);return a.V&1?0:a.ub(a.X)}
-function N(a,b){return Cf(a,a.O,b&a.Ea)}function O(a,b){return Cf(a,a.P,b&a.Ea)}function Q(a,b){a.V&2||a.xc(a.nd.Ac(a.qb,1),b)}function R(a,b){a.V&2||a.oc(a.nd.Ac(a.qb,a.ha),b)}function ud(a,b,c){return a.ub(b.Fc(c,a.ha))}h.ca=function(){var a=this.Va(this.Ma);bf(this,1);return a};function Df(a){var b=a.ua(a.Ma);bf(a,2);return b}function S(a){var b=a.dc(a.Ma);bf(a,a.cd);return b}h.Qa=function(){var a=this.ub(this.Ma);bf(this,this.ha);return a};
-h.L=function(){var a=this.Va(this.Ma)<<24>>24;bf(this,1);return a};function T(a,b){var c=a.Va(a.Ma);bf(a,1);return Ef[c].call(a,b)}function ld(a){var b=a.ub(a.ka);a.ka=a.ka+a.ha|0;var c=a.Gg-a.ka|0;0>c&&0<=(a.Gg^a.ka)&&(8088>=a.na||!a.za.Zc&&a.za.Za==a.za.Ea||a.za.Zc&&!a.za.Za?t(a,a.ka-a.za.Ca&a.za.Ea):-1>c&&p.call(a,12,0));return b}
-function Ff(a,b,c){var d=a.ka-c|0;0>(d-a.pd|0)&&0<=(a.pd^d)&&(8088>=a.na||!a.za.Zc&&a.za.Za==a.za.Ea||a.za.Zc&&!a.za.Za?(t(a,d-a.za.Ca&a.za.Ea),d=a.ka):p.call(a,12,0));2==c?a.ob(d,b):a.tb(d,b);a.ka=d}function vd(a,b){var c=a.ka-a.ha|0;0>(c-a.pd|0)&&0<=(a.pd^c)&&(8088>=a.na||!a.za.Zc&&a.za.Za==a.za.Ea||a.za.Zc&&!a.za.Za?(t(a,c-a.za.Ca&a.za.Ea),c=a.ka):p.call(a,12,0));a.oc(c,b);a.ka=c}
-function Gf(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.na)2this.na?0:1,e=0;2>e;e++){switch(d){case 0:if(this.xa&1&&this.ea&512){var f=If(this.R);if(-1<=f&&(this.xa&=-2,0<=f)){this.xa&=-5;Jf.call(this,
-f);d=!0;break a}}break;case 1:if(this.xa&2){this.xa&=-3;80386<=this.na&&(this.Ka[6]|=16384);Jf.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.U("interrupt dispatched");this.V=0;break}if(this.xa&4){this.V=this.A=0;break}}if(b){if(Kf(this.ma,this.Ma,c)){this.Zb();break}c=1}this.V=0;this.W[this.ca()].call(this)}while(0>>a.La];e&&5==e.type&&(e=Gc(a,b,!1,!0));if(e){var f=b&a.Ga;if(!c||1==c)return e.ne(f,b);if(2==c)return f>>this.La].nc(a&this.Ga,a)};
+h.ua=function(a){var b=a&this.Ga,c=(a&this.qb)>>>this.La;this.A-=this.C.yg;if(b>>this.La;if(b>>this.La].yc(a&this.Ga,b&255,a)};
+h.pb=function(a,b){var c=a&this.Ga,d=(a&this.qb)>>>this.La;this.A-=this.C.yg;c>8&255,a+1))};h.ub=function(a,b){var c=a&this.Ga,d=(a&this.qb)>>>this.La;this.A-=this.C.yg;if(c>>=8}};function zf(a,b,c){a.nd=b;a.X=b.Fc(a.rb=c,1);return a.V&1?0:a.Wa(a.X)}
+function E(a,b){return zf(a,a.O,b&a.Ea)}function G(a,b){return zf(a,a.P,b&a.Ea)}function Af(a,b,c){a.nd=b;a.X=b.Fc(a.rb=c,a.ha);return a.V&1?0:a.vb(a.X)}function H(a,b){return Af(a,a.O,b&a.Ea)}function J(a,b){return Af(a,a.P,b&a.Ea)}function Bf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.rb=c,1);return a.V&1?0:a.Wa(a.X)}function K(a,b){return Bf(a,a.O,b&a.Ea)}function M(a,b){return Bf(a,a.P,b&a.Ea)}function Cf(a,b,c){a.nd=b;a.Z=a.X=b.Fc(a.rb=c,a.ha);return a.V&1?0:a.vb(a.X)}
+function N(a,b){return Cf(a,a.O,b&a.Ea)}function O(a,b){return Cf(a,a.P,b&a.Ea)}function Q(a,b){a.V&2||a.xc(a.nd.Ac(a.rb,1),b)}function R(a,b){a.V&2||a.oc(a.nd.Ac(a.rb,a.ha),b)}function ud(a,b,c){return a.vb(b.Fc(c,a.ha))}h.ca=function(){var a=this.Wa(this.Ma);bf(this,1);return a};function Df(a){var b=a.ua(a.Ma);bf(a,2);return b}function S(a){var b=a.dc(a.Ma);bf(a,a.cd);return b}h.Qa=function(){var a=this.vb(this.Ma);bf(this,this.ha);return a};
+h.L=function(){var a=this.Wa(this.Ma)<<24>>24;bf(this,1);return a};function T(a,b){var c=a.Wa(a.Ma);bf(a,1);return Ef[c].call(a,b)}function ld(a){var b=a.vb(a.ka);a.ka=a.ka+a.ha|0;var c=a.Gg-a.ka|0;0>c&&0<=(a.Gg^a.ka)&&(8088>=a.na||!a.za.Zc&&a.za.$a==a.za.Ea||a.za.Zc&&!a.za.$a?t(a,a.ka-a.za.Ca&a.za.Ea):-1>c&&p.call(a,12,0));return b}
+function Ff(a,b,c){var d=a.ka-c|0;0>(d-a.pd|0)&&0<=(a.pd^d)&&(8088>=a.na||!a.za.Zc&&a.za.$a==a.za.Ea||a.za.Zc&&!a.za.$a?(t(a,d-a.za.Ca&a.za.Ea),d=a.ka):p.call(a,12,0));2==c?a.pb(d,b):a.ub(d,b);a.ka=d}function vd(a,b){var c=a.ka-a.ha|0;0>(c-a.pd|0)&&0<=(a.pd^c)&&(8088>=a.na||!a.za.Zc&&a.za.$a==a.za.Ea||a.za.Zc&&!a.za.$a?(t(a,c-a.za.Ca&a.za.Ea),c=a.ka):p.call(a,12,0));a.oc(c,b);a.ka=c}
+function Gf(a,b,c){var d=4;1==b.length&&(d=1,c=c?1:0);if(80386>a.na)2this.na?0:1,e=0;2>e;e++){switch(d){case 0:if(this.xa&1&&this.ea&512){var f=If(this.R);if(-1<=f&&(this.xa&=-2,0<=f)){this.xa&=-5;Jf.call(this,
+f);d=!0;break a}}break;case 1:if(this.xa&2){this.xa&=-3;80386<=this.na&&(this.Ka[6]|=16384);Jf.call(this,1);d=!0;break a}}d=1-d}d=!1}if(d&&!a){this.U("interrupt dispatched");this.V=0;break}if(this.xa&4){this.V=this.A=0;break}}if(b){if(Kf(this.ma,this.Ma,c)){this.Zb();break}c=1}this.V=0;this.W[this.ca()].call(this)}while(0>11;Pf(this);Qf(this,a[b++]);for(c=0;c=Rf&&Sf(a,13))}function Pf(a){a.ta&=-129;a.ta&~a.gc&63&&(a.ta|=128);if(a.ta&128&&!(a.gc&128))return a=a.R,a.na>=Rf?Tf(a,13):a.Ka&0||Jf.call(a.M,2),!0;a=a.R;a.na>=Rf&&Sf(a,13);return!1}function Uf(a,b){80387<=a.na||(b&=-65);a.ta|=b;return Pf(a)}
-function Nf(a){return a.ta|a.C<<11}function Vf(a,b){return isFinite(b)?!0:!Uf(a,Infinity===b?8:16)}function Wf(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,Vf(a,d)||(d=null));return d}function Xf(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,Vf(a,d)||(d=null));return d}function Yf(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,Vf(a,d)||(d=null));return d}function Zf(a,b,c){var d=null;null==b||null==c||!c&&Uf(a,2)||(d=b/c,Vf(a,d)||(d=null));return d}
-function $f(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.ta=a.ta&-18177|d;return!0}return!1}function ag(a,b,c){if(null==b)return null;var d=a.gc&3072;0==d?(d=Math.round(b),.5===d-b&&d%2&&d--):d=1024==d||3072==d&&0=c){if(Uf(a,1))return null;d=-c}else if(d<-c){if(Uf(a,1))return null;d=-c}a.ia[0]=d|0;2147483648d&&(a.ia[1]=-1))}return d}
-function bg(a,b){var c=3;if(a.O&1<=c;c<<=1)3!=(b&3)&&(a.O|=c),b>>=2}function cg(a){var b=a.C+0&7;return a.O&1<>16}function hg(a){return a.M.Ta(a.M.X)}function rg(a){a.Aa[0]=a.M.Ta(a.M.X);return a.va[0]}function sg(a){a.ia[0]=a.M.Ta(a.M.X);a.ia[1]=a.M.Ta(a.M.X+4);return a.Y[0]}
-function tg(a){a.P[0]=a.M.Ta(a.M.X);a.P[1]=a.M.Ta(a.M.X+4);a.P[2]=a.M.ua(a.M.X+8);return a.P}h.ki=function(){this.M.tb(this.M.X,this.ia[0])};h.$j=function(){this.M.tb(this.M.X,this.ia[0]);this.M.tb(this.M.X+4,this.ia[1])};h.bk=Lf.prototype.ki;h.ak=Lf.prototype.$j;function ug(a){a.M.tb(a.M.X,a.P[0]);a.M.tb(a.M.X+4,a.P[1]);a.M.ob(a.M.X+8,a.P[2])}
+h.restore=function(a){a=a[0];var b=0;this.gc=a[b++]&-57409;var c=a[b++];this.ra=c&-14337;this.C=(c&14336)>>11;Pf(this);Qf(this,a[b++]);for(c=0;c=Rf&&Sf(a,13))}function Pf(a){a.ra&=-129;a.ra&~a.gc&63&&(a.ra|=128);if(a.ra&128&&!(a.gc&128))return a=a.R,a.na>=Rf?Tf(a,13):a.Ka&0||Jf.call(a.M,2),!0;a=a.R;a.na>=Rf&&Sf(a,13);return!1}function Uf(a,b){80387<=a.na||(b&=-65);a.ra|=b;return Pf(a)}
+function Nf(a){return a.ra|a.C<<11}function Vf(a,b){return isFinite(b)?!0:!Uf(a,Infinity===b?8:16)}function Wf(a,b,c){var d=null;null!=b&&null!=c&&(d=b+c,Vf(a,d)||(d=null));return d}function Xf(a,b,c){var d=null;null!=b&&null!=c&&(d=b-c,Vf(a,d)||(d=null));return d}function Yf(a,b,c){var d=null;null!=b&&null!=c&&(d=b*c,Vf(a,d)||(d=null));return d}function Zf(a,b,c){var d=null;null==b||null==c||!c&&Uf(a,2)||(d=b/c,Vf(a,d)||(d=null));return d}
+function $f(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.ra=a.ra&-18177|d;return!0}return!1}function ag(a,b,c){if(null==b)return null;var d=a.gc&3072;0==d?(d=Math.round(b),.5===d-b&&d%2&&d--):d=1024==d||3072==d&&0=c){if(Uf(a,1))return null;d=-c}else if(d<-c){if(Uf(a,1))return null;d=-c}a.ia[0]=d|0;2147483648d&&(a.ia[1]=-1))}return d}
+function bg(a,b){var c=3;if(a.O&1<=c;c<<=1)3!=(b&3)&&(a.O|=c),b>>=2}function cg(a){var b=a.C+0&7;return a.O&1<