diff --git a/apps/pdp11/README.md b/apps/pdp11/README.md
index 472240e6f..0984a7913 100644
--- a/apps/pdp11/README.md
+++ b/apps/pdp11/README.md
@@ -10,5 +10,4 @@ PDP-11 Software
We have archived the following selected PDP-11 software:
- [Boot Software](boot/)
-- [Diagnostic Software](diags/)
-- [DEC PDP-11 Tapes](tapes/)
+- [DEC PDP-11 Tapes](tapes/), including [Diagnostic Tapes](tapes/diags/)
diff --git a/apps/pdp11/diags/cpu/README.md b/apps/pdp11/diags/cpu/README.md
index ee7156351..77c78542d 100644
--- a/apps/pdp11/diags/cpu/README.md
+++ b/apps/pdp11/diags/cpu/README.md
@@ -9,5 +9,5 @@ PDP-11 CPU Diagnostics
DEC published a variety of PDP-11 CPU diagnostics:
-* [XCPA](XCPA.mac) (from [RETROCMP](http://www.retrocmp.com/images/stories/joerg/pdp11_diagnostic_database//resourcefiles/set0/AC-E664G-MC_CXCPAG_Processor_Test_Sep78.mac), extracted from [PDF](http://bitsavers.org/pdf/dec/pdp11/xxdp/x11_listings/AC-E664G-MC_CXCPAG0-Processor-test_Sep78.pdf))
+* [XCPA](XCPA.mac) (from [RETROCMP](http://www.retrocmp.com/images/stories/joerg/pdp11_diagnostic_database/resourcefiles/set0/AC-E664G-MC_CXCPAG_Processor_Test_Sep78.mac), extracted from [PDF](http://bitsavers.org/pdf/dec/pdp11/xxdp/x11_listings/AC-E664G-MC_CXCPAG0-Processor-test_Sep78.pdf))
diff --git a/apps/pdp11/tapes/README.md b/apps/pdp11/tapes/README.md
index 7c18b0e5c..d75a789f5 100644
--- a/apps/pdp11/tapes/README.md
+++ b/apps/pdp11/tapes/README.md
@@ -73,13 +73,7 @@ available as paper tape image files, with the exception of PAL-11S and LINK-11S:
Some additional information on DEC's Paper Tape Software is available at [retrotechnology.com](http://retrotechnology.com/pdp11/11_20_PTS.html).
-Newer Paper Tape Software (mid-1970s)
--------------------------------------
+Diagnostic Paper Tape Images
+----------------------------
-Thanks to the efforts of person(s) unknown, additional paper tape images have been uploaded to
-[bitsavers.org](http://bitsavers.trailing-edge.com/bits/DEC/pdp11/papertapeimages/). It's not super organized, so for now,
-I'm just going to pick out selected tapes, archive them [here](misc/), and add them to the [Default PC11 Configuration](/devices/pdp11/pc11/).
-
-Try this [PDP-11/70](/devices/pdp11/machine/1170/panel/debugger/) to test the newer tapes.
-
-- [MAINDEC-11-DEQKC-B1-PB 06/12/78; 11/70 cpu instruction; exerciser; (c)1975,76](misc/MAINDEC-11-DEQKC-B1-PB.json)
+We have also archived a collection of [Diagnostic Paper Tape Images](diags/).
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0AA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0AA-PB.jpg
new file mode 100644
index 000000000..ab5855920
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0AA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0AA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0AA-PB.json
new file mode 100644
index 000000000..20391ab93
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0AA-PB.json
@@ -0,0 +1,115 @@
+{"exec":128,"data":[
+0,0,0,4587521,131072,393216,655360,917504,1179648,1441792,1703936,1966080,2228224,2490368,2752512,3014656,
+3276800,3538944,3801088,4063232,12124160,0,1677721856,-1056931839,-1073740267,1073774101,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,55552,
+0,23330817,1614807518,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,103,16777216,1006724096,65795,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,-1526660768,0,65536,77201764,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,4718592,
+0,1677721856,1074132993,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,18784,0,23330817,16844630,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,135,16777216,-1274977280,1073741832,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,704643073,
+0,65536,168952164,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,2777152,0,1677721856,17526785,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,26881,0,23330817,3278,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+12,16777216,738288640,23085070,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,207634432,0,65536,260702564,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,4915457,0,1677721856,1107969,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+60928,0,23330817,1614811718,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,238,16777216,-1543412736,65811,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,755040608,0,65536,352452964,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+13565952,0,1677721856,1075208193,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,
+1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,
+65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,
+23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,65888,23085056,1073741825,53344,0,14811137,16848830,1614807040,
+257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,
+16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,
+1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,1614807040,257,16867392,179765248,
+33947666,8852959,-1948254346,-2130837644,-404225929,10158080,0,100663552,-134217472,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0BA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0BA-PB.jpg
new file mode 100644
index 000000000..a63e765c0
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0BA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0BA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0BA-PB.json
new file mode 100644
index 000000000..35127f265
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0BA-PB.json
@@ -0,0 +1,51 @@
+{"exec":128,"data":[
+0,0,0,1677721856,33554433,100663296,167772160,234881024,301989888,369098752,436207616,503316480,570425344,637534208,704643072,771751936,
+838860800,905969664,973078528,1040187392,1107296256,1174405120,1241513984,1308622848,1375731712,1442840576,1509949440,1577058304,1644167168,1711276032,1778384896,1845493760,
+1912602624,1979711488,2046820352,2113929216,-1358954496,25624832,-1610612735,8782080,16818176,65925,16818176,-1610612604,16974080,-1610612735,131328,16818176,
+65921,16818176,-1610612608,16822528,-1610612601,25559296,-1610612735,25493760,-1610612735,8651008,16818176,65795,16818176,-1610612734,25231616,-1610612735,
+8388864,-1593794560,16822784,65927,16818176,-1610612602,8716544,16818176,65924,16818176,65795,16818176,-1610612734,25231616,-1610612735,8388864,
+-1291804672,8847616,16818176,65926,16818176,-1610612603,25428224,-1610612735,16974080,-1610612735,131328,16818176,18305,0,23330817,16843102,
+10485760,32769,11468960,-2029977420,257,-2046754656,10485760,16876801,10485760,33793,50397344,10485760,16843265,10485760,16875777,10485760,
+32769,11468960,-2029977419,10485760,16877057,10485760,16876801,10485760,33793,50397344,10485760,16843265,10485760,16875777,10485760,32769,
+11468960,-2029977418,257,-2046754656,10485760,34049,-2080309088,257,50397344,10485760,16843265,10485760,16875777,10485760,32769,11468960,
+-2029977417,10485760,16877057,10485760,34049,-2080309088,257,50397344,10485760,16843265,10485760,16875777,10485760,32769,11468960,-2029977416,
+257,-2046754656,10485760,16876801,10485760,33793,50397344,257,33620128,10485760,33025,-2147417952,257,11468960,-2029977415,10485760,
+16877057,10485760,16876801,10485760,33793,50397344,257,151,16777216,-1140759552,16818178,-1610612734,8454400,16818176,65920,-1358913536,
+16824832,65927,16818176,-1610612602,8716544,16818176,65924,16818176,65795,16818176,-1610612734,8454400,16818176,65920,-1090478080,16819200,
+-1610612601,25559296,-1610612735,8716544,16818176,65924,16818176,65795,16818176,-1610612734,8454400,16818176,65920,-1090478080,16818944,65927,
+16818176,-1610612602,25493760,-1610612735,8651008,16818176,-1610612733,16908544,-1610612735,8454400,16818176,65920,-1090478080,16818688,-1610612601,25559296,
+-1610612735,25493760,-1610612735,8651008,16818176,-1610612733,16908544,-1610612735,8454400,16818176,65920,-1090478080,16818432,65927,16818176,-1610612602,
+8716544,16818176,65924,16818176,-1610612733,16908544,-1610612735,8454400,16818176,65920,-1090478080,8847616,16818176,65926,16818176,-1610612603,
+25428224,-872415231,0,65536,68813156,50397344,10485760,16843265,10485760,33025,-2147417952,257,10485920,33620143,10485760,16843521,
+10485760,1025,83951776,257,100728992,10485760,16844545,10485760,34305,-2029977440,257,-2113863520,10485760,16876289,10485760,11600047,
+513,50397344,257,67174560,10485760,16844033,10485760,1537,117506208,257,-2029977440,10485760,16877057,10485760,33537,-2113863520,
+257,11468960,33620146,10485760,16843521,10485760,1281,67174560,257,117506208,10485760,16844289,10485760,34305,-2029977440,257,
+-2113863520,10485760,16876289,10485760,11731119,513,50397344,257,83951776,10485760,16843777,10485760,1793,100728992,257,-2029977440,
+10485760,16877057,10485760,33537,-2113863520,257,11468960,50397364,10485760,16843265,10485760,1025,8847520,0,1677721856,17135617,
+65797,16818176,-1610612729,17170688,-1610612735,8782080,16818176,65927,16818176,-1610612605,25297152,-1610612735,-1258246400,196864,16818176,65794,
+16818176,-1610612732,17105152,-1610612735,459008,16818176,65798,16818176,-1610612601,25559296,-1610612735,8585472,16818176,65922,-1358913536,16823808,
+-1610612733,16908544,-1610612735,327936,16818176,65796,16818176,-1610612729,17170688,-1610612735,8782080,16818176,65927,16818176,-1610612605,25297152,
+-1610612735,-1224691968,196864,16818176,65794,16818176,-1610612731,17039616,-1610612735,459008,16818176,65798,16818176,-1610612601,25559296,-1610612735,
+8585472,16818176,65922,-1358913536,16824320,-1610612734,16974080,-1610612735,327936,16818176,65796,16818176,-1610612729,17170688,-1610612735,8782080,
+16818176,65927,16818176,-1610612606,25362688,-1610612735,-1191137536,34816,0,23330817,33621718,10485760,16843521,10485760,1281,67174560,
+257,117506208,10485760,16844289,10485760,34561,-2046754656,257,-2097086304,10485760,16876033,10485760,12189871,513,50397344,257,
+67174560,10485760,16844033,10485760,1537,117506208,257,-2046754656,10485760,16877313,10485760,33281,-2097086304,257,11468960,33620155,
+10485760,16843521,10485760,1025,83951776,257,100728992,10485760,16844545,10485760,34561,-2046754656,257,-2097086304,10485760,16876033,
+10485760,12320943,769,33620128,257,83951776,10485760,16843777,10485760,1793,100728992,257,-2046754656,10485760,16877313,10485760,
+33537,-2113863520,257,11468960,50397373,10485760,16843265,10485760,1281,67174560,257,117506208,10485760,16844289,10485760,34561,
+-2046754656,257,120,16777216,872464384,16818184,-1610612605,25297152,-1610612735,-1107251456,196864,16818176,65794,16818176,-1610612732,17105152,
+-1610612735,459008,16818176,65798,16818176,-1610612602,25624832,-1610612735,8585472,16818176,65922,-1090478080,196864,16818176,65794,16818176,
+-1610612732,17105152,-1610612735,459008,16818176,65798,16818176,-1610612601,25559296,-1610612735,8585472,16818176,65922,-1224695808,100667914,-2028609790,
+-536906240,-33590133,-1811908736,-989855497,0,65536,65542,248,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0CA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0CA-PB.jpg
new file mode 100644
index 000000000..592127ae3
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0CA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0CA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0CA-PB.json
new file mode 100644
index 000000000..590fa115f
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0CA-PB.json
@@ -0,0 +1,62 @@
+{"exec":128,"data":[
+0,0,0,0,0,16777216,17920,512,1536,2560,3584,4608,5632,6656,7680,8704,
+9728,10752,11776,12800,13824,14848,15872,47360,0,23330817,10485888,167772351,769,12517536,171969024,33025,
+12517536,171969024,50399872,10485760,167772351,-2130638144,10485760,167772351,50400000,10485760,167772351,184552064,33025,167772320,188743857,513,
+11468960,188746240,769,167772320,192938161,33025,167772320,197132479,32769,10485920,-1979711297,769,12517536,-1975481856,33025,12517536,
+-1975481856,50432640,10485760,-1979711297,-2130605376,10485760,-1979711297,50432768,10485760,-1979711297,-1962898816,33025,-1979711328,-1958739791,513,11468960,
+-1958704640,769,-1979711328,-1954545487,33025,-1979711328,-1950351169,32769,10485920,167837887,769,12517536,172034561,33025,12517536,172034561,
+50399873,10485760,167837887,-2130638143,10485760,167837887,50400001,10485760,167837887,184617601,33025,167837856,188809393,513,11468960,188811777,
+769,167837856,193,16777216,-570334208,-2130661119,8454411,16818176,-1056915702,8388875,-1610571776,16826112,197002,-1090478080,1099563264,8454538,
+-1090478080,1099563264,25854346,-1610612733,16826112,25870730,-1610612607,16826112,25887114,-1610612733,16826112,25854346,8454539,16818176,1090564490,131467,
+-1358913536,1099563264,197003,16818176,-2130660982,8454539,16818176,-1056915574,8389003,-1610571776,33603328,196874,-1090478080,1107952128,8454410,-1090478080,
+1107952128,17465866,-1610612733,33603328,17482250,-1610612607,33603328,17498634,-1610612733,33603328,34243082,8454411,33595392,1107341578,131339,-1358913536,
+1107952128,196875,33595392,-2113883894,8454411,33595392,-1040138486,8388875,-1610571776,33603328,197002,-1090478080,1116340736,8454538,-1090478080,1116340736,
+25854602,-1610612733,33603328,25870986,-1610612607,33603328,25887370,-1610612733,33603328,42631818,8454539,33595392,-1560235638,0,65536,54264164,
+33655618,10485760,-1979580241,50432834,10485760,11635202,-2130605182,10485760,12552706,-2147382334,10485760,12517536,50399747,10485760,167968959,-2130638269,
+10485760,167968959,176360003,769,12517536,180554243,33025,12517536,184748547,769,12517536,176359939,-2130638077,10485760,11602435,33622851,
+10485760,167968943,50400067,10485760,11602435,-2130637949,10485760,12519939,-2147415101,10485760,12517536,50432515,10485760,-1979514689,-2130605501,10485760,
+-1979514689,-1971090877,769,12517536,-1966896637,33025,12517536,-1962702333,769,12517536,-1971090941,-2130605309,10485760,11635203,33655619,10485760,
+-1979514705,50432835,10485760,11635203,-2130605181,10485760,12552707,-2147382333,10485760,12517536,50399748,10485760,168034495,-2130638268,10485760,168034495,
+176425540,769,12517536,180619780,33025,12517536,184814084,11010817,0,1677721856,301569,-1090478080,-2079718400,17499146,-1610612607,-1324743680,
+17515520,-1610612734,67153664,17515530,-1610612733,-1324743680,17531904,-1610612607,-1089862656,17548288,-1610612608,-1090478080,25822208,-1610612733,67157760,25838730,
+-1610612607,67157760,-2071313270,197002,-1090478080,-997587968,8454538,-1090478080,76153856,197003,-1090478080,-2071329792,25887882,-1610612607,-1316355072,25904128,
+-1610612734,67153664,25904266,-1610612733,-1316355072,25920512,-1610612607,-1081474048,25936896,-1610612608,-1090478080,17433856,-1610612733,83934976,17450250,-1610612607,
+83934976,-2062924534,196874,-1090478080,-989199104,8454410,-1090478080,84542720,196875,-1090478080,-2062940928,17499402,-1610612607,-1324743424,17515776,-1610612734,
+83930880,17515786,-1610612733,-1324743424,17532160,-1610612607,-1089862400,17548544,-1610612608,-1090478080,25822464,-1610612733,83934976,25838986,-1610612607,83934976,
+-2054535798,197002,51200,0,23330817,10487288,-1979383617,-2130605371,10485760,-1979383617,50432773,10485760,-1979383617,-1962571131,33025,-1979383648,
+-1958412111,513,11468960,-1958376955,769,-1979383648,-1954217807,33025,-1979383648,-1950023489,32769,10485920,168165567,769,12517536,172362246,
+33025,12517536,172362246,50399878,10485760,168165567,-2130638138,10485760,168165567,50400006,10485760,168165567,184945286,33025,168165536,189137073,
+513,11468960,189139462,769,168165536,193331377,33025,168165536,197525695,32769,10485920,-1979318081,769,12517536,-1975088634,33025,
+12517536,-1975088634,50432646,10485760,-1979318081,-2130605370,10485760,-1979318081,50432774,10485760,-1979318081,-1962505594,33025,-1979318112,-1958346575,513,
+11468960,-1958311418,769,-1979318112,-1954152271,33025,-1979318112,-1949957953,32769,10485920,171376831,50398228,10485760,3,16777216,1442931712,
+922795783,1996752906,17040394,-1610612607,922795776,1996748810,-1224477686,17035274,-1610612733,922795776,-150739958,17031178,-1610612607,922795776,922997770,17027083,
+-1610612733,922795776,-1224489974,922992650,17021963,-1610612607,-1307953408,1996534019,17017867,-1610612734,922791680,1996726282,17013771,-1610612733,-1844824320,-1224691453,
+17009675,-1610612607,-2113259776,-150946045,17005579,-1610612608,-1090478080,1854551808,196867,-1090478080,1653225216,1586132739,8454403,-1090478080,1384789760,1317697283,
+1250604803,196867,-1090478080,1049245440,982185731,8454403,-1090478080,780809984,713766659,196867,-1090478080,512374528,445298435,378222339,8454403,922787840,
+-1325200246,109803264,131331,-1358913536,-91605248,-158632190,196866,922787840,-1325208438,-427051264,8454402,922787840,-1090331510,-695470336,8388866,40960,
+671754,17547402,-1073741695,8389003,40960,671754,17449098,100663424,0,65536,146014564,50432640,10485760,171969024,172001792,33622656,
+-1950351360,769,167837856,-1979643327,-2130637887,-1950285824,32769,167837856,-1979643327,-2147415487,-1971257344,769,167837856,-1979643327,176228929,513,
+50432961,10485760,172100098,197298690,33025,-2147382334,10485760,172100098,172132866,32769,50432642,10485760,172100098,172132866,33622658,-1950220288,
+769,167968928,-1979512253,-2130637885,-1950154752,32769,167968928,-1979512253,-2147415485,-1971126272,769,167968928,-1979512253,176360003,513,50432963,
+10485760,172231172,197429764,33025,-2147382332,10485760,172231172,172263940,32769,50432644,10485760,172231172,172263940,33622660,-1950089216,769,
+168100000,-1979381179,-2130637883,-1950023680,32769,168100000,-1979381179,-2147415483,-1970995200,769,168100000,-1979381179,176491077,513,50432965,10485760,
+172362246,197560838,8356097,0,1577058560,659969,25937408,-1610612608,1175062016,1183450634,8388874,25855488,-1610612733,1175062016,1183450634,17466890,
+-973078526,197003,922787840,1996560906,922818058,-150924662,16846347,-150994815,16844427,-1610612608,-66439424,-133531904,-192268544,-267749632,8388864,-393562368,
+196864,922787840,1996545546,922802698,1996543626,-1224682998,16829962,-150994942,16828043,-1610612733,-1090478080,-1182124288,196864,-1090478080,-1383450880,-1450543360,
+8454400,-1090478080,-1651886336,-1718978816,-1786071296,196864,-1090478080,-1987430656,-2054490368,8454400,-1090478080,2039101184,1972057856,196864,-1090478080,1770665728,
+1703589632,1636513536,8454400,922787840,-1325377654,1368094464,131328,-1358913536,1166685952,1099659008,196864,922787840,-1325385846,831239936,8454400,922787840,
+-1090508918,562820864,8388864,-1224695808,33561098,738227971,-2028609547,-536906240,-33590133,469792640,245,-167772160,0,65536,65542,248,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,-15138816,480925098,3874327,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,605561922,608338242,-2126371816,605561922]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0DA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0DA-PB.jpg
new file mode 100644
index 000000000..c71473a8a
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0DA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0DA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0DA-PB.json
new file mode 100644
index 000000000..2be8368ce
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0DA-PB.json
@@ -0,0 +1,139 @@
+{"exec":128,"data":[
+0,0,0,1174405376,33554432,100663296,167772160,234881024,301989888,369098752,436207616,503316480,570425344,637534208,704643072,771751936,
+838860800,905969664,973078528,1040187392,-1191182336,0,65536,1572878,14687580,7854,180,16777216,-2147392512,-300562944,-2146044130,-1608626688,
+-1090478080,17432576,16777219,16777344,16777348,-1610612602,16826112,196874,8388864,8651008,8782080,-1090478080,17433088,16777219,16777344,16777348,
+-1610612602,50380544,196874,8388864,8651008,8782080,-1090478080,17433600,16777219,16777344,16777348,-1610612602,83934976,196874,8388864,8651008,
+8782080,-1090478080,17434624,16777219,16777344,16777348,-1610612602,151043840,196874,8388864,8651008,8782080,-1090478080,17435136,16777219,16777344,
+16777348,-1610612602,184598272,196874,8388864,8651008,8782080,-1090478080,17435648,16777219,16777344,16777348,-1610612602,218152704,196874,8388864,
+8651008,8782080,-1090478080,17436672,16777219,16777344,16777348,-1610612602,285261568,196874,8388864,8651008,8782080,-1090478080,17437184,16777219,
+16777344,16777348,-1610612602,318816000,-201129718,0,65536,31326564,-2147418112,-2080309248,-2046754816,10485760,169083071,769,32769,33793,
+34305,12517536,50399765,-2147418112,-2080309248,-2046754816,10485760,169935039,769,32769,33793,34305,12517536,50399778,-2147418112,-2080309248,
+-2046754816,10485760,170066111,769,32769,33793,34305,12517536,50399780,-2147418112,-2080309248,-2046754816,10485760,170197183,769,32769,
+33793,34305,12517536,50399768,-2147418112,-2080309248,-2046754816,10485760,169410751,769,32769,33793,34305,12517536,50399770,-2147418112,
+-2080309248,-2046754816,10485760,169541823,769,32769,33793,34305,12517536,50399772,-2147418112,-2080309248,-2046754816,10485760,169672895,769,
+32769,33793,34305,12517536,50399784,-2147418112,-2080309248,-2046754816,10485760,170459327,769,32769,33793,34305,12517536,2951722,
+0,1677721856,16989185,16777219,16777344,16777348,-1610612602,721469184,196874,8388864,8651008,8782080,-1090478080,17443840,16777219,16777344,
+16777348,-1610612602,755023616,196874,8388864,8651008,8782080,-1090478080,667648,196864,8388864,8651008,8782080,-1090478080,667904,196864,
+8388864,8651008,8782080,-1090478080,668160,196864,8388864,8651008,8782080,-1090478080,668416,196864,8388864,8651008,8782080,-1090478080,
+668672,196864,8388864,8651008,8782080,-1090478080,668928,196864,8388864,8651008,8782080,-1090478080,669696,196864,8388864,8651008,
+8782080,-1090478080,669952,196864,8388864,8651008,8782080,-1090478080,670208,196864,8388864,8651008,8782080,-1090478080,670464,196864,
+8388864,8651008,8782080,-1090478080,670720,196864,8388864,8651008,8782080,-1090478080,59904,0,23330817,171771034,50397184,-2147418112,
+-2080309248,-2046754816,10485760,171376831,50461514,-2147418112,-2080309248,-2046754816,10485760,169279679,50397311,-2147418112,-2080309248,-2046754816,10485760,169803967,
+50397184,-2147418112,-2080309248,-2046754816,10485760,12519936,171966632,513,33025,33793,34561,167772320,171969088,769,32769,33793,
+34561,167837856,11010239,33622593,-2130640896,-2080309248,-2029977600,10485760,172034561,50399809,-2147418112,-2080309248,-2029977600,10485760,12519938,172097704,
+513,33025,33793,34561,167903392,172100162,769,32769,33793,34561,167968928,11010239,33622595,-2130640896,-2080309248,-2029977600,
+10485760,172165635,50399811,-2147418112,-2080309248,-2029977600,10485760,12519940,172228776,513,33025,33793,34561,168034464,172231236,769,
+32769,33793,34561,12517536,176163328,47,16777216,-134126592,131333,8388864,8651008,8782080,40960,-2146811894,196874,8651008,
+8847616,-1073700864,-1350566123,17465344,16777345,16777349,16777218,-1610612602,16826112,17465610,16777218,16777344,16777348,-1610612602,1091174656,17465610,
+16777219,16777348,-1610612601,-15351552,-2130661505,8454410,8716544,131328,8782080,-1090478080,-2113273344,131338,8388864,8651008,8782080,33595392,
+-2113256950,196874,8651008,8847616,-1040146432,-1350566123,17465856,16777345,16777349,16777218,-1610612602,50380544,17466122,16777218,16777344,16777348,
+-1610612602,1124729600,17466122,16777219,16777348,-1610612601,-15351040,-2097107073,8454410,8716544,131328,8782080,-1090478080,-2062940928,131338,8388864,
+8651008,8782080,83927040,-2062924534,196874,8651008,8847616,-989814784,-1350566123,17466624,16777345,16777349,16777218,-1610612602,-1089863680,570468352,
+0,65536,123076964,33622720,-2130640896,-2080309248,-2029977600,10485760,364904623,180387840,32769,513,34049,34305,167837856,11010239,
+33622721,-2130640896,-2080309248,-2029977600,10485760,364970159,180453376,32769,513,34049,34305,167903392,11010239,33622722,-2130640896,-2080309248,
+-2029977600,10485760,365035695,180518912,32769,513,34049,34305,168034464,11010239,33622724,-2130640896,-2080309248,-2029977600,10485760,365166767,
+180649984,32769,513,34049,34305,168100000,11010239,33622725,-2130640896,-2080309248,-2029977600,10485760,365232303,180715520,32769,513,
+34049,34305,167772320,184549567,769,32769,34305,33793,167772320,12520064,184549544,513,33025,33793,34561,364904608,
+11501568,33622784,-2130640896,-2063532032,-2029977600,10485760,2147423680,-2080306432,33619968,-2130640896,8060928,0,1677721856,17347585,-1610612601,-1089863424,
+17498368,16777219,16777344,16777350,-1610612604,-2130050816,-1476346102,17498368,16777218,16777345,16777348,-1610612601,1425664,16822144,131339,8454400,
+8716544,8847616,-1056923648,25165589,8651019,131328,8454400,8847616,50372608,50380554,196875,8388864,8782080,8651008,50372608,-1089830134,
+50374656,131339,8454400,8651008,8847616,-1023369216,-1350565867,17498880,16777218,16777345,16777349,-1610612601,-15351040,17499007,16777348,16777218,
+16777345,-1610612601,-1089862656,17499136,16777219,16777344,16777350,-1610612604,-2079718400,-1476346102,17499136,16777218,16777345,16777348,-1610612601,1426432,
+67153792,131339,8454400,8716544,8847616,-1006592000,75497237,8651019,131328,8454400,8847616,83927040,83934986,196875,8388864,8782080,
+8651008,83927040,-1089829622,83929088,131339,6656,0,23330817,-2130638318,-2080309248,-2029977600,10485760,-2147478075,184877231,513,33025,
+34049,34561,365232288,184909823,33793,513,33025,34561,12517536,188746240,769,33793,32769,34305,167772320,188746304,
+769,33793,34561,32769,364904608,12550143,33622848,-2130640896,-2063532032,-2046754816,10485760,2147423680,188743855,33793,32769,12517536,
+188877314,769,33793,32769,34305,167903392,188877378,769,33793,34561,32769,365035680,12550143,33622850,-2130640896,-2063532032,
+-2046754816,10485760,2147423682,188874927,33793,32769,12517536,188942851,769,33793,32769,34305,167968928,188942915,769,33793,
+34561,32769,365101216,12550143,33622851,-2130640896,-2063532032,-2046754816,10485760,2147423683,188940463,33793,32769,12517536,189008388,769,
+84,16777216,1879139328,8651019,8388864,8782080,67149824,1141523466,196875,8651008,8847616,8388864,-1006592000,-1082130667,17515520,16777218,
+16777345,16777349,-1610612602,-15350784,1140895615,8651019,8388864,-1090478080,1158284544,196875,8651008,8388864,8782080,83927040,1158300938,196875,
+8651008,8847616,8388864,-989814784,-1082130667,17515776,16777218,16777345,16777349,-1610612602,-15350528,1157672831,8651019,8388864,16818176,-2130665206,
+196875,8388864,8651008,8782080,-2130661120,8847627,131328,8651008,8454400,16818176,-1358282486,17531136,16777345,16777348,16777218,-1610612602,
+-2130665216,8454411,131328,8651008,8782080,33595392,-2113887990,196875,8388864,8651008,8782080,-2113883904,8847627,131328,8651008,8454400,
+33595392,-1358282230,17531392,16777345,16777348,16777218,-1610612602,-2113888000,8454411,131328,780402944,0,65536,214827364,-2046754816,10485760,
+10553859,50400131,-2147418112,-2080309248,-2046754816,11599872,-2029974653,33619968,-2080309248,-2130640896,10485760,172165635,193134767,33025,33793,513,
+34305,10551456,-2130637949,33619968,-2080309248,-2046754816,10485760,10553860,50400132,-2147418112,-2080309248,-2046754816,11599872,-2029974652,33619968,-2080309248,
+-2130640896,10485760,172231172,193200303,33025,33793,513,34305,10551456,-2130637948,33619968,-2080309248,-2046754816,10485760,10553861,50400133,
+-2147418112,-2080309248,-2046754816,11599872,-2029974651,33619968,-2080309248,-2130640896,10485760,172296709,193265839,33025,33793,513,34305,10551456,
+-2130637947,33619968,-2080309248,-2046754816,10485760,167772351,50400192,-2147418112,-2080309248,-2046754816,10485760,171969024,-2130637888,33619968,-2080309248,-2046754816,
+10485760,176163328,197132479,513,32769,16449696,0,1677721856,928769,-1073053686,17547274,16777219,-1610612608,-1089863680,-1073020928,196875,
+8388864,-1358913536,1074397184,17547275,16777219,16777348,-1610612602,48896,-1324728310,-1073004544,196875,8651008,8782080,40960,-2147434742,8847627,
+8454400,131328,40960,-1089830902,-1072988160,196875,8651008,8782080,8388864,-1610571776,16826112,17547530,16777219,16777344,16777348,-1610612602,
+1091174656,17547530,16777345,16777218,16777348,-1610612602,-2130050816,-1056915702,131339,8388864,16818176,-1056276214,17547530,16777219,-1610612608,-1089863424,
+-1056243456,196875,8388864,-1358913536,1091174656,17547531,16777219,16777348,-1610612602,16826112,-1324728054,-1056227072,196875,8651008,8782080,16818176,
+-2130657526,8847627,8454400,131328,16818176,-1089830646,-1056210688,196875,8651008,8782080,8388864,-1610571776,33603328,17547786,16777219,16777344,
+8068,0,23330817,3978,34305,167903392,197265986,33025,513,33793,34305,167903392,12520066,33622978,-2147418112,10485760,
+176294402,197266114,769,32769,167903392,184680639,50400194,-2147418112,10485760,167903407,197266242,769,33793,34305,12517536,172100098,
+188874929,50400194,-2080309248,-2046754816,10485760,12519938,-2029974654,-2130640896,33619968,10485760,176294402,193069247,50400194,-2080309248,-2046754816,-2147418112,
+10485760,12517536,197331459,769,32769,33793,34305,167968928,197331523,33025,513,33793,34305,167968928,12520067,33622979,
+-2147418112,10485760,176359939,197331651,769,32769,167968928,184746175,50400195,-2147418112,10485760,167968943,197331779,769,33793,34305,
+12517536,172165635,188940465,50400195,-2080309248,-2046754816,10485760,12519939,-2029974653,-2130640896,33619968,99,16777216,-402562048,-1610612720,-2096495872,
+-2097103094,17548043,16777219,16777348,16777350,-1610612608,-1090478080,-1005976576,196875,8388864,8651008,8782080,67149824,-1005960182,8454411,131328,
+8651008,8782080,67149824,-1089829878,17548288,16777218,-1610612608,-2079718400,-1005927414,196875,8388864,67149824,67157770,17548299,16777219,-1610612608,
+67153664,-1005894646,196875,8651008,8782080,-1090478080,1141507072,1140896010,17548299,16777219,16777348,-1610612602,-1089862656,17531904,16777351,16777345,
+-1610612734,-2079718400,-2080325878,17548299,16777219,16777348,16777350,-1610612608,-1090478080,-989199104,196875,8388864,8651008,8782080,83927040,-989182710,
+8454411,131328,8651008,8782080,83927040,-1089829622,17548544,16777218,-1610612608,-2062940928,-989149942,196875,8388864,83927040,83934986,17548555,
+16777219,-1610612608,83930880,-989117174,196875,75759872,0,65536,306577764,-2046754816,10485760,168100031,11602501,197462853,769,33793,
+34305,168100000,193265855,34561,33025,513,168100000,12520069,197462917,769,33793,34305,32769,12517536,5591,50397184,
+-2147418112,-2029977600,-2080309248,10485760,366411951,0,769,32769,34305,33793,12517536,-59945,33619968,-2080309248,-2029977600,-2130640896,
+10485760,366411951,65535,513,33793,34305,33025,171376800,11471852,26103,50400228,-2080309248,-2046754816,-2147418112,10485760,-59913,
+11471820,-39433,33622980,-2080309248,-2029977600,-2130640896,10485760,195955255,1710686383,195493887,513,33793,34305,33025,368509088,193888256,
+1710686383,193363968,769,34049,34561,32769,171376800,11471728,1073767927,33622888,-2080309248,-2046754816,-2147418112,10485760,1073747447,11471696,
+3368439,0,1677721856,1287169,17516608,16777218,16777349,16777350,-1610612607,839530240,-150950133,704643301,196875,8651008,8782080,8388864,
+-150953984,318766869,-150950133,184549349,196875,8651008,8782080,8388864,-150953984,-218104043,-150950134,-369098523,131338,8651008,8782080,8454400,
+922787840,-1358244854,-1706240,17485055,16777218,16777348,16777351,-1610612608,1439488,-1358252928,15070976,17476672,16777218,16777349,16777350,-1610612608,
+1439488,-1358261184,15070976,17468544,16777218,16777349,16777351,-1610612607,1439488,-1358269376,15070976,17460288,16777219,16777348,16777350,-1610612608,
+-687821056,37,196864,8651008,8782080,8388864,-1358913536,-14297344,33554431,16777219,16777348,16777350,-1610612608,-687821056,16776997,131328,
+8651008,8782080,8454400,-1358913536,2479872,33554176,16777218,16777348,16777351,-1610612608,-687821056,19237,0,23330817,-2147478270,33636352,
+-2063532032,-2046754816,-2147418112,10485760,634847407,-2147467264,513,34049,34561,33025,11468960,1073751511,50413568,-2080309248,-2046754816,-2147418112,
+10485760,634847407,268439552,769,33793,34305,32769,368509088,159711231,1173815471,159186943,769,32769,33793,34305,171376800,
+11471206,-47625,50399582,-2147418112,-2080309248,-2046754816,10485760,-59913,11471174,17911,33622334,-2130640896,-2080309248,-2046754816,10485760,153618999,
+905380015,153092096,769,32769,33793,34305,368509088,151541077,1173815471,151016789,769,32769,33793,34305,368509088,149454848,
+1173815471,148930559,513,33025,33793,34305,11468960,13783,50397184,-2147418112,-2080309248,-2046754816,10485760,903282863,65535,769,
+32769,33793,34305,11468960,13783,50462719,171,16777216,1610703872,16777238,16777344,16777348,-1610612602,-687821056,-203,131583,
+8454400,8651008,8782080,-1358913536,-13248768,25165823,16777218,16777344,16777348,-1610612602,-687821056,-1437248203,197034,8388864,8651008,8782080,
+-1358913536,-4860160,33554431,16777218,16777345,16777348,-1610612602,-687821056,16777141,197119,8388864,8651008,8782080,-1358913536,-4860160,16842623,
+16777218,16777345,16777348,-1610612602,-536201472,-150950137,-671088555,196871,8388864,8651008,8782080,-150953984,-1056964843,-150950137,-1207959467,131335,
+8454400,8651008,8782080,922787840,-1358454262,-11143424,17275647,16777218,16777345,16777348,-1610612602,-15337728,-1358462209,-11143424,17267455,16777218,
+16777345,16777348,-1610612602,1678391040,-150950137,1551892309,131335,8388864,8651008,8782080,922787840,-1358477814,2144728832,17252095,16777218,16777344,
+-1795161980,0,65536,398328164,34305,12517536,5591,50397184,-2147418112,-2029977600,-2080309248,10485760,366411967,0,769,32769,
+34561,33793,12517536,-59945,33619968,-2080309248,-2029977600,-2130640896,10485760,366411967,65535,513,33793,34561,33025,171376800,
+12519104,26103,50398904,-2080309248,-2046754816,-2147418112,10485760,-59913,12519072,-39433,33621656,-2080309248,-2029977600,-2130640896,10485760,109185591,
+1710686399,108724223,513,33793,34305,33025,368509088,107118592,1710686399,106594304,769,34049,34561,32769,171376800,12518980,
+1073767927,33621564,-2080309248,-2046754816,-2147418112,10485760,1073747447,12518948,1073767927,33621532,-2063532032,-2046754816,-2130640896,10485760,101059127,-436797249,
+100532224,769,33793,34305,32769,368509088,99024895,-436797249,98500607,769,33793,11896321,0,1677721856,1645569,8388864,
+-150953984,-956301547,-150946043,-1107296027,131333,8651008,8782080,8454400,922787840,-1090148342,-1706240,17146111,16777218,16777348,16777351,-1610612608,
+1439488,-1090156416,15070976,17137728,16777218,16777349,16777350,-1610612608,1439488,-1090164672,15070976,17129600,16777218,16777349,16777351,-1610612607,
+1439488,-1090172864,15070976,17121344,16777219,16777348,16777350,-1610612608,-687816960,37,196864,8651008,8782080,8388864,-1090478080,-14297344,
+33554431,16777219,16777348,16777350,-1610612608,-687816960,16776997,131328,8651008,8782080,8454400,-1090478080,2479872,33554176,16777218,16777348,
+16777351,-1610612608,-687816960,8388645,131392,8716544,8782080,8388864,-1090478080,2479872,25165888,16777218,16777349,16777351,-1610612607,-687816960,
+4194341,196928,8651008,8782080,8388864,-1090478080,22016,0,23330817,634854010,268439552,769,33793,34305,32769,368509088,
+72941567,1173815487,72417279,769,32769,33793,34561,171376800,12518458,-47625,50398258,-2147418112,-2080309248,-2029977600,10485760,-59913,
+12518426,17911,33621010,-2130640896,-2080309248,-2029977600,10485760,66849335,905380031,66322432,769,32769,33793,34561,368509088,64771413,
+1173815487,64247125,769,32769,33793,34561,368509088,62685184,1173815487,62160895,513,33025,33793,34561,12517536,13783,
+50397184,-2147418112,-2080309248,-2029977600,10485760,903282879,65535,769,32769,33793,34561,12517536,13783,50462719,-2147418112,-2080309248,
+-2029977600,10485760,903282879,-1,513,33025,33793,34561,12517536,-51753,33652735,-2147418112,-2080309248,-2029977600,10485760,903282879,
+-1431677611,24,16777216,-670997504,196891,8388864,8651008,8847616,-1090478080,-4860160,33554431,16777218,16777345,16777348,-1610612601,-687816960,
+16777141,197119,8388864,8651008,8847616,-1090478080,-4860160,16842623,16777218,16777345,16777348,-1610612601,-1274398976,-150946046,-1409286059,196866,
+8388864,8651008,8847616,-150953984,-1795162347,-150946046,-1946156971,131330,8454400,8651008,8847616,922787840,-1090357750,-11143424,16936703,16777218,
+16777345,16777348,-1610612601,-15337728,-1090365697,-11143424,16928511,16777218,16777345,16777348,-1610612601,940193536,-150946046,813694805,131330,8388864,
+8651008,8847616,922787840,-1090381302,2144728832,16913151,16777218,16777344,16777348,-1610612601,302692096,-553515520,1979746069,1955323903,2004942335,14907904,
+3536640,266496528,1074525955,-150796032,-268420579,907933666,-136123392,-704638907,1409316834,-150994717,551737885,152958720,0,65536,490078564,1893078,
+492312055,171434700,175629002,-2130444316,1070583,7856814,58156,131072,1037500416,536928792,131841,6690231,6559159,369043878,5636237,5540863,
+369066237,4849802,4754431,280461565,284622906,288817208,499253302,167182392,369033272,2752672,2657279,499286269,167182374,499253284,499318802,499384336,
+200736782,-2147360328,131072,0,-9043968,65396,171376640,171376816,365166762,-973136244,-1572737,333303,368509086,9437191,71159,-1946222452,
+-2130837550,-2130441278,11539967,17039300,11605503,499384252,280428654,175571048,1304625252,50856032,6188535,179765342,767754332,49807446,11560439,500432976,
+1844904012,4325442,4196919,4065847,3934967,365101832,1844903939,2621482,50006723,368509400,2359301,-10187777,423592189,184024924,50397206,-1946222089,
+-2130837678,135,0,0,0,0,11534336,0,1342177536,2003968,3536640,65068096,907261698,-2046819840,1410709285,704675809,
+3536640,-136264640,3536642,132168712,338548482,50855936,202028803,922872832,-1224735222,33555475,-2147483648,-1577027840,9953,0,655361,7918,
+15269888,0,100663552,-134217472,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0EA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0EA-PB.jpg
new file mode 100644
index 000000000..1c04f7b4d
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0EA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0EA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0EA-PB.json
new file mode 100644
index 000000000..4695f61a4
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0EA-PB.json
@@ -0,0 +1,90 @@
+{"exec":128,"data":[
+0,0,0,4587521,131072,393216,655360,917504,1179648,1441792,1703936,1966080,2228224,2490368,2752512,3014656,
+3276800,3538944,3801088,4063232,12124160,0,1677721856,-1610579967,44800,17563658,16777219,16777350,-1610612604,44800,25952266,16777219,
+16777350,-1610612604,44800,17580042,16777219,16777350,-1610612604,44800,25968650,16777219,16777350,-1610612604,44800,17596426,16777219,16777350,
+-1610612604,44800,25985034,16777219,16777350,-1610612604,1074397184,1074528266,196874,40960,671754,8651020,-1610571776,1074397184,1082916874,196874,
+40960,671754,8651148,-1610571776,1074397184,1074544650,196874,40960,1074413578,8651020,-1610571776,1074397184,1082933258,196874,40960,1074413578,
+8651148,-1610571776,1074397184,1074561034,196874,40960,-2146811894,8651020,-1610571776,1074397184,1082949642,196874,40960,-2146811894,8651148,-1610571776,
+16822016,17563914,16777219,16777350,-1610612604,16822016,25952522,16777219,16777350,-1610612604,16822016,17580298,16777219,16777350,-1610612604,58624,
+0,23330817,11469278,-1941894655,769,34305,33793,11468960,209783297,769,34305,33793,11468960,-1937700351,769,34305,
+33793,167837856,201394753,50399809,10485760,172034561,-2080306175,10485760,167837856,-1946088895,50399809,10485760,172034561,-2080273407,10485760,167837856,
+205589057,50399809,10485760,172034561,-2080306111,10485760,167837856,-1941894591,50399809,10485760,172034561,-2080273343,10485760,167837856,209783361,50399809,
+10485760,172034561,-2080306047,10485760,167837856,-1937700287,50399809,10485760,172034561,-2080273279,10485760,11468960,201460226,769,34305,33793,
+11468960,-1946023422,769,34305,33793,11468960,205654530,769,34305,33793,11468960,-1941829118,769,34305,33793,11468960,
+209848834,769,34305,33793,11468960,-1937634814,769,34305,33793,167903392,88,16777216,1006724096,34226691,17449484,-1610612733,
+1107952128,17564170,-1610612604,33595392,34226698,17449612,-1610612733,1107952128,25952778,-1610612604,33595392,1107968522,17449484,-1610612733,1107952128,17580554,
+-1610612604,33595392,1107968522,17449612,-1610612733,1107952128,25969162,-1610612604,33595392,-2113256950,17449484,-1610612733,1107952128,17596938,-1610612604,33595392,
+-2113256950,17449612,-1610612733,1107952128,25985546,-1610612604,-1358913536,50987776,196876,8782080,8651008,-1358913536,50987776,197004,8782080,8651008,
+-1358913536,1124729600,196876,8782080,8651008,-1358913536,1124729600,197004,8782080,8651008,-1358913536,-2096495872,196876,8782080,8651008,-1358913536,
+-2096495872,197004,8782080,8651008,50372608,51004170,17449740,-1610612733,1124729600,17564426,-1610612604,50372608,51004170,17449868,-1610612733,1124729600,
+25953034,-1610612604,50372608,1124745994,2030715660,0,65536,77201764,769,167968928,205720131,33793,10485920,172165635,172198979,769,
+167968928,-1941763517,33793,10485920,172165635,172166275,769,167968928,209914435,33793,10485920,172165635,172199043,769,167968928,-1937569213,
+33793,10485920,168034479,50400260,-2046754816,-2080309248,10485760,168034479,50433028,-2046754816,-2080309248,10485760,168034479,50400324,-2046754816,-2080309248,
+10485760,168034479,50433092,-2046754816,-2080309248,10485760,168034479,50400388,-2046754816,-2080309248,10485760,168034479,50433156,-2046754816,-2080309248,10485760,
+172231172,172231684,769,168034464,201591364,33793,10485920,172231172,172264452,769,168034464,-1945892284,33793,10485920,172231172,172231748,
+769,168034464,205785668,33793,10485920,172231172,172264516,769,168034464,-1941697980,33793,10485920,172231172,172231812,769,13238432,
+0,1677721856,67500033,-2079702006,8651020,-1610571776,1141507072,1150059530,196874,67149824,-2079702006,8651148,-1610571776,83930880,17564938,16777219,
+16777350,-1610612604,83930880,25953546,16777219,16777350,-1610612604,83930880,17581322,16777219,16777350,-1610612604,83930880,25969930,16777219,16777350,
+-1610612604,83930880,17597706,16777219,16777350,-1610612604,83930880,25986314,16777219,16777350,-1610612604,1158284544,1158415626,196874,83927040,84559114,
+8651020,-1610571776,1158284544,1166804234,196874,83927040,84559114,8651148,-1610571776,1158284544,1158432010,196874,83927040,1158300938,8651020,-1610571776,
+1158284544,1166820618,196874,83927040,1158300938,8651148,-1610571776,1158284544,1158448394,196874,83927040,-2062924534,8651020,-1610571776,1158284544,1166837002,
+196874,83927040,-2062924534,8651148,-1610571776,1074397184,44810,8847628,8716544,40960,6154,0,23330817,171968342,-1946156881,34561,
+34049,167837856,11471425,-2029974527,-2063532032,10485760,172034561,-1946091345,34561,34049,167903392,11471426,-2029974526,-2063532032,10485760,172100098,
+-1946025809,34561,34049,167968928,11471427,-2029974525,-2063532032,10485760,172165635,-1945960273,34561,34049,168034464,11471428,-2029974524,-2063532032,
+10485760,172231172,-1945894737,34561,34049,168100000,11471429,-2029974523,-2063532032,10485760,172296709,-1945829201,34561,34049,167772320,213912128,
+171969152,769,167772320,-1971320256,-1950315328,769,-2130637888,171966464,50432576,10485760,172034561,176229569,50399809,10485760,172034561,-1933473151,
+50432961,197197824,33025,-1975449023,769,167903392,214043202,172100226,769,167903392,-1971189182,-1950184254,769,-2130637886,172097536,50432578,
+10485760,172165635,176360643,50399811,10485760,62,16777216,-1274977280,1124729608,-1014332662,25936780,-1023410173,8454411,1124745984,197002,67149824,
+-1005960182,1141539852,196874,67149824,-2079702006,-997407606,197003,17548288,1140850817,25838602,-1610612733,1158284544,-2062760694,17450250,-1610612733,1158284544,
+-980777718,25937292,-989855741,8454411,1158300928,197002,922787840,1997035530,-150449142,-1224191988,1997032458,17319946,-1610612733,1040856832,973764360,915060488,
+848099080,780924680,196872,638318336,8454408,504002304,445282056,196872,922787840,1997031434,-150453238,-1224196084,1997028362,17315850,-1610612733,772421376,
+705328904,646625032,579663624,512489224,196872,369882880,8454408,235566848,176846600,196872,-15351808,786687,1074528268,1074544652,-14674164,197119,
+-1073700864,11184661,786444,1074544652,386678796,27961888,-1610612733,-1441415168,786602,1074528268,1074544652,-1440737524,197034,-1073700864,9320469,-435421172,
+0,65536,168952164,205523968,205524032,-1908924393,769,364904608,201355719,201329664,205524032,538381376,50426311,10485760,-1431693888,-1946121216,
+-1941926912,-1941926848,-1431691241,769,364904608,-1946120648,-1946121216,-1941926848,538414144,50433592,10485760,16717248,-1946121216,-1941926912,-1941926848,16719895,
+769,364904608,-1946091776,-1946121216,-1941926848,538414144,50462464,10485760,-59967,201395201,205589505,205589569,-57257,769,364970144,201435818,
+201395201,205589569,542575681,50440874,10485760,-1431693887,201395201,205589505,205589569,-1431691177,769,364970144,201428536,201395201,205589569,542575681,
+50433592,10485760,1908872641,201395201,205589505,205589569,1908875351,769,364970144,-1946047830,-1946055679,-1941861311,542608449,50440874,10485760,-1908927039,
+-1946055679,-1941861375,-1941861311,-1908924329,769,364970144,-1946091265,-1946055679,-1941861311,542608449,15139071,0,1677721856,17526785,-1610612733,1425664,
+25952767,1099694476,1099710860,2119564,197119,-1040146432,50331413,34341388,1108099596,-1760804340,33554208,-1610612733,-1441414656,34341546,1108083212,1108099596,
+-1440704756,197034,-1040146432,44739093,34341388,1108099596,-1760804340,27961888,-1610612733,940950016,34341518,1108083212,1108099596,941659916,197006,-1040146432,
+41010965,34341388,1108099596,-1760804340,24233760,-1610612733,-1441414656,42730154,1116471948,1116488332,-1440704628,197034,-1040146432,42874901,42730124,1116488332,
+-1752415604,26097696,-1610612733,-15351296,42729984,1116471948,1116488332,-14641268,196864,-1040146432,50266133,42730124,1116488332,-1752415604,33488928,-1610612733,
+-15351040,51119103,1124860684,1124877068,-14625012,197119,-1023369216,61516309,51118860,1124877068,-687062260,27961888,-1610612733,-1441414400,51119018,1124860684,
+1124877068,-1440688372,197034,-1023369216,59652117,61452,0,23330817,201526478,205720579,205720643,-1908924201,769,365101216,201552327,201526275,
+205720643,550964291,50426311,10485760,-1431693885,-1945924605,-1941730301,-1941730237,-1431691049,769,365101216,-1945924040,-1945924605,-1941730237,550997059,50433592,
+10485760,16717251,-1945924605,-1941730301,-1941730237,16720087,769,365101216,-1945895168,-1945924605,-1941730237,550997059,50462464,10485760,-59964,201591812,
+205786116,205786180,-57065,769,365166752,201632426,201591812,205786180,555158596,50440874,10485760,-1431693884,201591812,205786116,205786180,-1431690985,
+769,365166752,201625144,201591812,205786180,555158596,50433592,10485760,1908872644,201591812,205786116,205786180,1908875543,769,365166752,-1945851222,
+-1945859068,-1941664700,555191364,50440874,10485760,-1908927036,-1945859068,-1941664764,-1941664700,-1908924137,769,365166752,-1945894657,-1945859068,-1941664700,555191364,
+116,16777216,738288640,16842510,-1610612733,1426432,76285183,1150026892,1150043276,2168716,197119,-989814784,100663061,84673804,1158432012,1460421900,
+33554209,-1610612733,-1441413888,84673962,1158415628,1158432012,-1440655604,197034,-989814784,95070741,84673804,1158432012,1460421900,27961889,-1610612733,940950784,
+84673934,1158415628,1158432012,941709068,197006,-989814784,91342613,84673804,1158432012,1460421900,24233761,-1610612733,-1441413888,93062570,1166804364,1166820748,
+-1440655476,197034,-989814784,93206549,93062540,1166820748,1468810636,26097697,-1610612733,-15350528,93062400,1166804364,1166820748,-14592116,196864,-989814784,
+100597781,93062540,1166820748,1468810636,33488929,-1610612733,-954867968,521241713,521241612,521241612,1594983436,1594983436,1594983436,-686717940,-955153369,196977,
+-553607168,-2072918251,-2071191791,-2071191791,-2071191791,-2071175407,-2071175407,-2071175407,-2077763823,24233745,905969667,0,65536,260702564,368509088,32666055,
+32377911,32115767,31853623,31591543,31329399,31067255,30813655,50426311,10485760,-1908926985,-1942552120,-1942552124,-1942552128,-1938357828,-1938357832,-1938357836,
+769065392,-1908932180,769,364904608,365433220,201880007,201853960,206048328,571935816,50426311,10485760,293868992,1431639496,201853960,206048264,206048328,
+1431642647,769,364904608,365433220,-1945610923,-1945596920,-1941402552,571968584,50419029,10485760,293868993,-1431693887,-1946055679,-1941861375,-1941861311,-1431691177,
+769,365035680,368185740,-481490,-521166,-521166,-521166,-521102,-521102,-521102,-512873,50439982,10485760,294393282,-1490151950,-1942814728,
+-1942814728,-1942814728,-1938620424,-1938620424,-1938620424,748158968,-1490092040,769,368509088,13242758,294393282,1908872698,205193208,205193208,205193208,209387512,
+209387512,209387512,781713400,1908932600,769,4587680,0,-1509949184,-99555328,-126761195,-125027585,-125027585,-125027585,-125011201,-125011201,-125011201,
+-131164161,24233983,-1610612733,-946473216,922774897,922773900,922772876,1996513676,1996512652,1996511628,-687843956,-956280403,196977,-150953984,1133394069,1066153728,
+999044864,931936000,864843520,797734656,730625792,665704192,26097664,-1610612733,369800960,1996685824,-537980928,1979746069,1955323903,2004942335,15663104,0,
+-1291845632,0,65536,298319880,1966080,0,100663552,-134217472,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,1437269760,910042026,4,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,605561922,608338242,-2126371816,605561922,
+13402434,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0FA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0FA-PB.jpg
new file mode 100644
index 000000000..1f108ae2b
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0FA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0FA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0FA-PB.json
new file mode 100644
index 000000000..0988bcc39
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0FA-PB.json
@@ -0,0 +1,137 @@
+{"exec":128,"data":[
+0,0,0,0,1677721856,-1610579967,2479872,16777216,16777219,16777220,16777223,16777350,-1610612605,-14297344,33554431,16777219,
+16777220,16777223,16777350,-1610612605,1428543232,22369621,16777219,16777220,16777223,16777350,-1610612605,-1440360704,27962026,16777219,16777220,16777223,
+16777350,-1610612605,19257088,16777472,16777219,16777220,16777223,16777350,-1610612605,36034304,16777728,16777219,16777220,16777223,16777350,-1610612605,
+69588736,16778240,16777219,16777220,16777223,16777350,-1610612605,136697600,16779264,16777219,16777220,16777223,16777350,-1610612605,270915328,16781312,
+16777219,16777220,16777223,16777350,-1610612605,539350784,16785408,16777219,16777220,16777223,16777350,-1610612605,1076221696,16793600,16777219,16777220,
+16777223,16777350,-1610612605,-2145003776,16809984,16777219,16777220,16777223,16777350,-1610612605,2479872,16842753,16777219,56580,0,23330817,
+478,1793,34305,33537,634847392,33554944,769,1025,1793,34305,33537,634847392,67109888,769,1025,1793,
+34305,33537,634847392,134219776,769,1025,1793,34305,33537,634847392,268439552,769,1025,1793,34305,33537,
+634847392,536879104,769,1025,1793,34305,33537,634847392,1073758208,769,1025,1793,34305,33537,634847392,-2147450880,
+769,1025,1793,34305,33537,-23081,50462719,67174400,117506048,-2046754816,-2097086464,-1512636416,0,769,1025,1793,
+34305,33537,178955735,50399914,67174400,117506048,-2046754816,-2097086464,-1512636416,89458005,769,1025,1793,34305,33537,42455,
+50397184,67174400,117506048,-2046754816,-2097086464,-1512636416,65537,769,18,16777216,1006724096,262403,459008,8782080,8585472,44422912,
+16777728,16777219,16777220,16777223,16777350,-687865725,50332581,196864,262400,459008,8782080,8585472,77977344,16778240,16777219,16777220,
+16777223,16777350,-687865725,83887525,196864,262400,459008,8782080,8585472,111531776,16778752,16777219,16777220,16777223,16777350,-687865725,
+117442469,196864,262400,459008,8782080,8585472,145086208,16779264,16777219,16777220,16777223,16777350,-687865725,150997413,196864,262400,
+459008,8782080,8585472,178640640,16779776,16777219,16777220,16777223,16777350,-687865725,184552357,196864,262400,459008,8782080,8585472,
+212195072,16780288,16777219,16777220,16777223,16777350,-687865725,218107301,196864,262400,459008,8782080,8585472,245749504,16780800,16777219,
+16777220,16777223,1056964742,0,65536,77201764,33537,1025495,50397199,67174400,117506048,-2046754816,-2097086464,-1512636416,1048592,769,
+1025,1793,34305,33537,1156567,50397201,67174400,117506048,-2046754816,-2097086464,-1512636416,1179666,769,1025,1793,34305,
+33537,1287639,50397203,67174400,117506048,-2046754816,-2097086464,-1512636416,1310740,769,1025,1793,34305,33537,1418711,50397205,
+67174400,117506048,-2046754816,-2097086464,-1512636416,1441814,769,1025,1793,34305,33537,1549783,50397207,67174400,117506048,-2046754816,
+-2097086464,-1512636416,1572888,769,1025,1793,34305,33537,1680855,50397209,67174400,117506048,-2046754816,-2097086464,-1512636416,1703962,
+769,1025,1793,34305,33537,1811927,50397211,67174400,117506048,-2046754816,-2097086464,-1512636416,1835036,15074049,0,1677721856,
+391169,262400,459008,8782080,8585472,497407744,16784640,16777219,16777220,16777223,16777350,-687865725,503324325,196864,262400,459008,
+8782080,8585472,530962176,16785152,16777219,16777220,16777223,16777350,-687865725,536879269,196864,262400,459008,8782080,8585472,564516608,
+16785664,16777219,16777220,16777223,16777350,-687865725,570434213,196864,262400,459008,8782080,8585472,598071040,16786176,16777219,16777220,
+16777223,16777350,-687865725,603989157,196864,262400,459008,8782080,8585472,631625472,16786688,16777219,16777220,16777223,16777350,-687865725,
+637544101,196864,262400,459008,8782080,8585472,665179904,16787200,16777219,16777220,16777223,16777350,-687865725,671099045,196864,262400,
+459008,8782080,8585472,698734336,16787712,16777219,16777220,16777223,50054,0,23330817,1878,33537,2794967,50397226,67174400,
+117506048,-2046754816,-2097086464,-1512636416,2818091,769,1025,1793,34305,33537,2926039,50397228,67174400,117506048,-2046754816,-2097086464,
+-1512636416,2949165,769,1025,1793,34305,33537,3057111,50397230,67174400,117506048,-2046754816,-2097086464,-1512636416,3080239,769,
+1025,1793,34305,33537,3188183,50397232,67174400,117506048,-2046754816,-2097086464,-1512636416,3211313,769,1025,1793,34305,
+33537,3319255,50397234,67174400,117506048,-2046754816,-2097086464,-1512636416,3342387,769,1025,1793,34305,33537,3450327,50397236,
+67174400,117506048,-2046754816,-2097086464,-1512636416,3473461,769,1025,1793,34305,33537,3581399,50397238,67174400,117506048,-2046754816,
+-2097086464,-1512636416,3604535,55,16777216,-1274977280,196872,262400,459008,8782080,8585472,950392576,16791552,16777219,16777220,16777223,
+16777350,-687865725,956316069,196864,262400,459008,8782080,8585472,983947008,16792064,16777219,16777220,16777223,16777350,-687865725,989871013,
+196864,262400,459008,8782080,8585472,1017501440,16792576,16777219,16777220,16777223,16777350,-687865725,1023425957,196864,262400,459008,
+8782080,8585472,1051055872,16793088,16777219,16777220,16777223,16777350,-687865725,1056980901,196864,262400,459008,8782080,8585472,1084610304,
+16793600,16777219,16777220,16777223,16777350,-687865725,1090535845,196864,262400,459008,8782080,8585472,1118164736,16794112,16777219,16777220,
+16777223,16777350,-687865725,1124090789,196864,262400,459008,8782080,8585472,1151719168,16794624,16777219,16777220,-922746873,0,65536,
+168952164,34305,33537,4564439,50397253,67174400,117506048,-2046754816,-2097086464,-1512636416,4587590,769,1025,1793,34305,33537,
+4695511,50397255,67174400,117506048,-2046754816,-2097086464,-1512636416,4718664,769,1025,1793,34305,33537,4826583,50397257,67174400,
+117506048,-2046754816,-2097086464,-1512636416,4849738,769,1025,1793,34305,33537,4957655,50397259,67174400,117506048,-2046754816,-2097086464,
+-1512636416,4980812,769,1025,1793,34305,33537,5088727,50397261,67174400,117506048,-2046754816,-2097086464,-1512636416,5111886,769,
+1025,1793,34305,33537,5219799,50397263,67174400,117506048,-2046754816,-2097086464,-1512636416,5242960,769,1025,1793,34305,
+33537,5350871,50397265,67174400,117506048,-2046754816,-2097086464,-1512636416,5177426,0,1677721856,1376481281,196864,262400,459008,8782080,
+8585472,1403377408,16798464,16777219,16777220,16777223,16777350,-687865725,1409307813,196864,262400,459008,8782080,8585472,1436931840,16798976,
+16777219,16777220,16777223,16777350,-687865725,1442862757,196864,262400,459008,8782080,8585472,1470486272,16799488,16777219,16777220,16777223,
+16777350,-687865725,1476417701,196864,262400,459008,8782080,8585472,1504040704,16800000,16777219,16777220,16777223,16777350,-687865725,1509972645,
+196864,262400,459008,8782080,8585472,1537595136,16800512,16777219,16777220,16777223,16777350,-687865725,1543527589,196864,262400,459008,
+8782080,8585472,1571149568,16801024,16777219,16777220,16777223,16777350,-687865725,1577082533,196864,262400,459008,8782080,8585472,1604704000,
+16801536,16777219,16777220,64007,0,23330817,3278,34305,33537,6333911,50397280,67174400,117506048,-2046754816,-2097086464,-1512636416,
+6357089,769,1025,1793,34305,33537,6464983,50397282,67174400,117506048,-2046754816,-2097086464,-1512636416,6488163,769,1025,
+1793,34305,33537,6596055,50397284,67174400,117506048,-2046754816,-2097086464,-1512636416,6619237,769,1025,1793,34305,33537,
+6727127,50397286,67174400,117506048,-2046754816,-2097086464,-1512636416,6750311,769,1025,1793,34305,33537,6858199,50397288,67174400,
+117506048,-2046754816,-2097086464,-1512636416,6881385,769,1025,1793,34305,33537,6989271,50397290,67174400,117506048,-2046754816,-2097086464,
+-1512636416,7012459,769,1025,1793,34305,33537,7120343,50397292,67174400,117506048,-2046754816,-2097086464,-1512636416,37,16777216,
+738288640,1828744462,196864,262400,459008,8782080,8585472,1856362240,16805376,16777219,16777220,16777223,16777350,-687865725,1862299557,196864,
+262400,459008,8782080,8585472,1889916672,16805888,16777219,16777220,16777223,16777350,-687865725,1895854501,196864,262400,459008,8782080,
+8585472,1923471104,16806400,16777219,16777220,16777223,16777350,-687865725,1929409445,196864,262400,459008,8782080,8585472,1957025536,16806912,
+16777219,16777220,16777223,16777350,-687865725,1962964389,196864,262400,459008,8782080,8585472,1990579968,16807424,16777219,16777220,16777223,
+16777350,-687865725,1996519333,196864,262400,459008,8782080,8585472,2024134400,16807936,16777219,16777220,16777223,16777350,-687865725,2030074277,
+196864,262400,459008,8782080,8585472,2057688832,16808448,16777219,-50331644,0,65536,260702564,1793,34305,33537,8103383,
+50397307,67174400,117506048,-2046754816,-2097086464,-1512636416,8126588,769,1025,1793,34305,33537,8234455,50397309,67174400,117506048,
+-2046754816,-2097086464,-1512636416,8257662,769,1025,1793,34305,33537,8365527,50397311,67174400,117506048,-2046754816,-2097086464,-1512636416,
+8388736,769,1025,1793,34305,33537,8496599,50397313,67174400,117506048,-2046754816,-2097086464,-1512636416,8519810,769,1025,
+1793,34305,33537,8627671,50397315,67174400,117506048,-2046754816,-2097086464,-1512636416,8650884,769,1025,1793,34305,33537,
+8758743,50397317,67174400,117506048,-2046754816,-2097086464,-1512636416,8781958,769,1025,1793,34305,33537,8889815,50397319,67174400,
+117506048,-2046754816,-2097086464,1835008,0,1677721856,-686757887,-2013230939,196864,262400,459008,8782080,8585472,-1985620224,16812288,16777219,
+16777220,16777223,16777350,-687865725,-1979675995,196864,262400,459008,8782080,8585472,-1952065792,16812800,16777219,16777220,16777223,16777350,
+-687865725,-1946121051,196864,262400,459008,8782080,8585472,-1918511360,16813312,16777219,16777220,16777223,16777350,-687865725,-1912566107,196864,
+262400,459008,8782080,8585472,-1884956928,16813824,16777219,16777220,16777223,16777350,-687865725,-1879011163,196864,262400,459008,8782080,
+8585472,-1851402496,16814336,16777219,16777220,16777223,16777350,-687865725,-1845456219,196864,262400,459008,8782080,8585472,-1817848064,16814848,
+16777219,16777220,16777223,16777350,-687865725,-1811901275,196864,262400,459008,8782080,8585472,-1784293632,16815360,16777219,52996,0,
+23330817,4678,1793,34305,33537,9872855,50397334,67174400,117506048,-2046754816,-2097086464,-1512636416,9896087,769,1025,1793,
+34305,33537,10003927,50397336,67174400,117506048,-2046754816,-2097086464,-1512636416,10027161,769,1025,1793,34305,33537,10134999,
+50397338,67174400,117506048,-2046754816,-2097086464,-1512636416,10158235,769,1025,1793,34305,33537,10266071,50397340,67174400,117506048,
+-2046754816,-2097086464,-1512636416,10289309,769,1025,1793,34305,33537,10397143,50397342,67174400,117506048,-2046754816,-2097086464,-1512636416,
+10420383,769,1025,1793,34305,33537,10528215,50397344,67174400,117506048,-2046754816,-2097086464,-1512636416,10551457,769,1025,
+1793,34305,33537,10659287,50397346,67174400,117506048,-2046754816,-2097086464,159,16777216,-1543412736,-687865837,-1560239195,196864,262400,
+459008,8782080,8585472,-1532635392,16819200,16777219,16777220,16777223,16777350,-687865725,-1526684251,196864,262400,459008,8782080,8585472,
+-1499080960,16819712,16777219,16777220,16777223,16777350,-687865725,-1493129307,196864,262400,459008,8782080,8585472,-1465526528,16820224,16777219,
+16777220,16777223,16777350,-687865725,-1459574363,196864,262400,459008,8782080,8585472,-1431972096,16820736,16777219,16777220,16777223,16777350,
+-687865725,-1426019419,196864,262400,459008,8782080,8585472,-1398417664,16821248,16777219,16777220,16777223,16777350,-687865725,-1392464475,196864,
+262400,459008,8782080,8585472,-1364863232,16821760,16777219,16777220,16777223,16777350,-687865725,-1358909531,196864,262400,459008,8782080,
+8585472,-1331308800,16822272,553648131,0,65536,352452964,1025,1793,34305,33537,11642327,50397361,67174400,117506048,-2046754816,
+-2097086464,-1512636416,11665586,769,1025,1793,34305,33537,11773399,50397363,67174400,117506048,-2046754816,-2097086464,-1512636416,11796660,
+769,1025,1793,34305,33537,11904471,50397365,67174400,117506048,-2046754816,-2097086464,-1512636416,11927734,769,1025,1793,
+34305,33537,12035543,50397367,67174400,117506048,-2046754816,-2097086464,-1512636416,12058808,769,1025,1793,34305,33537,12166615,
+50397369,67174400,117506048,-2046754816,-2097086464,-1512636416,12189882,769,1025,1793,34305,33537,12297687,50397371,67174400,117506048,
+-2046754816,-2097086464,-1512636416,12320956,769,1025,1793,34305,33537,12428759,50397373,67174400,117506048,-2046754816,10551296,0,
+1677721856,18243585,-687865725,-1107247451,196864,262400,459008,8782080,8585472,-1079650560,16826112,16777219,16777220,16777223,16777350,-687865725,
+-1073692507,196864,262400,459008,8782080,8585472,-1046096128,16826624,16777219,16777220,16777223,16777350,-687865725,-1040137563,196864,262400,
+459008,8782080,8585472,-1012541696,16827136,16777219,16777220,16777223,16777350,-687865725,-1006582619,196864,262400,459008,8782080,8585472,
+-978987264,16827648,16777219,16777220,16777223,16777350,-687865725,-973027675,196864,262400,459008,8782080,8585472,-945432832,16828160,16777219,
+16777220,16777223,16777350,-687865725,-939472731,196864,262400,459008,8782080,8585472,-911878400,16828672,16777219,16777220,16777223,16777350,
+-687865725,-905917787,196864,262400,459008,8782080,8585472,-878323968,16829184,59907,0,23330817,6078,1025,1793,34305,
+33537,13411799,50397388,67174400,117506048,-2046754816,-2097086464,-1512636416,13435085,769,1025,1793,34305,33537,13542871,50397390,
+67174400,117506048,-2046754816,-2097086464,-1512636416,13566159,769,1025,1793,34305,33537,13673943,50397392,67174400,117506048,-2046754816,
+-2097086464,-1512636416,13697233,769,1025,1793,34305,33537,13805015,50397394,67174400,117506048,-2046754816,-2097086464,-1512636416,13828307,
+769,1025,1793,34305,33537,13936087,50397396,67174400,117506048,-2046754816,-2097086464,-1512636416,13959381,769,1025,1793,
+34305,33537,14067159,50397398,67174400,117506048,-2046754816,-2097086464,-1512636416,14090455,769,1025,1793,34305,33537,14198231,
+50397400,67174400,117506048,-2046754816,37,16777216,469853184,16777241,-687865725,-654255707,196864,262400,459008,8782080,8585472,-626665728,
+16833024,16777219,16777220,16777223,16777350,-687865725,-620700763,196864,262400,459008,8782080,8585472,-593111296,16833536,16777219,16777220,
+16777223,16777350,-687865725,-587145819,196864,262400,459008,8782080,8585472,-559556864,16834048,16777219,16777220,16777223,16777350,-687865725,
+-553590875,196864,262400,459008,8782080,8585472,-526002432,16834560,16777219,16777220,16777223,16777350,-687865725,-520035931,196864,262400,
+459008,8782080,8585472,-492448000,16835072,16777219,16777220,16777223,16777350,-687865725,-486480987,196864,262400,459008,8782080,8585472,
+-458893568,16835584,16777219,16777220,16777223,16777350,-687865725,-452926043,196864,262400,459008,8782080,8585472,-425339136,989914624,0,
+65536,444203364,769,1025,1793,34305,33537,15181271,50397415,67174400,117506048,-2046754816,-2097086464,-1512636416,15204584,769,
+1025,1793,34305,33537,15312343,50397417,67174400,117506048,-2046754816,-2097086464,-1512636416,15335658,769,1025,1793,34305,
+33537,15443415,50397419,67174400,117506048,-2046754816,-2097086464,-1512636416,15466732,769,1025,1793,34305,33537,15574487,50397421,
+67174400,117506048,-2046754816,-2097086464,-1512636416,15597806,769,1025,1793,34305,33537,15705559,50397423,67174400,117506048,-2046754816,
+-2097086464,10485760,9687,50397184,67174400,117506048,-2046754816,-2097086464,10485760,1363486167,50417989,67174400,117506048,-2046754816,-2097086464,10485760,
+-1568004649,50438794,67174400,117506048,-2046754816,-2097086464,10485760,-204528169,50459599,3932160,0,1677721856,18601985,16777220,16777223,16777350,
+-1610612605,338024192,21304389,16777219,16777220,16777223,16777350,-1610612605,1495652096,26630550,16777219,16777220,16777223,16777350,-1610612605,-1641687296,
+31956711,16777219,16777220,16777223,16777350,-1610612605,-484059392,20505400,16777219,16777220,16777223,16777350,-1610612605,673568512,25831562,16777219,
+16777220,16777223,16777350,-1610612605,1831196416,31157723,16777219,16777220,16777223,16777350,-1610612605,-1306142976,19706412,16777219,16777220,16777223,
+16777350,-1610612605,-148515072,25032573,16777219,16777220,16777223,16777350,-1610612605,1009112832,30358735,16777219,16777220,16777223,16777350,-1610612605,
+-2128226560,18907424,16777219,16777220,16777223,16777350,-1610612605,-970598656,24233585,16777219,16777220,16777223,16777350,-1610612605,187029248,29559747,
+16777219,16777220,16777223,16777350,9603,0,23330817,7478,634847392,340792400,769,1025,1793,34305,33537,634847392,
+1704289685,769,1025,1793,34305,33537,634847392,-1227180326,769,1025,1793,34305,33537,634847392,136251423,769,
+1025,1793,34305,33537,634847392,1499748708,769,1025,1793,34305,33537,-1512636256,2127626449,769,1025,1793,
+34305,33537,-1378418528,3014846,769,1025,1793,34305,33537,-1376321376,11075747,769,1025,1793,34305,33537,
+-1378418528,10944647,769,1025,1793,34305,33537,-1510539104,6881447,769,1025,1793,34305,33537,-1490152000,-1379925856,
+50397263,67174400,117506048,-2046754816,-2097086464,364904448,10528558,2928064,769,1025,1793,34305,33537,1182391,366936582,21,
+16777216,-1811931136,1979746078,1955323903,2004942335,14802432,-777572864,-668031016,-22609711,0,65536,65542,248,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,2130706432]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0GA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0GA-PB.jpg
new file mode 100644
index 000000000..477db89db
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0GA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0GA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0GA-PB.json
new file mode 100644
index 000000000..da736bef3
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0GA-PB.json
@@ -0,0 +1,113 @@
+{"exec":128,"data":[
+0,0,0,23330817,10485888,75223,33619968,100728832,67174400,10485760,9687,33619969,83951616,117506048,10485760,-55849,
+33652736,100728832,67174400,10485760,-2147473961,33685503,83951616,117506048,10485760,2147427799,33619968,100728832,67174400,10485760,9687,33652735,
+83951616,117506048,10485760,9687,33685503,100728832,67174400,10485760,-55849,33619968,83951616,117506048,10485760,2147427799,33652736,100728832,
+67174400,10485760,-2147473961,33652735,83951616,117506048,10485760,107991,33619968,100728832,67174400,10485760,42455,33619969,83951616,117506048,
+10485760,5547479,33620051,100728832,67174400,10485760,5481943,33620052,83951616,117506048,10485760,8365527,33620160,100728832,67174400,10485760,
+12625367,33620095,83951616,117506048,10485760,107991,33620160,100728832,67174400,10485760,12625367,33619969,206,16777216,-570334208,16777217,
+16777221,-1610612729,-5908736,16826368,16777218,16777222,-1610612732,-1062873344,16842496,16777218,16777221,-1610612729,10868480,16842496,16777218,16777222,
+-1610612732,-5908736,16777216,16777218,16777221,-1610612729,27645696,16842496,16777218,16777222,-1610612732,-5908736,16777472,16777218,16777221,-1610612729,
+2479872,33554176,16777218,16777222,-1610612732,-14297344,16777471,16777218,16777221,-1610612729,1160107776,22103121,16777218,16777222,-1610612732,1143330560,
+22103377,16777218,16777221,-1610612729,-1977231616,27429282,16777218,16777222,-1610612732,-1994008832,27429538,16777218,16777221,-1610612729,-819603712,32755443,
+16777218,16777222,-1610612732,-836380928,32755699,16777218,16777221,-1610612729,338024192,21304133,16777218,16777222,-1610612732,321246976,21304389,16777218,
+16777221,-1610612729,1495652096,26630294,16777218,16777222,-2130706428,0,65536,54264164,634847392,-1772513704,513,1281,1793,634847392,
+-409081954,513,1537,1025,634847392,-409016419,513,1281,1793,634847392,954349795,513,1537,1025,634847392,954415330,
+513,1281,1793,634847392,-1977120216,513,1537,1025,634847392,-1977054681,513,1281,1793,634847392,-613622931,513,
+1537,1025,634847392,-613557396,513,1281,1793,634847392,749808818,513,1537,1025,634847392,749874353,513,1281,
+1793,634847392,2113306103,513,1537,1025,634847392,2113371638,513,1281,1793,634847392,-818163908,513,1537,1025,
+634847392,-818098373,513,1281,1793,634847392,545267841,513,1537,1025,634847392,545333376,513,1281,1793,634847392,
+1908765126,11862529,0,1677721856,301569,393472,262400,-687824896,-965622491,131441,327936,459008,-687824896,180554533,131523,393472,
+262400,-687824896,197331493,131523,327936,459008,-687824896,1326731301,131348,393472,262400,-687824896,1343508261,131348,327936,459008,
+-687824896,-1805282011,131429,393472,262400,-687824896,-1788505051,131429,327936,459008,-687824896,-642328027,131510,393472,262400,-687824896,
+-625551067,131510,327936,459008,-687824896,503848741,131336,393472,262400,-687824896,520625701,131336,327936,459008,-687824896,1666802725,
+131417,393472,262400,-687824896,1683579685,131417,327936,459008,-687824896,-1465210587,131498,393472,262400,-687824896,-1448433627,131498,
+327936,459008,-687824896,-302256603,131579,393472,262400,-687824896,-285479643,131579,327936,459008,46592,0,23330817,10487288,
+1295197655,33639730,100728832,67174400,10485760,1295132119,33639731,83951616,117506048,10485760,-1636293161,33660535,100728832,67174400,10485760,-1636358697,
+33660536,83951616,117506048,10485760,-272816681,33681340,100728832,67174400,10485760,-272882217,33681341,83951616,117506048,10485760,1090659799,33636609,
+100728832,67174400,10485760,1090594263,33636610,83951616,117506048,10485760,-1840831017,33657414,100728832,67174400,10485760,-1840896553,33657415,83951616,
+117506048,10485760,-477354537,33678219,100728832,67174400,10485760,-477420073,33678220,83951616,117506048,10485760,886121943,33633488,100728832,67174400,
+10485760,886056407,33633489,83951616,117506048,10485760,-2045368873,33654293,100728832,67174400,10485760,-2045434409,33654294,83951616,117506048,10485760,
+-681892393,33675098,100728832,67174400,10485760,-681957929,33675099,37,16777216,1442931712,16777223,16777221,-1610612729,10868480,33554176,16777218,
+16777222,-1610612732,-5908736,16777471,16777218,16777221,-1610612729,61200128,16777728,16777218,16777222,-1610612732,44422912,16777984,16777218,16777221,
+-1610612729,111531776,16778496,16777218,16777222,-1610612732,94754560,16778752,16777218,16777221,-1610612729,161863424,16779264,16777218,16777222,-1610612732,
+145086208,16779520,16777218,16777221,-1610612729,212195072,16780032,16777218,16777222,-1610612732,195417856,16780288,16777218,16777221,-1610612729,262526720,
+16780800,16777218,16777222,-1610612732,245749504,16781056,16777218,16777221,-1610612729,312858368,16781568,16777218,16777222,-1610612732,296081152,16781824,
+16777218,16777221,-1610612729,363190016,16782336,16777218,16777222,-1610612732,346412800,16782592,16777218,16777221,-1610612729,413521664,16783104,16777218,
+16777222,-687865852,0,65536,146014564,-1512636256,1572887,513,1281,1793,-1512636256,1703963,513,1537,1025,-1512636256,
+1769498,513,1281,1793,-1512636256,1900574,513,1537,1025,-1512636256,1966109,513,1281,1793,-1512636256,2097185,
+513,1537,1025,-1512636256,2162720,513,1281,1793,-1512636256,2293796,513,1537,1025,-1512636256,2359331,513,
+1281,1793,-1512636256,2490407,513,1537,1025,-1512636256,2555942,513,1281,1793,-1512636256,2687018,513,1537,
+1025,-1512636256,2752553,513,1281,1793,-1512636256,2883629,513,1537,1025,-1512636256,2949164,513,1281,1793,
+-1512636256,3080240,513,1537,1025,-1512636256,3145775,513,1281,1793,-1512636256,3276851,10355201,0,1677721856,659969,
+393472,262400,-687824896,855650981,131328,327936,459008,-687824896,889206437,131328,393472,262400,-687824896,905983397,131328,327936,
+459008,-687824896,939538853,131328,393472,262400,-687824896,956315813,131328,327936,459008,-687824896,989871269,131328,393472,262400,
+-687824896,1006648229,131328,327936,459008,-687824896,1040203685,131328,393472,262400,-687824896,1056980645,131328,327936,459008,-687824896,
+1090536101,131328,393472,262400,-687824896,1107313061,131328,327936,459008,-687824896,1140868517,131328,393472,262400,-687824896,1157645477,
+131328,327936,459008,-687824896,1191200933,131328,393472,262400,-687824896,1207977893,131328,327936,459008,-687824896,1241533349,131328,
+393472,262400,-687824896,1258310309,131328,327936,459008,8192,0,23330817,10488688,5154263,33620045,100728832,67174400,10485760,
+5088727,33620046,83951616,117506048,10485760,5350871,33620048,100728832,67174400,10485760,5285335,33620049,83951616,117506048,10485760,5547479,
+33620051,100728832,67174400,10485760,5481943,33620052,83951616,117506048,10485760,5744087,33620054,100728832,67174400,10485760,5678551,33620055,
+83951616,117506048,10485760,5940695,33620057,100728832,67174400,10485760,5875159,33620058,83951616,117506048,10485760,6137303,33620060,100728832,
+67174400,10485760,6071767,33620061,83951616,117506048,10485760,75223,33619968,-2113863680,-2046754816,10485760,9687,33619969,-2029977600,-2097086464,
+10485760,-55849,33619968,-2113863680,-2046754816,10485760,9687,33685503,-2029977600,-2097086464,10485760,-2147473961,33652735,-2113863680,-2046754816,10485760,
+2147427799,33652736,45,16777216,-838769664,16777228,16777351,-1610612605,-14297344,25166079,16777218,16777346,-1610612602,2479872,33554304,16777218,
+16777351,-1610612605,19257088,25165952,16777218,16777346,-1610612602,2479872,25166208,16777218,16777351,-1610612605,27645696,16777216,16777218,16777346,
+-1610612602,10868480,16777472,16777218,16777351,-1610612605,27645696,16842752,16777218,16777346,-1610612602,10868480,16777473,16777218,16777351,-1610612605,
+27645696,16842753,16777218,16777346,-1610612602,10868480,16843009,16777218,16777351,-1610612605,19257088,16777216,16777218,16777346,-1610612602,2479872,
+16777472,16777218,16777351,-1610612605,-198846720,17625868,16777218,16777346,-1610612602,-215623936,17626124,16777218,16777351,-1610612605,-416950528,18474521,
+16777218,16777346,-1610612602,-433727744,18474777,16777218,16777351,-1610612605,-635054336,19323174,16777218,16777346,1677721734,0,65536,237764964,
+634847392,651831001,513,34561,33537,634847392,869020621,513,33281,34305,634847392,869086156,513,34561,33537,634847392,
+1086275776,513,33281,34305,634847392,1086341311,513,34561,33537,634847392,1303530931,513,33281,34305,634847392,1303596466,
+513,34561,33537,634847392,1520786086,513,33281,34305,634847392,1520851621,513,34561,33537,634847392,1738041241,513,
+33281,34305,634847392,1738106776,513,34561,33537,634847392,1955296396,513,33281,34305,634847392,1955361931,513,34561,
+33537,634847392,-2122415745,513,33281,34305,634847392,-2122350210,513,34561,33537,634847392,-1905160590,513,33281,34305,
+634847392,-1905095055,513,34561,33537,634847392,-1687905435,8913409,0,1677721856,1018369,8519936,8782080,-687824896,1704682533,131483,
+8847616,8585472,-687824896,1470650405,131496,8519936,8782080,-687824896,1487427365,131496,8847616,8585472,-687824896,1253395237,131509,8519936,
+8782080,-687824896,1270172197,131509,8847616,8585472,-687824896,1036140069,131522,8519936,8782080,-687824896,1052917029,131522,8847616,8585472,
+-687824896,818884901,131535,8519936,8782080,-687824896,835661861,131535,8847616,8585472,-687824896,601629733,131548,8519936,8782080,-687824896,
+618406693,131548,8847616,8585472,-687824896,384374565,131561,8519936,8782080,-687824896,401151525,131561,8847616,8585472,-687824896,167119397,
+131574,8519936,8782080,-687824896,183896357,131574,8847616,8585472,-687824896,-66912987,131330,8519936,8782080,-687824896,-50136027,131330,
+8847616,8585472,49408,0,23330817,10490088,267396567,33624047,-2113863680,-2046754816,10485760,267331031,33624048,-2029977600,-2097086464,10485760,
+484648407,33627362,-2113863680,-2046754816,10485760,484582871,33627363,-2029977600,-2097086464,10485760,701900247,33630677,-2113863680,-2046754816,10485760,701834711,
+33630678,-2029977600,-2097086464,10485760,919152087,33633992,-2113863680,-2046754816,10485760,919086551,33633993,-2029977600,-2097086464,10485760,1136403927,33637307,
+-2113863680,-2046754816,10485760,1136338391,33637308,-2029977600,-2097086464,10485760,1353655767,33640622,-2113863680,-2046754816,10485760,1353590231,33640623,-2029977600,
+-2097086464,10485760,1570907607,33643937,-2113863680,-2046754816,10485760,1570842071,33643938,-2029977600,-2097086464,10485760,1788159447,33647252,-2113863680,-2046754816,
+10485760,1788093911,33647253,-2029977600,-2097086464,10485760,2005411287,33650567,-2113863680,-2046754816,10485760,2005345751,33650568,240,16777216,1174496256,
+16777234,16777351,-1610612605,2066077440,25459332,16777218,16777346,-1610612602,2049300224,25459588,16777218,16777351,-1610612605,1847973632,26307985,16777218,
+16777346,-1610612602,1831196416,26308241,16777218,16777351,-1610612605,27645696,16777216,16777218,16777346,-1610612602,10868480,16777472,16777218,16777351,
+-1610612605,77977344,16777984,16777218,16777346,-1610612602,61200128,16778240,16777218,16777351,-1610612605,128308992,16778752,16777218,16777346,-1610612602,
+111531776,16779008,16777218,16777351,-1610612605,178640640,16779520,16777218,16777346,-1610612602,161863424,16779776,16777218,16777351,-1610612605,228972288,
+16780288,16777218,16777346,-1610612602,212195072,16780544,16777218,16777351,-1610612605,279303936,16781056,16777218,16777346,-1610612602,262526720,16781312,
+16777218,16777351,-1610612605,329635584,16781824,16777218,16777346,-1811939194,0,65536,329515364,-1512636256,1245202,513,34561,33537,
+-1512636256,1376278,513,33281,34305,-1512636256,1441813,513,34561,33537,-1512636256,1572889,513,33281,34305,-1512636256,
+1638424,513,34561,33537,-1512636256,1769500,513,33281,34305,-1512636256,1835035,513,34561,33537,-1512636256,1966111,
+513,33281,34305,-1512636256,2031646,513,34561,33537,-1512636256,2162722,513,33281,34305,-1512636256,2228257,513,
+34561,33537,-1512636256,2359333,513,33281,34305,-1512636256,2424868,513,34561,33537,-1512636256,2555944,513,33281,
+34305,-1512636256,2621479,513,34561,33537,-1512636256,2752555,513,33281,34305,-1512636256,2818090,513,34561,33537,
+-1512636256,2949166,7930369,0,1677721856,1376769,8519936,8782080,-687824896,771763621,131328,8847616,8585472,-687824896,805319077,131328,
+8519936,8782080,-687824896,822096037,131328,8847616,8585472,-687824896,855651493,131328,8519936,8782080,-687824896,872428453,131328,8847616,
+8585472,-687824896,905983909,131328,8519936,8782080,-687824896,922760869,131328,8847616,8585472,-687824896,956316325,131328,8519936,8782080,
+-687824896,973093285,131328,8847616,8585472,-687824896,1006648741,131328,8519936,8782080,-687824896,1023425701,131328,8847616,8585472,-687824896,
+1056981157,131328,8519936,8782080,-687824896,1073758117,131328,8847616,8585472,-687824896,1107313573,131328,8519936,8782080,-687824896,1124090533,
+131328,8847616,8585472,-687824896,1157645989,131328,8519936,8782080,-687824896,1174422949,131328,8847616,8585472,62208,0,22937601,
+10491488,4826583,33620040,-2113863680,-2046754816,10485760,4761047,33620041,-2029977600,-2097086464,10485760,5023191,33620043,-2113863680,-2046754816,10485760,
+4957655,33620044,-2029977600,-2097086464,10485760,5219799,33620046,-2113863680,-2046754816,10485760,5154263,33620047,-2029977600,-2097086464,10485760,5416407,
+33620049,-2113863680,-2046754816,10485760,5350871,33620050,-2029977600,-2097086464,10485760,5613015,33620052,-2113863680,-2046754816,10485760,5547479,33620053,
+-2029977600,-2097086464,10485760,5809623,33620055,-2113863680,-2046754816,10485760,5744087,33620056,-2029977600,-2097086464,10485760,6006231,33620058,-2113863680,
+-2046754816,10485760,5940695,33620059,-2029977600,-2097086464,10485760,6202839,33620061,-2113863680,-2046754816,10485760,6137303,33620062,-2029977600,-2097086464,
+179765248,33947666,8852959,-1948254346,-2130837644,-389414793,14417920,0,100663552,-134217472,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,-4194304,648697258,3029054,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,405029376,1115767332,1109661732,405029505,-863944156,0,0,0,-16777216]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0HA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0HA-PB.jpg
new file mode 100644
index 000000000..e45ff3f24
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0HA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0HA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0HA-PB.json
new file mode 100644
index 000000000..0050a62ee
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0HA-PB.json
@@ -0,0 +1,100 @@
+{"exec":128,"data":[
+0,0,1677721856,-1073709055,-1073741803,16777253,-1073741821,-1056964843,33554213,-1610612733,9814016,10862592,196864,-1073700864,-1056964715,33554341,
+-1073741821,-1062557163,27961893,-1073741821,-1068149483,22369573,-1610612733,-1433026560,-1431977814,197034,-1073700864,-1068149355,22369701,-1073741821,-1073741547,16777509,
+-1073741821,-1073741291,16777765,-1073741821,-1073740779,16778277,-1073741821,-1073739755,16779301,-1073741821,-1073737707,16781349,-1073741821,-1073733611,16785445,-1073741821,
+-1073725419,16793637,-1073741821,-1073709035,16810021,-1073741821,-1073676267,16842789,-1073741821,-1073610731,16908325,-1073741821,-1073479659,17039397,-1073741821,-1073217515,
+17301541,-1073741821,-1072693227,17825829,-1073741821,-1071644651,18874405,-1073741821,-1069547499,20971557,-1073741821,-1065353195,25165861,-1610612733,26591232,27639808,
+196864,-1073700864,-1073741163,16777893,-1610612733,76922880,77971456,196864,-1073700864,-1073739627,16779429,18435,0,23330817,478,-1782579040,
+-1514143728,50397200,10485760,2135488,2139584,769,-1782579040,-1514143680,50397248,10485760,8426944,8431040,769,-1782579040,-1514143744,50397184,
+10485760,103872,107968,769,-1782579040,-1514143742,50397186,10485760,234944,239040,769,-1782579040,-1514143740,50397188,10485760,366016,
+370112,769,-1782579040,-1514143738,50397190,10485760,497088,501184,769,-1782579040,-1514143736,50397192,10485760,628160,632256,769,
+-1782579040,-1514143734,50397194,10485760,759232,763328,769,-1782579040,-1514143732,50397196,10485760,890304,894400,769,-1782579040,-1514143730,
+50397198,10485760,1021376,1025472,769,-1782579040,-1514143728,50397200,10485760,1152448,1156544,769,-1782579040,-1514143726,50397202,10485760,
+1283520,1287616,769,-1782579040,-1514143724,50397204,9,16777216,1006724096,-1610612733,362135552,363184128,196864,-1073700864,-1073736043,16783013,
+-1610612733,395689984,396738560,196864,-1073700864,-1073735531,16783525,-1610612733,429244416,430292992,196864,-1073700864,-1073735019,16784037,-1610612733,462798848,
+463847424,196864,-1073700864,-1073734507,16784549,-1610612733,496353280,497401856,196864,-1073700864,-1073733995,16785061,-1610612733,529907712,530956288,196864,
+-1073700864,-1073733483,16785573,-1610612733,563462144,564510720,196864,-1073700864,-1073732971,16786085,-1610612733,597016576,598065152,196864,-1073700864,-1073732459,
+16786597,-1610612733,630571008,631619584,196864,-1073700864,-1073731947,16787109,-1610612733,664125440,665174016,196864,-1073700864,-1073731435,16787621,-1610612733,
+697679872,698728448,196864,-1073700864,-1073730923,16788133,-1610612733,731234304,732282880,196864,-1073700864,-1073730411,16788645,-1610612733,764788736,765837312,
+-1157431040,0,65536,77201764,10485760,3052992,3057088,769,-1782579040,-1514143697,50397231,10485760,3184064,3188160,769,-1782579040,
+-1514143695,50397233,10485760,3315136,3319232,769,-1782579040,-1514143693,50397235,10485760,3446208,3450304,769,-1782579040,-1514143691,50397237,
+10485760,3577280,3581376,769,-1782579040,-1514143689,50397239,10485760,3708352,3712448,769,-1782579040,-1514143687,50397241,10485760,3839424,
+3843520,769,-1782579040,-1514143685,50397243,10485760,3970496,3974592,769,-1782579040,-1514143683,50397245,10485760,4101568,4105664,769,
+-1782579040,-1514143681,50397247,10485760,4232640,4236736,769,-1782579040,-1514143679,50397249,10485760,4363712,4367808,769,-1782579040,-1514143677,
+50397251,10485760,4494784,4498880,769,-1782579040,-1514143675,50397253,10485760,4625856,4629952,7996161,0,1677721856,391169,-1073700864,
+-1073723499,16795557,-1610612733,1217773568,1218822144,196864,-1073700864,-1073722987,16796069,-1610612733,1251328000,1252376576,196864,-1073700864,-1073722475,16796581,
+-1610612733,1284882432,1285931008,196864,-1073700864,-1073721963,16797093,-1610612733,1318436864,1319485440,196864,-1073700864,-1073721451,16797605,-1610612733,1351991296,
+1353039872,196864,-1073700864,-1073720939,16798117,-1610612733,1385545728,1386594304,196864,-1073700864,-1073720427,16798629,-1610612733,1419100160,1420148736,196864,
+-1073700864,-1073719915,16799141,-1610612733,1452654592,1453703168,196864,-1073700864,-1073719403,16799653,-1610612733,1486209024,1487257600,196864,-1073700864,-1073718891,
+16800165,-1610612733,1519763456,1520812032,196864,-1073700864,-1073718379,16800677,-1610612733,1553317888,1554366464,196864,-1073700864,-1073717867,16801189,-1610612733,
+1586872320,1587920896,196864,-1073700864,-1073717355,16801701,14595,0,23330817,1878,-1782579040,-1514143648,50397280,10485760,6395328,6399424,
+769,-1782579040,-1514143646,50397282,10485760,6526400,6530496,769,-1782579040,-1514143644,50397284,10485760,6657472,6661568,769,-1782579040,
+-1514143642,50397286,10485760,6788544,6792640,769,-1782579040,-1514143640,50397288,10485760,6919616,6923712,769,-1782579040,-1514143638,50397290,
+10485760,7050688,7054784,769,-1782579040,-1514143636,50397292,10485760,7181760,7185856,769,-1782579040,-1514143634,50397294,10485760,7312832,
+7316928,769,-1782579040,-1514143632,50397296,10485760,7443904,7448000,769,-1782579040,-1514143630,50397298,10485760,7574976,7579072,769,
+-1782579040,-1514143628,50397300,10485760,7706048,7710144,769,-1782579040,-1514143626,50397302,10485760,7837120,7841216,769,-1782579040,-1514143624,
+50397304,247,16777216,-1274977280,-1610612728,2039857152,2040905728,196864,-1073700864,-1073710443,16808613,-1610612733,2073411584,2074460160,196864,-1073700864,
+-1073709931,16809125,-1610612733,2106966016,2108014592,196864,-1073700864,-1073709419,16809637,-1610612733,2140520448,2141569024,196864,-1073700864,-1073708907,16810149,
+-1610612733,-2120892416,-2119843840,196864,-1073700864,-1073708395,16810661,-1610612733,-2087337984,-2086289408,196864,-1073700864,-1073707883,16811173,-1610612733,-2053783552,
+-2052734976,196864,-1073700864,-1073707371,16811685,-1610612733,-2020229120,-2019180544,196864,-1073700864,-1073706859,16812197,-1610612733,-1986674688,-1985626112,196864,
+-1073700864,-1073706347,16812709,-1610612733,-1953120256,-1952071680,196864,-1073700864,-1073705835,16813221,-1610612733,-1919565824,-1918517248,196864,-1073700864,-1073705323,
+16813733,-1610612733,-1886011392,-1884962816,196864,-1073700864,-1073704811,16814245,-1610612733,-1852456960,-1851408384,-1241317120,0,65536,168952164,10485760,
+9606592,9610688,769,-1782579040,-1514143597,50397331,10485760,9737664,9741760,769,-1782579040,-1514143595,50397333,10485760,9868736,9872832,
+769,-1782579040,-1514143593,50397335,10485760,9999808,10003904,769,-1782579040,-1514143591,50397337,10485760,10130880,10134976,769,-1782579040,
+-1514143589,50397339,10485760,10261952,10266048,769,-1782579040,-1514143587,50397341,10485760,10393024,10397120,769,-1782579040,-1514143585,50397343,
+10485760,10524096,10528192,769,-1782579040,-1514143583,50397345,10485760,10655168,10659264,769,-1782579040,-1514143581,50397347,10485760,10786240,
+10790336,769,-1782579040,-1514143579,50397349,10485760,10917312,10921408,769,-1782579040,-1514143577,50397351,10485760,11048384,11052480,769,
+-1782579040,-1514143575,50397353,10485760,11179456,11183552,7602945,0,1677721856,749569,-1073700864,-1073697899,16821157,-1610612733,-1399472128,-1398423552,
+196864,-1073700864,-1073697387,16821669,-1610612733,-1365917696,-1364869120,196864,-1073700864,-1073696875,16822181,-1610612733,-1332363264,-1331314688,196864,-1073700864,
+-1073696363,16822693,-1610612733,-1298808832,-1297760256,196864,-1073700864,-1073695851,16823205,-1610612733,-1265254400,-1264205824,196864,-1073700864,-1073695339,16823717,
+-1610612733,-1231699968,-1230651392,196864,-1073700864,-1073694827,16824229,-1610612733,-1198145536,-1197096960,196864,-1073700864,-1073694315,16824741,-1610612733,-1164591104,
+-1163542528,196864,-1073700864,-1073693803,16825253,-1610612733,-1131036672,-1129988096,196864,-1073700864,-1073693291,16825765,-1610612733,-1097482240,-1096433664,196864,
+-1073700864,-1073692779,16826277,-1610612733,-1063927808,-1062879232,196864,-1073700864,-1073692267,16826789,-1610612733,-1030373376,-1029324800,196864,-1073700864,-1073691755,
+16827301,13059,0,23330817,3278,-1782579040,-1514143548,50397380,10485760,12948928,12953024,769,-1782579040,-1514143546,50397382,10485760,
+13080000,13084096,769,-1782579040,-1514143544,50397384,10485760,13211072,13215168,769,-1782579040,-1514143542,50397386,10485760,13342144,13346240,
+769,-1782579040,-1514143540,50397388,10485760,13473216,13477312,769,-1782579040,-1514143538,50397390,10485760,13604288,13608384,769,-1782579040,
+-1514143536,50397392,10485760,13735360,13739456,769,-1782579040,-1514143534,50397394,10485760,13866432,13870528,769,-1782579040,-1514143532,50397396,
+10485760,13997504,14001600,769,-1782579040,-1514143530,50397398,10485760,14128576,14132672,769,-1782579040,-1514143528,50397400,10485760,14259648,
+14263744,769,-1782579040,-1514143526,50397402,10485760,14390720,14394816,769,-1782579040,-1514143524,50397404,242,16777216,738288640,-1610612722,
+-577388544,-576339968,196864,-1073700864,-1073684843,16834213,-1610612733,-543834112,-542785536,196864,-1073700864,-1073684331,16834725,-1610612733,-510279680,-509231104,
+196864,-1073700864,-1073683819,16835237,-1610612733,-476725248,-475676672,196864,-1073700864,-1073683307,16835749,-1610612733,-443170816,-442122240,196864,-1073700864,
+-1073682795,16836261,-1610612733,-409616384,-408567808,196864,-1073700864,-1073682283,16836773,-1610612733,-376061952,-375013376,196864,-1073700864,-1073681771,16837285,
+-1610612733,-342507520,-341458944,196864,-1073700864,-1073681259,16837797,-1610612733,-308953088,-307904512,196864,-1073700864,-1073680747,16838309,-1610612733,-275398656,
+-274350080,196864,-1073700864,-1073680235,16838821,-1610612733,-241844224,-240795648,196864,-1073700864,-1073679723,16839333,-1610612733,-208289792,-207241216,196864,
+-1073700864,-1073679211,16839845,-1610612733,-174735360,-173686784,-1341980416,0,65536,260702564,10485760,16160192,16164288,769,-1782579040,-1514143497,
+50397431,10485760,16291264,16295360,769,-1782579040,-1514143495,50397433,10485760,16422336,16426432,769,-1782579040,-1514143493,50397435,10485760,
+16553408,16557504,769,-1782579040,-1514143491,50397437,10485760,16684480,16688576,769,5568,9664,769,16848320,16852416,769,
+33691072,33695168,769,50533824,50537920,769,67376576,67380672,769,84219328,84223424,769,101062080,101066176,769,117904832,
+117908928,769,134747584,134751680,769,151590336,151594432,769,168433088,168437184,769,185275840,185279936,769,202118592,202122688,
+769,218961344,218965440,769,235804096,235808192,769,252646848,252650944,769,269489600,269493696,769,286332352,286336448,769,
+303175104,8463808,0,1677721856,303097857,196882,320192512,321241107,196883,336969728,338018324,196884,353746944,354795541,196885,370524160,
+371572758,196886,387301376,388349975,196887,404078592,405127192,196888,420855808,421904409,196889,437633024,438681626,196890,454410240,455458843,
+196891,471187456,472236060,196892,487964672,489013277,196893,504741888,505790494,196894,521519104,522567711,196895,538296320,539344928,196896,
+555073536,556122145,196897,571850752,572899362,196898,588627968,589676579,196899,605405184,606453796,196900,622182400,623231013,196901,638959616,
+640008230,196902,655736832,656785447,196903,672514048,673562664,196904,689291264,690339881,196905,706068480,707117098,196906,722845696,723894315,
+196907,739622912,740671532,196908,756400128,757448749,196909,773177344,774225966,196910,789954560,791003183,1071,0,23330817,50401862,
+364904448,633352240,50409520,364904448,633352497,50409777,364904448,633352754,50410034,364904448,633353011,50410291,364904448,633353268,50410548,364904448,
+633353525,50410805,364904448,633353782,50411062,364904448,633354039,50411319,364904448,633354296,50411576,364904448,633354553,50411833,364904448,633354810,
+50412090,364904448,633355067,50412347,364904448,633355324,50412604,364904448,633355581,50412861,364904448,633355838,50413118,364904448,633356095,50413375,
+364904448,633356352,50413632,364904448,633356609,50413889,364904448,633356866,50414146,364904448,633357123,50414403,364904448,633357380,50414660,364904448,
+633357637,50414917,364904448,633357894,50415174,364904448,633358151,50415431,364904448,633358408,50415688,364904448,633358665,50415945,364904448,633358922,
+50416202,364904448,633359179,50416459,364904448,633359436,50416716,160,16777216,-1543412736,-1073741805,-1068675819,21843237,-1073741821,-1068610027,21909029,
+-1073741821,-1068544235,21974821,-1073741821,-1068478443,22040613,-1073741821,-1068412651,22106405,-1073741821,-1068346859,22172197,-1073741821,-1068281067,22237989,-1073741821,
+-1068215275,22303781,-1073741821,-1068149483,22369573,-1073741821,-1068083691,22435365,-1073741821,-1068017899,22501157,-1073741821,-1067952107,22566949,-1073741821,-1067886315,
+22632741,-1073741821,-1067820523,22698533,-1073741821,-1067754731,22764325,-1073741821,-1067688939,22830117,-1073741821,-1067623147,22895909,-1073741821,-1067557355,22961701,
+-1073741821,-1067491563,23027493,-1073741821,-1067425771,23093285,-1073741821,-1067359979,23159077,-1073741821,-1067294187,23224869,-1073741821,-1067228395,23290661,-1073741821,
+-1067162603,23356453,-1073741821,-1067096811,23422245,-1073741821,-1067031019,23488037,-1073741821,-1066965227,23553829,-1073741821,-1066899435,23619621,-1073741821,-1066833643,
+23685413,553648131,0,65536,352452964,1785337280,1785341376,769,1802180032,1802184128,769,1819022784,1819026880,769,1835865536,1835869632,
+769,1852708288,1852712384,769,1869551040,1869555136,769,1886393792,1886397888,769,1903236544,1903240640,769,1920079296,1920083392,769,
+1936922048,1936926144,769,1953764800,1953768896,769,1970607552,1970611648,769,1987450304,1987454400,769,2004293056,2004297152,769,2021135808,
+2021139904,769,2037978560,2037982656,769,2054821312,2054825408,769,2071664064,2071668160,769,2088506816,2088510912,769,2105349568,2105353664,
+769,2122192320,2122196416,769,2139035072,2139039168,769,633344448,50402828,-1849688064,370582976,769,17309120,-1490147904,769,16555456,
+19834304,769,15834560,10986944,769,15075895,19830263,-1376321312,14287066,769,171376800,-1644756784,4194507,0,-704642816,-887726080,
+-944908544,16819968,-1610612733,-1173735680,-1247938816,-150948864,-1375688795,196864,922787840,-150952950,-1627349347,782628608,16816431,-1610612733,-1911933184,-1986150400,
+-1482309632,196864,922787840,-1073710070,-1073711459,16854693,-1610612733,-15337728,-1073714945,933703189,-150970224,1526672933,196864,-150953984,1325399829,773177344,
+1200633767,-14289152,16793646,-1610612733,-15351808,2140520703,2132809472,196864,40960,-6963190,-14674176,197119,-1224695808,100668938,-2028609790,-536906240,
+-33590133,1442871168,10956521,-117440512,0,65536,65542,248,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0IA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0IA-PB.jpg
new file mode 100644
index 000000000..238a60560
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0IA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0IA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0IA-PB.json
new file mode 100644
index 000000000..8113012d4
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0IA-PB.json
@@ -0,0 +1,113 @@
+{"exec":128,"data":[
+0,0,0,4587521,131072,393216,655360,917504,1179648,1441792,1703936,1966080,2228224,2490368,2752512,3014656,
+3276800,3538944,3801088,4063232,12124160,0,1677721856,-1610579967,-13248768,16777471,-1610612733,3528448,33554176,-1610612733,3528448,16777216,
+-1610612733,1429591808,27961941,-1610612733,-1439312128,22369706,-1610612733,-4860160,16777471,-1610612733,11917056,33554176,-1610612733,11917056,16777216,-1610612733,
+-4860160,33488896,-1610612733,11917056,16842751,-1610612733,-30025984,16777727,-1610612733,20305664,33553920,-1610612733,-46803200,16777983,-1610612733,37082880,
+33553664,-1610612733,-80357632,16778495,-1610612733,70637312,33553152,-1610612733,-147466496,16779519,-1610612733,137746176,33552128,-1610612733,-281684224,16781567,
+-1610612733,271963904,33550080,-1610612733,-550119680,16785663,-1610612733,540399360,33545984,-1610612733,-1086990592,16793855,-1610612733,1077270272,33537792,-1610612733,
+2134234880,16810239,-1610612733,-2143955200,33521408,-1610612733,-13248768,16843006,-1610612733,3528448,33488641,-1610612733,-13248768,16908541,-1610612733,16384,
+0,23330817,903283166,-33619456,769,903282848,67173375,769,903282848,-67173376,769,903282848,134281215,769,903282848,-134281216,
+769,903282848,268496895,769,903282848,-268496896,769,903282848,536928255,769,903282848,-536928256,769,903282848,1073790975,769,
+903282848,-1073790976,769,903282848,-1,513,903282848,-256,513,903282848,-65281,513,903282848,-16711681,513,903282848,
+16777215,513,-1244200800,-1,513,-1244200800,-65281,513,-1244200800,16777215,513,903282848,-65535,513,903282848,131071,
+513,903282848,-65534,513,903282848,196607,513,903282848,-65532,513,903282848,327679,513,903282848,-65528,513,
+903282848,589823,513,903282848,-65520,513,903282848,1114111,513,903282848,87,16777216,1006724096,-16769021,131583,-687824896,
+553647925,131328,-687824896,-16760779,131583,-687824896,1090518837,131328,-687824896,-16744395,131583,-687824896,-2130706635,131328,-687824896,-16711627,
+131583,-687824896,16777013,131329,-687824896,-16646091,131583,-687824896,16777013,131330,-687824896,-16515019,131583,-687824896,16777013,131332,
+-687824896,-16252875,131583,-687824896,16777013,131336,-687824896,-15728587,131583,-687824896,16777013,131344,-687824896,-14680011,131583,-687824896,
+16777013,131360,-687824896,-12582859,131583,-687824896,16777013,131392,-687824896,-8388555,131583,-687824896,16777013,131456,-1073700864,-1056964843,
+16777269,-1610612733,1425408,-13254656,197119,-1056923648,-1040187627,16777269,-1610612733,1425664,-13254400,197119,-1040146432,-1023410411,16777269,-1610612733,
+1425920,-13254144,197119,-1023369216,1644166933,0,65536,77201764,13763,769,365101216,901971968,50462719,10485760,-59964,13764,
+769,365166752,902037504,50462719,10485760,-59963,13765,769,365232288,902103040,50462719,10485760,71104,-117312,769,364904608,
+901840894,50397185,10485760,71159,905384798,324599806,769,368509088,323813374,79351,50402118,10485760,136640,-182848,769,364904608,
+901840893,50397186,10485760,136695,905384734,320405501,769,368509088,319619069,144887,50402054,10485760,267712,-313920,769,364904608,
+901840891,50397188,10485760,267767,905384670,316211195,769,368509088,315424763,275959,50401990,10485760,529856,-576064,769,364904608,
+901840887,50397192,10485760,529911,905384606,312016887,769,368509088,311230455,538103,50401926,10485760,1054144,-1100352,769,3539104,
+0,1677721856,-1073350655,-1056968939,16781365,-1610612733,269874944,-149791232,1493167925,196882,-150953984,1291841301,271972114,17974784,-1610612733,538296320,
+-550125568,197119,-1073700864,-1056973035,16785461,-1610612733,538310400,-149807616,419422005,196882,-150953984,218095381,540407570,17958400,-1610612733,1075167232,
+-1086996480,197119,-1073700864,-1056981227,16793653,-1610612733,1075181312,-149824000,-654328011,196881,-150953984,-855654635,1077278481,17942016,-1610612733,-2146058240,
+2134228992,197119,-1073700864,-1056997611,16810037,-1610612733,-2146044160,-149840384,-1728086219,196881,-150953984,-1929412843,-2143946991,17925632,-1610612733,1425408,
+-13254655,197118,-1073700864,-1057030379,16842805,-1610612733,1439488,-149856767,1493106485,196881,-150953984,1291779861,3536657,17909249,-1610612733,1425408,
+-13254654,197117,-1073700864,-1057095915,16908341,-1610612733,1439488,-149873150,419299125,196881,7936,0,23330817,10487638,-33614345,905384204,
+285606400,769,364904608,901776384,50461695,10485760,-67168832,67122624,769,368509088,282985472,-67160585,50401496,10485760,-67168777,905384140,
+281412608,769,364904608,901777408,50460671,10485760,-134277696,134231488,769,368509088,278792192,-134269449,50401432,10485760,-134277641,905384076,
+277219328,769,364904608,901779456,50458623,10485760,-268495424,268449216,769,368509088,274599936,-268487177,50401368,10485760,-268495369,905384012,
+273027072,769,364904608,901783552,50454527,10485760,-536930880,536884672,769,368509088,270409728,-536922633,50401304,10485760,-536930825,905383948,
+268836864,769,364904608,901791744,50446335,10485760,-1073801792,1073755584,769,368509088,266223616,-1073793545,50401240,10485760,-1073801737,905383884,
+264650752,769,364904608,901808128,50429951,99,16777216,-1274977280,-1610612728,-15351808,3522687,196992,-150953984,-1635778539,-13240561,17799295,
+-1610612733,-15337728,-149975937,-2038431691,196879,-150953984,2046885653,11925263,17789952,-1610612733,1439488,-149985025,1644167349,196879,-1073700864,-1056964843,
+33554229,-1610612734,1425408,-13254401,131583,-1073700864,-1073676523,33554229,-1610612734,-15351808,3522815,131583,-1073700864,-1056964843,16842549,-1610612734,
+-15351808,-4865793,131583,-1073700864,-1073676523,33554357,-1610612734,-15351808,-13254401,131583,-1073700864,-1057030123,33554229,-1610612734,-15351808,-13254656,
+131583,-1073700864,-1056964843,33488949,-1610612734,-15351808,-13254401,131328,-1073700864,-1056964843,33554357,-1610612734,-15351808,-4866048,131583,-1073700864,
+-1056964843,33554229,-1610612734,1425408,-13254401,131583,-1073700864,-1073676523,33554229,-1610612734,-15351808,3522815,131583,-1073700864,-1056964843,-1174339787,
+0,65536,168952164,513,364904608,-1245642753,33685503,10485760,16717248,-19008,513,364904608,901840895,33685503,10485760,-16771648,
+-51776,513,364904608,901775615,33685503,10485760,-59968,-16763456,513,364904608,901840895,33620223,10485760,-59968,-19008,513,
+364904608,-1245708033,33685503,10485760,-59968,-51776,513,364904608,901840640,33685503,10485760,16717248,-51776,513,364904608,901840895,
+33685248,10485760,-59968,16725440,513,364904608,-1245642753,33685503,10485760,16717248,-19008,513,364904608,901840895,33685503,10485760,
+-16771648,-51776,513,364904608,901775615,33685503,10485760,-59968,-16763456,513,364904608,901840895,33620223,10485760,-59968,-19008,
+513,364904608,-1245708033,33685503,10485760,-59913,905383178,218431487,513,368509088,5505023,0,1677721856,-133468159,-4851956,17625855,
+-1610612734,-15337728,-150149377,-536870475,131340,-15351808,4571391,-14303232,197119,-1073700864,-1056964843,-1073741739,33554213,-1610612733,1425408,-12206080,
+2474239,196864,-1073700864,-1073741803,-1056964779,33554213,-1610612733,-15351552,4571647,-14302976,197119,-1056923648,-1040187627,-1056964523,33554213,-1610612733,
+1425664,-12205824,2474495,196864,-1056923648,-1056964587,-1040187563,33554213,-1610612733,-15351296,4571903,-14302720,197119,-1040146432,-1023410411,-1040187307,
+33554213,-1610612733,1425920,-12205568,2474751,196864,-1040146432,-1040187371,-1023410347,33554213,-1610612733,-15351040,4572159,-14302464,197119,-1023369216,
+-1006633195,-1023410091,33554213,-1610612733,1426176,-12205312,2475007,196864,-1023369216,-1023410155,-1006633131,33554213,-1610612733,-15350784,4572415,-14302208,
+197119,-1006592000,-989855979,-1006632875,33554213,12803,0,23330817,3278,365166752,1170472960,633667583,50397184,10485760,5572,-43580,
+-55868,769,365232288,1170604031,633667584,50462719,10485760,-59963,21957,-55867,769,365232288,1170538496,633733119,50397184,10485760,
+5573,-43579,-55867,769,364904608,1170210817,633405438,50397185,10485760,71104,-109120,-55872,769,364904608,1170276350,633339905,
+50462718,10485760,-125504,87488,-55872,769,368509088,182321153,-113161,636947160,181534721,769,368509088,180748289,-109065,636947136,
+180027391,769,368509088,179240958,83447,636947112,178454526,769,368509088,177668094,87543,636947088,176881663,769,364904608,1170210818,
+633405437,50397186,10485760,136640,-174656,-55872,769,364904608,1170276349,633339906,50462717,10485760,-191040,153024,-55872,769,
+168,16777216,738288640,-150953970,905970197,-45746422,-150327041,704643621,196874,-150953984,503317013,-44697846,-150333185,318766885,196874,-150953984,
+117439765,38139658,-150339584,-83886811,196873,-150953984,-285213419,39188233,-150345728,-486539483,196873,-1073700864,-1073740779,-1056965819,16778277,-1610612733,
+68534272,-78266368,-14302977,197119,-1073700864,-1056965867,-1073740731,33553189,-1610612733,-82460672,72728831,-14303232,197119,-150953984,-1912601579,-79300855,
+-150370049,-2113928155,196873,-150953984,1979712533,-78252279,-150376193,1795161893,196873,-150953984,1593834261,71694089,-150382592,1392507685,196873,-150953984,
+1191181077,72742665,-150388736,989855525,196873,-1073700864,-1073739755,-1056966843,16779301,-1610612733,135643136,-145375232,-14302977,197119,-1073700864,-1056966891,
+-1073739707,33552165,-1610612733,-149569536,139837695,-14303232,197119,-150953984,-436205547,-146409720,-469180161,0,65536,260702564,534007,50399450,
+10485760,529911,1442253006,147390455,-55817,50399426,10485760,-584201,1173817526,145752072,-580105,50399402,10485760,-584201,1442252958,144179208,
+-55817,50399378,10485760,1054144,-1096256,1058240,769,364904608,1438646288,633405423,50462719,10485760,-1108544,1066432,-1104448,769,
+364904608,1438711791,633339920,50462719,10485760,1054199,1173817406,137953263,1058295,50399282,10485760,1054199,1442252838,136380399,-55817,50399258,
+10485760,-1108489,1173817358,134742032,-1104393,50399234,10485760,-1108489,1442252790,133169168,-55817,50399210,10485760,2102720,-2144832,2106816,
+769,364904608,1438646304,633405407,50462719,10485760,-2157120,2115008,-2153024,769,364904608,1438711775,633339936,50462719,10485760,2102775,
+1173817238,126943199,2106871,50399114,10485760,595447,0,1677721856,537978881,-150503936,2030034773,-14289145,17265407,-1610612733,-552208640,-150509825,
+1610620997,-551160057,17259263,-1610612733,-552208640,-150515969,1207967829,-14289145,17253119,-1610612733,1075167232,-1085947904,1076216063,196864,-1073700864,-1073725419,
+-1056981163,33554213,-1610612733,-1089093632,1078313215,-1088045056,197119,-1073700864,-1056981227,-1073725355,33554213,-1610612733,1075181312,-150540800,-385892539,1076229894,
+17228288,-1610612733,1075181312,-150546944,-788545707,-14289146,17222399,-1610612733,-1089079552,-150552833,-1207943099,-1088030970,17216255,-1610612733,-1089079552,-150558977,
+-1610596267,-14289146,17210111,-1610612733,-2146058240,2135277568,-2145009409,196864,-1073700864,-1073709035,-1056997547,33554213,-1610612733,2132131840,-2142912257,2133180416,
+197119,-1073700864,-1056997611,-1073708971,33554213,-1610612733,-2146044160,-150583808,1090486085,-2144995578,17185280,-1610612733,-2146044160,-150589952,687832917,-14289146,
+62463,0,23330817,102896198,769,368509088,102170495,8406519,636945936,101384063,769,368509088,100597631,8410615,636945912,99811327,
+769,364904608,1170211072,633405183,50397440,10485760,16782784,-16820800,-55872,769,364904608,1170276095,633340160,50462463,10485760,-16837184,
+16799168,-55872,769,368509088,94241024,-16824841,636945816,93454592,769,368509088,92668160,-16820745,636945792,91947007,769,368509088,
+91160319,16795127,636945768,90373887,769,368509088,89587455,16799223,636945744,88801279,769,364904608,1170211328,633404927,50397696,10485760,
+33560000,-33598016,-55872,769,364904608,1170275839,633340416,50462207,10485760,-33614400,33576384,-55872,769,368509088,83231232,-33602057,
+636945648,82444800,769,368509088,81658368,-33597961,636945624,80936959,769,368509088,80150015,45,16777216,-1543412736,4585235,-150683646,
+-1157759195,196868,-150953984,-1359085803,5633796,-150689790,-1560281307,196868,-1073700864,-1073479659,-1057226939,17039397,-1610612733,1425408,-11157500,-14302981,
+197119,-1073700864,-1057226987,-1073479611,33292069,-1610612733,-15351808,5619963,-14303228,197119,-150953984,1308885013,-12191996,-150714117,1107558437,196868,
+-150953984,906231829,-11143420,-150720261,721420069,196868,-150953984,519831317,4585220,-150726652,318504741,196868,-150953984,117178133,5633796,-150732796,
+-83886299,196867,-1073700864,-1073217515,-1057489083,17301541,-1610612733,1425408,-11157496,-14302985,197119,-1073700864,-1057489131,-1073217467,33029925,-1610612733,
+-15351808,5619959,-14303224,197119,-150953984,-1509425131,-12191997,-150757129,-1710751707,196867,-150953984,-1912078315,-11143421,-150763273,-2097152219,196867,
+-150953984,1995964181,4585219,-150769656,1794637605,-1593638653,0,65536,352452964,10485760,-134277641,1442251614,56100864,-55817,50398034,10485760,
+268441024,-268483136,268445120,769,364904608,1438650368,633401343,50462719,10485760,-268495424,268453312,-268491328,769,364904608,1438707711,633344000,
+50462719,10485760,268441079,1173816062,49868799,268445175,50397938,10485760,268441079,1442251494,48295935,-55817,50397914,10485760,-268495369,1173816014,
+46665728,-268491273,50397890,10485760,-268495369,1442251446,45092864,-55817,50397866,10485760,536876480,-536918592,536880576,769,364904608,1438654464,
+633397247,50462719,10485760,-536930880,536888768,-536926784,769,364904608,1438703615,633348096,50462719,10485760,536876535,1173815894,38854655,536880631,
+50397770,10485760,536876535,1442251326,37281791,-55817,50397746,10485760,-536930825,1173815846,35659776,-536926729,50397722,10485760,-536930825,1442251278,
+12197888,0,1677721856,135684097,-14289150,16909055,-1610612733,1425408,-12206016,2474175,196928,-1073700864,-1069547499,-1061159083,33554213,-1610612733,
+-15351808,4571327,-14303168,197055,-1073700864,-1061159147,-1069547435,33554213,-1610612733,1439488,-150884800,-1463812283,2488065,16884288,-1610612733,1439488,
+-150890944,-1866465451,-14289151,16878335,-1610612733,-15337728,-150896961,2017460293,-14289151,16872127,-1610612733,-15337728,-150903105,1614807125,-14289151,16866047,
+-1610612733,1425408,-12205952,2474111,196992,-1073700864,-1065353195,-1065353387,33554213,-1610612733,-15351808,4571263,-14303104,196991,-1073700864,-1065353451,
+-1065353131,33554213,-1610612733,1439488,-150927744,8388421,2488065,16841344,-1610612733,1439488,-150933888,-394264747,-14289152,16835327,-1610612733,-15337728,
+-150940033,-796917691,-14289152,16829055,-1610612733,-15337728,-150946177,-1199570859,-14289152,16823039,-1610612733,10752,0,11796481,-1778968642,10879231,
+1431684599,-1510539104,10092714,769,-1778974560,9306367,1431688695,-1510539128,8541695,769,-1778974560,7798528,715834871,-1510539152,7001344,769,
+-1778974560,6225664,715838967,-1510539176,5439402,769,368509088,4587775,29836791,636944448,3801144,769,368509088,3014911,29840887,636944424,
+2228735,769,179765408,-2146959338,8852959,-1948254346,-2130837644,264759,8388703,0,7,16777216,16778752,63488,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,251,0,0,0,0,0,0,0,0,0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0JA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0JA-PB.jpg
new file mode 100644
index 000000000..3836f2225
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0JA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0JA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0JA-PB.json
new file mode 100644
index 000000000..41137e209
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0JA-PB.json
@@ -0,0 +1,73 @@
+{"exec":128,"data":[
+0,0,0,0,16777216,-2147392512,-1073700864,-1073741803,-1073741723,16777253,-1610612733,-15351808,-10108673,-31080193,197119,-1073700864,
+-1056964843,-1073741467,16777253,-1610612733,-15351808,40222975,19251200,196864,-1073700864,-1056964843,-1073740699,16778021,-1610612733,-15351808,140886271,119914496,
+196864,-1073700864,-1056964843,-1073737627,16781093,-1610612733,-15351808,543539455,522567680,196864,-1073700864,-1056964843,-1073725339,16793381,-1610612733,-15351808,
+-2140815105,2133180416,196864,-1073700864,-1056964843,-1073676187,16842533,-1610612733,-15351808,6668543,-14303230,196865,-1073700864,-1056964843,-1073479579,17039141,
+-1610612733,-15351808,6668543,-14303224,196871,-1073700864,-1056964843,-1072693147,17825573,-1610612733,-15351808,6668543,-14303200,196895,-1073700864,-1056964843,
+-1069547419,20971301,-1610612733,-15351808,6668543,-14303104,196991,-1073700864,-1073741547,-1056964763,16777253,-1610612733,34979840,157663232,0,65536,
+31326564,633405439,50397185,10485760,267712,-39488,206272,769,364904608,1707081736,633405439,50397191,10485760,1054144,-39488,992704,
+769,364904608,1707081760,633405439,50397215,10485760,4199872,-39488,4138432,769,364904608,1707081856,633405439,50397311,10485760,16782784,
+-39488,16721344,769,364904608,1707082240,633405439,50397695,10485760,67114432,-39488,67052992,769,364904608,1707083776,633405439,50399231,
+10485760,268441024,-39488,268379584,769,364904608,1707089920,633405439,50405375,10485760,1073747392,-39488,1073685952,769,364904608,1707114496,
+633405439,50429951,10485760,71104,26048,75200,769,364904608,1707081730,633339904,50397186,10485760,267712,26048,271808,769,
+364904608,1707081736,633339904,50397192,10485760,1054144,26048,1058240,1573633,0,1677721856,211969,-1073700864,-1073733611,-1073741723,16785445,
+-1610612733,1075167232,6668288,1076215808,196864,-1073700864,-1073709035,-1073741723,16810021,-1610612733,1425408,6668289,2473984,196865,-1073700864,-1073610731,
+-1073741723,16908325,-1610612733,1425408,6668292,2473984,196868,-1073700864,-1073217515,-1073741723,17301541,-1610612733,1425408,6668304,2473984,196880,
+-1073700864,-1071644651,-1073741723,18874405,-1610612733,1425408,6668352,2473984,196928,-1073700864,-1065353195,-1073741723,25165861,-1610612733,1425408,23445504,
+19251200,196864,-1073700864,-1073741803,-1073741211,16777765,-1610612733,1425408,73777152,69582848,196864,-1073700864,-1073741803,-1073739675,16779301,-1610612733,
+1425408,275103744,270909440,196864,-1073700864,-1073741803,-1073733531,16785445,-1610612733,1425408,1080410112,1076215808,196864,-1073700864,-1073741803,-1073708955,
+16810021,-1610612733,1425408,28928,0,23330817,1707082906,633340160,50397440,10485760,5568,33580480,33564096,769,364904608,1707081728,
+633340928,50398208,10485760,5568,134243776,134227392,769,364904608,1707081728,633344000,50401280,10485760,5568,536896960,536880576,769,
+364904608,1707081728,633356288,50413568,10485760,5568,-2147457600,-2147473984,769,364904608,1707081729,633339905,50397186,10485760,136640,157120,
+271808,769,364904608,1707081732,633339908,50397192,10485760,529856,550336,1058240,769,364904608,1707081744,633339920,50397216,10485760,
+2102720,2123200,4203968,769,364904608,1707081792,633339968,50397312,10485760,8394176,8414656,16786880,769,364904608,1707081984,633340160,
+50397696,10485760,33560000,33580480,67118528,769,364904608,1707082752,633340928,50399232,10485760,134223296,134243776,268445120,2,16777216,
+-134126592,196869,-1073700864,-1072693227,-1072693147,18874405,-1610612733,1425408,6668320,2474016,196928,-1073700864,-1069547499,-1069547419,25165861,-1610612733,
+1425408,6668416,2474112,196864,-1073700864,-1073741803,-1073741723,16777253,-1610612733,1425408,23445504,19251201,196865,-1073700864,-1073741803,-1073610139,
+16908837,-1610612733,1425408,56999936,52805635,196867,-1073700864,-1073741803,-1073478555,17040421,-1610612733,1425408,90554368,86360069,196869,-1073700864,
+-1073741803,-1073346971,17172005,-1610612733,1425408,124108800,119914503,196871,-1073700864,-1073741803,-1073215387,17303589,-1610612733,1425408,157663232,153468937,
+196873,-1073700864,-1073741803,-1073083803,17435173,-1610612733,1425408,191217664,187023371,196875,-1073700864,-1073741803,-1072952219,17566757,-1610612733,1425408,
+224772096,220577805,196877,-1073700864,-1073741803,-1072820635,17698341,-1610612733,118865920,0,65536,123076964,1707081728,633343759,50401039,10485760,
+5568,269510080,269493696,769,364904608,1707081728,633344273,50401553,10485760,5568,303195584,303179200,769,364904608,1707081728,633344787,
+50402067,10485760,5568,336881088,336864704,769,364904608,1707081728,633345301,50402581,10485760,5568,370566592,370550208,769,364904608,
+1707081728,633345815,50403095,10485760,5568,404252096,404235712,769,364904608,1707081728,633346329,50403609,10485760,5568,437937600,437921216,
+769,364904608,1707081728,633346843,50404123,10485760,5568,471623104,471606720,769,364904608,1707081728,633347357,50404637,10485760,5568,
+505308608,505292224,769,364904608,1707081728,633347871,50405151,10485760,5568,538994112,538977728,769,364904608,1707081728,633348385,50405665,
+10485760,5568,572679616,1451456,0,1677721856,570995713,196898,-1073700864,-1073741803,-1071439003,19079973,-1610612733,1425408,610648064,606453796,
+196900,-1073700864,-1073741803,-1071307419,19211557,-1610612733,1425408,644202496,640008230,196902,-1073700864,-1073741803,-1071175835,19343141,-1610612733,1425408,
+677756928,673562664,196904,-1073700864,-1073741803,-1071044251,19474725,-1610612733,1425408,711311360,707117098,196906,-1073700864,-1073741803,-1070912667,19606309,
+-1610612733,1425408,744865792,740671532,196908,-1073700864,-1073741803,-1070781083,19737893,-1610612733,1425408,778420224,774225966,196910,-1073700864,-1073741803,
+-1070649499,19869477,-1610612733,1425408,811974656,807780400,196912,-1073700864,-1073741803,-1070517915,20001061,-1610612733,1425408,845529088,841334834,196914,
+-1073700864,-1073741803,-1070386331,20132645,-1610612733,1425408,879083520,874889268,196916,-1073700864,-1073741803,-1070254747,20264229,-1610612733,11520,0,
+23330817,364907026,1707081728,633353782,50411062,10485760,5568,926377408,926361024,769,364904608,1707081728,633354296,50411576,10485760,5568,
+960062912,960046528,769,364904608,1707081728,633354810,50412090,10485760,5568,993748416,993732032,769,364904608,1707081728,633355324,50412604,
+10485760,5568,1027433920,1027417536,769,364904608,1707081728,633355838,50413118,10485760,5568,1061119424,1061103040,769,364904608,1707081728,
+633356352,50413632,10485760,5568,1094804928,1094788544,769,364904608,1707081728,633356866,50414146,10485760,5568,1128490432,1128474048,769,
+364904608,1707081728,633357380,50414660,10485760,5568,1162175936,1162159552,769,364904608,1707081728,633357894,50415174,10485760,5568,1195861440,
+1195845056,769,364904608,1707081728,633358408,50415688,10485760,5568,1229546944,133,16777216,1879139328,1227210763,196937,-1073700864,-1073741803,
+-1068873115,21645861,-1610612733,1425408,1264959488,1260765259,196939,-1073700864,-1073741803,-1068741531,21777445,-1610612733,1425408,1298513920,1294319693,196941,
+-1073700864,-1073741803,-1068609947,21909029,-1610612733,1425408,1332068352,1327874127,196943,-1073700864,-1073741803,-1068478363,22040613,-1610612733,1425408,1365622784,
+1361428561,196945,-1073700864,-1073741803,-1068346779,22172197,-1610612733,1425408,1399177216,1394982995,196947,-1073700864,-1073741803,-1068215195,22303781,-1610612733,
+1425408,1432731648,1428537429,196949,-1073700864,-1073741803,-1068083611,22435365,-1610612733,1425408,1466286080,1462091863,196951,-1073700864,-1073741803,-1067952027,
+22566949,-1610612733,1425408,1499840512,1495646297,196953,-1073700864,-1073741803,-1067820443,22698533,-1610612733,1425408,1533394944,1529200731,196955,-1073700864,
+-1073741803,-1067688859,22830117,1191182339,0,65536,214827364,364904608,1707081728,633363805,50421085,10485760,5568,1583244736,1583228352,769,
+364904608,1707081728,633364319,50421599,10485760,5568,1616930240,1616913856,769,364904608,1707081728,633364833,50422113,10485760,5568,1650615744,
+1650599360,769,364904608,1707081728,633365347,50422627,10485760,5568,1684301248,1684284864,769,364904608,1707081728,633365861,50423141,10485760,
+5568,1717986752,1717970368,769,364904608,1707081728,633366375,50423655,10485760,5568,1751672256,1751655872,769,364904608,1707081728,633366889,
+50424169,10485760,5568,1785357760,1785341376,769,364904608,1707081728,633367403,50424683,10485760,5568,1819043264,1819026880,769,364904608,
+1707081728,633367917,50425197,10485760,5568,1852728768,1852712384,769,364904608,1707081728,633368431,50425711,10485760,5568,2450880,0,
+603980032,1879976961,1881522288,196976,-1073700864,-1073741803,-1066307227,24211749,-1610612733,1425408,1919270912,1915076722,196978,-1073700864,-1073741803,-1066175643,
+24343333,-1610612733,1425408,1952825344,1948631156,196980,-1073700864,-1073741803,-1066044059,24474917,-1610612733,1425408,1986379776,1982185590,196982,-1073700864,
+-1073741803,-1065912475,24606501,-1610612733,1425408,2019934208,2015740024,196984,-1073700864,-1073741803,-1065780891,24738085,-1610612733,1425408,2053488640,2049294458,
+196986,-1073700864,-1073741803,-1065649307,24869669,-1610612733,1425408,2087043072,2082848892,196988,-1073700864,-1073741803,-1065517723,25001253,-1610612733,1425408,
+2120597504,2116403326,196990,302692096,-553515520,1979746069,1955323903,2004942335,15808512,58368,0,393217,16252929,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,40704,0,0,0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0KA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0KA-PB.jpg
new file mode 100644
index 000000000..f6ec78520
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0KA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0KA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0KA-PB.json
new file mode 100644
index 000000000..cd00ce0cb
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0KA-PB.json
@@ -0,0 +1,69 @@
+{"exec":128,"data":[
+0,0,0,65536,8388964,364904608,-440401920,633339904,50397184,10485760,-59968,-6720,9664,769,364904608,-440380075,
+633383594,50440875,10485760,-1431693888,1431692736,1431643584,769,364904608,-440401919,633339904,50397185,10485760,-59968,124352,-121408,769,
+364904608,-440336385,633339906,50462717,10485760,-59968,320960,-318016,769,364904608,-440336385,633339912,50462711,10485760,-59968,1107392,
+-1104448,769,364904608,-440336385,633339936,50462687,10485760,-59968,4253120,-4250176,769,364904608,-440336385,633340032,50462591,10485760,
+-59968,16836032,-16833088,769,364904608,-440336385,633340416,50462207,10485760,-59968,67167680,-67164736,769,364904608,-440336385,633341952,
+50460671,10485760,-59968,268494272,-268491328,769,364904608,-440336385,633348096,50454527,10485760,-59968,583104,0,1677721856,122369,
+-14303168,197055,-1073700864,-1056964843,-1065352987,25165605,-1610612733,18202624,-1720320,36028671,196864,-1073700864,-1073741291,-1056964635,16778021,-1610612733,
+68534272,-1720320,86360319,196864,-1073700864,-1073739755,-1056964635,16779557,-1610612733,269860864,-1720320,287686911,196864,-1073700864,-1073733611,-1056964635,
+16785701,-1610612733,1075167232,-1720320,1092993279,196864,-1073700864,-1073709035,-1056964635,16810277,-1610612733,1425408,-1720319,19251455,196865,-1073700864,
+-1073610731,-1056964635,16908581,-1610612733,1425408,-1720316,19251455,196868,-1073700864,-1073217515,-1056964635,17301797,-1610612733,1425408,-1720304,19251455,
+196880,-1073700864,-1071644651,-1056964635,18874661,-1610612733,1425408,-1720256,19251455,196928,-1073700864,-1065353195,-1056964635,25166117,-1610612733,18202624,
+15056896,19251200,196864,-1073700864,-1073741291,-1073741595,16777765,44291,0,23330817,828,364904608,-440401916,633339904,50397188,10485760,
+529856,58816,533952,769,364904608,-440401904,633339904,50397200,10485760,2102720,58816,2106816,769,364904608,-440401856,633339904,
+50397248,10485760,8394176,58816,8398272,769,364904608,-440401664,633339904,50397440,10485760,33560000,58816,33564096,769,364904608,
+-440400896,633339904,50398208,10485760,134223296,58816,134227392,769,364904608,-440397824,633339904,50401280,10485760,536876480,58816,536880576,
+769,364904608,-440385536,633339904,50413568,10485760,-2147478080,58816,-2147473984,769,364904608,-440401920,633339905,50462719,10485760,5568,
+189888,-121408,769,364904608,-440401920,633339908,50462716,10485760,5568,583104,-514624,769,364904608,-440401920,633339920,50462704,
+10485760,5568,188,16777216,-1711184896,551927812,-534396928,197119,-1073700864,-1073741803,-1073725211,33538085,-1610612733,1425408,-2132426752,-2145009664,
+197119,-1073700864,-1073741803,-1073676059,33488933,-1610612733,1425408,15056896,2473986,197118,-1073700864,-1073741803,-1073479451,33292325,-1610612733,1425408,
+15056896,2473992,197112,-1073700864,-1073741803,-1072693019,32505893,-1610612733,1425408,15056896,2474016,197088,-1073700864,-1073741803,-1069547291,29360165,
+-1610612733,1425408,15056896,2474112,196992,-1073700864,-1073741803,-1073741595,16777253,-1610612733,18202624,31834112,2473985,197119,-1073700864,-1073741547,
+-1073610011,33423141,-1610612733,18202624,65388544,-31080445,197116,-1073700864,-1073741547,-1073478427,33291557,-1610612733,18202624,98942976,-64634875,197114,
+-1073700864,-1073741547,-1073346843,33159973,-1610612733,18202624,132497408,-98189305,197112,-1073700864,-1073741547,-1073215259,871889189,0,65536,100139364,
+769,364904608,-440401919,633342217,50460408,10485760,71104,168486336,-168352320,769,364904608,-440401919,633342731,50459894,10485760,71104,
+202171840,-202037824,769,364904608,-440401919,633343245,50459380,10485760,71104,235857344,-235723328,769,364904608,-440401919,633343759,50458866,
+10485760,71104,269542848,-269408832,769,364904608,-440401919,633344273,50458352,10485760,71104,303228352,-303094336,769,364904608,-440401919,
+633344787,50457838,10485760,71104,336913856,-336779840,769,364904608,-440401919,633345301,50457324,10485760,71104,370599360,-370465344,769,
+364904608,-440401919,633345815,50456810,10485760,71104,404284864,-404150848,769,364904608,-440401919,633346329,50456296,10485760,71104,437970368,
+-437836352,769,364904608,-440401919,633346843,50455782,10485760,14161344,0,1677721856,17257985,484818944,-450510820,197091,-1073700864,-1073741547,
+-1071833627,31646757,-1610612733,18202624,518373376,-484065250,197089,-1073700864,-1073741547,-1071702043,31515173,-1610612733,18202624,551927808,-517619680,197087,
+-1073700864,-1073741547,-1071570459,31383589,-1610612733,18202624,585482240,-551174110,197085,-1073700864,-1073741547,-1071438875,31252005,-1610612733,18202624,619036672,
+-584728540,197083,-1073700864,-1073741547,-1071307291,31120421,-1610612733,18202624,652591104,-618282970,197081,-1073700864,-1073741547,-1071175707,30988837,-1610612733,
+18202624,686145536,-651837400,197079,-1073700864,-1073741547,-1071044123,30857253,-1610612733,18202624,719699968,-685391830,197077,-1073700864,-1073741547,-1070912539,
+30725669,-1610612733,18202624,753254400,-718946260,197075,-1073700864,-1073741547,-1070780955,30594085,-1610612733,18202624,786808832,-752500690,197073,-1073700864,
+-1073741547,-1070649371,2085,0,23330817,-791541580,769,364904608,-440401919,633352240,50450385,10485760,71104,825353664,-825219648,769,
+364904608,-440401919,633352754,50449871,10485760,71104,859039168,-858905152,769,364904608,-440401919,633353268,50449357,10485760,71104,892724672,
+-892590656,769,364904608,-440401919,633353782,50448843,10485760,71104,926410176,-926276160,769,364904608,-440401919,633354296,50448329,10485760,
+71104,960095680,-959961664,769,364904608,-440401919,633354810,50447815,10485760,71104,993781184,-993647168,769,364904608,-440401919,633355324,
+50447301,10485760,71104,1027466688,-1027332672,769,364904608,-440401919,633355838,50446787,10485760,71104,1061152192,-1061018176,769,364904608,
+-440401919,633356352,50446273,10485760,71104,1094837696,-1094703680,769,364904608,-440401919,633356866,50445759,10485760,76,16777216,302081024,
+18202634,1139130368,-1104822205,197052,-1073700864,-1073741547,-1069267739,29080869,-1610612733,18202624,1172684800,-1138376635,197050,-1073700864,-1073741547,-1069136155,
+28949285,-1610612733,18202624,1206239232,-1171931065,197048,-1073700864,-1073741547,-1069004571,28817701,-1610612733,18202624,1239793664,-1205485495,197046,-1073700864,
+-1073741547,-1068872987,28686117,-1610612733,18202624,1273348096,-1239039925,197044,-1073700864,-1073741547,-1068741403,28554533,-1610612733,18202624,1306902528,-1272594355,
+197042,-1073700864,-1073741547,-1068609819,28422949,-1610612733,18202624,1340456960,-1306148785,197040,-1073700864,-1073741547,-1068478235,28291365,-1610612733,18202624,
+1374011392,-1339703215,197038,-1073700864,-1073741547,-1068346651,28159781,-1610612733,18202624,1407565824,-1373257645,197036,-1073700864,-1073741547,-1068215067,28028197,
+-1610612733,18202624,1441120256,-1406812075,197034,-1073700864,-1073741547,190207717,0,65536,191889764,-1448401472,769,364904608,-440401919,633362263,
+50440362,10485760,71104,1482220992,-1482086976,769,364904608,-440401919,633362777,50439848,10485760,71104,1515906496,-1515772480,769,364904608,
+-440401919,633363291,50439334,10485760,71104,1549592000,-1549457984,769,364904608,-440401919,633363805,50438820,10485760,71104,1583277504,-1583143488,
+769,364904608,-440401919,633364319,50438306,10485760,71104,1616963008,-1616828992,769,364904608,-440401919,633364833,50437792,10485760,71104,
+1650648512,-1650514496,769,364904608,-440401919,633365347,50437278,10485760,71104,1684334016,-1684200000,769,364904608,-440401919,633365861,50436764,
+10485760,71104,1718019520,-1717885504,769,364904608,-440401919,633366375,50436250,10485760,71104,1751705024,-1751571008,769,364904608,-440401919,
+633366889,50435736,9830400,0,1677721856,-1609773567,18202624,1793441792,-1759133590,197013,-1073700864,-1073741547,-1066701851,26514981,-1610612733,18202624,
+1826996224,-1792688020,197011,-1073700864,-1073741547,-1066570267,26383397,-1610612733,18202624,1860550656,-1826242450,197009,-1073700864,-1073741547,-1066438683,26251813,
+-1610612733,18202624,1894105088,-1859796880,197007,-1073700864,-1073741547,-1066307099,26120229,-1610612733,18202624,1927659520,-1893351310,197005,-1073700864,-1073741547,
+-1066175515,25988645,-1610612733,18202624,1961213952,-1926905740,197003,-1073700864,-1073741547,-1066043931,25857061,-1610612733,18202624,1994768384,-1960460170,197001,
+-1073700864,-1073741547,-1065912347,25725477,-1610612733,18202624,2028322816,-1994014600,196999,-1073700864,-1073741547,-1065780763,25593893,-1610612733,18202624,2061877248,
+-2027569030,196997,-1073700864,-1073741547,-1065649179,25462309,-1610612733,18202624,2095431680,-2061123460,196995,-1073700864,-1073741547,23013,0,4063233,
+2105347628,-2105268800,769,364904608,-440401919,633372286,50430339,179765248,-2146959338,1051191,8852959,-1948254346,-2130837644,-232914825,1638400,0,
+100663552,-134217472,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,16711680,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0LA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0LA-PB.jpg
new file mode 100644
index 000000000..31a0f116e
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0LA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0LA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0LA-PB.json
new file mode 100644
index 000000000..a47b94acd
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0LA-PB.json
@@ -0,0 +1,128 @@
+{"exec":128,"data":[
+0,0,0,0,16777216,17920,512,1536,2560,3584,4608,5632,6656,7680,8704,9728,
+10752,11776,12800,13824,14848,15872,47360,0,23330817,364904576,365101206,365166596,365035534,365232136,4718604,566255808,
+769,119,566255936,769,11403359,566255936,769,8347904,12451840,50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,
+7798784,1631584256,50405824,6225920,1631584492,50405824,1627389952,127,566231292,769,524400,566255936,769,4743296,566255808,769,
+119,566255936,769,19529823,566255936,769,8347904,20578304,50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,
+1631584256,50405824,6225920,1631584616,50405824,1627389952,127,566231416,769,524400,566255936,769,4743296,566255808,769,119,
+566255936,769,27656287,566255936,769,8347904,28704768,50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,
+50405824,201,16777216,-570334208,1593835521,1073865728,18989153,3,32609,-1073613824,196897,134246400,-1067368448,196897,1214283776,-1067401216,
+196897,30464,-1067368448,196897,570449664,-1067368446,196897,2137063424,838860800,18989058,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,
+1996488707,1073741824,18989153,1593835523,1073897472,18989153,3,32609,-1073582080,196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,
+30464,-1067368448,196897,-1644142848,-1067368446,196897,2137063424,-1375731712,18989058,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,
+1073741824,18989153,1593835523,1073929216,18989153,3,32609,-1073550336,196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,
+-1067368448,196897,436231936,-1067368445,196897,2137063424,704643072,18989059,1879048195,1073743872,18989153,-1929379837,0,65536,54264164,4743296,
+566255808,769,119,566255936,769,56098911,566255936,769,8347904,57147392,50405824,7340032,1631584264,50405824,1619001344,1623195720,
+50405824,7798784,1631584256,50405824,6225920,1631585174,50405824,1627389952,127,566231974,769,524400,566255936,769,4743296,566255808,
+769,119,566255936,769,64225375,566255936,769,8347904,65273856,50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,
+7798784,1631584256,50405824,6225920,1631585298,50405824,1627389952,127,566232098,769,524400,566255936,769,4743296,566255808,769,
+119,566255936,769,72351839,566255936,769,8347904,73400320,50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,
+1631584256,50405824,6225920,1631585422,50405824,1627389952,393343,0,1677721856,301569,-1073439232,196897,134246400,-1067368448,196897,1214283776,
+-1067401216,196897,30464,-1067368448,196897,-872390912,-1067368444,196897,2137063424,-603979776,18989060,1879048195,1073743872,18989153,-2147483645,-1073723296,
+18989152,1996488707,1073741824,18989153,1593835523,1074072064,18989153,3,32609,-1073407488,196897,134246400,-1067368448,196897,1214283776,-1067401216,
+196897,30464,-1067368448,196897,1207983872,-1067368443,196897,2137063424,1476395008,18989061,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,
+1996488707,1073741824,18989153,1593835523,1074103808,18989153,3,32609,-1073375744,196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,
+30464,-1067368448,196897,-1006608640,-1067368443,196897,2137063424,-738197504,18989061,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,
+1073741824,51297,0,23330817,566232568,769,100794463,566255936,769,8347904,101842944,50405824,7340032,1631584264,50405824,1619001344,
+1623195720,50405824,7798784,1631584256,50405824,6225920,1631585856,50405824,1627389952,127,566232656,769,524400,566255936,769,4743296,
+566255808,769,119,566255936,769,108920927,566255936,769,8347904,109969408,50405824,7340032,1631584264,50405824,1619001344,1623195720,
+50405824,7798784,1631584256,50405824,6225920,1631585980,50405824,1627389952,127,566232780,769,524400,566255936,769,4743296,566255808,
+769,119,566255936,769,117047391,566255936,769,8347904,118095872,50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,
+7798784,1631584256,50405824,6225920,1631586104,50405824,1627389952,127,566232904,769,524400,566255936,243,16777216,1442931712,196871,
+1214283776,-1067401216,196897,30464,-1067368448,196897,1979735808,-1067368441,196897,2137063424,-2046820352,18989063,1879048195,1073743872,18989153,-2147483645,
+-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074246656,18989153,3,32609,-1073232896,196897,134246400,-1067368448,196897,1214283776,
+-1067401216,196897,30464,-1067368448,196897,-234856704,-1067368441,196897,2137063424,33554432,18989064,1879048195,1073743872,18989153,-2147483645,-1073723296,
+18989152,1996488707,1073741824,18989153,1593835523,1074278400,18989153,3,32609,-1073201152,196897,134246400,-1067368448,196897,1214283776,-1067401216,
+196897,30464,-1067368448,196897,1845518080,-1067368440,196897,2137063424,2113929216,18989064,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,
+1996488707,1073741824,18989153,1593835523,1074310144,18989153,1291845635,0,65536,146014564,8347904,146538496,50405824,7340032,1631584264,50405824,
+1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631586538,50405824,1627389952,127,566233338,769,524400,566255936,769,
+4743296,566255808,769,119,566255936,769,153616479,566255936,769,8347904,154664960,50405824,7340032,1631584264,50405824,1619001344,
+1623195720,50405824,7798784,1631584256,50405824,6225920,1631586662,50405824,1627389952,127,566233462,769,524400,566255936,769,4743296,
+566255808,769,119,566255936,769,161742943,566255936,769,8347904,162791424,50405824,7340032,1631584264,50405824,1619001344,1623195720,
+50405824,7798784,1631584256,50405824,6225920,1631586786,50405824,1627389952,127,566233586,769,524400,566255936,769,4743296,566255808,
+769,16056439,0,1677721856,659969,-1067368448,196897,536895232,-1067368438,196897,2137063424,805306368,18989066,1879048195,1073743872,18989153,
+-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074421248,18989153,3,32609,-1073058304,196897,134246400,-1067368448,196897,
+1214283776,-1067401216,196897,30464,-1067368448,196897,-1677697280,-1067368438,196897,2137063424,-1409286144,18989066,1879048195,1073743872,18989153,-2147483645,
+-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074452992,18989153,3,32609,-1073026560,196897,134246400,-1067368448,196897,1214283776,
+-1067401216,196897,30464,-1067368448,196897,402677504,-1067368437,196897,2137063424,671088640,18989067,1879048195,1073743872,18989153,-2147483645,-1073723296,
+18989152,1996488707,1073741824,18989153,1593835523,1074484736,18989153,3,32609,-1072994816,196897,134246400,7168,0,23330817,1631587184,
+50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631587220,50405824,1627389952,127,566234020,769,524400,566255936,
+769,4743296,566255808,769,119,566255936,769,198312031,566255936,769,8347904,199360512,50405824,7340032,1631584264,50405824,
+1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631587344,50405824,1627389952,127,566234144,769,524400,566255936,769,
+4743296,566255808,769,119,566255936,769,206438495,566255936,769,8347904,207486976,50405824,7340032,1631584264,50405824,1619001344,
+1623195720,50405824,7798784,1631584256,50405824,6225920,1631587468,50405824,1627389952,127,566234268,769,524400,566255936,769,4743296,
+566255808,769,119,566255936,769,214564959,566255936,58,16777216,-838769664,196876,2137063424,-637534208,18989068,1879048195,1073743872,
+18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074595840,18989153,3,32609,-1072883712,196897,134246400,-1067368448,
+196897,1214283776,-1067401216,196897,30464,-1067368448,196897,1174429440,-1067368435,196897,2137063424,1442840576,18989069,1879048195,1073743872,18989153,
+-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074627584,18989153,3,32609,-1072851968,196897,134246400,-1067368448,196897,
+1214283776,-1067401216,196897,30464,-1067368448,196897,-1040163072,-1067368435,196897,2137063424,-771751936,18989069,1879048195,1073743872,18989153,-2147483645,
+-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074659328,18989153,3,32609,-1072820224,196897,134246400,-1067368448,196897,1214283776,
+-1067401216,-805109471,0,65536,237764964,7798784,1631584256,50405824,6225920,1631587902,50405824,1627389952,127,566234702,769,524400,
+566255936,769,4743296,566255808,769,119,566255936,769,243007583,566255936,769,8347904,244056064,50405824,7340032,1631584264,
+50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631588026,50405824,1627389952,127,566234826,769,524400,566255936,
+769,4743296,566255808,769,119,566255936,769,251134047,566255936,769,8347904,252182528,50405824,7340032,1631584264,50405824,
+1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631588150,50405824,1627389952,127,566234950,769,524400,566255936,769,
+4743296,566255808,769,119,566255936,769,259260511,566255936,769,8347904,260308992,50405824,6684672,0,1677721856,1880066561,
+1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074770432,18989153,3,32609,-1072709120,196897,134246400,
+-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,-268411136,-1067368433,196897,2137063424,0,18989072,1879048195,1073743872,
+18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074802176,18989153,3,32609,-1072677376,196897,134246400,-1067368448,
+196897,1214283776,-1067401216,196897,30464,-1067368448,196897,1811963648,-1067368432,196897,2137063424,2080374784,18989072,1879048195,1073743872,18989153,
+-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074833920,18989153,3,32609,-1072645632,196897,134246400,-1067368448,196897,
+1214283776,-1067401216,196897,30464,-1067368448,196897,-402628864,44816,0,23330817,1631588584,50405824,1627389952,127,566235384,769,
+524400,566255936,769,4743296,566255808,769,119,566255936,769,287703135,566255936,769,8347904,288751616,50405824,7340032,
+1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631588708,50405824,1627389952,127,566235508,769,524400,
+566255936,769,4743296,566255808,769,119,566255936,769,295829599,566255936,769,8347904,296878080,50405824,7340032,1631584264,
+50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631588832,50405824,1627389952,127,566235632,769,524400,566255936,
+769,4743296,566255808,769,119,566255936,769,303956063,566255936,769,8347904,305004544,50405824,7340032,1631584264,50405824,
+1619001344,1623195720,159,16777216,1174496256,18989074,1996488707,1073741824,18989153,1593835523,1074945024,18989153,3,32609,-1072534528,196897,
+134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,-1711251712,-1067368430,196897,2137063424,-1442840576,18989074,1879048195,
+1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1074976768,18989153,3,32609,-1072502784,196897,134246400,
+-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,369123072,-1067368429,196897,2137063424,637534208,18989075,1879048195,1073743872,
+18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1075008512,18989153,3,32609,-1072471040,196897,134246400,-1067368448,
+196897,1214283776,-1067401216,196897,30464,-1067368448,196897,-1845469440,-1067368429,196897,2137063424,-1577058304,-836648941,0,65536,329515364,
+769,524400,566255936,769,4743296,566255808,769,119,566255936,769,332398687,566255936,769,8347904,333447168,50405824,
+7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631589390,50405824,1627389952,127,566236190,769,
+524400,566255936,769,4743296,566255808,769,119,566255936,769,340525151,566255936,769,8347904,341573632,50405824,7340032,
+1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631589514,50405824,1627389952,127,566236314,769,524400,
+566255936,769,4743296,566255808,769,119,566255936,769,348651615,566255936,769,8347904,349700096,50405824,7340032,1631584264,
+50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,9371648,0,1677721856,1595212289,1075119616,18989153,3,32609,-1072359936,
+196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,1140875008,-1067368427,196897,2137063424,1409286144,18989077,
+1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1075151360,18989153,3,32609,-1072328192,196897,
+134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,-1073717504,-1067368427,196897,2137063424,-805306368,18989077,1879048195,
+1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1075183104,18989153,3,32609,-1072296448,196897,134246400,
+-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,1006657280,-1067368426,196897,2137063424,1275068416,18989078,1879048195,1073743872,
+18989153,-2147483645,63072,0,23330817,4724320,566255808,769,119,566255936,769,377094239,566255936,769,8347904,378142720,
+50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631590072,50405824,1627389952,127,566236872,
+769,524400,566255936,769,4743296,566255808,769,119,566255936,769,385220703,566255936,769,8347904,386269184,50405824,
+7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631590196,50405824,1627389952,127,566236996,769,
+524400,566255936,769,4743296,566255808,769,119,566255936,769,393347167,566255936,769,8347904,394395648,50405824,7340032,
+1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631590320,50405824,1627389952,127,103,16777216,-1107205120,
+-1072185321,196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,-301965568,-1067368425,196897,2137063424,-33554432,
+18989079,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1075325952,18989153,3,32609,-1072153600,
+196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,1778409216,-1067368424,196897,2137063424,2046820352,18989080,
+1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1075357696,18989153,3,32609,-1072121856,196897,
+134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,-436183296,-1067368424,196897,2137063424,-167772160,18989080,1879048195,
+1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,1763819617,0,65536,421265764,769,421789791,566255936,769,8347904,
+422838272,50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631590754,50405824,1627389952,127,
+566237554,769,524400,566255936,769,4743296,566255808,769,119,566255936,769,429916255,566255936,769,8347904,430964736,
+50405824,7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631590878,50405824,1627389952,127,566237678,
+769,524400,566255936,769,4743296,566255808,769,119,566255936,769,438042719,566255936,769,8347904,439091200,50405824,
+7340032,1631584264,50405824,1619001344,1623195720,50405824,7798784,1631584256,50405824,6225920,1631591002,50405824,1627389952,127,566237802,769,
+524400,566255936,1770241,0,1677721856,1735169,1214283776,-1067401216,196897,30464,-1067368448,196897,-1744806144,-1067368422,196897,2137063424,
+-1476395008,18989082,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1075500544,18989153,3,32609,
+-1071979008,196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,335568640,-1067368421,196897,2137063424,603979776,
+18989083,1879048195,1073743872,18989153,-2147483645,-1073723296,18989152,1996488707,1073741824,18989153,1593835523,1075532288,18989153,3,32609,-1071947264,
+196897,134246400,-1067368448,196897,1214283776,-1067401216,196897,30464,-1067368448,196897,-1879023872,-1067368421,196897,2137063424,-1610612736,18989083,
+1879048195,1073743872,18989153,-2147483645,-1139424928,16802075,1459617793,18594336,-1224736765,134223370,269105024,-2028609792,-536906240,32907,0,1048577,
+-9167912,6258941,128,45,16777216,16778752,63488,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,-1437226241,822754875,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0]
+}
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0MA-PB.jpg b/apps/pdp11/tapes/diags/MAINDEC-11-D0MA-PB.jpg
new file mode 100644
index 000000000..198af9764
Binary files /dev/null and b/apps/pdp11/tapes/diags/MAINDEC-11-D0MA-PB.jpg differ
diff --git a/apps/pdp11/tapes/diags/MAINDEC-11-D0MA-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-D0MA-PB.json
new file mode 100644
index 000000000..c1c6041d5
--- /dev/null
+++ b/apps/pdp11/tapes/diags/MAINDEC-11-D0MA-PB.json
@@ -0,0 +1,45 @@
+{"exec":128,"data":[
+0,0,0,4587521,131072,393216,655360,917504,1179648,1441792,1703936,1966080,2228224,2490368,2752512,3014656,
+3276800,3538944,3801088,4063232,12124160,0,1677721856,-1610579967,437634560,34092807,-1610612736,437634560,538375,-1775910912,196864,-973037568,
+923212309,-1761607672,17242145,-1610612733,-15351808,437634815,538375,1445844736,33554182,-1610612733,437634560,-737665273,-1610612736,-973037568,1057430037,-469762040,
+-1610612736,-1073700864,-973016043,134683157,16777224,385875969,16839200,-1610612733,437634560,236306439,17424385,385875969,16845856,-1610612733,437634560,638959623,
+32769,-1610571776,437634560,873840647,-1761574911,17243169,-1610612733,1091958528,-972695998,-1073276395,-2147398123,1092622080,196930,-973037568,1996954133,520,
+-973037568,1996954133,-1056964600,16870437,-1610612733,437634560,554759,404854528,196871,-1056923648,-956301547,1996954133,-687865848,-16416723,197119,-973037568,
+1594300949,109064,-1610571776,437634560,556807,113152,-1610571776,-904544000,437634561,542983,65792,-937404672,196865,-973037568,-1056499179,61973,
+0,23330817,31719902,16845281,542572544,50397666,10485760,119150022,33297857,129,10485920,119150022,34215361,563544193,50399004,10485760,
+1111561719,365298944,364971802,8454692,1111564375,769,365297824,146212634,2,365297824,146212634,633470976,50397762,10485760,119150022,2231,
+119021975,769,365035680,365363199,146212634,769064960,-64342,769,365297824,144639770,640,10485920,119150022,2239,656,10485920,
+44045762,119150022,2186,257,43917463,769,365297824,365037338,165806778,257,45621399,769,365297824,365037338,8520402,10485760,
+365297824,365037338,8520416,119284119,769,368509088,69878337,119150022,49944002,546766978,50414145,10485760,119150022,133367,10485760,119150022,
+2295,51914179,769,365297824,150406938,563544064,50399000,10485760,-59965,119150022,177,16777216,1006724096,587523,-735193344,33554179,
+-1610612733,437634560,1443421959,-1610612733,-973037568,-16311787,1711276040,-1610612733,-1023369216,-972851691,-888727019,16777224,-687865855,17003552,-1610612733,437634560,
+-1877622009,17425155,-687865855,17010208,-1610612733,437634560,-1474968825,33539,-1610571776,437634560,-1240087801,-1761574141,17243169,-1610612733,1091958528,-972860350,
+-1022944747,-2096902123,1092671232,196930,-973037568,923212309,521,-973037568,923212309,-1006632951,17034789,-1610612733,437634560,603911,404854528,196871,
+-1006592000,-956301547,923212309,-687865847,-16581075,197119,-973037568,520559125,273417,-1610571776,437634560,605959,277504,-1610571776,1276494848,437634564,
+592903,65792,1243682560,196868,-973037568,-1006167531,-469473771,65801,1679890176,196868,-973037568,-1006167531,-2080080363,-1610612736,-973037568,-1006167531,
+-2080076779,471963392,196871,-150953984,-1186840299,0,65536,77201764,365298302,365168410,8651942,1111564567,769,171376800,368509544,39847106,
+119150022,2,10485920,119150022,80877047,131658,119415191,769,368509088,37355759,119150022,82843127,11469358,50397186,-2063532032,-2130640896,
+-2029977600,10485760,34998839,119150022,85202423,12517898,33619970,-2080309248,-2147418112,-2046754816,10485760,119150022,133623,10485760,119150022,2551,
+119021975,769,365297824,167184154,636944384,29754700,769,365297824,368510746,28837236,91362807,368509364,27919728,2526,636944384,27264368,
+769,368509088,26477980,119150022,93853175,368509320,25560474,135,563544064,50399004,10485760,365297824,167184154,2,133623,636944384,
+22545846,769,118890903,769,365297824,367396634,367396320,8848860,8847360,10485760,365297824,171378458,167182570,200736968,-2130640670,16580608,
+0,-402652928,-1610221568,437634560,-1274415353,65792,-973037568,923212309,-150944246,-150951415,16825867,-1610612607,437634560,-1341507833,-1710622976,-1475610880,
+8454400,-973037568,923212309,-150955510,16812553,-1610612607,437634560,-2012596473,2114582272,-2146699520,8454400,-1358913536,437634560,1879717639,1711929088,8454400,
+131328,8651008,8847616,-1090478080,437634560,1342846727,1175058176,8454400,131328,8651008,8847616,-1224695808,134232074,839530368,-2028609792,-536906240,
+-33590133,-905939072,1996523513,-2030036470,-167119104,-150960129,-2013268471,-167119104,-150960129,-2013268471,0,4864,0,524289,1818,214,
+16777216,16778752,63488,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,16449536,0,
+117440512,-1437226241,689111052,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,605561922,608338242,-2126371816,605561922,13402434,0,0,0,0,0,0,0,0,
+0]
+}
diff --git a/apps/pdp11/tapes/misc/MAINDEC-11-DEQKC-B1-PB.json b/apps/pdp11/tapes/diags/MAINDEC-11-DEQKC-B1-PB.json
similarity index 100%
rename from apps/pdp11/tapes/misc/MAINDEC-11-DEQKC-B1-PB.json
rename to apps/pdp11/tapes/diags/MAINDEC-11-DEQKC-B1-PB.json
diff --git a/apps/pdp11/tapes/diags/README.md b/apps/pdp11/tapes/diags/README.md
new file mode 100644
index 000000000..fc21f7cfc
--- /dev/null
+++ b/apps/pdp11/tapes/diags/README.md
@@ -0,0 +1,183 @@
+---
+layout: page
+title: Diagnostic Paper Tape Images
+permalink: /apps/pdp11/tapes/diags/
+---
+
+Diagnostic Paper Tape Images
+----------------------------
+
+Thanks to the [iamvirtual.ca](http://iamvirtual.ca/collection/systems/mediadoc/mediadoc.html#papertape)
+website, we have archived the PDP-11 diagnostics shown below. The tapes have been added to the
+[Default PC11 Configuration](/devices/pdp11/pc11/), so that you can easily load them into any machine with a
+[PC11](/modules/pdp11/lib/pc11.js), such as this [PDP-11/20](/devices/pdp11/machine/1120/panel/debugger/).
+
+As noted for other [DEC PDP-11 Tape Images](/apps/pdp11/tapes/), these "Absolute Format" tapes can be loaded directly
+into RAM using the machine's "Load" button instead of "Attach", allowing you to bypass the usual three-step process of
+loading the [Bootstrap Loader](/apps/pdp11/boot/bootstrap/) in order to load the [Absolute Loader](/apps/pdp11/tapes/absloader/)
+in order to load the desired tape.
+
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+* 
+
+Instructions for Running Diagnostics
+------------------------------------
+
+### Tests 1-12
+
+Instructions for running "TEST 1 - BRANCH" through "TEST 12 - JUMP" come from the
+[MAINDEC USER REFERENCE MANUAL, OCTOBER 1973](http://archive.pcjs.org/pubs/dec/pdp11/diags/MAINDEC_User_Reference_Manual_Oct73.pdf),
+p. 19:
+
+ MAINDEC-11-D0AA to D0LA (NEW NUMBER - DZKAA to DZKAL)
+
+ T1 to T12
+
+ ABSTRACT
+
+ This is a group of 12 tests that incrementally test and isolate simple
+ malfunctions of the PDP-11. The tests should be run in the indicated
+ numerical sequence. The sequence is:
+
+ 1. Branch
+ 2. Conditional Branch
+ 3. Unary
+ 4. Unary and Binarys
+ 5. Rotate/Shift
+ 6. Compare (Equality)
+ 7. Compare (non equality)
+ 8. Move
+ 9. Bit Set, Clear and Test
+ 10. Add
+ 11. Subtract
+ 12. Jump
+
+ REQUIREMENTS
+
+ PDP-11
+
+ STORAGE - Use all of 4K [words] except 17500 - 17776 (Reserved for boot and
+ absolute loader)
+
+ LOADING - Absolute Loader
+
+ EXECUTION TIME - 246 min, depending on test - Bell will ring
+
+ STARTING PROCEDURE - Start and Restart at 200
+
+ PRINTOUTS - No
+
+ SWITCH REGISTER OPTIONS - No
+
+The code for "TEST 1 - BRANCH" is not terribly exciting. Most of its 8Kb length is filled with these
+three repeated instructions:
+
+ 000210: 060100 ADD R1,R0
+ 000212: 000401 BR 000216
+ 000214: 000000 HALT
+
+until it reaches this point:
+
+ 014202: 005267 000022 INC 014230
+ 014206: 001006 BNE 014224
+ 014210: 012737 000207 177566 MOV #207,@#177566
+ 014216: 105737 177564 TSTB @#177564
+ 014222: 100375 BPL 014216
+ 014224: 000167 163750 JMP 000200
+ 014230: 000000 HALT
+
+where it increments a zero-initialized word. When the word wraps around to zero again, it will output a BELL
+character (with bit 7 set; I'm not sure why) to the machine's display terminal, and then run the test again. If a
+BR instruction fails to branch for some strange reason, then in theory, the machine will fall through to a HALT
+instruction, and the test will halt.
+
+### Test 13
+
+ MAINDEC-11-D0MA (NEW NUMBER - DZKAM)
+
+ T13
+
+ ABSTRACT
+
+ This is a test of the JSR, RTS and RTI instructions. It is also the
+ first time the Register 6 has been "PUSHED and POPPED".
+
+ REQUIREMENTS
+
+ PDP-11
+
+ STORAGE - 0 - 5000
+
+ LOADING - Absolute Loader
+
+ EXECUTION TIME - 2 min - Bell will ring
+
+ STARTING PROCEDURE - Start and Restart at 200
+
+ PRINTOUTS - No
+
+ SWITCH REGISTER OPTIONS - No
+
+### Test 14
+
+Note that, as the instructions indicate, this test will fail on a PDP-11/45 or newer machine, because
+it expects the MUL instruction to trap.
+
+ MAINDEC-11-D0NA (NEW NUMBER - DAKAA)
+
+ T14 TRAPS
+
+ ABSTRACT
+
+ This is a test of all operation and instruction that cause traps.
+ Also tested are trap overflow conditions, oddities of register 6,
+ interrupts and the reset instructions.
+
+ REQUIREMENTS
+
+ PDP-11/20, 11/05, 11/10
+
+ STORAGE - 0 - 17500
+
+ LOADING - Absolute Loader
+
+ EXECUTION TIME - Function or core size - Bell will ring
+
+ STARTING PROCEDURE
+
+ Start and Restart at 200 for a 4K System
+ 202 for an 8K System
+ 204 for a 12K System
+ 206 for a 16K System
+ 210 for a 20K System
+ 212 for a 24K System
+ 214 for a 28K System
+
+ PRINTOUTS - No
+
+ SWITCH REGISTER OPTIONS - No
+
+ This program should not be used to test 11/40 and 11/45's.
+
+Newer Paper Tape Software (mid-1970s)
+-------------------------------------
+
+Thanks to the efforts of person(s) unknown, additional paper tape images have been uploaded to
+[bitsavers.org](http://bitsavers.trailing-edge.com/bits/DEC/pdp11/papertapeimages/). It's not super organized,
+so for now, I'm just going to pick out selected tapes and archive them here.
+
+From [bitsavers.org](http://bitsavers.trailing-edge.com/bits/DEC/pdp11/papertapeimages/20040101/), Tray 02:
+
+* Tape 04: [MAINDEC-11-DEQKC-B1-PB 06/12/78; 11/70 cpu instruction; exerciser; (c)1975,76](MAINDEC-11-DEQKC-B1-PB.json)
diff --git a/apps/pdp11/tapes/misc/README.md b/apps/pdp11/tapes/misc/README.md
deleted file mode 100644
index 648246f66..000000000
--- a/apps/pdp11/tapes/misc/README.md
+++ /dev/null
@@ -1,12 +0,0 @@
----
-layout: page
-title: Miscellaneous Paper Tape Images
-permalink: /apps/pdp11/tapes/misc/
----
-
-Miscellaneous Paper Tape Images
--------------------------------
-
-From [bitsavers.org](http://bitsavers.trailing-edge.com/bits/DEC/pdp11/papertapeimages/20040101/), Tray 02:
-
-- Tape 04: [MAINDEC-11-DEQKC-B1-PB 06/12/78; 11/70 cpu instruction; exerciser; (c)1975,76](MAINDEC-11-DEQKC-B1-PB.json)
diff --git a/devices/pdp11/machine/1120/README.md b/devices/pdp11/machine/1120/README.md
index 6020283d2..dd8ff47b1 100644
--- a/devices/pdp11/machine/1120/README.md
+++ b/devices/pdp11/machine/1120/README.md
@@ -10,6 +10,7 @@ PDP-11/20 Machine Configurations
PDPjs is currently being tested with the following PDP-11/20 machine configurations:
* [PDP-11/20 Boot Monitor](/devices/pdp11/machine/1120/monitor/) (with [Debugger](/devices/pdp11/machine/1120/monitor/debugger/))
+* [PDP-11/20 with Front Panel](/devices/pdp11/machine/1120/panel) (with [Debugger](/devices/pdp11/machine/1120/panel/debugger/))
* [PDP-11/20 Bootstrap Loader Demo](/devices/pdp11/machine/1120/bootstrap/) (with [Debugger](/devices/pdp11/machine/1120/bootstrap/debugger/))
* [PDP-11/20 BASIC Demo](/devices/pdp11/machine/1120/basic/) (with [Debugger](/devices/pdp11/machine/1120/basic/debugger/))
diff --git a/devices/pdp11/machine/1120/monitor/debugger/machine.xml b/devices/pdp11/machine/1120/monitor/debugger/machine.xml
index 68361531b..6757083db 100644
--- a/devices/pdp11/machine/1120/monitor/debugger/machine.xml
+++ b/devices/pdp11/machine/1120/monitor/debugger/machine.xml
@@ -7,7 +7,7 @@
-
+
diff --git a/devices/pdp11/machine/1120/monitor/machine.xml b/devices/pdp11/machine/1120/monitor/machine.xml
index 4c78fb97b..4f2141ef3 100644
--- a/devices/pdp11/machine/1120/monitor/machine.xml
+++ b/devices/pdp11/machine/1120/monitor/machine.xml
@@ -7,6 +7,6 @@
-
+
diff --git a/devices/pdp11/machine/1120/panel/README.md b/devices/pdp11/machine/1120/panel/README.md
new file mode 100644
index 000000000..f7d3a6566
--- /dev/null
+++ b/devices/pdp11/machine/1120/panel/README.md
@@ -0,0 +1,12 @@
+---
+layout: page
+title: PDP-11/20 with Front Panel
+permalink: /devices/pdp11/machine/1120/panel/
+machines:
+ - id: test1120
+ type: pdp11
+---
+
+{% include machine.html id="test1120" %}
+
+This machine is also available with our built-in [Debugger](debugger/).
diff --git a/devices/pdp11/machine/1120/panel/debugger/README.md b/devices/pdp11/machine/1120/panel/debugger/README.md
new file mode 100644
index 000000000..995ed394d
--- /dev/null
+++ b/devices/pdp11/machine/1120/panel/debugger/README.md
@@ -0,0 +1,11 @@
+---
+layout: page
+title: PDP-11/20 with Front Panel and Debugger
+permalink: /devices/pdp11/machine/1120/panel/debugger/
+machines:
+ - id: test1120
+ type: pdp11
+ debugger: true
+---
+
+{% include machine.html id="test1120" %}
diff --git a/devices/pdp11/machine/1120/panel/debugger/machine.xml b/devices/pdp11/machine/1120/panel/debugger/machine.xml
new file mode 100644
index 000000000..c9cad48af
--- /dev/null
+++ b/devices/pdp11/machine/1120/panel/debugger/machine.xml
@@ -0,0 +1,13 @@
+
+
+
+ PDP-11/20 with Front Panel and Debugger
+
+
+
+
+
+
+
+
+
diff --git a/devices/pdp11/machine/1120/panel/machine.xml b/devices/pdp11/machine/1120/panel/machine.xml
new file mode 100644
index 000000000..3d9a7d697
--- /dev/null
+++ b/devices/pdp11/machine/1120/panel/machine.xml
@@ -0,0 +1,12 @@
+
+
+
+ PDP-11/20 with Front Panel
+
+
+
+
+
+
+
+
diff --git a/devices/pdp11/panel/1120/README.md b/devices/pdp11/panel/1120/README.md
new file mode 100644
index 000000000..1ee467a78
--- /dev/null
+++ b/devices/pdp11/panel/1120/README.md
@@ -0,0 +1,16 @@
+---
+layout: page
+title: PDP-11/20 Control Panels
+permalink: /devices/pdp11/panel/1120/
+---
+
+PDP-11/20 Control Panels
+------------------------
+
+The following Control Panel configurations are available:
+
+* [PDP-11/20 Front Panel](front.xml) (with [Debugger](debugger/front.xml))
+
+Use this [PDP-11/20](/devices/pdp11/machine/1120/panel/debugger/) to see the [PDP-11/20 Front Panel](debugger/front.xml) in action.
+
+See [Front Panel Basics](/devices/pdp11/panel/1170/#front-panel-basics) for information on Front Panel operation.
diff --git a/devices/pdp11/panel/1120/debugger/README.md b/devices/pdp11/panel/1120/debugger/README.md
new file mode 100644
index 000000000..30a3351d2
--- /dev/null
+++ b/devices/pdp11/panel/1120/debugger/README.md
@@ -0,0 +1,10 @@
+---
+layout: page
+title: PDP-11/20 Control Panel with Debugger
+permalink: /devices/pdp11/panel/1120/debugger/
+---
+
+PDP-11/20 Control Panel with Debugger
+-------------------------------------
+
+* [PDP-11/20 Front Panel with Debugger](front.xml)
diff --git a/devices/pdp11/panel/1120/debugger/front.xml b/devices/pdp11/panel/1120/debugger/front.xml
new file mode 100644
index 000000000..b90312c32
--- /dev/null
+++ b/devices/pdp11/panel/1120/debugger/front.xml
@@ -0,0 +1,239 @@
+
+
+ Control Panel
+
+
+ 16
+ 18
+ 22
+
+
+
+
+
+ KRNL
+ SUPR
+ USER
+
+
+
+
+
+
+ ADDRESS
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ LED1
+ LED2
+ LED3
+
+
+
+
+
+ LED4
+ LED5
+ LED6
+
+
+
+
+
+
+ DATA
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ STRT
+ STEP
+ E/H
+
+
+
+
+
+ CONT
+ DEP
+ EXAM
+
+
+
+
+
+ LOAD
+ TEST
+
+
+
+
+ 0
+ 1
+ 2
+
+
+
+
+
+ 3
+ 4
+ 5
+
+
+
+
+
+ 6
+ 7
+ 8
+
+
+
+
+
+ 9
+ 10
+ 11
+
+
+
+
+
+ 12
+ 13
+ 14
+
+
+
+
+
+ 15
+ 16
+ 17
+
+
+
+
+
+ 18
+ 19
+ 20
+
+
+
+
+
+ 21
+
+
+
+
+
+
+
+ Enter
+ Clear
+
+
+
+ Registers
+ 000000
+ 000000
+ 000000
+ 000000
+ 000000
+ 000000
+ 000000
+ 000000
+ 000000
+
+ 0
+ 0
+ 0
+ 0
+
+
+
+ Run
+ Step
+ Reset
+ Fast
+ Stopped
+
+
diff --git a/devices/pdp11/panel/1120/front.xml b/devices/pdp11/panel/1120/front.xml
new file mode 100644
index 000000000..5aad69e5e
--- /dev/null
+++ b/devices/pdp11/panel/1120/front.xml
@@ -0,0 +1,215 @@
+
+
+ Control Panel
+
+
+ 16
+ 18
+ 22
+
+
+
+
+
+ KRNL
+ SUPR
+ USER
+
+
+
+
+
+
+ ADDRESS
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ LED1
+ LED2
+ LED3
+
+
+
+
+
+ LED4
+ LED5
+ LED6
+
+
+
+
+
+
+ DATA
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ .
+
+
+
+
+
+ START
+ STEP
+ ENABLE
+
+
+
+
+
+ CONT
+ DEP
+ EXAM
+
+
+
+
+
+ LOAD
+ TEST
+
+
+
+
+ 0
+ 1
+ 2
+
+
+
+
+
+ 3
+ 4
+ 5
+
+
+
+
+
+ 6
+ 7
+ 8
+
+
+
+
+
+ 9
+ 10
+ 11
+
+
+
+
+
+ 12
+ 13
+ 14
+
+
+
+
+
+ 15
+ 16
+ 17
+
+
+
+
+
+ 18
+ 19
+ 20
+
+
+
+
+
+ 21
+
+
+
+
+
+
+
+ Run
+ Reset
+ Fast
+ Stopped
+
+
diff --git a/devices/pdp11/panel/README.md b/devices/pdp11/panel/README.md
index 7b0b537c7..6b1164795 100644
--- a/devices/pdp11/panel/README.md
+++ b/devices/pdp11/panel/README.md
@@ -7,5 +7,6 @@ permalink: /devices/pdp11/panel/
PDP-11 Control Panels
---------------------
+* [11/20 Front Panels](1120/)
* [11/70 Front Panels](1170/)
* [Terminal Test Panels](test/)
diff --git a/devices/pdp11/pc11/default.xml b/devices/pdp11/pc11/default.xml
index 20d871d8a..e89d228a0 100644
--- a/devices/pdp11/pc11/default.xml
+++ b/devices/pdp11/pc11/default.xml
@@ -30,7 +30,21 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Attach
Load
diff --git a/disks/dec/rl02k/xxdp/README.md b/disks/dec/rl02k/xxdp/README.md
index ebb3ce38e..2a31a806f 100644
--- a/disks/dec/rl02k/xxdp/README.md
+++ b/disks/dec/rl02k/xxdp/README.md
@@ -31,7 +31,7 @@ At the prompt, type "BOOT RL0". The following text should appear:
.
-The "H" command displays the following information:
+The "H" (HELP) command displays the following information:
Monitor Commands
----------------
@@ -226,3 +226,958 @@ The "H" command displays the following information:
EX - exit edit mode
+The "D" (DIRECTORY) command displays the following information:
+
+ ENTRY# FILNAM.EXT DATE LENGTH START
+
+ 1 MMDP .SAV 3-MAR-83C 17 000310
+ 2 MTDP .SAV 3-MAR-83C 17 000331
+ 3 HSAAD0.SYS 3-MAR-83 24 000352
+ 4 HSABC0.SYS 3-MAR-83 28 000402
+ 5 HSACC0.SYS 3-MAR-83 27 000436
+ 6 HSADB0.SYS 3-MAR-83 25 000471
+ 7 HUDIB0.SYS 3-MAR-83 5 000522
+ 8 HELP .TXT 3-MAR-83 14 000527
+ 9 HDMMB0.SYS 3-MAR-83 3 000545
+ 10 HDMTB0.SYS 3-MAR-83 3 000550
+ 11 HDDBB0.SYS 3-MAR-83 2 000553
+ 12 HDDDC0.SYS 3-MAR-83 3 000555
+ 13 HDDKB0.SYS 3-MAR-83 2 000560
+ 14 HDDLC0.SYS 3-MAR-83 4 000562
+ 15 HDDMB0.SYS 3-MAR-83 4 000566
+ 16 HDDUA0.SYS 3-MAR-83 3 000572
+ 17 HDDPB0.SYS 3-MAR-83 2 000575
+ 18 HDDRB0.SYS 3-MAR-83 3 000577
+ 19 HDDSB0.SYS 3-MAR-83 2 000602
+ 20 HDDTB0.SYS 3-MAR-83 2 000604
+ 21 HDDXB0.SYS 3-MAR-83 3 000606
+ 22 HDDYB0.SYS 3-MAR-83 3 000611
+ 23 HDKBB0.SYS 3-MAR-83 1 000614
+ 24 HDLPA0.SYS 3-MAR-83 1 000615
+ 25 HDMSB0.SYS 3-MAR-83 3 000616
+ 26 HDPDB0.SYS 3-MAR-83 3 000621
+ 27 HDPPB0.SYS 3-MAR-83 1 000624
+ 28 HDPRB0.SYS 3-MAR-83 1 000625
+ 29 HDPTB0.SYS 3-MAR-83 1 000626
+ 30 HDTRA0.SYS 3-MAR-83 2 000627
+ 31 HMDBC0.SYS 3-MAR-83 12 000631
+ 32 HMDDC0.SYS 3-MAR-83 13 000645
+ 33 HMDKC0.SYS 3-MAR-83 12 000662
+ 34 HMDLD0.SYS 3-MAR-83 13 000676
+ 35 HMDMC0.SYS 3-MAR-83 12 000713
+ 36 HMDPC0.SYS 3-MAR-83 11 000727
+ 37 HMDRC0.SYS 3-MAR-83 12 000742
+ 38 HMDSC0.SYS 3-MAR-83 12 000756
+ 39 HMDTC0.SYS 3-MAR-83 12 000772
+ 40 HMDUA0.SYS 3-MAR-83 12 001006
+ 41 HMDXC0.SYS 3-MAR-83 12 001022
+ 42 HMDYC0.SYS 3-MAR-83 12 001036
+ 43 HMMMC0.SYS 3-MAR-83 12 001052
+ 44 HMMSC0.SYS 3-MAR-83 13 001066
+ 45 HMMTC0.SYS 3-MAR-83 12 001103
+ 46 HMPDB1.SYS 3-MAR-83 17 001117
+ 47 HMTRB0.SYS 3-MAR-83 12 001140
+ 48 UPD1 .BIN 3-MAR-83 12 001154
+ 49 UPD2 .BIN 3-MAR-83 25 001170
+ 50 XTECO .BIN 3-MAR-83 16 001221
+ 51 DXCL .BIN 3-MAR-83 25 001241
+ 52 SETUP .BIN 3-MAR-83 26 001272
+ 53 PATCH .BIN 3-MAR-83 22 001324
+ 54 XMOND0.LIB 3-MAR-83 179 001352
+ 55 BKDMD0.BIC 3-MAR-83 13 001635
+ 56 BKEAB0.BIC 3-MAR-83 16 001652
+ 57 BKEBA0.BIC 3-MAR-83 17 001672
+ 58 BKMAA0.BIN 3-MAR-83 1 001713
+ 59 BKTAD1.BIC 5-AUG-83 17 001714
+ 60 BKTBB0.BIC 3-MAR-83 8 001735
+ 61 BKTCB0.BIC 3-MAR-83 9 001745
+ 62 BKTDC0.BIC 3-MAR-83 7 001756
+ 63 BKTFD0.BIC 3-MAR-83 16 001765
+ 64 BKTGD1.BIC 3-MAR-83 17 002005
+ 65 BQEAC1.BIC 3-MAR-83 57 002026
+ 66 BVTAD0.BIN 3-MAR-83 22 002117
+ 67 CFPAB0.BIC 3-MAR-83 13 002145
+ 68 CFPBB0.BIC 3-MAR-83 15 002162
+ 69 CFPCB0.BIC 3-MAR-83 15 002201
+ 70 CFPDC0.BIC 3-MAR-83 17 002220
+ 71 CFPEB0.BIC 3-MAR-83 16 002241
+ 72 CFPFB0.BIC 3-MAR-83 12 002261
+ 73 CFPGC0.BIC 3-MAR-83 11 002275
+ 74 CFPHB0.BIC 3-MAR-83 16 002310
+ 75 CFPIB0.BIC 3-MAR-83 16 002330
+ 76 CFPJB0.BIC 3-MAR-83 16 002350
+ 77 CFPKB0.BIC 3-MAR-83 10 002370
+ 78 CFPLB0.BIC 3-MAR-83 15 002402
+ 79 CFPMB0.BIC 3-MAR-83 7 002421
+ 80 CFPOD0.BIC 3-MAR-83 12 002430
+ 81 CFPRC0.BIC 3-MAR-83 7 002444
+ 82 CFPSD0.BIC 3-MAR-83 17 002453
+ 83 CFPTE0.BIC 3-MAR-83 17 002474
+ 84 CFPUD0.BIC 3-MAR-83 17 002515
+ 85 CKBAB0.BIC 3-MAR-83 4 002536
+ 86 CKBBB0.BIC 3-MAR-83 4 002542
+ 87 CKBCC0.BIC 3-MAR-83 8 002546
+ 88 CKBDC0.BIC 3-MAR-83 8 002556
+ 89 CKBEC0.BIC 3-MAR-83 3 002566
+ 90 CKBIB0.BIC 3-MAR-83 13 002571
+ 91 CKBCB0.PAT 9-AUG-83 1 002606
+ 92 CMSBB0.BIN 3-MAR-83 10 002607
+ 93 EFPAA0.BIC 3-MAR-83 59 002621
+ 94 EFPBA1.BIC 3-MAR-83 46 002714
+ 95 EKBAD0.BIC 3-MAR-83 11 002772
+ 96 EKBBF0.BIC 3-MAR-83 61 003005
+ 97 EKBCD1.BIC 3-MAR-83 44 003102
+ 98 EKBDE0.BIC 3-MAR-83 78 003156
+ 99 EKBEE1.BIC 3-MAR-83 61 003274
+ 100 EKBFD1.BIC 3-MAR-83 31 003371
+ 101 EKBGC0.BIC 3-MAR-83 27 003430
+ 102 EMJAD0.BIC 3-MAR-83 9 003463
+ 103 EMKAB0.BIC 3-MAR-83 81 003474
+ 104 EQKCE1.BIC 3-MAR-83 58 003615
+ 105 ERHAE1.BIC 3-MAR-83 54 003707
+ 106 ERSAA0.BIC 3-MAR-83 22 003775
+ 107 ERSBC0.BIC 3-MAR-83 18 004023
+ 108 ERSCB0.BIC 3-MAR-83 26 004045
+ 109 ERSDD0.BIN 3-MAR-83 24 004077
+ 110 FFPAA1.BIN 3-MAR-83 60 004127
+ 111 FFPBA0.BIN 3-MAR-83 59 004223
+ 112 FFPCB0.BIC 3-MAR-83 59 004316
+ 113 FKAAC0.BIC 3-MAR-83 24 004411
+ 114 FKABD1.BIC 27-OCT-83 15 004441
+ 115 FKACA0.BIC 3-MAR-83 16 004460
+ 116 FKKAB0.BIN 3-MAR-83 37 004500
+ 117 FKTGC0.BIC 3-MAR-83 17 004545
+ 118 FKTHB0.BIC 3-MAR-83 44 004566
+ 119 GKAAA0.BIC 3-MAR-83 14 004642
+ 120 GKABC0.BIC 3-MAR-83 15 004660
+ 121 XXBLD .CCC 3-MAR-83 23 004677
+ 122 JDLAA0.BIC 3-MAR-83 19 004726
+ 123 JFPAA1.BIC 3-MAR-83 50 004751
+ 124 JFPBA0.BIC 3-MAR-83 39 005033
+ 125 JKDAD1.BIC 3-MAR-83 28 005102
+ 126 JKDBD0.BIC 3-MAR-83 52 005136
+ 127 JKDCB0.BIC 3-MAR-83 52 005222
+ 128 JKDDB0.BIC 3-MAR-83 32 005306
+ 129 JKDEB0.BIN 3-MAR-83 90 005346
+ 130 JKDFA0.BIC 3-MAR-83 25 005500
+ 131 JKDHA0.BIC 3-MAR-83 54 005531
+ 132 JKDIA0.BIC 3-MAR-83 23 005617
+ 133 JKDJB0.BIN 3-MAR-83 93 005646
+ 134 KFPAD0.BIC 3-MAR-83 62 006003
+ 135 KFPBC0.BIC 3-MAR-83 60 006101
+ 136 KFPCD0.BIC 3-MAR-83 64 006175
+ 137 KKAAB0.BIC 3-MAR-83 36 006275
+ 138 KKABD0.BIC 3-MAR-83 21 006341
+ 139 KKACC0.BIC 3-MAR-83 9 006366
+ 140 KKKAC0.BIC 3-MAR-83 42 006377
+ 141 KKTAB1.BIC 3-MAR-83 27 006451
+ 142 KKTBD0.BIC 3-MAR-83 30 006504
+ 143 KKUAE0.BIC 3-MAR-83 28 006542
+ 144 NKXAA0.BIC 3-MAR-83 24 006576
+ 145 RDTAB0.BIC 3-MAR-83 31 006626
+ 146 RIIAB0.BIC 3-MAR-83 35 006665
+ 147 RLPAB0.BIN 3-MAR-83 48 006730
+ 148 RLPBB0.BIN 3-MAR-83 19 007010
+ 149 RLPFC0.BIN 3-MAR-83 20 007033
+ 150 RLPGC0.BIN 3-MAR-83 28 007057
+ 151 RLPKC0.BIN 3-MAR-83 19 007113
+ 152 RLPLA0.BIC 3-MAR-83 32 007136
+ 153 RLPMB0.BIN 3-MAR-83 24 007176
+ 154 RLPNA1.BIC 3-MAR-83 26 007226
+ 155 TDHAB0.MPG 3-MAR-83 8 007260
+ 156 TDJAB0.MPG 3-MAR-83 6 007270
+ 157 TDLAB0.MPG 3-MAR-83 6 007276
+ 158 TDQAB0.MPG 3-MAR-83 8 007304
+ 159 TDUAA0.MPG 3-MAR-83 8 007314
+ 160 TCMPG .BIN 3-MAR-83 16 007324
+ 161 RKMPG .BIN 3-MAR-83 16 007344
+ 162 TMMPG .BIN 3-MAR-83 15 007364
+ 163 THMPG .BIN 3-MAR-83 15 007403
+ 164 RXMPG .BIN 3-MAR-83 17 007422
+ 165 RBMPG .BIN 3-MAR-83 16 007443
+ 166 TLPAB0.MPG 3-MAR-83 5 007463
+ 167 TMGAC0.MPG 3-MAR-83 39 007470
+ 168 TMMAB0.MPG 3-MAR-83 54 007537
+ 169 TMSAA0.MPG 3-MAR-83 2 007625
+ 170 TPCAB0.MPG 3-MAR-83 5 007627
+ 171 TR3AA0.MPG 3-MAR-83 8 007634
+ 172 TR6AA0.MPG 3-MAR-83 15 007644
+ 173 TRKAB0.MPG 3-MAR-83 6 007663
+ 174 TRPAB0.MPG 3-MAR-83 13 007671
+ 175 TRSAA0.MPG 3-MAR-83 9 007706
+ 176 TTCAB0.MPG 3-MAR-83 6 007717
+ 177 TTMAB0.MPG 3-MAR-83 6 007725
+ 178 TVDAB0.MPG 3-MAR-83 1 007733
+ 179 VAAAA1.BIC 3-MAR-83 13 007734
+ 180 VADAC0.BIC 3-MAR-83 16 007751
+ 181 VAXAA0.BIC 3-MAR-83 16 007771
+ 182 VCDAB0.BIC 3-MAR-83 16 010011
+ 183 VCDBB0.BIC 3-MAR-83 31 010031
+ 184 VCDCB0.BIC 3-MAR-83 30 010070
+ 185 VCDDB0.BIC 3-MAR-83 29 010126
+ 186 VCLHC0.BIN 3-MAR-83 34 010163
+ 187 VCMAA0.BIC 3-MAR-83 15 010225
+ 188 VDLAB0.BIC 3-MAR-83 16 010244
+ 189 VDMAA2.BIC 3-MAR-83 31 010264
+ 190 VDMBA1.BIC 3-MAR-83 30 010323
+ 191 VDMCA2.BIC 3-MAR-83 30 010361
+ 192 VDMDA1.BIC 3-MAR-83 27 010417
+ 193 VDMEA2.BIC 3-MAR-83 27 010452
+ 194 VDPVB1.BIC 3-MAR-83 31 010505
+ 195 VDRAB0.BIC 3-MAR-83 14 010544
+ 196 VDRBA0.BIN 3-MAR-83 7 010562
+ 197 VDRCB0.BIN 3-MAR-83 16 010571
+ 198 VDRDB0.BIC 3-MAR-83 15 010611
+ 199 VDVAC0.BIC 3-MAR-83 14 010630
+ 200 VDVCB0.BIC 3-MAR-83 13 010646
+ 201 VDZAC2.BIC 22-AUG-84 17 010663
+ 202 VDZBB2.BIC 22-AUG-84 16 010704
+ 203 VDZCB1.BIN 3-MAR-83 12 010724
+ 204 VDZDA0.BIN 3-MAR-83 4 010740
+ 205 VIBAA2.BIC 3-MAR-83 12 010744
+ 206 VIBBA1.BIC 3-MAR-83 12 010760
+ 207 VKAAC0.BIC 3-MAR-83 16 010774
+ 208 VKABB0.BIC 3-MAR-83 16 011014
+ 209 VKACC1.BIC 3-MAR-83 16 011034
+ 210 VKADC1.BIC 3-MAR-83 13 011054
+ 211 VKAEB3.BIC 22-AUG-84 7 011071
+ 212 VKAFE0.BIN 3-MAR-83 5 011100
+ 213 VKAHA1.BIC 3-MAR-83 16 011105
+ 214 VKAIB0.BIN 3-MAR-83 15 011125
+ 215 VKAJB0.BIN 3-MAR-83 16 011144
+ 216 VKALA1.BIC 3-MAR-83 12 011164
+ 217 VKDAD0.BIN 3-MAR-83 25 011200
+ 218 VKDBA0.BIC 3-MAR-83 27 011231
+ 219 VKMAA0.BIN 3-MAR-83 19 011264
+ 220 VKMBA0.BIN 3-MAR-83 13 011307
+ 221 VKMCA0.BIN 3-MAR-83 30 011324
+ 222 VKMEA0.BIN 3-MAR-83 17 011362
+ 223 VKUAA0.BIN 3-MAR-83 16 011403
+ 224 VKWAC0.BIC 3-MAR-83 17 011423
+ 225 VM8AE0.BIC 3-MAR-83 14 011444
+ 226 VMEMA0.BIC 3-MAR-83 16 011462
+ 227 VMNAC1.BIC 3-MAR-83 48 011502
+ 228 VMNBB0.BIC 3-MAR-83 18 011562
+ 229 VMNCB1.BIC 3-MAR-83 21 011604
+ 230 VMNDA1.BIC 3-MAR-83 17 011631
+ 231 VMNEA1.BIC 3-MAR-83 14 011652
+ 232 VMNFC0.BIC 3-MAR-83 9 011670
+ 233 VMNGA0.BIC 3-MAR-83 3 011701
+ 234 VMSAA0.BIC 3-MAR-83 24 011704
+ 235 VMXAA0.BIC 3-MAR-83 15 011734
+ 236 VPCAG0.BIC 3-MAR-83 85 011753
+ 237 VRLAC0.BIN 3-MAR-83 24 012100
+ 238 VRLBA0.BIC 3-MAR-83 28 012130
+ 239 VTSAA0.BIC 3-MAR-83 36 012164
+ 240 VTSBA0.BIC 3-MAR-83 61 012230
+ 241 VTSCA0.BIC 3-MAR-83 73 012325
+ 242 VTSDA0.BIC 3-MAR-83 68 012436
+ 243 VTSEA0.BIC 3-MAR-83 23 012542
+ 244 VVSAB0.BIC 3-MAR-83 76 012571
+ 245 VVTAA1.BIN 3-MAR-83 18 012705
+ 246 VVTBA0.BIN 3-MAR-83 20 012727
+ 247 VVTCA0.BIN 3-MAR-83 19 012753
+ 248 XAAAD0.OBJ 3-MAR-83 3 012776
+ 249 XAABB0.OBJ 3-MAR-83 4 013001
+ 250 XAACB0.OBJ 3-MAR-83 4 013005
+ 251 XADAE0.OBJ 3-MAR-83 3 013011
+ 252 XADBB0.OBJ 3-MAR-83 8 013014
+ 253 XADCB0.OBJ 3-MAR-83 8 013024
+ 254 XAFAE0.OBJ 3-MAR-83 3 013034
+ 255 XARAB0.OBJ 3-MAR-83 10 013037
+ 256 XBBAB0.OBJ 3-MAR-83 4 013051
+ 257 XBEAB0.OBJ 3-MAR-83 10 013055
+ 258 XBMCN0.OBJ 3-MAR-83 5 013067
+ 259 XBMDE0.OBJ 3-MAR-83 3 013074
+ 260 XBMEB0.OBJ 3-MAR-83 4 013077
+ 261 XBMFB0.OBJ 3-MAR-83 3 013103
+ 262 XBMGB0.OBJ 3-MAR-83 4 013106
+ 263 XBMHB0.OBJ 3-MAR-83 3 013112
+ 264 XBMIA0.OBJ 3-MAR-83 4 013115
+ 265 XBTAB0.OBJ 3-MAR-83 3 013121
+ 266 XBTBB0.OBJ 3-MAR-83 3 013124
+ 267 XBTCA0.OBJ 3-MAR-83 8 013127
+ 268 XCBAE0.OBJ 3-MAR-83 3 013137
+ 269 XCBBE0.OBJ 3-MAR-83 2 013142
+ 270 XCBCF0.OBJ 3-MAR-83 4 013144
+ 271 XCDAG0.OBJ 3-MAR-83 4 013150
+ 272 XCIAA0.OBJ 3-MAR-83 8 013154
+ 273 XCMAB0.OBJ 3-MAR-83 3 013164
+ 274 XCMJA0.OBJ 3-MAR-83 4 013167
+ 275 XCPAG0.OBJ 3-MAR-83 5 013173
+ 276 XCPBJ0.OBJ 3-MAR-83 5 013200
+ 277 XCRAG0.OBJ 3-MAR-83 3 013205
+ 278 XCSTA0.OBJ 3-MAR-83 3 013210
+ 279 XDCAG0.OBJ 3-MAR-83 7 013213
+ 280 XDHAL0.OBJ 3-MAR-83 7 013222
+ 281 XDJAL0.OBJ 3-MAR-83 7 013231
+ 282 XDLAJ0.OBJ 3-MAR-83 6 013240
+ 283 XDLBB0.OBJ 3-MAR-83 10 013246
+ 284 XDMBI0.OBJ 3-MAR-83 4 013260
+ 285 XDMCB0.OBJ 3-MAR-83 8 013264
+ 286 XDMDC0.OBJ 3-MAR-83 14 013274
+ 287 XDMEB0.OBJ 3-MAR-83 12 013312
+ 288 XDMRB0.OBJ 3-MAR-83 9 013326
+ 289 XDMSA0.OBJ 3-MAR-83 3 013337
+ 290 XDNAH0.OBJ 3-MAR-83 3 013342
+ 291 XDPAE0.OBJ 3-MAR-83 6 013345
+ 292 XDPBB0.OBJ 3-MAR-83 6 013353
+ 293 XDPVA0.OBJ 3-MAR-83 4 013361
+ 294 XDQAI0.OBJ 3-MAR-83 7 013365
+ 295 XDRAD0.OBJ 3-MAR-83 3 013374
+ 296 XDRBI0.OBJ 3-MAR-83 2 013377
+ 297 XDRCI0.OBJ 3-MAR-83 3 013401
+ 298 XDRDC0.OBJ 3-MAR-83 3 013404
+ 299 XDREC0.OBJ 3-MAR-83 8 013407
+ 300 XDRFD0.OBJ 3-MAR-83 8 013417
+ 301 XDRJA0.OBJ 3-MAR-83 4 013427
+ 302 XDRKA0.OBJ 3-MAR-83 4 013433
+ 303 XDRWC0.OBJ 3-MAR-83 2 013437
+ 304 XDTAD0.OBJ 3-MAR-83 7 013441
+ 305 XDUAI0.OBJ 3-MAR-83 7 013450
+ 306 XDUBC0.OBJ 3-MAR-83 12 013457
+ 307 XDVAB0.OBJ 3-MAR-83 18 013473
+ 308 XDXAG0.OBJ 3-MAR-83 3 013515
+ 309 XDZAE0.OBJ 3-MAR-83 5 013520
+ 310 XDZBC0.OBJ 3-MAR-83 7 013525
+ 311 XFPAG0.OBJ 3-MAR-83 4 013534
+ 312 XFPBE0.OBJ 3-MAR-83 9 013540
+ 313 XGTAE0.OBJ 3-MAR-83 7 013551
+ 314 XIBAD0.OBJ 3-MAR-83 4 013560
+ 315 XICAD0.OBJ 3-MAR-83 2 013564
+ 316 XICBC0.OBJ 3-MAR-83 6 013566
+ 317 XIEAA0.OBJ 3-MAR-83 3 013574
+ 318 XKEAD0.OBJ 3-MAR-83 3 013577
+ 319 XKGAD0.OBJ 3-MAR-83 3 013602
+ 320 XKLAE0.OBJ 3-MAR-83 6 013605
+ 321 XKMAA0.OBJ 3-MAR-83 12 013613
+ 322 XKMCB0.OBJ 3-MAR-83 12 013627
+ 323 XKMDA0.OBJ 3-MAR-83 4 013643
+ 324 XKUAB0.OBJ 3-MAR-83 8 013647
+ 325 XKWAG0.OBJ 3-MAR-83 4 013657
+ 326 XKWBK0.OBJ 3-MAR-83 4 013663
+ 327 XKWCB0.OBJ 3-MAR-83 3 013667
+ 328 XKWDB0.OBJ 3-MAR-83 8 013672
+ 329 XKWEB0.OBJ 3-MAR-83 5 013702
+ 330 XKWFB0.OBJ 3-MAR-83 4 013707
+ 331 XKWGA0.OBJ 3-MAR-83 4 013713
+ 332 XLKAB0.OBJ 3-MAR-83 7 013717
+ 333 XLPAF0.OBJ 3-MAR-83 4 013726
+ 334 XLPBF0.OBJ 3-MAR-83 3 013732
+ 335 XLPCE0.OBJ 3-MAR-83 4 013735
+ 336 XLPDF0.OBJ 3-MAR-83 6 013741
+ 337 XLPED0.OBJ 3-MAR-83 5 013747
+ 338 XLPFB0.OBJ 3-MAR-83 5 013754
+ 339 XLPHC0.OBJ 3-MAR-83 27 013761
+ 340 XMLAA0.OBJ 3-MAR-83 8 014014
+ 341 XMNAA0.OBJ 3-MAR-83 8 014024
+ 342 XMNBA0.OBJ 3-MAR-83 13 014034
+ 343 XMNCA0.OBJ 3-MAR-83 5 014051
+ 344 XMNDA0.OBJ 3-MAR-83 4 014056
+ 345 XMNEA0.OBJ 3-MAR-83 4 014062
+ 346 XNCAD0.OBJ 3-MAR-83 5 014066
+ 347 XNCBA0.OBJ 3-MAR-83 9 014073
+ 348 XPAAF0.OBJ 3-MAR-83 4 014104
+ 349 XPABG0.OBJ 3-MAR-83 3 014110
+ 350 XPCCE0.OBJ 3-MAR-83 2 014113
+ 351 XPCSB0.OBJ 3-MAR-83 7 014115
+ 352 XPLAB0.OBJ 3-MAR-83 7 014124
+ 353 XRCAD0.OBJ 3-MAR-83 5 014133
+ 354 XRFAG0.OBJ 3-MAR-83 6 014140
+ 355 XRHAA0.OBJ 3-MAR-83 3 014146
+ 356 XRKAG0.OBJ 3-MAR-83 7 014151
+ 357 XRKBG0.OBJ 3-MAR-83 12 014160
+ 358 XRLAG0.OBJ 3-MAR-83 8 014174
+ 359 XRMAD0.OBJ 3-MAR-83 12 014204
+ 360 XRMBC0.OBJ 3-MAR-83 12 014220
+ 361 XRMCA0.OBJ 3-MAR-83 10 014234
+ 362 XRMDB0.OBJ 3-MAR-83 19 014246
+ 363 XRNAA0.OBJ 3-MAR-83 11 014271
+ 364 XRPAM0.OBJ 3-MAR-83 8 014304
+ 365 XRPBI0.OBJ 3-MAR-83 10 014314
+ 366 XRPDD0.OBJ 3-MAR-83 16 014326
+ 367 XRSAJ0.OBJ 3-MAR-83 7 014346
+ 368 XRXAE0.OBJ 3-MAR-83 8 014355
+ 369 XRXBC0.OBJ 3-MAR-83 13 014365
+ 370 XTAAD0.OBJ 3-MAR-83 4 014402
+ 371 XTCAG0.OBJ 3-MAR-83 6 014406
+ 372 XTMAJ0.OBJ 3-MAR-83 6 014414
+ 373 XTMBL0.OBJ 3-MAR-83 11 014422
+ 374 XTMDA0.OBJ 3-MAR-83 18 014435
+ 375 XTRAD0.OBJ 3-MAR-83 7 014457
+ 376 XTSAA0.OBJ 3-MAR-83 10 014466
+ 377 XTUAB0.OBJ 3-MAR-83 10 014500
+ 378 XUACA0.OBJ 3-MAR-83 10 014512
+ 379 XUDAD0.OBJ 3-MAR-83 3 014524
+ 380 XVSAC0.OBJ 3-MAR-83 11 014527
+ 381 XVSBB0.OBJ 3-MAR-83 8 014542
+ 382 XVSCB0.OBJ 3-MAR-83 15 014552
+ 383 XVTAB0.OBJ 3-MAR-83 7 014571
+ 384 XVTBB0.OBJ 3-MAR-83 8 014600
+ 385 XVTCA0.OBJ 3-MAR-83 8 014610
+ 386 XVTVA0.OBJ 3-MAR-83 6 014620
+ 387 XXYAD0.OBJ 3-MAR-83 4 014626
+ 388 XXYBA0.OBJ 3-MAR-83 3 014632
+ 389 ZAACB0.BIC 3-MAR-83 21 014635
+ 390 ZADLB3.BIC 3-MAR-83 16 014662
+ 391 ZAFAC0.BIC 3-MAR-83 15 014702
+ 392 ZBMAE0.BIC 3-MAR-83 6 014721
+ 393 ZBMDJ0.BIC 3-MAR-83 19 014727
+ 394 ZCDAD0.BIN 3-MAR-83 15 014752
+ 395 ZCDBB0.BIN 3-MAR-83 39 014771
+ 396 ZCLKC0.BIN 3-MAR-83 33 015040
+ 397 ZCLMB0.BIN 3-MAR-83 42 015101
+ 398 ZCMBB1.BIN 3-MAR-83 14 015153
+ 399 ZCMJB1.BIN 3-MAR-83 23 015171
+ 400 ZCTAA0.BIN 3-MAR-83 17 015220
+ 401 ZCTBA0.BIN 3-MAR-83 18 015241
+ 402 ZDAVA0.BIN 3-MAR-83 10 015263
+ 403 ZDCAD0.BIN 3-MAR-83 15 015275
+ 404 ZDCBB0.BIN 3-MAR-83 14 015314
+ 405 ZDCLA0.BIN 3-MAR-83 34 015332
+ 406 ZDCOC0.BIN 3-MAR-83 4 015374
+ 407 ZDFAC0.BIN 3-MAR-83 13 015400
+ 408 ZDHAC0.BIC 3-MAR-83 18 015415
+ 409 ZDHBB1.BIN 3-MAR-83 11 015437
+ 410 ZDHCB1.BIC 3-MAR-83 16 015452
+ 411 ZDHDC1.BIN 3-MAR-83 13 015472
+ 412 ZDHEB1.BIC 3-MAR-83 15 015507
+ 413 ZDHFB1.BIC 3-MAR-83 17 015526
+ 414 ZDHGB0.BIC 3-MAR-83 12 015547
+ 415 ZDHHB0.BIC 3-MAR-83 14 015563
+ 416 ZDHIC1.BIC 3-MAR-83 12 015601
+ 417 ZDHJB0.BIC 3-MAR-83 8 015615
+ 418 ZDHKD0.BIC 3-MAR-83 17 015625
+ 419 ZDHLC0.BIN 3-MAR-83 4 015646
+ 420 ZDHMD2.BIC 3-MAR-83 31 015652
+ 421 ZDHND0.BIC 3-MAR-83 29 015711
+ 422 ZDJAF0.BIC 3-MAR-83 17 015746
+ 423 ZDJBG0.BIC 3-MAR-83 10 015767
+ 424 ZDJDB0.BIN 3-MAR-83 4 016001
+ 425 ZDLAH0.BIN 3-MAR-83 17 016005
+ 426 ZDLBC0.BIN 3-MAR-83 14 016026
+ 427 ZDLCD0.BIN 3-MAR-83 18 016044
+ 428 ZDLDH0.BIC 3-MAR-83 22 016066
+ 429 ZDLOD0.BIN 3-MAR-83 4 016114
+ 430 ZDMAD0.BIN 3-MAR-83 17 016120
+ 431 ZDMBD0.BIC 3-MAR-83 13 016141
+ 432 ZDMCC1.BIC 3-MAR-83 31 016156
+ 433 ZDMED0.BIC 3-MAR-83 27 016215
+ 434 ZDMFC0.BIC 3-MAR-83 31 016250
+ 435 ZDMGD0.BIC 3-MAR-83 24 016307
+ 436 ZDMHC0.BIC 3-MAR-83 18 016337
+ 437 ZDMID2.BIC 3-MAR-83 31 016361
+ 438 ZDMOA0.BIN 3-MAR-83 7 016420
+ 439 ZDMPD0.BIC 3-MAR-83 28 016427
+ 440 ZDMQE0.BIC 3-MAR-83 23 016463
+ 441 ZDMRF0.BIC 3-MAR-83 29 016512
+ 442 ZDMSF0.BIC 3-MAR-83 31 016547
+ 443 ZDMTD0.BIN 3-MAR-83 27 016606
+ 444 ZDNAC0.BIN 3-MAR-83 11 016641
+ 445 ZDPAC0.BIC 3-MAR-83 17 016654
+ 446 ZDPBC0.BIC 3-MAR-83 25 016675
+ 447 ZDPCD0.BIC 3-MAR-83 22 016726
+ 448 ZDPDD0.BIN 3-MAR-83 20 016754
+ 449 ZDPEB0.BIC 3-MAR-83 10 017000
+ 450 ZDPFB0.BIN 3-MAR-83 4 017012
+ 451 ZDPOC0.BIN 3-MAR-83 3 017016
+ 452 ZDQAD0.BIC 3-MAR-83 17 017021
+ 453 ZDQBD0.BIC 3-MAR-83 12 017042
+ 454 ZDQCE0.BIC 3-MAR-83 16 017056
+ 455 ZDQDE0.BIC 3-MAR-83 17 017076
+ 456 ZDQEE0.BIC 3-MAR-83 17 017117
+ 457 ZDQFF0.BIC 3-MAR-83 15 017140
+ 458 ZDQGB0.BIC 3-MAR-83 6 017157
+ 459 ZDQHE0.BIC 3-MAR-83 15 017165
+ 460 ZDQOD0.BIN 3-MAR-83 6 017204
+ 461 ZDRBG0.BIC 3-MAR-83 12 017212
+ 462 ZDRCH1.BIC 3-MAR-83 8 017226
+ 463 ZDRGE0.BIC 3-MAR-83 17 017236
+ 464 ZDRHA1.BIN 3-MAR-83 16 017257
+ 465 ZDRIB0.BIC 3-MAR-83 5 017277
+ 466 ZDRKA0.BIN 3-MAR-83 15 017304
+ 467 ZDRLD0.BIC 3-MAR-83 41 017323
+ 468 ZDTAB0.BIC 3-MAR-83 23 017374
+ 469 ZDUAE0.BIC 3-MAR-83 18 017423
+ 470 ZDUBD0.BIC 3-MAR-83 18 017445
+ 471 ZDUCD0.BIC 3-MAR-83 18 017467
+ 472 ZDUDD0.BIC 3-MAR-83 18 017511
+ 473 ZDUED0.BIC 3-MAR-83 18 017533
+ 474 ZDUFD0.BIC 3-MAR-83 12 017555
+ 475 ZDUOB0.BIN 3-MAR-83 4 017571
+ 476 ZDUQC0.BIN 3-MAR-83 16 017575
+ 477 ZDURB1.BIC 3-MAR-83 16 017615
+ 478 ZDUSB1.BIC 3-MAR-83 16 017635
+ 479 ZDUTB1.BIC 3-MAR-83 16 017655
+ 480 ZDUUB1.BIC 3-MAR-83 16 017675
+ 481 ZDUVB1.BIC 3-MAR-83 16 017715
+ 482 ZDVAC0.BIC 3-MAR-83 28 017735
+ 483 ZDVBC0.BIC 3-MAR-83 21 017771
+ 484 ZDVCD0.BIC 3-MAR-83 20 020016
+ 485 ZDVDD1.BIC 3-MAR-83 22 020042
+ 486 ZDVEC1.BIC 3-MAR-83 20 020070
+ 487 ZDVFA0.BIC 3-MAR-83 32 020114
+ 488 ZDVOB0.BIC 3-MAR-83 5 020154
+ 489 ZDXAD3.BIC 3-MAR-83 32 020161
+ 490 ZDXFD0.BIN 3-MAR-83 31 020221
+ 491 ZDXGC0.BIN 3-MAR-83 24 020260
+ 492 ZDXHD0.BIC 3-MAR-83 19 020310
+ 493 ZDXIC0.BIC 3-MAR-83 16 020333
+ 494 ZDXJC0.BIC 3-MAR-83 15 020353
+ 495 ZDZAG1.BIC 27-OCT-83 27 020372
+ 496 ZDZBC0.BIN 3-MAR-83 4 020425
+ 497 ZFLAB0.BIN 3-MAR-83 8 020431
+ 498 ZICAD0.BIN 3-MAR-83 24 020441
+ 499 ZIEAB0.BIN 3-MAR-83 63 020471
+ 500 ZIRAA0.BIN 3-MAR-83 29 020570
+ 501 ZIRBA1.BIN 3-MAR-83 27 020625
+ 502 ZITAD0.BIN 3-MAR-83 10 020660
+ 503 CMFAF0.PAT 9-AUG-83 1 020672
+ 504 CQKCG1.PAT 9-AUG-83 1 020673
+ 505 EQKCE1.PAT 9-AUG-83 1 020674
+ 506 EMJAD0.PAT 9-AUG-83 1 020675
+ 507 QKDCA0.PAT 9-AUG-83 1 020676
+ 508 JKDACO.PAT 9-AUG-83 1 020677
+ 509 JKDBC0.PAT 9-AUG-83 1 020700
+ 510 VDZAC0.PAT 9-AUG-83 1 020701
+ 511 VDZBB0.PAT 9-AUG-83 1 020702
+ 512 VKABB0.PAT 9-AUG-83 1 020703
+ 513 VKACC1.PAT 9-AUG-83 1 020704
+ 514 VKADC1.PAT 9-AUG-83 1 020705
+ 515 VKAAC0.PAT 9-AUG-83 1 020706
+ 516 ZKAQG0.BIC 3-MAR-83 6 020707
+ 517 ZKARB0.BIC 3-MAR-83 9 020715
+ 518 ZKCAA0.BIC 3-MAR-83 33 020726
+ 519 ZKCCA0.BIC 3-MAR-83 32 020767
+ 520 ZKCDA0.BIC 3-MAR-83 19 021027
+ 521 ZKCEB0.BIC 3-MAR-83 28 021052
+ 522 ZKCFB0.BIC 3-MAR-83 28 021106
+ 523 ZKCGA0.BIC 3-MAR-83 30 021142
+ 524 ZKDAA0.BIN 3-MAR-83 7 021200
+ 525 ZKEBB0.BIC 3-MAR-83 17 021207
+ 526 ZKECA0.BIN 3-MAR-83 8 021230
+ 527 ZKEDA0.BIC 3-MAR-83 14 021240
+ 528 ZKEEC0.BIC 3-MAR-83 76 021256
+ 529 ZKGAB0.BIC 3-MAR-83 6 021372
+ 530 ZKHAB0.BIC 3-MAR-83 10 021400
+ 531 ZKLAE0.BIC 3-MAR-83 14 021412
+ 532 ZDLDH0.PAT 9-AUG-83 1 021430
+ 533 ZKMBA0.BIN 3-MAR-83 33 021431
+ 534 ZKMCA0.BIN 3-MAR-83 24 021472
+ 535 ZKMDA0.BIN 3-MAR-83 41 021522
+ 536 ZKMEA0.BIN 3-MAR-83 43 021573
+ 537 ZKMFA0.BIN 3-MAR-83 20 021646
+ 538 ZKMGA0.BIN 3-MAR-83 17 021672
+ 539 ZKMOA0.BIN 3-MAR-83 15 021713
+ 540 ZKMSA0.BIN 3-MAR-83 49 021732
+ 541 ZKMUA0.BIN 3-MAR-83 32 022013
+ 542 ZKUAE0.BIN 3-MAR-83 17 022053
+ 543 ZKUBC0.BIN 3-MAR-83 25 022074
+ 544 ZKWAG0.BIC 3-MAR-83 11 022125
+ 545 ZKWBJ1.BIC 3-MAR-83 11 022140
+ 546 ZKWCC0.BIN 3-MAR-83 10 022153
+ 547 ZKWKA2.BIC 3-MAR-83 26 022165
+ 548 ZKWLA0.BIN 3-MAR-83 25 022217
+ 549 ZLABA1.BIC 3-MAR-83 15 022250
+ 550 ZLACF0.BIN 3-MAR-83 14 022267
+ 551 ZLADD0.BIN 3-MAR-83 17 022305
+ 552 ZLAEB0.BIN 3-MAR-83 15 022326
+ 553 ZLAFA1.BIN 3-MAR-83 18 022345
+ 554 ZLAIB0.BIN 3-MAR-83 36 022367
+ 555 ZLCAC0.BIN 3-MAR-83 11 022433
+ 556 ZLNAA0.BIN 3-MAR-83 17 022446
+ 557 ZLPAB1.BIN 3-MAR-83 9 022467
+ 558 ZLPBB0.BIN 3-MAR-83 9 022500
+ 559 ZLPKH0.BIN 3-MAR-83 16 022511
+ 560 ZLPLD0.BIN 3-MAR-83 31 022531
+ 561 ZLQPB0.BIN 3-MAR-83 20 022570
+ 562 ZLSAB0.BIC 3-MAR-83 13 022614
+ 563 ZLVAB0.BIC 3-MAR-83 14 022631
+ 564 ZLXAA0.BIN 3-MAR-83 15 022647
+ 565 ZM9AE0.BIC 3-MAR-83 7 022666
+ 566 ZM9BE0.BIC 3-MAR-83 11 022675
+ 567 ZMLAD0.BIN 3-MAR-83 73 022710
+ 568 ZMLBB0.BIN 3-MAR-83 49 023021
+ 569 ZMLCB0.BIN 3-MAR-83 67 023102
+ 570 ZMRAA0.BIC 3-MAR-83 6 023205
+ 571 ZMSDD0.BIC 3-MAR-83 63 023213
+ 572 ZMSPB0.BIC 3-MAR-83 65 023312
+ 573 ZNCCC0.BIN 3-MAR-83 44 023413
+ 574 ZNCDB0.BIN 3-MAR-83 11 023467
+ 575 ZPCAE0.BIC 3-MAR-83 18 023502
+ 576 ZPLAC0.BIN 3-MAR-83 30 023524
+ 577 ZPLBC0.BIN 3-MAR-83 31 023562
+ 578 ZQKBH0.BIC 3-MAR-83 17 023621
+ 579 1124 .BAK 12-SEP-83 1 023642
+ 580 ZQMCG4.BIC 27-OCT-83 27 023643
+ 581 ZR6AD0.BIN 3-MAR-83 58 023676
+ 582 ZR6BD0.BIN 3-MAR-83 51 023770
+ 583 ZR6CE0.BIN 3-MAR-83 54 024053
+ 584 ZR6DD0.BIN 3-MAR-83 46 024141
+ 585 ZR6EC0.BIN 3-MAR-83 40 024217
+ 586 ZR6GC0.BIC 3-MAR-83 55 024267
+ 587 ZR6HF0.BIC 3-MAR-83 58 024356
+ 588 ZR6IF0.BIC 3-MAR-83 43 024450
+ 589 ZR6JF0.BIN 3-MAR-83 45 024523
+ 590 ZR6KG0.BIN 3-MAR-83 51 024600
+ 591 ZR6LD0.BIN 3-MAR-83 38 024663
+ 592 ZR6ME1.BIC 3-MAR-83 52 024731
+ 593 ZR6NE3.BIC 3-MAR-83 56 025015
+ 594 ZR6PD0.BIN 3-MAR-83 57 025105
+ 595 ZR6QC0.BIN 3-MAR-83 42 025176
+ 596 ZR6RC1.BIN 3-MAR-83 37 025250
+ 597 ZRCAB0.BIC 3-MAR-83 11 025315
+ 598 ZRCBB0.BIC 3-MAR-83 10 025330
+ 599 ZRCCB0.BIC 3-MAR-83 6 025342
+ 600 ZRFAB0.BIC 3-MAR-83 11 025350
+ 601 ZRFBB1.BIC 3-MAR-83 14 025363
+ 602 ZRFCB0.BIC 3-MAR-83 6 025401
+ 603 ZRHBF0.BIC 3-MAR-83 63 025407
+ 604 ZRJAD0.BIC 3-MAR-83 43 025506
+ 605 ZRJBD0.BIC 3-MAR-83 24 025561
+ 606 ZRJCB0.BIC 3-MAR-83 20 025611
+ 607 ZRJDE0.BIC 3-MAR-83 45 025635
+ 608 ZRJED0.BIN 3-MAR-83 59 025712
+ 609 ZRJFA0.BIN 3-MAR-83 26 026005
+ 610 ZRJGE0.BIC 3-MAR-83 55 026037
+ 611 ZRJHE0.BIC 3-MAR-83 49 026126
+ 612 ZRJID0.BIC 3-MAR-83 60 026207
+ 613 ZRJJD0.BIC 3-MAR-83 52 026303
+ 614 ZRJKA0.BIC 3-MAR-83 23 026367
+ 615 ZRJLA0.BIC 3-MAR-83 33 026416
+ 616 ZRJMA0.BIC 3-MAR-83 35 026457
+ 617 ZRJNA0.BIC 3-MAR-83 65 026522
+ 618 ZRJOA0.BIC 3-MAR-83 54 026623
+ 619 ZRKHG0.BIC 3-MAR-83 28 026711
+ 620 ZRKIF0.BIN 3-MAR-83 21 026745
+ 621 ZRKJE0.BIC 3-MAR-83 11 026772
+ 622 ZRKKF2.BIC 3-MAR-83 28 027005
+ 623 ZRKLE0.BIC 3-MAR-83 23 027041
+ 624 ZRLGC0.BIN 3-MAR-83 19 027070
+ 625 ZRLHB0.BIC 3-MAR-83 27 027113
+ 626 ZRLID0.BIN 3-MAR-83 30 027146
+ 627 ZRLJB1.BIC 3-MAR-83 23 027204
+ 628 ZRLKB2.BIC 3-MAR-83 26 027233
+ 629 ZRLLC0.BIN 3-MAR-83 14 027265
+ 630 ZRLMB0.BIN 3-MAR-83 23 027303
+ 631 ZRLNA2.BIN 3-MAR-83 28 027332
+ 632 ZRMLB1.BIC 3-MAR-83 35 027366
+ 633 ZRMMB2.BIC 3-MAR-83 72 027431
+ 634 ZRMNB1.BIC 3-MAR-83 69 027541
+ 635 ZRMOB1.BIC 3-MAR-83 74 027646
+ 636 ZRMPB2.BIC 3-MAR-83 75 027760
+ 637 ZRMQB1.BIC 3-MAR-83 48 030073
+ 638 ZRMRB0.BIN 3-MAR-83 67 030153
+ 639 ZRMSB0.BIN 3-MAR-83 22 030256
+ 640 ZRMTB0.BIN 3-MAR-83 36 030304
+ 641 ZRMUB1.BIC 3-MAR-83 48 030350
+ 642 ZRMVB1.BIC 3-MAR-83 46 030430
+ 643 ZRNAA0.BIC 3-MAR-83 49 030506
+ 644 ZRNBA0.BIC 3-MAR-83 75 030567
+ 645 ZRNCA0.BIC 3-MAR-83 47 030702
+ 646 ZRNDA0.BIC 3-MAR-83 73 030761
+ 647 ZRNEA0.BIC 3-MAR-83 70 031072
+ 648 ZRNFA0.BIC 3-MAR-83 72 031200
+ 649 ZRNGA0.BIC 3-MAR-83 37 031310
+ 650 ZRNHA0.BIN 3-MAR-83 67 031355
+ 651 ZRNIA0.BIN 3-MAR-83 22 031460
+ 652 ZRNJB0.BIN 3-MAR-83 91 031506
+ 653 ZRP1C0.BIC 3-MAR-83 29 031641
+ 654 ZRP2B0.BIN 3-MAR-83 11 031676
+ 655 ZRPAD1.BIN 3-MAR-83 13 031711
+ 656 ZRPBE0.BIN 3-MAR-83 25 031726
+ 657 ZRPCD0.BIC 3-MAR-83 7 031757
+ 658 ZRPDB0.BIN 3-MAR-83 8 031766
+ 659 ZRPEA0.BIN 3-MAR-83 9 031776
+ 660 ZRPFB0.BIC 3-MAR-83 17 032007
+ 661 ZRPGB0.BIC 3-MAR-83 7 032030
+ 662 ZRPHA0.BIN 3-MAR-83 8 032037
+ 663 ZRPWC0.BIC 3-MAR-83 27 032047
+ 664 ZRPYD1.BIC 3-MAR-83 37 032102
+ 665 ZRPZC0.BIC 3-MAR-83 21 032147
+ 666 ZRTAC0.BIC 3-MAR-83 8 032174
+ 667 ZRXAF0.BIC 3-MAR-83 17 032204
+ 668 ZRXBF0.BIC 3-MAR-83 16 032225
+ 669 ZRXCA0.BIN 3-MAR-83 7 032245
+ 670 ZRXDC0.BIC 3-MAR-83 30 032254
+ 671 ZRXEA2.BIC 3-MAR-83 17 032312
+ 672 ZRXFB0.BIC 3-MAR-83 31 032333
+ 673 ZTEAC1.BIC 3-MAR-83 26 032372
+ 674 ZTEBB0.BIC 3-MAR-83 17 032424
+ 675 ZTECC1.BIN 3-MAR-83 18 032445
+ 676 ZTEDC0.BIC 3-MAR-83 27 032467
+ 677 ZTEEC0.BIN 3-MAR-83 15 032522
+ 678 ZTEFB0.BIN 3-MAR-83 6 032541
+ 679 ZTMAI0.BIC 3-MAR-83 16 032547
+ 680 ZTMBF0.BIC 3-MAR-83 13 032567
+ 681 ZTMCD0.BIC 3-MAR-83 12 032604
+ 682 ZTMDE0.BIN 3-MAR-83 10 032620
+ 683 ZTMEE0.BIC 3-MAR-83 11 032632
+ 684 ZTMFF0.BIC 3-MAR-83 8 032645
+ 685 ZTMGC0.BIN 3-MAR-83 4 032655
+ 686 ZTMHF0.BIC 3-MAR-83 27 032661
+ 687 ZTRAC0.BIC 3-MAR-83 24 032714
+ 688 ZTRBD0.BIC 3-MAR-83 3 032744
+ 689 ZTSEB0.BIC 3-MAR-83 11 032747
+ 690 ZTSFD0.BIC 3-MAR-83 8 032762
+ 691 ZTSGB0.BIN 3-MAR-83 4 032772
+ 692 ZTSHC0.BIC 3-MAR-83 21 032776
+ 693 ZTSIB0.BIC 3-MAR-83 28 033023
+ 694 ZTUAI0.BIN 3-MAR-83 23 033057
+ 695 ZTUBG1.BIC 3-MAR-83 18 033106
+ 696 ZTUCF2.BIC 3-MAR-83 32 033130
+ 697 ZTUDD0.BIN 3-MAR-83 15 033170
+ 698 ZTUED0.BIN 3-MAR-83 6 033207
+ 699 ZTUFA0.BIN 3-MAR-83 4 033215
+ 700 ZTUGC1.BIC 3-MAR-83 15 033221
+ 701 ZTUIA0.BIN 3-MAR-83 29 033240
+ 702 ZTUJA0.BIN 3-MAR-83 17 033275
+ 703 ZTUKA0.BIN 3-MAR-83 31 033316
+ 704 ZTULA0.BIN 3-MAR-83 14 033355
+ 705 ZTUMA0.BIN 3-MAR-83 4 033373
+ 706 ZTUNA0.BIN 3-MAR-83 4 033377
+ 707 ZTUOB0.BIC 3-MAR-83 25 033403
+ 708 ZTUPB0.BIC 3-MAR-83 16 033434
+ 709 ZTUQB0.BIC 3-MAR-83 17 033454
+ 710 ZTURB0.BIC 3-MAR-83 23 033475
+ 711 ZTUSB0.BIN 3-MAR-83 14 033524
+ 712 ZTUTA0.BIN 3-MAR-83 6 033542
+ 713 ZTUUD0.BIN 3-MAR-83 22 033550
+ 714 ZUAAA0.BIN 3-MAR-83 65 033576
+ 715 ZUABA0.BIN 3-MAR-83 59 033677
+ 716 ZUDAD0.BIN 3-MAR-83 19 033772
+ 717 ZUDBB0.BIC 3-MAR-83 11 034015
+ 718 ZUDCC0.BIC 3-MAR-83 26 034030
+ 719 ZUDDC0.PAK 3-MAR-83 238 034062
+ 720 ZUDEC1.BIN 3-MAR-83 18 034440
+ 721 ZUDGA0.PAK 3-MAR-83 95 034462
+ 722 ZVSEA0.BIC 3-MAR-83 21 034621
+ 723 ZVTBD0.BIC 3-MAR-83 17 034646
+ 724 ZVTCF0.BIN 3-MAR-83 23 034667
+ 725 ZVTHC0.BIC 3-MAR-83 25 034716
+ 726 ZVTJB0.BIN 3-MAR-83 26 034747
+ 727 ZVTLA0.BIN 3-MAR-83 12 035001
+ 728 ZVTMA0.BIN 3-MAR-83 29 035015
+ 729 ZVTNA0.BIC 3-MAR-83 13 035052
+ 730 ZVTVA0.BIN 3-MAR-83 9 035067
+ 731 RMDP .BIN 29-DEC-77 17 035100
+ 732 RKDP .BIN 29-DEC-77 17 035121
+ 733 TCDP .BIN 13-AUG-76 17 035142
+ 734 TMDP .BIN 29-DEC-77 17 035163
+ 735 THDP .BIN 29-DEC-77 17 035204
+ 736 RXDP .BIN 29-DEC-77 17 035225
+ 737 RBDP .BIN 13-AUG-76 17 035246
+ 738 RPDP .BIN 16-AUG-76 17 035267
+ 739 RSDP .BIN 13-AUG-76 17 035310
+ 740 TADP .BIN 13-AUG-76 17 035331
+ 741 RLDP .BIN 29-DEC-77 17 035352
+ 742 RRDP .BIN 23-MAY-80 17 035373
+ 743 RYDP .BIN 2-AUG-78 17 035414
+ 744 ZQUAI0.BIN 13-AUG-76 17 035435
+ 745 ZQUBJ0.BIN 29-DEC-77 31 035456
+ 746 ZQU1C0.BIN 29-DEC-77 35 035515
+ 747 ZQUQD0.BIN 29-DEC-77 22 035560
+ 748 ZQU2C0.BIN 29-DEC-77 23 035606
+ 749 ZQUXE0.BIN 29-DEC-77 46 035635
+ 750 ZQUYC0.BIN 29-DEC-77 27 035713
+ 751 ZQUGH0.BIN 6-MAY-76 27 035746
+ 752 ZQUSD0.TXT 24-APR-81 23 036001
+ 753 CHAIN .BIC 23-OCT-82 2 036030
+ 754 SIZER6.BIC 10-JUN-81 23 036032
+ 755 ROLLIN.BIN 15-NOV-76 18 036061
+ 756 BBADB0.BIN 6-MAR-81 10 036103
+ 757 ZQKCF0.PAT 9-AUG-83 1 036115
+ 758 ZQMCG2.PAT 9-AUG-83 1 036116
+ 759 CMFAF1.BIC 27-OCT-82 17 036117
+ 760 ZQKCF1.BIC 6-OCT-82 16 036140
+ 761 CQKAC0.BIC 11-JUN-82 6 036160
+ 762 CQKCG2.BIC 6-OCT-82 29 036166
+ 763 DQACA0.BIC 30-MAR-82 8 036223
+ 764 ZSSAB0.PAT 9-AUG-83 1 036233
+ 765 FKTAA0.BIC 11-AUG-76 17 036234
+ 766 FKTBA0.BIC 11-AUG-76 8 036255
+ 767 FKTCA0.BIC 11-AUG-76 9 036265
+ 768 FKTDA1.BIC 11-AUG-76 7 036276
+ 769 FKTFA0.BIC 11-AUG-76 16 036305
+ 770 UWADA1.BIN 19-JUN-81 9 036325
+ 771 ZKAAA0.BIN 11-AUG-76 13 036336
+ 772 ZKABA0.BIN 11-AUG-76 5 036353
+ 773 ZKACA0.BIN 11-AUG-76 6 036360
+ 774 ZKADA0.BIN 11-AUG-76 17 036366
+ 775 ZKAEA0.BIN 11-AUG-76 10 036407
+ 776 ZKAFA0.BIN 11-AUG-76 16 036421
+ 777 ZKAGA0.BIN 11-AUG-76 13 036441
+ 778 ZKAHA0.BIN 11-AUG-76 12 036456
+ 779 ZKAIA0.BIN 11-AUG-76 13 036472
+ 780 ZKAJA0.BIN 11-AUG-76 8 036507
+ 781 ZKAKA0.BIN 11-AUG-76 8 036517
+ 782 ZKALA0.BIN 11-AUG-76 15 036527
+ 783 ZKAMA0.BIN 11-AUG-76 4 036546
+ 784 ZKMAF1.BIC 12-SEP-83 9 036552
+ 785 ZKWDA0.BIN 5-JAN-81 4 036563
+ 786 ZKWEA0.BIN 5-JAN-81 34 036567
+ 787 ZMMJA0.BIC 26-JUN-82 5 036631
+ 788 ZMMLC0.BIC 26-JUN-82 15 036636
+ 789 ZMMCA0.BIC 6-MAY-76 4 036655
+ 790 ZMMDB0.BIC 6-MAY-76 3 036661
+ 791 ZMMEC0.BIC 6-MAY-76 4 036664
+ 792 ZMMFB0.BIC 6-MAY-76 4 036670
+ 793 ZMMGD0.BIC 6-MAY-76 3 036674
+ 794 ZMMHB0.BIC 6-MAY-76 1 036677
+ 795 ZMMIB0.BIC 6-MAY-76 3 036700
+ 796 ZMMKB0.BIC 6-MAY-76 1 036703
+ 797 ZMMAA0.BIN 11-AUG-76 2 036704
+ 798 ZMMBA0.BIN 11-AUG-76 1 036706
+ 799 ZSSAB1.BIC 22-SEP-82 10 036707
+ 800 YPTCB0.BIN 11-AUG-76 8 036721
+ 801 KKTAB0.PAT 28-MAY-82 1 036731
+ 802 XMONC0.PAT 28-MAY-82 1 036732
+ 803 XMONB0.PAT 28-MAY-82 1 036733
+ 804 BOOTRX.BIN 16-FEB-79 1 036734
+ 805 BOOTGT.BIN 7-MAR-80 1 036735
+ 806 RPHEAD.BIN 15-NOV-76 4 036736
+ 807 DHAUTO.BIN 8-JUN-81 6 036742
+ 808 DZAUTO.BIN 8-JUN-81 5 036750
+ 809 DZECHO.BIN 9-JUN-81 22 036755
+ 810 DHECHO.BIN 11-JUN-81 27 037003
+ 811 DATACM.BIN 1-JAN-70 13 037036
+ 812 COMPCN.BIN 19-JUN-81 7 037053
+ 813 BBAXE0.OBJ -JAN-70 3 037062
+ 814 1103 .BAK 27-OCT-83 2 037065
+ 815 CTDP .BAK 9-AUG-83 1 037067
+ 816 DBDP .BAK 9-AUG-83 1 037070
+ 817 DDDP .BAK 9-AUG-83 1 037071
+ 818 DKDP .BAK 9-AUG-83 1 037072
+ 819 EEEEEE.CCC 24-APR-81 2 037073
+ 820 1150 .CCC 9-AUG-83 1 037075
+ 821 DLDP .CMD 9-AUG-83 1 037076
+ 822 CTDP .CMD 9-AUG-83 1 037077
+ 823 DBDP .CMD 9-AUG-83 1 037100
+ 824 DDDP .CMD 9-AUG-83 1 037101
+ 825 DKDP .CMD 9-AUG-83 1 037102
+ 826 DMDP .CMD 9-AUG-83 1 037103
+ 827 DRDP .CMD 9-AUG-83 1 037104
+ 828 DXDP .CMD 9-AUG-83 1 037105
+ 829 DYDP .CMD 9-AUG-83 1 037106
+ 830 1111 .CCC 28-MAY-81 1 037107
+ 831 MTDP .CMD 9-AUG-83 1 037110
+ 832 RS04 .CCC 24-APR-81 1 037111
+ 833 MSDP .CMD 9-AUG-83 1 037112
+ 834 1140 .CCC 9-AUG-83 3 037113
+ 835 DECX11.BAK 9-AUG-83 1 037116
+ 836 DXDP01.CMD 9-AUG-83 2 037117
+ 837 DYDP22.BAK 4-AUG-83 2 037121
+ 838 DYDP22.CMD 9-AUG-83 2 037123
+ 839 1134 .BAK 9-AUG-83 2 037125
+ 840 1135 .CCC 9-AUG-83 1 037127
+ 841 SKDP00.BAK 9-AUG-83 3 037130
+ 842 SKDP01.BAK 9-AUG-83 2 037133
+ 843 1145 .CCC 9-AUG-83 2 037135
+ 844 SKDP02.CMD 9-AUG-83 2 037137
+ 845 SKDP01.CMD 9-AUG-83 2 037141
+ 846 SKDP00.CMD 9-AUG-83 3 037143
+ 847 SMDP00.CMD 9-AUG-83 1 037146
+ 848 SMDP05.CMD 9-AUG-83 3 037147
+ 849 SMDP07.CMD 9-AUG-83 1 037152
+ 850 1134 .CCC 27-OCT-83 2 037153
+ 851 1155 .CCC 9-AUG-83 2 037155
+ 852 DECX11.CMD 9-AUG-83 1 037157
+ 853 MINC11.CCC 9-AUG-83 1 037160
+ 854 MINC23.CCC 9-AUG-83 1 037161
+ 855 RK05 .CCC 9-AUG-83 1 037162
+ 856 SXDP00.CMD 9-AUG-83 1 037163
+ 857 SXDP0A.CMD 9-AUG-83 1 037164
+ 858 SYDP01.BAK 9-AUG-83 2 037165
+ 859 PDT130.CCC 13-MAR-81 2 037167
+ 860 SXDP1A.CMD 9-AUG-83 1 037171
+ 861 SXDP25.CMD 9-AUG-83 1 037172
+ 862 SXDP26.CMD 9-AUG-83 1 037173
+ 863 RK611 .CCC 9-AUG-83 1 037174
+ 864 SXDP27.CMD 9-AUG-83 1 037175
+ 865 SYDP00.BAK 13-APR-83 1 037176
+ 866 MTDP .BAK 24-APR-81 1 037177
+ 867 SXDP08.CMD 24-APR-81 2 037200
+ 868 DL11 .CMD 24-APR-81 1 037202
+ 869 TU16 .CMD 24-APR-81 1 037203
+ 870 LP0124.CMD 24-APR-81 1 037204
+ 871 RP0456.CMD 24-APR-81 1 037205
+ 872 THDP .CMD 24-APR-81 1 037206
+ 873 RXDP .CMD 24-APR-81 1 037207
+ 874 SXDP0A.BAK 25-MAR-82 1 037210
+ 875 BM873 .CMD 24-APR-81 1 037211
+ 876 DR11C .CMD 24-APR-81 1 037212
+ 877 FP11B .CMD 24-APR-81 1 037213
+ 878 VT05 .CMD 24-APR-81 1 037214
+ 879 VT50 .CMD 24-APR-81 1 037215
+ 880 LS11 .CMD 24-APR-81 1 037216
+ 881 KJ11A .CMD 24-APR-81 1 037217
+ 882 DR11L .CMD 24-APR-81 1 037220
+ 883 KB11A .CMD 24-APR-81 1 037221
+ 884 LA180 .CMD 24-APR-81 1 037222
+ 885 KT11C .CMD 24-APR-81 1 037223
+ 886 DM11BB.CMD 24-APR-81 1 037224
+ 887 LA36 .CMD 24-APR-81 1 037225
+ 888 TCDP .CMD 24-APR-81 1 037226
+ 889 LP05 .CMD 24-APR-81 1 037227
+ 890 RKDP .CMD 24-APR-81 1 037230
+ 891 KW11L .CMD 24-APR-81 1 037231
+ 892 RMDP .CMD 24-APR-81 1 037232
+ 893 M9301 .CMD 24-APR-81 1 037233
+ 894 KD11E .CMD 24-APR-81 1 037234
+ 895 BM792 .CMD 24-APR-81 1 037235
+ 896 KT11D .CMD 24-APR-81 1 037236
+ 897 TADP .CMD 24-APR-81 1 037237
+ 898 DH11 .CMD 24-APR-81 1 037240
+ 899 RBDP .CMD 24-APR-81 1 037241
+ 900 KE11E .CMD 24-APR-81 1 037242
+ 901 RLDP .CMD 24-APR-81 1 037243
+ 902 FP11C .CMD 24-APR-81 1 037244
+ 903 RSDP .CMD 24-APR-81 1 037245
+ 904 MJ11 .CMD 24-APR-81 1 037246
+ 905 KD11A .CMD 24-APR-81 1 037247
+ 906 RXDP01.CMD 24-APR-81 1 037250
+ 907 KB11B .CMD 24-APR-81 1 037251
+ 908 CR11 .CMD 24-APR-81 1 037252
+ 909 TU10 .CMD 24-APR-81 1 037253
+ 910 RPDP .CMD 24-APR-81 1 037254
+ 911 RK05 .CMD 24-APR-81 1 037255
+ 912 SXDP1B.CMD 18-MAR-82 2 037256
+ 913 DM11 .CMD 24-APR-81 1 037260
+ 914 KE11F .CMD 24-APR-81 1 037261
+ 915 TALDRB.CMD 24-APR-81 1 037262
+ 916 RH70 .CMD 24-APR-81 1 037263
+ 917 SXDP07.CMD 25-MAR-82 1 037264
+ 918 SYDP00.CMD 9-AUG-83 1 037265
+ 919 XXDP .CMD 9-AUG-83 2 037266
+ 920 DYDP .BAK 24-APR-81 1 037270
+ 921 SKDP02.BAK 22-SEP-82 2 037271
+ 922 SXDP01.BAK 9-AUG-83 2 037273
+ 923 XXDP .BAK 9-AUG-83 2 037275
+ 924 KD11D .CMD 24-APR-81 1 037277
+ 925 KD11B .CMD 24-APR-81 1 037300
+ 926 RX01 .CMD 24-APR-81 1 037301
+ 927 SYDP24.BAK 9-AUG-83 1 037302
+ 928 DXDP01.BAK 25-MAR-82 1 037303
+ 929 SXDP16.CMD 24-APR-81 1 037304
+ 930 SXDP31.CMD 25-MAR-82 2 037305
+ 931 SXDP30.CMD 25-MAR-82 1 037307
+ 932 SXDP15.CMD 24-APR-81 1 037310
+ 933 SXDP17.CMD 24-APR-81 1 037311
+ 934 SXDP04.CMD 24-APR-81 1 037312
+ 935 SYDP24.CMD 10-AUG-83 1 037313
+ 936 SXDP05.CMD 24-APR-81 1 037314
+ 937 SXDP11.CMD 24-APR-81 2 037315
+ 938 DRDP .BAK 24-APR-81 1 037317
+ 939 DMDP .BAK 24-APR-81 1 037320
+ 940 DLDP .BAK 26-OCT-82 1 037321
+ 941 DXDP .BAK 25-MAR-82 1 037322
+ 942 DKDPU .CMD 24-APR-81 1 037323
+ 943 DYDPU .CMD 24-APR-81 1 037324
+ 944 SXDP02.CMD 18-MAR-82 1 037325
+ 945 STDP01.CMD 24-APR-81 1 037326
+ 946 SXDP2A.CMD 18-MAR-82 1 037327
+ 947 SXDP25.BAK 25-MAR-82 1 037330
+ 948 DXDPU .CMD 25-MAR-82 1 037331
+ 949 SXDP26.BAK 25-MAR-82 1 037332
+ 950 SXDP27.BAK 25-MAR-82 1 037333
+
diff --git a/modules/pdp11/lib/bus.js b/modules/pdp11/lib/bus.js
index dce5ea0ad..d291ecaae 100644
--- a/modules/pdp11/lib/bus.js
+++ b/modules/pdp11/lib/bus.js
@@ -1398,7 +1398,7 @@ BusPDP11.prototype.fault = function(addr, err, access)
this.dbg.printMessage("memory fault (" + access + ") on address " + this.dbg.toStrBase(addr), true, true);
}
if (err) this.cpu.regErr |= err;
- this.cpu.trap(PDP11.TRAP.BUS_ERROR, addr);
+ this.cpu.trap(PDP11.TRAP.BUS_ERROR, 0, addr);
}
};
diff --git a/modules/pdp11/lib/cpu.js b/modules/pdp11/lib/cpu.js
index 0498a56b4..a1019234a 100644
--- a/modules/pdp11/lib/cpu.js
+++ b/modules/pdp11/lib/cpu.js
@@ -959,9 +959,12 @@ CPUPDP11.prototype.setTimer = function(iTimer, ms, fReset)
* We must now confront the following problem: if the CPU is currently executing a burst of cycles,
* the number of cycles it has executed in that burst so far must NOT be charged against the cycle
* timeout we're about to set. The simplest way to resolve that is to immediately call endBurst()
- * and bias the above cycle timeout by the number of cycles that the burst executed.
+ * and bias the cycle timeout by the number of cycles that the burst executed.
*/
- this.aTimers[iTimer][0] = nCycles + this.endBurst();
+ if (this.flags.running) {
+ nCycles += this.endBurst();
+ }
+ this.aTimers[iTimer][0] = nCycles;
}
}
return nCycles;
@@ -992,6 +995,7 @@ CPUPDP11.prototype.getBurstCycles = function(nCycles)
{
for (var i = this.aTimers.length - 1; i >= 0; i--) {
var timer = this.aTimers[i];
+ this.assert(!isNaN(timer[0]));
if (timer[0] < 0) continue;
if (nCycles > timer[0]) {
nCycles = timer[0];
@@ -1014,6 +1018,7 @@ CPUPDP11.prototype.updateTimers = function(nCycles)
{
for (var i = this.aTimers.length - 1; i >= 0; i--) {
var timer = this.aTimers[i];
+ this.assert(!isNaN(timer[0]));
if (timer[0] < 0) continue;
timer[0] -= nCycles;
if (timer[0] <= 0) {
diff --git a/modules/pdp11/lib/cpuops.js b/modules/pdp11/lib/cpuops.js
index 94aac8e89..d2554e062 100644
--- a/modules/pdp11/lib/cpuops.js
+++ b/modules/pdp11/lib/cpuops.js
@@ -140,7 +140,7 @@ PDP11.fnASR = function(src, dst)
*/
PDP11.fnASRB = function(src, dst)
{
- var result = (dst & 0x800) | (dst >> 1) | (dst << 8);
+ var result = (dst & 0x80) | (dst >> 1) | (dst << 8);
this.updateShiftFlags(result << 8);
return result & 0xff;
};
@@ -827,7 +827,7 @@ PDP11.opBPL = function(opCode)
*/
PDP11.opBPT = function(opCode)
{
- this.trap(PDP11.TRAP.BPT, PDP11.REASON.BPT);
+ this.trap(PDP11.TRAP.BPT, 0, PDP11.REASON.BPT);
this.nStepCycles -= (4 + 1);
};
@@ -1101,7 +1101,7 @@ PDP11.opDIV = function(opCode)
*/
PDP11.opEMT = function(opCode)
{
- this.trap(PDP11.TRAP.EMT, PDP11.REASON.EMT);
+ this.trap(PDP11.TRAP.EMT, 0, PDP11.REASON.EMT);
this.nStepCycles -= (22 + 3);
};
@@ -1115,8 +1115,11 @@ PDP11.opHALT = function(opCode)
{
if (this.regPSW & PDP11.PSW.CMODE) {
this.regErr |= PDP11.CPUERR.BADHALT;
- this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.HALT);
+ this.trap(PDP11.TRAP.BUS_ERROR, 0, PDP11.REASON.HALT);
} else {
+ if (this.panel) {
+ this.panel.setData(this.regsGen[0], true);
+ }
if (!this.dbg) {
/*
* This will leave the PC exactly where it's supposed to be: at the address of the HALT + 2.
@@ -1171,7 +1174,7 @@ PDP11.opINCB = function(opCode)
*/
PDP11.opIOT = function(opCode)
{
- this.trap(PDP11.TRAP.IOT, PDP11.REASON.IOT);
+ this.trap(PDP11.TRAP.IOT, 0, PDP11.REASON.IOT);
this.nStepCycles -= (22 + 3);
};
@@ -1291,7 +1294,7 @@ PDP11.opMFPT = function(opCode)
/*
* TODO: Review
*/
- this.trap(PDP11.TRAP.RESERVED, PDP11.REASON.RESERVED);
+ this.trap(PDP11.TRAP.RESERVED, 0, PDP11.REASON.RESERVED);
};
PDP11.MOV_CYCLES = [
@@ -1713,7 +1716,7 @@ PDP11.opSXT = function(opCode)
*/
PDP11.opTRAP = function(opCode)
{
- this.trap(PDP11.TRAP.TRAP, PDP11.REASON.TRAP);
+ this.trap(PDP11.TRAP.TRAP, 0, PDP11.REASON.TRAP);
this.nStepCycles -= (4 + 1);
};
@@ -1823,7 +1826,7 @@ PDP11.opUndefined = function(opCode)
if (DEBUGGER && this.dbg) {
if (this.dbg.undefinedInstruction(opCode)) return;
}
- this.trap(PDP11.TRAP.RESERVED, PDP11.REASON.RESERVED);
+ this.trap(PDP11.TRAP.RESERVED, 0, PDP11.REASON.RESERVED);
};
/**
diff --git a/modules/pdp11/lib/cpustate.js b/modules/pdp11/lib/cpustate.js
index e5a431362..6ee2ded6f 100644
--- a/modules/pdp11/lib/cpustate.js
+++ b/modules/pdp11/lib/cpustate.js
@@ -825,7 +825,7 @@ CPUStatePDP11.prototype.dispatchInterrupt = function(vector, priority)
this.advancePC(2);
this.opFlags &= ~PDP11.OPFLAG.WAIT;
}
- this.trap(vector, PDP11.REASON.INTERRUPT);
+ this.trap(vector, 0, PDP11.REASON.INTERRUPT);
return true;
}
return false;
@@ -1083,6 +1083,13 @@ CPUStatePDP11.prototype.updateMulFlags = function(result)
/*
* NOTE: Technically, the MUL instruction doesn't need to worry about NO_FLAGS, because that instruction
* doesn't write to the bus, and therefore can't modify the PSW directly. But it doesn't hurt to be consistent.
+ *
+ * TODO: Conduct a review of all opcode handlers, because one possible alternative to all this NO_FLAGS nonsense
+ * would be to pass the appropriate flag update function to the writeDstByte()/writeDstWord() functions, and
+ * have them update the flags BEFORE the write occurs, thus allowing any subsequent write to the PSW to be honored.
+ *
+ * That already happens automatically with the updateDstByte()/updateDstWord() functions, since generally the
+ * specified modify function also updates the flags BEFORE the write occurs.
*/
if (!(this.opFlags & PDP11.OPFLAG.NO_FLAGS)) {
this.flagN = result >> 16;
@@ -1139,7 +1146,7 @@ CPUStatePDP11.prototype.panic = function(reason)
};
/**
- * trap(vector, reason)
+ * trap(vector, flag, reason)
*
* trap() handles all the trap/abort functions. It reads the trap vector from kernel
* D space, changes mode to reflect the new PSW and PC, and then pushes the old PSW and
@@ -1147,9 +1154,10 @@ CPUStatePDP11.prototype.panic = function(reason)
*
* @this {CPUStatePDP11}
* @param {number} vector
+ * @param {number} flag
* @param {number} [reason] (for diagnostic purposes only)
*/
-CPUStatePDP11.prototype.trap = function(vector, reason)
+CPUStatePDP11.prototype.trap = function(vector, flag, reason)
{
if (DEBUG && this.dbg) {
if (this.messageEnabled(MessagesPDP11.TRAP)) {
@@ -1194,8 +1202,15 @@ CPUStatePDP11.prototype.trap = function(vector, reason)
this.pushWord(this.regsGen[7]);
this.setPC(newPC);
- this.opFlags &= ~PDP11.OPFLAG.TRAP_MASK; // lose interest in traps after an abort
- this.trapPSW = -1; // reset flag that we have a trap within a trap
+ /*
+ * Since DEC's "TRAP TEST" triggers a RESERVED (instruction) trap with the stack deliberately
+ * set too low, and expects the stack overflow trap to be "sprung" immediately afterward, we only
+ * want to "lose interest" in TRAP flags that were set on entry.
+ *
+ * this.opFlags &= ~PDP11.OPFLAG.TRAP_MASK; // lose interest in traps after an abort
+ */
+ this.opFlags &= ~flag;
+ this.trapPSW = -1; // reset flag that we have a trap within a trap
/*
* These next properties are purely an aid for the Debugger; see getTrapStatus()
@@ -1435,7 +1450,7 @@ CPUStatePDP11.prototype.mapVirtualToPhysical = function(virtualAddress, accessFl
}
}
if (fTrap) { // don't trap until the end, because it throws an exception
- this.trap(PDP11.TRAP.MMU, PDP11.REASON.MAPERROR);
+ this.trap(PDP11.TRAP.MMU, 0, PDP11.REASON.MAPERROR);
}
}
return physicalAddress;
@@ -1494,18 +1509,35 @@ CPUStatePDP11.prototype.pushWord = function(data)
if (!(this.regMMR0 & 0xe000)) {
this.regMMR1 = (this.regMMR1 << 8) | 0xf6;
}
+ this.checkStackLimit(0, virtualAddress);
+ this.writeWord(virtualAddress, data);
+};
- if ((!this.mmuMode) && virtualAddress <= this.regSL && virtualAddress > 4) {
- if (virtualAddress <= this.regSL - 32) {
- this.regErr |= PDP11.CPUERR.RED;
- this.regsGen[6] = 4;
- this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.PUSHERROR);
- } else {
- this.regErr |= PDP11.CPUERR.YELLOW;
- this.opFlags |= 4;
+/**
+ * checkStackLimit(mode, addr)
+ *
+ * @this {CPUStatePDP11}
+ * @param {number} mode (ie, the addressing mode; 0 if push)
+ * @param {number} addr
+ */
+CPUStatePDP11.prototype.checkStackLimit = function(mode, addr)
+{
+ if (!this.mmuMode && !(this.opFlags & PDP11.OPFLAG.TRAP_SP)) {
+ if (addr <= this.regSL && (mode || addr > 4) || mode && addr >= 0xfffe) {
+ if (this.model >= PDP11.MODEL_1145 && (addr <= this.regSL - 32 || mode == 1 && addr >= 0xfffe)) {
+ this.regErr |= PDP11.CPUERR.RED;
+ this.regsGen[6] = 4;
+ this.trap(PDP11.TRAP.BUS_ERROR, 0, PDP11.REASON.STACKMODE1);
+ } else {
+ /*
+ * On older machines (eg, the PDP-11/20), the instruction is always allowed to complete,
+ * so the trap must always be issued in this fashion.
+ */
+ this.regErr |= PDP11.CPUERR.YELLOW;
+ this.opFlags |= PDP11.OPFLAG.TRAP_SP;
+ }
}
}
- this.writeWord(virtualAddress, data);
};
/**
@@ -1532,6 +1564,15 @@ CPUStatePDP11.prototype.pushWord = function(data)
* incremented and decremented so that the OS can reset and restart an instruction
* if a page fault occurs.
*
+ * Stack Overflow Traps
+ * --------------------
+ * On the PDP-11/20, stack overflow traps occur when an address below 400 is referenced
+ * by SP in either mode 4 (auto-decrement) or 5 (auto-decrement deferred). The instruction
+ * is allowed to complete before the trap is issued.
+ *
+ * On the PDP-11/70, the stack limit register (177774) allows a variable boundary for the
+ * kernel stack.
+ *
* @this {CPUStatePDP11}
* @param {number} mode
* @param {number} reg
@@ -1544,8 +1585,8 @@ CPUStatePDP11.prototype.getAddrByMode = function(mode, reg, accessFlags)
var addrDSpace = (accessFlags & PDP11.ACCESS.VIRT)? 0 : this.addrDSpace;
/*
- * Modes that need to auto-increment or auto-decrement will break, in order to perform the
- * update; others will return an address immediately.
+ * Modes that need to auto-increment or auto-decrement will break, in order to perform
+ * the update; others will return an address immediately.
*/
switch (mode) {
/*
@@ -1556,26 +1597,18 @@ CPUStatePDP11.prototype.getAddrByMode = function(mode, reg, accessFlags)
* "cause an 'illegal' instruction" condition", which presumably means a BUS_ERROR trap.
*/
case 0:
- this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.NOREGADDR);
+ this.trap(PDP11.TRAP.BUS_ERROR, 0, PDP11.REASON.NOREGADDR);
return 0;
/*
* Mode 1: (R)
*/
case 1:
- if (reg === 6 && (!this.mmuMode) && (accessFlags & PDP11.ACCESS.WRITE) &&
- (this.regsGen[6] <= this.regSL || this.regsGen[6] >= 0xfffe)) {
- if (this.regsGen[6] <= this.regSL - 32 || this.regsGen[6] >= 0xfffe) {
- this.regErr |= PDP11.CPUERR.RED;
- this.regsGen[6] = 4;
- this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.STACKMODE1);
- } else {
- this.regErr |= PDP11.CPUERR.YELLOW;
- this.opFlags |= PDP11.OPFLAG.TRAP_SP;
- }
+ if (reg == 6 && (accessFlags & PDP11.ACCESS.WRITE)) {
+ this.checkStackLimit(mode, this.regsGen[6]);
}
this.nStepCycles -= (2 + 1);
- return (reg === 7? this.regsGen[reg] : (this.regsGen[reg] | addrDSpace));
+ return (reg == 7? this.regsGen[reg] : (this.regsGen[reg] | addrDSpace));
/*
* Mode 2: (R)+
@@ -1583,7 +1616,7 @@ CPUStatePDP11.prototype.getAddrByMode = function(mode, reg, accessFlags)
case 2:
stepSize = 2;
virtualAddress = this.regsGen[reg];
- if (reg !== 7) {
+ if (reg != 7) {
virtualAddress |= addrDSpace;
if (reg < 6 && (accessFlags & PDP11.ACCESS.BYTE)) {
stepSize = 1;
@@ -1598,7 +1631,7 @@ CPUStatePDP11.prototype.getAddrByMode = function(mode, reg, accessFlags)
case 3:
stepSize = 2;
virtualAddress = this.regsGen[reg];
- if (reg !== 7) virtualAddress |= addrDSpace;
+ if (reg != 7) virtualAddress |= addrDSpace;
virtualAddress = this.readWord(virtualAddress);
virtualAddress |= addrDSpace;
this.nStepCycles -= (5 + 2);
@@ -1611,7 +1644,7 @@ CPUStatePDP11.prototype.getAddrByMode = function(mode, reg, accessFlags)
stepSize = -2;
if (reg < 6 && (accessFlags & PDP11.ACCESS.BYTE)) stepSize = -1;
virtualAddress = (this.regsGen[reg] + stepSize) & 0xffff;
- if (reg !== 7) virtualAddress |= addrDSpace;
+ if (reg != 7) virtualAddress |= addrDSpace;
this.nStepCycles -= (3 + 1);
break;
@@ -1621,7 +1654,7 @@ CPUStatePDP11.prototype.getAddrByMode = function(mode, reg, accessFlags)
case 5:
stepSize = -2;
virtualAddress = (this.regsGen[reg] - 2) & 0xffff;
- if (reg !== 7) virtualAddress |= addrDSpace;
+ if (reg != 7) virtualAddress |= addrDSpace;
virtualAddress = this.readWord(virtualAddress) | addrDSpace;
this.nStepCycles -= (6 + 2);
break;
@@ -1652,15 +1685,12 @@ CPUStatePDP11.prototype.getAddrByMode = function(mode, reg, accessFlags)
this.regMMR1 = (this.regMMR1 << 8) | ((stepSize << 3) & 0xf8) | reg;
}
- if (reg == 6 && (!this.mmuMode) && (accessFlags & PDP11.ACCESS.WRITE) && stepSize <= 0 && (this.regsGen[6] <= this.regSL || this.regsGen[6] >= 0xfffe)) {
- if (this.regsGen[6] <= this.regSL - 32) {
- this.regErr |= PDP11.CPUERR.RED;
- this.regsGen[6] = 4;
- this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.STACKERROR);
- } else {
- this.regErr |= PDP11.CPUERR.YELLOW;
- this.opFlags |= PDP11.OPFLAG.TRAP_SP;
- }
+ /*
+ * NOTE: We had to eliminate the test for "(accessFlags & PDP11.ACCESS.WRITE)", because DEC's
+ * "TRAP TEST" expects "TST -(SP)" to trap when SP is 150.
+ */
+ if (reg == 6 && stepSize < 0) {
+ this.checkStackLimit(mode, this.regsGen[6]);
}
return virtualAddress;
};
@@ -2016,7 +2046,7 @@ CPUStatePDP11.prototype.updateDstByte = function(opCode, src, fnOp)
var reg = this.dstReg = opCode & PDP11.OPREG.MASK;
var mode = this.dstMode = (opCode & PDP11.OPMODE.MASK) >> PDP11.OPMODE.SHIFT;
if (!mode) {
- this.regsGen[reg] = (this.regsGen[reg] & 0xff00) | fnOp.call(this, src, this.regsGen[reg]);
+ this.regsGen[reg] = (this.regsGen[reg] & 0xff00) | fnOp.call(this, src, this.regsGen[reg] & 0xff);
} else {
var addr = this.dstAddr = this.getAddr(mode, reg, PDP11.ACCESS.UPDATE_BYTE);
this.writeByteToPhysical(addr, fnOp.call(this, src, this.readByteFromPhysical(addr)));
@@ -2191,23 +2221,23 @@ CPUStatePDP11.prototype.stepCPU = function(nMinCycles)
/*
* Check for any pending traps.
*
- * I've moved this TRAP_MASK check BEFORE we decode the next instruction instead
- * of immediately AFTER, because the last instruction may have thrown an exception,
- * kicking us out before we reach the bottom of this loop.
+ * I've moved this TRAP_MASK check BEFORE we decode the next instruction instead of immediately AFTER,
+ * just in case the last instruction threw an exception that kicked us out before we reached the bottom
+ * of the stepCPU() loop.
+ *
+ * Note: I've swapped the order (priority) of the TF and SP traps, based on the PDP-11/20 Handbook.
+ * TODO: Determine if 1) the 11/20 Handbook was wrong, or 2) the 11/70 really has different priorities.
*/
if (this.opFlags & PDP11.OPFLAG.TRAP_MASK) {
if (this.opFlags & PDP11.OPFLAG.TRAP_MMU) {
- this.trap(PDP11.TRAP.MMU, PDP11.REASON.TRAPMMU); // MMU trap has priority
- } else {
- if (this.opFlags & PDP11.OPFLAG.TRAP_SP) {
- this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.TRAPSP); // then SP trap
- } else {
- if (this.opFlags & PDP11.OPFLAG.TRAP_TF) {
- this.trap(PDP11.TRAP.BPT, PDP11.REASON.TRAPTF); // and finally a TF trap
- }
- }
+ this.trap(PDP11.TRAP.MMU, PDP11.OPFLAG.TRAP_MMU, PDP11.REASON.TRAPMMU);
+ }
+ else if (this.opFlags & PDP11.OPFLAG.TRAP_TF) {
+ this.trap(PDP11.TRAP.BPT, PDP11.OPFLAG.TRAP_TF, PDP11.REASON.TRAPTF);
+ }
+ else if (this.opFlags & PDP11.OPFLAG.TRAP_SP) {
+ this.trap(PDP11.TRAP.BUS_ERROR, PDP11.OPFLAG.TRAP_SP, PDP11.REASON.TRAPSP);
}
- this.opFlags &= ~PDP11.OPFLAG.TRAP_MASK;
}
/*
* If we're in the INTQ or WAIT state, see if any interrupts can kick us out of that state.
diff --git a/modules/pdp11/lib/debugger.js b/modules/pdp11/lib/debugger.js
index f5be91339..043830e4b 100644
--- a/modules/pdp11/lib/debugger.js
+++ b/modules/pdp11/lib/debugger.js
@@ -1400,7 +1400,7 @@ if (DEBUGGER) {
var trapStatus = this.cpu.getTrapStatus();
if (trapStatus) {
var trapReason = trapStatus >> 8;
- var sReason = trapReason? (" (" + this.toStrBase(trapReason) + ")") : "";
+ var sReason = trapReason? (" (" + trapReason + ")") : "";
this.println("trapped to " + this.toStrBase(trapStatus & 0xff, 1) + sReason);
}
@@ -1724,8 +1724,11 @@ if (DEBUGGER) {
*/
DebuggerPDP11.prototype.undefinedInstruction = function(opCode)
{
- this.printMessage("undefined opcode " + this.toStrBase(opCode), true, true);
- return this.stopInstruction(); // allow the caller to step over it if they really want a trap generated
+ if (this.messageEnabled(MessagesPDP11.CPU)) {
+ this.printMessage("undefined opcode " + this.toStrBase(opCode), true, true);
+ return this.stopInstruction(); // allow the caller to step over it if they really want a trap generated
+ }
+ return false;
};
/**
@@ -2946,8 +2949,13 @@ if (DEBUGGER) {
if (!dbgAddr) return;
var len = 0; // 0 is not a default; it triggers the appropriate default below
+ var fRange = false;
+ var fJSON = (sCmd == "ds");
+
if (sLen) {
+ fRange = true;
if (sLen.charAt(0) == 'l') {
+ fRange = false;
sLen = sLen.substr(1) || sBytes;
}
len = this.parseValue(sLen) >>> 0; // negative lengths not allowed
@@ -2959,8 +2967,9 @@ if (DEBUGGER) {
* since this is primarily a word-oriented machine.
*/
var size = (sCmd == "dd"? 4 : (sCmd == "db"? 1 : 2));
- var nBytes = (size * len) || 128;
- var nLines = ((nBytes + 15) >> 4) || 1;
+ var nBytes = (fRange? (len - dbgAddr.addr) : (size * len)) || 128;
+ var nBytesPerLine = fJSON? 16 : this.nBase;
+ var nLines = (((nBytes + nBytesPerLine - 1) / nBytesPerLine)|0) || 1;
var sDump = "";
while (nLines-- && nBytes > 0) {
@@ -2977,20 +2986,29 @@ if (DEBUGGER) {
*/
var i, n;
var data = 0, shift = 0;
- for (i = this.nBase; i > 0 && nBytes > 0; i -= n, nBytes -= n) {
+ for (i = nBytesPerLine; i > 0 && nBytes > 0; i -= n, nBytes -= n) {
n = 1;
var v = size == 1? this.getByte(dbgAddr, n) : this.getWord(dbgAddr, (n = 2));
data |= (v << (shift << 3));
shift += n;
if (shift == size) {
- sData += this.toStrBase(data, size);
- sData += (size == 1? (i == 9? '-' : ' ') : " ");
+ if (fJSON) {
+ if (sData) sData += ",";
+ sData += "0x"+ str.toHex(data, size * 2);
+ } else {
+ sData += this.toStrBase(data, size);
+ sData += (size == 1? (i == 9? '-' : ' ') : " ");
+ }
data = shift = 0;
}
sChars += (v >= 32 && v < 128? String.fromCharCode(v) : '.');
}
- if (sDump) sDump += '\n';
- sDump += sAddr + " " + sData + ((i == 0)? (' ' + sChars) : "");
+ if (sDump) sDump += "\n";
+ if (fJSON) {
+ sDump += sData + ",";
+ } else {
+ sDump += sAddr + " " + sData + ((i == 0)? (' ' + sChars) : "");
+ }
}
if (sDump) this.println(sDump);
diff --git a/modules/pdp11/lib/defines.js b/modules/pdp11/lib/defines.js
index 1608b09e3..fc888215b 100644
--- a/modules/pdp11/lib/defines.js
+++ b/modules/pdp11/lib/defines.js
@@ -203,7 +203,7 @@ var PDP11 = {
TRAP: 0x08, // set if last operation was a trap (see trapLast for the vector, and trapReason for the reason)
TRAP_TF: 0x10, // aka PDP11.PSW.TF
TRAP_MMU: 0x20,
- TRAP_SP: 0x40,
+ TRAP_SP: 0x40, // set for a deferred BUS_ERROR trap (due to a "yellow" stack overflow condition)
TRAP_MASK: 0x70,
NO_FLAGS: 0x80, // set whenever the PSW is written directly, requiring all updateXXXFlags() functions to leave flags unchanged
PRESERVE: 0x07 // OPFLAG bits to preserve prior to the next instruction
@@ -264,24 +264,24 @@ var PDP11 = {
* PDP-11 trap reasons (for diagnostic purposes only)
*/
REASON: {
- BPT: 1,
- EMT: 2,
- HALT: 3,
- IOT: 4,
- TRAP: 5,
- RESERVED: 6,
- ODDMEMADDR: 10,
- NOMEMORY: 12,
- ODDMMUADDR: 14,
- MAPERROR: 16,
- PUSHERROR: 18,
- NOREGADDR: 20,
- STACKMODE1: 22,
- STACKERROR: 24,
- INTERRUPT: 26,
- TRAPMMU: 28,
- TRAPSP: 30,
- TRAPTF: 32
+ BPT: -1,
+ EMT: -2,
+ HALT: -3,
+ IOT: -4,
+ TRAP: -5,
+ RESERVED: -6,
+ TRAPMMU: -7,
+ TRAPSP: -8,
+ TRAPTF: -9,
+ ODDMEMADDR: -10,
+ NOMEMORY: -11,
+ ODDMMUADDR: -12,
+ MAPERROR: -13,
+ PUSHERROR: -14,
+ NOREGADDR: -15,
+ STACKMODE1: -16,
+ STACKERROR: -17,
+ INTERRUPT: -18
},
/*
* Internal memory access flags
diff --git a/modules/pdp11/lib/device.js b/modules/pdp11/lib/device.js
index 1fe7c6fb5..b737eb376 100644
--- a/modules/pdp11/lib/device.js
+++ b/modules/pdp11/lib/device.js
@@ -1048,7 +1048,16 @@ DevicePDP11.prototype.readPSW = function(addr)
*/
DevicePDP11.prototype.writePSW = function(data, addr)
{
- var maskDisallowed = PDP11.PSW.UNUSED | PDP11.PSW.TF;
+ /*
+ * pdp11.js disallowed PSW.TF in addition to PSW.UNUSED, but DEC's "TRAP TEST" expects the
+ * following instruction to trap:
+ *
+ * 004174: 052767 000020 173574 BIS #20,177776
+ *
+ * Since that test was written for the PDP-11/20, it's possible that newer machines
+ * have a different behavior, but for now, we assume that all machines allow setting PSW.TF.
+ */
+ var maskDisallowed = PDP11.PSW.UNUSED;
this.cpu.setPSW((data & ~maskDisallowed) | (this.cpu.getPSW() & maskDisallowed));
this.cpu.opFlags |= PDP11.OPFLAG.NO_FLAGS;
};
diff --git a/modules/pdp11/lib/messages.js b/modules/pdp11/lib/messages.js
index 3982a6985..ba510708f 100644
--- a/modules/pdp11/lib/messages.js
+++ b/modules/pdp11/lib/messages.js
@@ -42,7 +42,8 @@ var MessagesPDP11 = {
DEVICE: 0x00000200,
KEYBOARD: 0x00010000,
KEYS: 0x00020000,
- DISK: 0x00200000,
+ PAPER: 0x00100000,
+ DISK: 0x00400000,
SERIAL: 0x00800000,
SPEAKER: 0x02000000,
COMPUTER: 0x04000000,
@@ -76,6 +77,7 @@ MessagesPDP11.CATEGORIES = {
"device": MessagesPDP11.DEVICE,
"keyboard": MessagesPDP11.KEYBOARD, // "kbd" is also allowed as shorthand for "keyboard"; see doMessages()
"key": MessagesPDP11.KEYS, // using "key" instead of "keys", since the latter is a method on JavasScript objects
+ "paper": MessagesPDP11.PAPER,
"disk": MessagesPDP11.DISK,
"serial": MessagesPDP11.SERIAL,
"speaker": MessagesPDP11.SPEAKER,
diff --git a/modules/pdp11/lib/ram.js b/modules/pdp11/lib/ram.js
index 1a52af5a9..2c79b4ff9 100644
--- a/modules/pdp11/lib/ram.js
+++ b/modules/pdp11/lib/ram.js
@@ -33,13 +33,14 @@
"use strict";
if (NODE) {
- var str = require("../../shared/lib/strlib");
- var web = require("../../shared/lib/weblib");
- var DumpAPI = require("../../shared/lib/dumpapi");
- var Component = require("../../shared/lib/component");
- var State = require("../../shared/lib/state");
- var PDP11 = require("./defines");
- var MemoryPDP11 = require("./memory");
+ var str = require("../../shared/lib/strlib");
+ var web = require("../../shared/lib/weblib");
+ var DumpAPI = require("../../shared/lib/dumpapi");
+ var Component = require("../../shared/lib/component");
+ var State = require("../../shared/lib/state");
+ var PDP11 = require("./defines");
+ var MemoryPDP11 = require("./memory");
+ var MessagesPDP11 = require("./messages");
}
/**
@@ -254,13 +255,13 @@ RAMPDP11.prototype.reset = function()
/**
* loadImage(aBytes, addrLoad, addrExec, addrInit, fReset)
*
- * If the array contains an image in the "Absolute Format," load it as specified by
- * the format; otherwise, load it as-is using the address(es) supplied.
+ * If the array contains a PAPER tape image in the "Absolute Format," load it as specified
+ * by the format; otherwise, load it as-is using the address(es) supplied.
*
* @this {RAMPDP11}
* @param {Array|Uint8Array} aBytes
* @param {number|null} [addrLoad]
- * @param {number|null} [addrExec]
+ * @param {number|null} [addrExec] (this CAN override any starting address INSIDE the image)
* @param {number|null} [addrInit]
* @param {boolean} [fReset]
* @return {boolean} (true if loaded, false if not)
@@ -337,9 +338,11 @@ RAMPDP11.prototype.loadImage = function(aBytes, addrLoad, addrExec, addrInit, fR
if (addr & 0x1) {
this.cpu.stopCPU();
} else {
- this.cpu.setReset(addr, fReset);
+ if (addrExec == null) addrExec = addr;
}
+ if (addrExec != null) this.printMessage("starting address: " + str.toHexWord(addrExec), MessagesPDP11.PAPER);
} else {
+ this.printMessage("loading " + str.toHexWord(cbData) + " bytes at " + str.toHexWord(addr) + "-" + str.toHexWord(addr + cbData - 1), MessagesPDP11.PAPER);
while (cbData--) {
this.cpu.setByteDirect(addr++, aBytes[offData++] & 0xff);
}
@@ -353,10 +356,20 @@ RAMPDP11.prototype.loadImage = function(aBytes, addrLoad, addrExec, addrInit, fR
for (var i = 0; i < aBytes.length; i++) {
this.cpu.setByteDirect(addrLoad + i, aBytes[i]);
}
- if (addrExec != null) this.cpu.setReset(addrExec, fReset);
fLoaded = true;
}
}
+ if (fLoaded) {
+ /*
+ * Set the start address to whatever the caller provided, or failing that, whatever start
+ * address was specified inside the image.
+ *
+ * For example, the diagnostic "MAINDEC-11-D0AA-PB" doesn't include a start address inside the
+ * image, but we know that the directions for that diagnostic say to "Start and Restart at 200",
+ * so we have manually inserted an "exec":128 in the JSON containing the image.
+ */
+ if (addrExec != null) this.cpu.setReset(addrExec, fReset);
+ }
return fLoaded;
};
diff --git a/versions/pdpjs/1.30.3/pdp11-dbg.js b/versions/pdpjs/1.30.3/pdp11-dbg.js
index 1af4e9a33..c81eaba67 100644
--- a/versions/pdpjs/1.30.3/pdp11-dbg.js
+++ b/versions/pdpjs/1.30.3/pdp11-dbg.js
@@ -40,280 +40,282 @@ function wa(a,b){return(a+" ").slice(0,b)
function za(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
function Da(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var h=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(h.onreadystatechange=function(){4===h.readyState&&(f=h.responseText,200==h.status||!h.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=h.status||-1),d&&d(a,f,e))});if(b&&"object"==
typeof b){var l="",m;for(m in b)b.hasOwnProperty(m)&&(l&&(l+="&"),l+=m+"="+encodeURIComponent(b[m]));l=l.replace(/%20/g,"+");h.open("POST",a,!!c);h.setRequestHeader("Content-type","application/x-www-form-urlencoded");h.send(l)}else h.open("GET",a,!!c),"bytes"==b&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send();c||(f=h.responseText,200!=h.status&&(e=h.status||-1),d&&d(a,f,e),g=[f,e]);return g}
-function Ea(a,b){var c,d={da:null,ha:null,Ka:null,Ja:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.Ka=g.load;d.Ja=g.exec;if(e=g.bytes)d.da=e;else if(e=g.words)for(d.da=Array(2*e.length),f=c=0;c>8&255;else if(e=g.data)for(d.da=Array(4*e.length),f=c=0;c>8&255,d.da[f++]=e[c]>>16&255,d.da[f++]=e[c]>>24&255;else d.da=g;d.ha=g.symbols;d.da.length?1==d.da.length&&(q(d.da[0]),d=null):(q("Empty resource: "+a),d=null)}catch(h){q("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;cb.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.Ka=g.load;d.Ja=g.exec;if(e=g.bytes)d.da=e;else if(e=g.words)for(d.da=Array(2*e.length),f=c=0;c>8&255;else if(e=g.data)for(d.da=Array(4*e.length),f=c=0;c>8&255,d.da[f++]=e[c]>>16&255,d.da[f++]=e[c]>>24&255;else d.da=g;d.ga=g.symbols;d.da.length?1==d.da.length&&(q(d.da[0]),d=null):(q("Empty resource: "+a),d=null)}catch(h){q("Resource data error ("+a+"): "+h.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;cb?this.Ya=this.id:(this.Qa=this.id.substr(0,b),this.Ya=this.id.substr(b+1));this[a]=c;this.A={ready:!1,ab:!1,ac:!1,ia:!1,error:!1};this.Sb=null;this.A.error=!1;this.G={};this.i=null;this.oa=d||0;u.push(this)}var $a=void 0,ab={};
-if(window){$a||($a=window.location.search.substr(1));for(var bb,cb=/\+/g,db=/([^&=]+)=?([^&]*)/g;bb=db.exec($a);)ab[decodeURIComponent(bb[1].replace(cb," "))]=decodeURIComponent(bb[2].replace(cb," "))}function kb(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
-function z(a,b){b||(b=t);a.prototype=kb(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var lb=window.PCjs.Machines||(window.PCjs.Machines={}),u=window.PCjs.Components||(window.PCjs.Components=[])}else lb={},u=[];function mb(a,b,c){lb[a]&&b&&(lb[a][b]=c)}function nb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;bb?this.Ya=this.id:(this.Qa=this.id.substr(0,b),this.Ya=this.id.substr(b+1));this[a]=c;this.w={ready:!1,ab:!1,ac:!1,ha:!1,error:!1};this.Rb=null;this.w.error=!1;this.G={};this.i=null;this.ma=d||0;u.push(this)}var cb=void 0,db={};
+if(window){cb||(cb=window.location.search.substr(1));for(var eb,fb=/\+/g,gb=/([^&=]+)=?([^&]*)/g;eb=gb.exec(cb);)db[decodeURIComponent(eb[1].replace(fb," "))]=decodeURIComponent(eb[2].replace(fb," "))}function ob(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
+function z(a,b){b||(b=t);a.prototype=ob(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var pb=window.PCjs.Machines||(window.PCjs.Machines={}),u=window.PCjs.Components||(window.PCjs.Components=[])}else pb={},u=[];function qb(a,b,c){pb[a]&&b&&(pb[a][b]=c)}function rb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;ba;a++)this.g["S"+a]=[0,0,!1,!1,this.gd,a]}z(xb);var yb=7;function zb(a,b){return a.g[b]&&a.g[b][1]}k=xb.prototype;k.reset=function(){this.stop()};
-k.ta=function(a,b,c,d){if(this.C&&this.C.ta(a,b,c,d)||this.b&&this.b.ta(a,b,c,d)||this.i&&this.i.ta(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.G[b]=c,this.H++,!0;default:return"led"==a||"rled"==a?(this.G[b]=c,this.B[b]=d?1:0,this.H++,!0):"switch"==a?(void 0===this.g[b]&&(this.g[b]=[d?1:0,d?1:0]),this.G[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,
-b){return function(){Ab(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){Bb(a,b)}}(this,b),a.ontouchstart=function(a,b){return function(c){Ab(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){Bb(a,b)}}(this,b),!0):this.parent.ta.call(this,a,b,c,d)}};k.Fa=function(a,b,c,d){this.C=a;this.v=b;this.b=c;this.i=d;Cb(b,this,Db);Eb(b,this.reset.bind(this));Fb(this);Gb(this)};k.Ha=function(a,b){b||(Hb(),this.reset());return!0};k.Ga=function(){return!0};
-function Ib(a,b,c){if(a=a.G[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function Fb(a,b){for(var c in a.B)Ib(a,c,null!=b?b:a.B[c])}function Xb(a,b,c){if(a=a.G[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function Gb(a){for(var b in a.g)Xb(a,b,a.g[b][1])}function Yb(a,b,c,d){a.G[b]&&(void 0===c&&(ub(a,"Value for "+b+" is invalid"),a.b.ga()),c=8==(a.i&&a.i.ca||8)?qa(c,d):p(c,d),a.G[b].textContent!=c&&(a.G[b].textContent=c))}
-function Ab(a,b){var c=a.g[b];Xb(a,b,c[1]=1-c[1]);c[3]=!0;c[4]&&c[4].call(a,c[1],c[5]);"STEP"!=b&&(a.L="DEP"==b,a.M="EXAM"==b)}function Bb(a,b){var c=a.g[b];c[2]&&c[3]&&(Xb(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5]));c[3]=!1}k.ed=function(a){a||this.b.A.Z||(this.v.reset(),Zb(this.b),zb(this,"ENABLE")&&this.b.ib())};k.fd=function(){};k.ad=function(a){a||this.b.ga()};
-k.Zc=function(a){if(!a&&!this.b.A.Z)if(zb(this,"ENABLE"))this.b.ib();else{if((a=this.i)&&!rb(a,!0))qb(a,!0),a.jb(0),qb(a,!1);else try{var b=this.b.jb(1);0a.b.pb?8:16,c=65472<=a.f&&a.f<65472+b,b=c?1:2,c=c?15:a.v.Ma;zb(a,"STEP")||(b=-b);ec(a,a.f&~c|a.f+b&c)}
-function ec(a,b){a.f=b&a.v.Ma;b=a.f;for(var c=0;22>c;c++)gc(a,"A"+c,b&1<c;c++)gc(a,"D"+c,b&1<c;c++)a.g["S"+c][1]=b&1<>2;this.v=this.za-1;this.D=this.H/this.za|0;this.$a=[];this.ma=0;this.f=!1;this.cc=0;this.w=[];this.Lc=[lc,mc,nc,oc];a=new I(this);pc(a,this.i);this.X=Array(this.D);for(b=0;b>8:e[2](f)&255):f&1&&(e=d.$a[a&-2])&&(e[2]?c=e[2](f&-2)>>8:e[0]&&(c=e[0](f)));if(0<=c)return this.i&&F(this.i,e[5])&&E(this.i,e[4]+".readByte("+J(this.i,b)+"): "+J(this.i,c),!0,!d.ma),c;d.Ea(b,16,3);c=255;this.i&&F(this.i,e[5])&&E(this.i,"warning: unconverted read access to byte @"+J(this.i,b)+": "+J(this.i,c),!0,!d.ma);return c}
-function mc(a,b,c){var d=!1,e=this.controller,f=e.$a[a],g=c&65535;if(f)if(f[1])f[1](b,g),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(g&1)f[3](a&255|b<<8,g&-2);else f[3](a&-256|b,g);d=!0}}else if(g&1&&(f=e.$a[a&-2]))if(f[3])g&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,g),d=!0;else if(f[1])f[1](b,g);d?this.i&&F(this.i,f[5])&&E(this.i,f[4]+".writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0,!e.ma):(e.Ea(c,16,5),this.i&&F(this.i,f[5])&&E(this.i,"warning: unconverted write access to byte @"+J(this.i,c)+": "+J(this.i,
-b),!0,!e.ma))}function nc(a,b){var c=-1,d=this.controller;a=d.$a[a];var e=b&65535;a&&(a[2]?c=a[2](e):a[0]&&(c=a[0](e)|a[0](e+1)<<8));if(0<=c)return this.i&&F(this.i,a[5])&&E(this.i,a[4]+".readWord("+J(this.i,b)+"): "+J(this.i,c),!0,!d.ma),c;d.Ea(b,16,2);c=65535;this.i&&F(this.i,a[5])&&E(this.i,"warning: unconverted read access to word @"+J(this.i,b)+": "+J(this.i,c),!0,!d.ma);return c}
-function oc(a,b,c){var d=!1,e=this.controller;a=e.$a[a];var f=c&65535;a&&(a[3]?(a[3](b,f),d=!0):a[1]&&(a[1](b&255,f),a[1](b>>8,f+1),d=!0));d?this.i&&F(this.i,a[5])&&E(this.i,a[4]+".writeWord("+J(this.i,c)+","+J(this.i,b)+")",!0,!e.ma):(e.Ea(c,16,4),this.i&&F(this.i,a[5])&&E(this.i,"warning: unconverted write access to word @"+J(this.i,c)+": "+J(this.i,b),!0,!e.ma))}
-function rc(a,b){if(b!=a.C){var c;a.C&&(c=(1<>>a.ka;0g&&(n=g);if(!e&&l&&l.size){if(l.type==d){if(f+g<=l.F)return l.Nb+=l.F-f,l.F=f,!0;if(f>=l.F+l.Nb){n=l.size-(f-m);n>g&&(n=g);l.Nb=f-l.F+n;f=m+a.za;g-=n;h++;continue}}return wc(1,f,g)}f=new I(a,f,n,a.za,d,e);pc(f,a.i,l);a.X[h++]=f;f=m+a.za;g-=n}return 0>=g?(d==xc&&(a.cc+=c),a.status((c>>10)+"Kb "+yc[d]+" at "+qa(b)),!0):wc(2,b,c)}
-function tc(a,b,c){var d=[];for(b>>>=a.ka;0>>=a.ka;0>>this.ka].Wb(a&this.v,a)};k.Ub=function(a){3932160<=a&&(a=zc(this.b,a));this.f=!1;this.ma++;a=this.X[(a&this.Ma)>>>this.ka].hc(a&this.v,a);this.ma--;return a};
-k.pa=function(a){3932160<=a&&(a=zc(this.b,a));return this.X[(a&this.Ma)>>>this.ka].sa(a&this.v,a)};k.bb=function(a){3932160<=a&&(a=zc(this.b,a));var b=a&this.v,c=(a&this.Ma)>>>this.ka;this.f=!1;this.ma++;a=this.X[c].ic(b,a);this.ma--;return a};k.Xb=function(a,b){3932160<=a&&(a=zc(this.b,a));this.X[(a&this.Ma)>>>this.ka].Zb(a&this.v,b&255,a)};k.rb=function(a,b){3932160<=a&&(a=zc(this.b,a));this.f=!1;this.ma++;this.X[(a&this.Ma)>>>this.ka].$b(a&this.v,b&255,a);this.ma--};
-k.hb=function(a,b){3932160<=a&&(a=zc(this.b,a));this.X[(a&this.Ma)>>>this.ka].Ob(a&this.v,b&65535,a)};k.Cb=function(a,b){3932160<=a&&(a=zc(this.b,a));var c=a&this.v,d=(a&this.Ma)>>>this.ka;this.f=!1;this.ma++;this.X[d].nc(c,b&65535,a);this.ma--};
-function Ac(a){for(var b=0,c=[],d=0;da.b.pb)){var l=h[0]?h[0].bind(b):null,m=h[1]?h[1].bind(b):null,n=h[2]?h[2].bind(b):null,v=h[3]?h[3].bind(b):null,r=h[5]||1;65472<=g&&65487>=g&&(!l&&n&&(l=function(a){return function(b){return a(b)&255}.bind(b)}(n)),!m&&v&&(m=function(a){return function(b,c){return a(b,c)}.bind(b)}(v)));for(var w=h[4],y=0;y>5&3;b.Za=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ua!=c&&(b.Ua=c,Qc(b))}};k.td=function(){var a=this.b.eb;a&65280&&(a=(a<<8|a>>8)&65535);return a};k.ud=function(){return this.b.Lb};k.vd=function(){return this.b.qb};k.ne=function(a){var b=this.b;1170>b.pb&&(a&=-49);b.qb!=a&&(b.qb=a,b.Tb=a&16?4194303:262143,Qc(b))};k.Wd=function(a){a=a>>1&63;var b=this.b.Mb[a>>1];return a&1?b>>16:b&65535};
-k.Oe=function(a,b){b=b>>1&63;var c=b>>1;this.b.Mb[c]=b&1?this.b.Mb[c]&65535|(a&63)<<16:this.b.Mb[c]&-65536|a&65534};k.Pd=function(a){return this.b.V[1][a>>1&7]};k.He=function(a,b){this.b.V[1][b>>1&7]=a&65295};k.Nd=function(a){return this.b.V[1][(a>>1&7)+8]};k.Fe=function(a,b){this.b.V[1][(b>>1&7)+8]=a&65295};k.Od=function(a){return this.b.ya[1][a>>1&7]};k.Ge=function(a,b){b=b>>1&7;this.b.ya[1][b]=a;this.b.V[1][b]&=65295};k.Md=function(a){return this.b.ya[1][(a>>1&7)+8]};
-k.Ee=function(a,b){b=(b>>1&7)+8;this.b.ya[1][b]=a;this.b.V[1][b]&=65295};k.pd=function(a){return this.b.V[0][a>>1&7]};k.je=function(a,b){this.b.V[0][b>>1&7]=a&65295};k.nd=function(a){return this.b.V[0][(a>>1&7)+8]};k.he=function(a,b){this.b.V[0][(b>>1&7)+8]=a&65295};k.od=function(a){return this.b.ya[0][a>>1&7]};k.ie=function(a,b){b=b>>1&7;this.b.ya[0][b]=a;this.b.V[0][b]&=65295};k.md=function(a){return this.b.ya[0][(a>>1&7)+8]};k.ge=function(a,b){b=(b>>1&7)+8;this.b.ya[0][b]=a;this.b.V[0][b]&=65295};
-k.Vd=function(a){return this.b.V[3][a>>1&7]};k.Ne=function(a,b){this.b.V[3][b>>1&7]=a&65295};k.Td=function(a){return this.b.V[3][(a>>1&7)+8]};k.Le=function(a,b){this.b.V[3][(b>>1&7)+8]=a&65295};k.Ud=function(a){return this.b.ya[3][a>>1&7]};k.Me=function(a,b){b=b>>1&7;this.b.ya[3][b]=a;this.b.V[3][b]&=65295};k.Sd=function(a){return this.b.ya[3][(a>>1&7)+8]};k.Ke=function(a,b){b=(b>>1&7)+8;this.b.ya[3][b]=a;this.b.V[3][b]&=65295};k.Ab=function(a){a&=7;return this.b.N&2048?this.b.Wa[a]:this.b.u[a]};
-k.Db=function(a,b){b&=7;this.b.N&2048?this.b.Wa[b]=a:this.b.u[b]=a};k.Ad=function(){return this.b.N&49152?this.b.Ia[0]:this.b.u[6]};k.se=function(a){this.b.N&49152?this.b.Ia[0]=a:this.b.u[6]=a};k.Dd=function(){return this.b.u[7]};k.ve=function(a){this.b.u[7]=a};k.Bb=function(a){a&=7;return this.b.N&2048?this.b.u[a]:this.b.Wa[a]};k.Eb=function(a,b){b&=7;this.b.N&2048?this.b.u[b]=a:this.b.Wa[b]=a};k.Bd=function(){return 1==(this.b.N&49152)>>14?this.b.u[6]:this.b.Ia[1]};
-k.te=function(a){1==(this.b.N&49152)>>14?this.b.u[6]=a:this.b.Ia[1]=a};k.Cd=function(){return 3==(this.b.N&49152)>>14?this.b.u[6]:this.b.Ia[3]};k.ue=function(a){3==(this.b.N&49152)>>14?this.b.u[6]=a:this.b.Ia[3]=a};k.kd=function(a){return this.b.Ec[a-65504>>1]};k.ee=function(a,b){this.b.Ec[b-65504>>1]=a};k.Bc=function(a){if(65520==a){a=0;switch(xc){case xc:a=this.v.cc}a=(a>>6)-1}else a=0;return a};k.Ic=function(){};k.Rd=function(){return 1};k.Je=function(){};k.jd=function(){return this.b.fa};
-k.de=function(){this.b.fa=0};k.rd=function(){return this.b.Dc};k.le=function(a,b){b&1||(a&=255);this.b.Dc=a};k.wd=function(a){return a?this.b.kc:0};k.oe=function(a){var b=this.b;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.kc=a;b.I|=2};k.Qd=function(a){return a?this.b.fb&65280:0};k.Ie=function(a){this.b.fb=a|255};k.zd=function(){return Rc(this.b)};k.re=function(a){Sc(this.b,a&-1809|Rc(this.b)&1808);this.b.I|=128};k.Hc=function(a,b){F(this)&&E(this,"writeIgnored("+qa(b)+"): "+qa(a),!0,!0)};
-var L={},Pc=(L[61568]=[null,null,K.prototype.Wd,K.prototype.Oe,"UNIMAP",64,1170],L[62592]=[null,null,K.prototype.Pd,K.prototype.He,"SIPDR",8,1145],L[62608]=[null,null,K.prototype.Nd,K.prototype.Fe,"SDPDR",8,1145],L[62624]=[null,null,K.prototype.Od,K.prototype.Ge,"SIPAR",8,1145],L[62640]=[null,null,K.prototype.Md,K.prototype.Ee,"SDPAR",8,1145],L[62656]=[null,null,K.prototype.pd,K.prototype.je,"KIPDR",8,1145],L[62672]=[null,null,K.prototype.nd,K.prototype.he,"KDPDR",8,1145],L[62688]=[null,null,K.prototype.od,
+var zb="undefined"!==typeof ArrayBuffer,Ab={cpu:1,trap:16,fault:32,bus:64,memory:128,rom:256,device:512,keyboard:65536,key:131072,paper:1048576,disk:4194304,serial:8388608,speaker:33554432,computer:67108864,log:268435456,warn:536870912,buffer:1073741824,halt:-2147483648};
+function Bb(a){t.call(this,"Panel",a,Bb);this.f=this.A=this.Va=this.D=this.J=this.H=0;this.L=this.M=this.I=!1;this.O=Cb;this.B={};this.g={START:[1,1,!0,!1,this.ed],STEP:[1,1,!1,!1,this.fd],ENABLE:[1,1,!1,!1,this.ad],CONT:[1,1,!0,!1,this.Zc],DEP:[0,0,!0,!1,this.$c],EXAM:[1,1,!0,!1,this.bd],LOAD:[1,1,!0,!1,this.dd],TEST:[0,0,!0,!1,this.cd]};for(a=0;22>a;a++)this.g["S"+a]=[0,0,!1,!1,this.gd,a]}z(Bb);var Cb=7;function Db(a,b){return a.g[b]&&a.g[b][1]}k=Bb.prototype;k.reset=function(){this.stop()};
+k.ra=function(a,b,c,d){if(this.C&&this.C.ra(a,b,c,d)||this.b&&this.b.ra(a,b,c,d)||this.i&&this.i.ra(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.G[b]=c,this.H++,!0;default:return"led"==a||"rled"==a?(this.G[b]=c,this.B[b]=d?1:0,this.H++,!0):"switch"==a?(void 0===this.g[b]&&(this.g[b]=[d?1:0,d?1:0]),this.G[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,
+b){return function(){Eb(a,b)}}(this,b),a.onmouseup=a.onmouseout=function(a,b){return function(){Fb(a,b)}}(this,b),a.ontouchstart=function(a,b){return function(c){Eb(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){Fb(a,b)}}(this,b),!0):this.parent.ra.call(this,a,b,c,d)}};k.Ea=function(a,b,c,d){this.C=a;this.v=b;this.b=c;this.i=d;Gb(b,this,Hb);Ib(b,this.reset.bind(this));Jb(this);Kb(this)};k.Ga=function(a,b){b||(Lb(),this.reset());return!0};k.Fa=function(){return!0};
+function Mb(a,b,c){if(a=a.G[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function Jb(a,b){for(var c in a.B)Mb(a,c,null!=b?b:a.B[c])}function $b(a,b,c){if(a=a.G[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function Kb(a){for(var b in a.g)$b(a,b,a.g[b][1])}function ac(a,b,c,d){a.G[b]&&(void 0===c&&(yb(a,"Value for "+b+" is invalid"),a.b.fa()),c=8==(a.i&&a.i.ca||8)?qa(c,d):p(c,d),a.G[b].textContent!=c&&(a.G[b].textContent=c))}
+function Eb(a,b){var c=a.g[b];$b(a,b,c[1]=1-c[1]);c[3]=!0;c[4]&&c[4].call(a,c[1],c[5]);"STEP"!=b&&(a.L="DEP"==b,a.M="EXAM"==b)}function Fb(a,b){var c=a.g[b];c[2]&&c[3]&&($b(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5]));c[3]=!1}k.ed=function(a){a||this.b.w.W||(this.v.reset(),bc(this.b),Db(this,"ENABLE")&&this.b.ib())};k.fd=function(){};k.ad=function(a){a||this.b.fa()};
+k.Zc=function(a){if(!a&&!this.b.w.W)if(Db(this,"ENABLE"))this.b.ib();else{if((a=this.i)&&!vb(a,!0))ub(a,!0),a.jb(0),ub(a,!1);else try{var b=this.b.jb(1);0a.b.cb?8:16,c=65472<=a.f&&a.f<65472+b,b=c?1:2,c=c?15:a.v.Ma;Db(a,"STEP")||(b=-b);hc(a,a.f&~c|a.f+b&c)}
+function hc(a,b){a.f=b&a.v.Ma;b=a.f;for(var c=0;22>c;c++)jc(a,"A"+c,b&1<c;c++)jc(a,"D"+c,b&1<c;c++)a.g["S"+c][1]=b&1<>2;this.v=this.ya-1;this.D=this.H/this.ya|0;this.$a=[];this.la=0;this.f=!1;this.cc=0;this.A=[];this.Lc=[oc,pc,qc,rc];a=new I(this);sc(a,this.i);this.Y=Array(this.D);for(b=0;b>8:e[2](f)&255):f&1&&(e=d.$a[a&-2])&&(e[2]?c=e[2](f&-2)>>8:e[0]&&(c=e[0](f)));if(0<=c)return this.i&&F(this.i,e[5])&&E(this.i,e[4]+".readByte("+J(this.i,b)+"): "+J(this.i,c),!0,!d.la),c;d.Da(b,16,3);c=255;this.i&&F(this.i,e[5])&&E(this.i,"warning: unconverted read access to byte @"+J(this.i,b)+": "+J(this.i,c),!0,!d.la);return c}
+function pc(a,b,c){var d=!1,e=this.controller,f=e.$a[a],g=c&65535;if(f)if(f[1])f[1](b,g),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(g&1)f[3](a&255|b<<8,g&-2);else f[3](a&-256|b,g);d=!0}}else if(g&1&&(f=e.$a[a&-2]))if(f[3])g&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,g),d=!0;else if(f[1])f[1](b,g);d?this.i&&F(this.i,f[5])&&E(this.i,f[4]+".writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0,!e.la):(e.Da(c,16,5),this.i&&F(this.i,f[5])&&E(this.i,"warning: unconverted write access to byte @"+J(this.i,c)+": "+J(this.i,
+b),!0,!e.la))}function qc(a,b){var c=-1,d=this.controller;a=d.$a[a];var e=b&65535;a&&(a[2]?c=a[2](e):a[0]&&(c=a[0](e)|a[0](e+1)<<8));if(0<=c)return this.i&&F(this.i,a[5])&&E(this.i,a[4]+".readWord("+J(this.i,b)+"): "+J(this.i,c),!0,!d.la),c;d.Da(b,16,2);c=65535;this.i&&F(this.i,a[5])&&E(this.i,"warning: unconverted read access to word @"+J(this.i,b)+": "+J(this.i,c),!0,!d.la);return c}
+function rc(a,b,c){var d=!1,e=this.controller;a=e.$a[a];var f=c&65535;a&&(a[3]?(a[3](b,f),d=!0):a[1]&&(a[1](b&255,f),a[1](b>>8,f+1),d=!0));d?this.i&&F(this.i,a[5])&&E(this.i,a[4]+".writeWord("+J(this.i,c)+","+J(this.i,b)+")",!0,!e.la):(e.Da(c,16,4),this.i&&F(this.i,a[5])&&E(this.i,"warning: unconverted write access to word @"+J(this.i,c)+": "+J(this.i,b),!0,!e.la))}
+function uc(a,b){if(b!=a.C){var c;a.C&&(c=(1<>>a.ja;0g&&(n=g);if(!e&&l&&l.size){if(l.type==d){if(f+g<=l.F)return l.Mb+=l.F-f,l.F=f,!0;if(f>=l.F+l.Mb){n=l.size-(f-m);n>g&&(n=g);l.Mb=f-l.F+n;f=m+a.ya;g-=n;h++;continue}}return zc(1,f,g)}f=new I(a,f,n,a.ya,d,e);sc(f,a.i,l);a.Y[h++]=f;f=m+a.ya;g-=n}return 0>=g?(d==Ac&&(a.cc+=c),a.status((c>>10)+"Kb "+Bc[d]+" at "+qa(b)),!0):zc(2,b,c)}
+function wc(a,b,c){var d=[];for(b>>>=a.ja;0>>=a.ja;0>>this.ja].Vb(a&this.v,a)};k.Tb=function(a){3932160<=a&&(a=Cc(this.b,a));this.f=!1;this.la++;a=this.Y[(a&this.Ma)>>>this.ja].hc(a&this.v,a);this.la--;return a};
+k.na=function(a){3932160<=a&&(a=Cc(this.b,a));return this.Y[(a&this.Ma)>>>this.ja].qa(a&this.v,a)};k.bb=function(a){3932160<=a&&(a=Cc(this.b,a));var b=a&this.v,c=(a&this.Ma)>>>this.ja;this.f=!1;this.la++;a=this.Y[c].ic(b,a);this.la--;return a};k.Xb=function(a,b){3932160<=a&&(a=Cc(this.b,a));this.Y[(a&this.Ma)>>>this.ja].Zb(a&this.v,b&255,a)};k.qb=function(a,b){3932160<=a&&(a=Cc(this.b,a));this.f=!1;this.la++;this.Y[(a&this.Ma)>>>this.ja].$b(a&this.v,b&255,a);this.la--};
+k.hb=function(a,b){3932160<=a&&(a=Cc(this.b,a));this.Y[(a&this.Ma)>>>this.ja].Nb(a&this.v,b&65535,a)};k.Bb=function(a,b){3932160<=a&&(a=Cc(this.b,a));var c=a&this.v,d=(a&this.Ma)>>>this.ja;this.f=!1;this.la++;this.Y[d].nc(c,b&65535,a);this.la--};
+function Dc(a){for(var b=0,c=[],d=0;da.b.cb)){var l=h[0]?h[0].bind(b):null,m=h[1]?h[1].bind(b):null,n=h[2]?h[2].bind(b):null,v=h[3]?h[3].bind(b):null,r=h[5]||1;65472<=g&&65487>=g&&(!l&&n&&(l=function(a){return function(b){return a(b)&255}.bind(b)}(n)),!m&&v&&(m=function(a){return function(b,c){return a(b,c)}.bind(b)}(v)));for(var w=h[4],y=0;y>5&3;b.Za=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ua!=c&&(b.Ua=c,Rc(b))}};k.td=function(){var a=this.b.fb;a&65280&&(a=(a<<8|a>>8)&65535);return a};k.ud=function(){return this.b.Kb};k.vd=function(){return this.b.pb};k.ne=function(a){var b=this.b;1170>b.cb&&(a&=-49);b.pb!=a&&(b.pb=a,b.Sb=a&16?4194303:262143,Rc(b))};k.Wd=function(a){a=a>>1&63;var b=this.b.Lb[a>>1];return a&1?b>>16:b&65535};
+k.Oe=function(a,b){b=b>>1&63;var c=b>>1;this.b.Lb[c]=b&1?this.b.Lb[c]&65535|(a&63)<<16:this.b.Lb[c]&-65536|a&65534};k.Pd=function(a){return this.b.V[1][a>>1&7]};k.He=function(a,b){this.b.V[1][b>>1&7]=a&65295};k.Nd=function(a){return this.b.V[1][(a>>1&7)+8]};k.Fe=function(a,b){this.b.V[1][(b>>1&7)+8]=a&65295};k.Od=function(a){return this.b.xa[1][a>>1&7]};k.Ge=function(a,b){b=b>>1&7;this.b.xa[1][b]=a;this.b.V[1][b]&=65295};k.Md=function(a){return this.b.xa[1][(a>>1&7)+8]};
+k.Ee=function(a,b){b=(b>>1&7)+8;this.b.xa[1][b]=a;this.b.V[1][b]&=65295};k.pd=function(a){return this.b.V[0][a>>1&7]};k.je=function(a,b){this.b.V[0][b>>1&7]=a&65295};k.nd=function(a){return this.b.V[0][(a>>1&7)+8]};k.he=function(a,b){this.b.V[0][(b>>1&7)+8]=a&65295};k.od=function(a){return this.b.xa[0][a>>1&7]};k.ie=function(a,b){b=b>>1&7;this.b.xa[0][b]=a;this.b.V[0][b]&=65295};k.md=function(a){return this.b.xa[0][(a>>1&7)+8]};k.ge=function(a,b){b=(b>>1&7)+8;this.b.xa[0][b]=a;this.b.V[0][b]&=65295};
+k.Vd=function(a){return this.b.V[3][a>>1&7]};k.Ne=function(a,b){this.b.V[3][b>>1&7]=a&65295};k.Td=function(a){return this.b.V[3][(a>>1&7)+8]};k.Le=function(a,b){this.b.V[3][(b>>1&7)+8]=a&65295};k.Ud=function(a){return this.b.xa[3][a>>1&7]};k.Me=function(a,b){b=b>>1&7;this.b.xa[3][b]=a;this.b.V[3][b]&=65295};k.Sd=function(a){return this.b.xa[3][(a>>1&7)+8]};k.Ke=function(a,b){b=(b>>1&7)+8;this.b.xa[3][b]=a;this.b.V[3][b]&=65295};k.zb=function(a){a&=7;return this.b.N&2048?this.b.Wa[a]:this.b.u[a]};
+k.Cb=function(a,b){b&=7;this.b.N&2048?this.b.Wa[b]=a:this.b.u[b]=a};k.Ad=function(){return this.b.N&49152?this.b.Ia[0]:this.b.u[6]};k.se=function(a){this.b.N&49152?this.b.Ia[0]=a:this.b.u[6]=a};k.Dd=function(){return this.b.u[7]};k.ve=function(a){this.b.u[7]=a};k.Ab=function(a){a&=7;return this.b.N&2048?this.b.u[a]:this.b.Wa[a]};k.Db=function(a,b){b&=7;this.b.N&2048?this.b.u[b]=a:this.b.Wa[b]=a};k.Bd=function(){return 1==(this.b.N&49152)>>14?this.b.u[6]:this.b.Ia[1]};
+k.te=function(a){1==(this.b.N&49152)>>14?this.b.u[6]=a:this.b.Ia[1]=a};k.Cd=function(){return 3==(this.b.N&49152)>>14?this.b.u[6]:this.b.Ia[3]};k.ue=function(a){3==(this.b.N&49152)>>14?this.b.u[6]=a:this.b.Ia[3]=a};k.kd=function(a){return this.b.Ec[a-65504>>1]};k.ee=function(a,b){this.b.Ec[b-65504>>1]=a};k.Bc=function(a){if(65520==a){a=0;switch(Ac){case Ac:a=this.v.cc}a=(a>>6)-1}else a=0;return a};k.Ic=function(){};k.Rd=function(){return 1};k.Je=function(){};k.jd=function(){return this.b.Ha};
+k.de=function(){this.b.Ha=0};k.rd=function(){return this.b.Dc};k.le=function(a,b){b&1||(a&=255);this.b.Dc=a};k.wd=function(a){return a?this.b.kc:0};k.oe=function(a){var b=this.b;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.kc=a;b.K|=2};k.Qd=function(a){return a?this.b.Wb&65280:0};k.Ie=function(a){this.b.Wb=a|255};k.zd=function(){return Sc(this.b)};k.re=function(a){Tc(this.b,a&-1793|Sc(this.b)&1792);this.b.K|=128};k.Hc=function(a,b){F(this)&&E(this,"writeIgnored("+qa(b)+"): "+qa(a),!0,!0)};
+var L={},Qc=(L[61568]=[null,null,K.prototype.Wd,K.prototype.Oe,"UNIMAP",64,1170],L[62592]=[null,null,K.prototype.Pd,K.prototype.He,"SIPDR",8,1145],L[62608]=[null,null,K.prototype.Nd,K.prototype.Fe,"SDPDR",8,1145],L[62624]=[null,null,K.prototype.Od,K.prototype.Ge,"SIPAR",8,1145],L[62640]=[null,null,K.prototype.Md,K.prototype.Ee,"SDPAR",8,1145],L[62656]=[null,null,K.prototype.pd,K.prototype.je,"KIPDR",8,1145],L[62672]=[null,null,K.prototype.nd,K.prototype.he,"KDPDR",8,1145],L[62688]=[null,null,K.prototype.od,
K.prototype.ie,"KIPAR",8,1145],L[62704]=[null,null,K.prototype.md,K.prototype.ge,"KDPAR",8,1145],L[62798]=[null,null,K.prototype.vd,K.prototype.ne,"MMR3",1,1145],L[65382]=[null,null,K.prototype.qd,K.prototype.ke,"LKS"],L[65402]=[null,null,K.prototype.sd,K.prototype.me,"MMR0",1,1145],L[65404]=[null,null,K.prototype.td,K.prototype.Hc,"MMR1",1,1145],L[65406]=[null,null,K.prototype.ud,K.prototype.Hc,"MMR2",1,1145],L[65408]=[null,null,K.prototype.Vd,K.prototype.Ne,"UIPDR",8,1145],L[65424]=[null,null,K.prototype.Td,
-K.prototype.Le,"UDPDR",8,1145],L[65440]=[null,null,K.prototype.Ud,K.prototype.Me,"UIPAR",8,1145],L[65456]=[null,null,K.prototype.Sd,K.prototype.Ke,"UDPAR",8,1145],L[65472]=[null,null,K.prototype.Ab,K.prototype.Db,"R0SET0"],L[65473]=[null,null,K.prototype.Ab,K.prototype.Db,"R1SET0"],L[65474]=[null,null,K.prototype.Ab,K.prototype.Db,"R2SET0"],L[65475]=[null,null,K.prototype.Ab,K.prototype.Db,"R3SET0"],L[65476]=[null,null,K.prototype.Ab,K.prototype.Db,"R4SET0"],L[65477]=[null,null,K.prototype.Ab,K.prototype.Db,
-"R5SET0"],L[65478]=[null,null,K.prototype.Ad,K.prototype.se,"R6KERNEL"],L[65479]=[null,null,K.prototype.Dd,K.prototype.ve,"R7KERNEL"],L[65480]=[null,null,K.prototype.Bb,K.prototype.Eb,"R0SET1",1,1145],L[65481]=[null,null,K.prototype.Bb,K.prototype.Eb,"R1SET1",1,1145],L[65482]=[null,null,K.prototype.Bb,K.prototype.Eb,"R2SET1",1,1145],L[65483]=[null,null,K.prototype.Bb,K.prototype.Eb,"R3SET1",1,1145],L[65484]=[null,null,K.prototype.Bb,K.prototype.Eb,"R4SET1",1,1145],L[65485]=[null,null,K.prototype.Bb,
-K.prototype.Eb,"R5SET1",1,1145],L[65486]=[null,null,K.prototype.Bd,K.prototype.te,"R6SUPER",1,1145],L[65487]=[null,null,K.prototype.Cd,K.prototype.ue,"R6USER",1,1145],L[65504]=[null,null,K.prototype.kd,K.prototype.ee,"CTRL",8,1170],L[65520]=[null,null,K.prototype.Bc,K.prototype.Ic,"LSIZE",1,1170],L[65522]=[null,null,K.prototype.Bc,K.prototype.Ic,"HSIZE",1,1170],L[65524]=[null,null,K.prototype.Rd,K.prototype.Je,"SYSID",1,1170],L[65526]=[null,null,K.prototype.jd,K.prototype.de,"CPUERR",1,1170],L[65528]=
-[null,null,K.prototype.rd,K.prototype.le,"MB",1,1170],L[65530]=[null,null,K.prototype.wd,K.prototype.oe,"PIR"],L[65532]=[null,null,K.prototype.Qd,K.prototype.Ie,"SL"],L[65534]=[null,null,K.prototype.zd,K.prototype.re,"PSW"],L);Wa(function(){for(var a=D(document,"pdp11","device"),b=0;b>1),this.b=new Int32Array(this.w,0,this.size>>2),$c(this,Wc?ad:bd);else{a=this.b=Array(this.size>>
-2);for(f=0;f>2),b=0;b>8,c)},S:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ca:function(a,b){a&1&&this.v.Ea(b,64,2);b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+
-1]&255)<<8},ua:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<>8);this.Sa=!0},O:function(a,b){if(this.i&&null!=this.F){var c=this.i;gd(c,this.F+a,1,c.M)&&c.ga(!0)}return this.hc(a,b)},Qa:function(a,b){if(this.i&&null!=this.F){var c=this.i;gd(c,this.F+a,2,c.M)&&c.ga(!0)}return this.ic(a,b)},la:function(a,
-b,c){if(this.i&&null!=this.F){var d=this.i;gd(d,this.F+a,1,d.D)&&d.ga(!0)}this.f?this.B(a,b,c):this.$b(a,b,c)},xa:function(a,b,c){if(this.i&&null!=this.F){var d=this.i;gd(d,this.F+a,2,d.D)&&d.ga(!0)}this.f?this.B(a,b,c):this.nc(a,b,c)},M:function(a){return this.G[a]},R:function(a,b){a=this.G[a];this.i&&F(this.i,128)&&E(this.i,"Memory.readByte("+J(this.i,b)+"): "+J(this.i,a),!0);return a},W:function(a,b){a&1&&this.v.Ea(b,64,2);return this.D.getUint16(a,!0)},$:function(a,b){a&1&&this.v.Ea(b,64,2);a=
-this.J[a>>1];this.i&&F(this.i,128)&&E(this.i,"Memory.readWord("+J(this.i,b)+"): "+J(this.i,a),!0);return a},ja:function(a,b){this.G[a]=b;this.Sa=!0},Ya:function(a,b,c){this.G[a]=b;this.Sa=!0;this.i&&F(this.i,128)&&E(this.i,"Memory.writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0)},wa:function(a,b,c){a&1&&this.v.Ea(c,64,4);this.D.setUint16(a,b,!0);this.Sa=!0},Ba:function(a,b,c){a&1&&this.v.Ea(c,64,4);this.J[a>>1]=b;this.Sa=!0;this.i&&F(this.i,128)&&E(this.i,"Memory.writeWord("+J(this.i,c)+","+J(this.i,
-b)+")",!0)}};function pc(a,b,c){a.i=b;a.g=a.C=0;c&&((a.g=c.g)&&fd(a,ed,!1),(a.C=c.C)&&dd(a,ed,!1))}function hd(a,b){b?--a.C||(a.Zb=a.f?a.B:a.$b,a.Ob=a.f?a.H:a.nc):--a.g||(a.Wb=a.hc,a.sa=a.ic)}function dd(a,b,c){c&&a.C||(a.Zb=!a.f&&b[1]||a.B,a.Ob=!a.f&&b[3]||a.H);if(c||void 0===c)a.$b=b[1]||a.B,a.nc=b[3]||a.H}function fd(a,b,c){c&&a.g||(a.Wb=b[0]||a.K,a.sa=b[2]||a.L);if(c||void 0===c)a.hc=b[0]||a.K,a.ic=b[2]||a.L}function $c(a,b){b||(b=id);fd(a,b,void 0);dd(a,b,void 0)}
-var id=[],cd=[I.prototype.S,I.prototype.ua,I.prototype.ca,I.prototype.Na],ed=[I.prototype.O,I.prototype.la,I.prototype.Qa,I.prototype.xa];if(vb)var bd=[I.prototype.M,I.prototype.ja,I.prototype.W,I.prototype.wa],ad=[I.prototype.R,I.prototype.Ya,I.prototype.$,I.prototype.Ba];
-function jd(a,b){t.call(this,"CPU",a,jd,1);var c=a.multiplier||1;this.kb=a.cycles||b;this.cb=c;this.vb=Math.round(this.kb/1E4)/100;this.ob=this.vb*this.cb;this.A.Z=!1;this.A.Yb=!1;this.A.tb=a.autoStart;this.A.wb=!1;this.Ib=this.ua=0;this.Jb=a.csStart;this.xb=a.csInterval;this.yb=a.csStop;this.L=[];this.zc=this.$d.bind(this);H(this)}z(jd);var kd=["power","reset"];k=jd.prototype;
-k.Fa=function(a,b,c,d){this.C=a;this.v=b;this.i=d;this.B=a.B;for(b=0;b=a.ua&&(a.ua+=a.xb,c=!0);0<=a.yb&&a.yb<=qd(a)&&(a.xb=a.yb=-1,nd(a),a.ga(),c=!0);c&&a.j(qd(a)+" cycles: checksum="+p(a.Ib))}}
-k.ta=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.G[b]=c,!0;case "run":return this.G[b]=c,c.onclick=function(){var a;if(a=d.C)if(a=d.C,a.A.ia)a=!0;else{var b=null,c,h=nb(a.id);for(c=0;ca.$/a.ob?b=1:d=!0;a.cb=b;b=a.vb*a.cb;if(a.ob!=b){a.ob=b;b=a.ob.toFixed(2)+"Mhz";var e=a.G.setSpeed;e&&(e.textContent=b);a.j("target speed: "+b)}c&&a.C&&a.C.sb()}ac(a,a.W);a.W=0;a.S=Aa();a.ca=0;sd(a);return d}function Lc(a,b){var c=a.L.length;a.L.push([-1,b]);return c}function Nc(a,b,c,d){0<=b&&ba.L[b][0])&&(c=a.kb*a.cb/1E3*c|0,a.L[b][0]=c+td(a))}
-function ud(a,b){for(var c=a.L.length-1;0<=c;c--){var d=a.L[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function $b(a,b){for(var c=a.L.length-1;0<=c;c--){var d=a.L[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function td(a,b){var c=a.ja-=a.b;a.b=a.K=0;b&&(a.ja=0);return c}
-k.$d=function(){if(this.A.Z){this.Fb>=this.kb&&sd(this,!0);this.Ba=0;this.lb=Aa();if(this.ca){var a=this.lb-this.ca;a>this.Vb&&(this.S+=a,this.S>this.lb&&(this.S=this.lb))}try{do{var b=ud(this,this.A.wb?1:this.mb);try{this.jb(b)}catch(e){if("number"!=typeof e)throw e;}b=td(this,!0);this.Ba+=b;this.W+=b;bc(this,b);$b(this,b);this.wa-=b;if(0>=this.wa){this.wa+=this.mb;15<=++this.xc&&(this.qa(),this.xc=0);break}}while(this.A.Z)}catch(e){this.ga();this.C&&this.C.stop(Aa(),qd(this));ub(this,e.stack||e.message);
-return}if(this.A.Z){a=setTimeout;b=this.zc;this.ca=Aa();var c=this.Vb;this.Ba&&(c=Math.round(c*this.Ba/this.mb));var c=c-(this.ca-this.lb),d=this.ca-this.S;d&&(this.$=Math.round(this.W/(10*d))/100,864E5<=d&&(this.la=0,rd(this)));if(0>c||this.$c&&(this.S-=c),c=0;this.Fb+=this.Ba;this.ca+=c;a(b,c)}}};
-k.ib=function(a){if(tb(this))return!1;if(this.A.Z)return this.j(this.toString()+" busy"),!1;rd(this);this.A.Z=!0;this.A.Yb=!0;var b=this.G.run;b&&(b.textContent="Halt");this.C&&(a&&this.C.sb(!0),this.C.start(this.S,qd(this)));setTimeout(this.zc,0);return!0};k.jb=function(){return 0};k.ga=function(a){var b=!1;if(this.A.Z){td(this);ac(this,this.W);this.W=0;this.A.Z=!1;if(b=this.G.run)b.textContent="Run";this.C&&this.C.stop(Aa(),qd(this));b=!0}this.A.complete=a;return b};
-function vd(a){this.pb=+a.model||1170;this.Pb=a.addrReset||0;jd.call(this,a,6666667);this.decode=1120==this.pb?wd.bind(this):xd.bind(this);yd(this);this.M=0;this.O=null;this.A.complete=!1}z(vd,jd);k=vd.prototype;k.reset=function(){this.status("model "+this.pb);this.A.Z&&this.ga();yd(this);md(this);this.A.error=!1;this.parent.reset.call(this)};
-function yd(a){a.T=65536;a.U=32768;a.aa=65535;a.Y=32768;a.N=15;a.u=[0,0,0,0,0,0,0,a.Pb];a.Wa=[0,0,0,0,0,0];a.Ia=[0,0,0,0];a.w=0;a.Za=0;a.Uc=[4,2,0,1];a.V=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.ya=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.Mb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0];a.Ec=[0,0,0,0,0,0,0,0];a.Dc=0;a.I=0;a.H=a.J=0;a.g=a.f=a.ub=0;a.xa=-1;Zb(a)}function Zb(a){a.fb=255;a.fa=0;a.kc=0;a.D=0;a.eb=0;a.Lb=0;a.qb=0;a.Ua=0;a.Na=0;a.Tb=262143;a.O=null;a.v&&Qc(a)}function Qc(a){a.Ua?(a.R=65536,a.ba=a.Tc,a.sa=a.Xd,a.Ob=a.Pe,rc(a.v,a.qb&16?22:18)):(a.R=0,a.ba=a.Sc,a.sa=a.Cc,a.Ob=a.Jc,rc(a.v,16))}function zd(a,b,c){a.Pb=b;N(a,b);!c&&a.i&&(a.ga()||od(a.i))}k.uc=function(){return 0};
-k.save=function(){var a=new O(this);a.set(0,[]);a.set(1,[this.la,this.cb]);a.set(2,Ac(this.v));return a.data()};k.restore=function(a){var b=a[1];this.la=b[1];rd(this,b[3]);a:{b=this.v;a=a[2];var c;for(c=0;c>14&3;c=a.N>>14&3;a.w!=c&&(a.Ia[c]=a.u[6],a.u[6]=a.Ia[a.w]);a.N=b;a.I|=2}function Q(a,b){a.I&128||(a.Y=a.aa=b,a.U=0)}function Fd(a,b,c){a.I&128||(a.Y=a.aa=a.T=b,a.U=c||0)}function Gd(a,b,c,d){a.I&128||(a.Y=a.aa=a.T=b,a.U=(c^b)&(d^b))}
-function Yd(a,b){a.I&128||(a.Y=a.aa=a.T=b,a.U=a.Y^a.T>>1)}function Zd(a,b,c,d){a.I&128||(a.Y=a.aa=a.T=b,a.U=(c^d)&(d^b))}k.na=function(a,b){if(!this.M){var c=!1;0>this.xa?this.xa=Rc(this):this.w||(a=4,c=!0);this.D&57344||(this.eb=63222,this.Lb=a);this.w=0;var d=this.sa(a|this.R),e=this.sa(a+2&65535|this.R);Sc(this,e&-12289|this.xa>>2&12288);c&&(this.fa|=4,this.u[6]=4);$d(this,this.xa);$d(this,this.u[7]);N(this,d);this.I&=-113;this.xa=-1;this.I|=8;this.Yc=a;this.Xc=b;if(26!=b)throw a;}};
-function ae(a){var b=be(a),c=be(a)&-1793;a.N&49152&&(c=c&-225|a.N&63712);N(a,b);Sc(a,c);a.I&=-17}function zc(a,b){var c=b>>13&31;31>c&&a.qb&32&&(b=a.Mb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)"));return b}
-function ce(a,b,c){var d,e,f;if(!(c&a.Ua))return b;d=b>>13;a.qb&a.Uc[a.w]||(d&=7);e=a.V[a.w][d];f=(a.ya[a.w][d]<<6)+(b&8191)&a.Tb;var g=0;switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.V[a.w][d]=e;if(4194170!==f||a.w)a.Na=a.w,a.Za=d;b=!1;g&&(g&57344&&(0<=a.xa&&(g|=128),a.D&57344||(a.D=a.D|g|a.Na<<5|a.Za<<1),
-b=!0),a.D&61440||!(4191360>f||4194239c&&d&1&&(f=1));a.b-=3;break;case 3:f=2;e=a.u[c];7!==c&&(e|=g);e=a.sa(e);e|=g;a.b-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.u[c]+f&65535;7!==c&&(e|=g);a.b-=4;break;case 5:f=-2;e=a.u[c]-2&65535;7!==c&&(e|=g);e=a.sa(e)|
-g;a.b-=8;break;case 6:return e=a.sa(Ed(a,2)),e=e+a.u[c]&65535|g,a.b-=6,e;case 7:return e=a.sa(Ed(a,2)),e=e+a.u[c]&65535,e=a.sa(e|a.R)|g,a.b-=10,e}a.u[c]=a.u[c]+f&65535;!g||a.D&57344||(a.eb=a.eb<<8|f<<3&248|c);6==c&&!a.w&&d&4&&0>=f&&(a.u[6]<=a.fb||65534<=a.u[6])&&(a.u[6]<=a.fb-32?(a.fa|=4,a.u[6]=4,a.na(4,24)):(a.fa|=8,a.I|=64));return e}k.Ub=function(a){if(!this.Ua)return this.v.Ub(a);this.M++;a=de(this,ce(this,a,3));this.M--;return a};
-k.bb=function(a){if(!this.Ua)return this.v.bb(a);this.M++;a=this.Cc(ce(this,a,2));this.M--;return a};k.rb=function(a,b){this.Ua?(this.M++,ee(this,ce(this,a,5),b),this.M--):this.v.rb(a,b)};k.Cb=function(a,b){this.Ua?(this.M++,this.Jc(ce(this,a,4),b),this.M--):this.v.Cb(a,b)};k.Sc=function(a,b,c){return fe(this,a,b,c)};k.Tc=function(a,b,c){return ce(this,fe(this,a,b,c),c)};k.Cc=function(a){return this.v.pa(a)};k.Xd=function(a){return this.v.pa(ce(this,a,2))};k.Jc=function(a,b){this.v.hb(a,b&65535)};
-k.Pe=function(a,b){this.v.hb(ce(this,a,4),b)};function ge(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?(d=fe(a,b,d,2),c&65536||61440!==(a.N&61440)&&(d&=65535),a.w=a.N>>12&3,c=a.sa(d|c&a.R),a.w=a.N>>14&3):c=6!=d||(a.N>>2&12288)===(a.N&12288)?a.u[d]:a.Ia[a.N>>12&3];return c}function he(a,b,c,d){a.D&57344||(a.eb=22);var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=fe(a,b,e,4),c&65536||(e&=65535),a.w=a.N>>12&3,e=ce(a,e|c&65536,4),a.w=a.N>>14&3,a.v.hb(e,d)):6!=e||(a.N>>2&12288)===(a.N&12288)?a.u[e]=d:a.Ia[a.N>>12&3]=d}
-function ie(a,b){b>>=6;var c=a.J=b&7;return(b=a.H=(b&56)>>3)?de(a,a.ba(b,c,3)):a.u[c]&255}function je(a,b){b>>=6;var c=a.J=b&7;return(b=a.H=(b&56)>>3)?a.v.pa(a.ba(b,c,2)):a.u[c]}function ke(a,b){var c=a.f=b&7;b=a.g=(b&56)>>3;return fe(a,b,c,8)}function le(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?de(a,a.ba(b,c,3)):a.u[c]&255}function me(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?a.v.pa(a.ba(b,c,2)):a.u[c]}
-function R(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.ub=a.ba(b,e,7),ee(a,e,d.call(a,c,de(a,e)))):a.u[e]=a.u[e]&65280|d.call(a,c,a.u[e])}function S(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.ba(b,e,6),a.v.hb(e,d.call(a,c,a.v.pa(e)))):a.u[e]=d.call(a,c,a.u[e])}function ne(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?ee(a,a.ba(b,e,5),c):a.u[e]=c?a.u[e]&~d|c<<24>>24&d:a.u[e]&~d;return c}function oe(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?a.v.hb(a.ba(b,d,4),c):a.u[d]=c&65535;return c}
-function T(a,b,c){c&&(N(a,a.u[7]+(b<<24>>23)),a.b-=2);a.b-=3}
-k.jb=function(a){this.A.complete=!0;var b=this.i&&pe(this.i)?1:this.A.Yb?-1:0,c=a?this.A.Yb?0:1:-1;this.A.Yb=!1;this.ja=this.b=a;do{if(b){if(this.i&&qe(this.i,this.u[7],c)){this.ga();break}c||c++;b++}if(this.I){this.I&112&&(this.I&32?this.na(168,28):this.I&64?this.na(4,30):this.I&16&&this.na(12,32),this.I&=-113);if(a=this.I&7){a=!1;if(this.I&2){this.I&=-3;var d=160,e=(this.kc&224)>>5,f=this.O&&this.O.zb>e?this.O:null;f&&(d=f.be,e=f.zb);e>(this.N&224)>>5?(this.I&4&&(Ed(this,2),this.I&=-5),this.na(d,
-26),e=!0):e=!1;if(e){if(f)if(a=f,f=this.O,f==a)this.O=a.next;else for(;f;){e=f.next;if(e==a){f.next=e.next;break}f=e}a=!0}}else this.I&1&&this.I++;a=a&&0>c}if(a)break}this.I=this.I&7|this.N&16;this.decode(Dd(this))}while(0>1|b<<16;Yd(this,a);return a&65535}function we(a,b){a=b&2048|b>>1|b<<8;Yd(this,a<<8);return a&255}function xe(a,b){a=b&~a;Q(this,a);return a}function ye(a,b){a=b&~a;Q(this,a<<8);return a}function ze(a,b){a|=b;Q(this,a);return a}function Ae(a,b){a|=b;Q(this,a<<8);return a}
-function Be(a,b){a=~b|65536;Fd(this,a);return a&65535}function Ce(a,b){a=~b|256;Fd(this,a<<8);return a&255}function De(a,b){a=b-a;this.I&128||(this.Y=this.aa=a,this.U=b&(b^a));return a&65535}function Ee(a,b){a=b-a;var c=a<<8;b<<=8;this.I&128||(this.Y=this.aa=c,this.U=b&(b^c));return a&255}function Fe(a,b){a=b+a;this.I&128||(this.Y=this.aa=a,this.U=a&(b^a));return a&65535}function Ge(a,b){a=b+a;var c=a<<8;this.I&128||(this.Y=this.aa=c,this.U=c&(b<<8^c));return a&255}
-function He(a,b){a=-b;Fd(this,a,a&b&32768);return a&65535}function Ie(a,b){a=-b;Fd(this,a<<8,(a&b&128)<<8);return a&255}function Je(a,b){a=b<<1|this.T>>16&1;Yd(this,a);return a&65535}function Ke(a,b){a=b<<1|this.T>>16&1;Yd(this,a<<8);return a&255}function Le(a,b){a=(this.T&65536|b)>>1|b<<16;Yd(this,a);return a&65535}function Me(a,b){a=((this.T&65536)>>8|b)>>1|b<<8;Yd(this,a<<8);return a&255}function Ne(a,b){var c=b-a;Zd(this,c,a,b);return c&65535}
-function Oe(a,b){var c=b-a;Zd(this,c<<8,a<<8,b<<8);return c&255}function Pe(a,b){this.I&128||(this.Y=this.aa=b&65280,this.U=this.T=0);return(b<<8|b>>8)&65535}function Qe(a,b){a^=b;Q(this,a);return a&65535}function Re(a){S(this,a,je(this,a),re);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}
-function Se(a){var b=me(this,a);a=a>>6&7;var c=this.u[a];c&32768&&(c|=4294901760);this.T=this.U=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.U=32768)}this.u[a]=c&65535;this.Y=this.aa=c;this.b-=(this.g?6:7)+b}
-function Te(a){var b=me(this,a);a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.T=this.U=0;b&=63;if(b&32){b=64-b;32>b-1;this.T=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.u[a|1]=d&65535;this.Y=d>>16;this.aa=d>>16|d;this.b-=(this.g?6:7)+b}function Ue(a){T(this,a,!Ad(this))}function Ve(a){T(this,a,Ad(this))}
-function We(a){S(this,a,je(this,a),xe);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}function Xe(a){R(this,a,ie(this,a),ye);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}function Ye(a){S(this,a,je(this,a),ze);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}function Ze(a){R(this,a,ie(this,a),Ae);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}
-function $e(a){Q(this,je(this,a)&me(this,a));this.b-=this.g?4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}function af(a){Q(this,(ie(this,a)&le(this,a))<<8);this.b-=this.g?4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}function bf(a){T(this,a,Cd(this))}function cf(a){T(this,a,!this.Ta()==!Bd(this))}function df(a){T(this,a,!Cd(this)&&!this.Ta()==!Bd(this))}function ef(a){T(this,a,!Ad(this)&&!Cd(this))}function ff(a){T(this,a,Cd(this)||!this.Ta()!=!Bd(this))}
-function gf(a){T(this,a,Ad(this)||Cd(this))}function hf(a){T(this,a,!this.Ta()!=!Bd(this))}function jf(a){T(this,a,this.Ta())}function kf(a){T(this,a,!Cd(this))}function lf(a){T(this,a,!this.Ta())}function mf(){this.na(12,1);this.b-=5}function nf(a){T(this,a,!0)}function of(a){T(this,a,!Bd(this))}function pf(a){T(this,a,Bd(this))}function U(a){a&1&&(this.T=0);a&2&&(this.U=0);a&4&&(this.aa=1);a&8&&(this.Y=0);this.b-=5}
-function qf(a){var b=je(this,a);a=me(this,a);Zd(this,b-a,a,b);this.b-=this.g?4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}function rf(a){var b=ie(this,a)<<8;a=le(this,a)<<8;Zd(this,b-a,a,b);this.b-=this.g?4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}
-function sf(a){var b=me(this,a);if(b){a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.T=this.U=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.u[a]=d&65535,this.u[a|1]=c-d*b&65535,this.aa=d>>16|d,this.Y=d>>16):(this.U=32768,this.aa=d>>15|d,this.Y=c>>16,-1===b&&65534===this.u[a]&&(this.u[a]=this.u[a|1]=1));this.b-=53}else this.aa=this.Y=0,this.U=32768,this.T=65536,this.b-=7}function tf(){this.na(24,2);this.b-=25}
-function uf(){this.N&49152?(this.fa|=128,this.na(4,3)):this.i?vf(this.i):this.ga();this.b-=7}function wf(){this.na(16,4);this.b-=25}var xf=[0,7,7,10,7,11,9,13];function yf(a){this.K=this.b;N(this,ke(this,a));this.b=this.K-xf[this.g]}var zf=[0,14,14,17,14,18,16,20];function Af(a){this.K=this.b;var b=ke(this,a);a=a>>6&7;$d(this,this.u[a]);this.u[a]=this.u[7];N(this,b);this.b=this.K-zf[this.g]}var Bf=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
-function Cf(a){var b=je(this,a);this.K=this.b;Q(this,oe(this,a,b));this.b=this.K-Bf[(this.H?8:0)+this.g]+(7!=this.f||this.g?0:2)}function Df(a){var b=ie(this,a);Q(this,ne(this,a,b,65535)<<8);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}var Ef=[7,13,13,17,14,18,17,21];
-function Ff(a){var b=me(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.u[a];c&32768&&(c|=-65536);b=~~(b*c);this.u[a]=b>>16&65535;this.u[a|1]=b&65535;this.I&128||(this.Y=b>>16,this.aa=this.Y|b,this.U=0,this.T=-32768>b||32767>6;if(this.u[b]=this.u[b]-1&65535)N(this,this.u[7]-((a&63)<<1)),this.b+=1;this.b-=6}function Lf(a){S(this,a,je(this,a),Ne);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}
-function Mf(a){S(this,a,0,Pe);this.b-=this.g?9:3+(7==this.f?2:0)}function Nf(){this.na(28,5);this.b-=5}function Of(){this.B&&(this.B.lc(this.u[7],!0),this.B.setData(this.u[0],!0));this.I|=4;Ed(this,-2);this.b-=3}function Pf(a){S(this,a,je(this,a),Qe);this.b-=this.g?9:3+(7==this.f?2:0)}function V(a){var b;if(b=this.i)b=this.i,E(b,"undefined opcode "+J(b,a),!0,!0),b=vf(b);b||this.na(8,6)}function wd(a){Qf[a>>12].call(this,a)}function Rf(a){Sf[a>>6&3].call(this,a)}
-function Tf(a){Uf[a>>6&3].call(this,a)}function Vf(a){Wf[a>>6&3].call(this,a)}function Xf(a){Yf[a&15].call(this,a)}function Zf(a){$f[a&15].call(this,a)}function ag(a){bg[a>>6&3].call(this,a)}function cg(a){dg[a>>6&3].call(this,a)}function eg(a){fg[a>>6&3].call(this,a)}
-var Qf=[function(a){gg[a>>8&15].call(this,a)},Cf,qf,$e,We,Ye,Re,V,function(a){hg[a>>8&15].call(this,a)},Df,rf,af,Xe,Ze,Lf,V],gg=[function(a){ig[a>>4&15].call(this,a)},nf,kf,bf,cf,hf,df,ff,Af,Af,Rf,Tf,Vf,V,V,V],Sf=[function(a){Fd(this,oe(this,a,0));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,Be);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,1,Fe);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,1,De);this.b-=this.g?9:3+(7==this.f?2:0)}],Uf=[function(a){S(this,a,0,
-He);this.b-=this.g?11:6},function(a){S(this,a,Ad(this)?1:0,re);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,Ad(this)?1:0,Ne);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=me(this,a);Fd(this,a);this.b-=this.g?4:3+(7==this.f?2:0)}],Wf=[function(a){S(this,a,0,Le);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,Je);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,ve);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,te);this.b-=this.g?9:3+(7==this.f?2:0)}],
-ig=[function(a){jg[a&15].call(this,a)},V,V,V,yf,yf,yf,yf,Jf,V,Xf,Zf,Mf,Mf,Mf,Mf],jg=[uf,Of,If,mf,wf,Hf,V,V,V,V,V,V,V,V,V,V],Yf=[Gf,function(){this.T=0;this.b-=5},function(){this.U=0;this.b-=5},U,function(){this.aa=1;this.b-=5},U,U,U,function(){this.Y=0;this.b-=5},U,U,U,U,U,U,U],$f=[Gf,function(){this.T=65536;this.b-=5},function(){this.U=32768;this.b-=5},W,function(){this.aa=0;this.b-=5},W,W,W,function(){this.Y=32768;this.b-=5},W,W,W,W,W,W,W],hg=[lf,jf,ef,gf,of,pf,Ue,Ve,tf,Nf,ag,cg,eg,V,V,V],bg=[function(a){Fd(this,
-ne(this,a,0,255));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,Ce);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,1,Ge);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,1,Ee);this.b-=this.g?9:3+(7==this.f?2:0)}],dg=[function(a){R(this,a,0,Ie);this.b-=this.g?11:6},function(a){R(this,a,Ad(this)?1:0,se);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,Ad(this)?1:0,Oe);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=le(this,a);Fd(this,a<<8);this.b-=this.g?4:3+
-(7==this.f?2:0)}],fg=[function(a){R(this,a,0,Me);this.b-=this.g?9+(this.ub&1):3+(7==this.f?2:0)},function(a){R(this,a,0,Ke);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,we);this.b-=this.g?9+(this.ub&1):3+(7==this.f?2:0)},function(a){R(this,a,0,ue);this.b-=this.g?9:3+(7==this.f?2:0)}];function xd(a){kg[a>>12].call(this,a)}
-var kg=[function(a){lg[a>>8&15].call(this,a)},Cf,qf,$e,We,Ye,Re,function(a){mg[a>>8&15].call(this,a)},function(a){ng[a>>8&15].call(this,a)},Df,rf,af,Xe,Ze,Lf,V],lg=[function(a){og[a>>4&15].call(this,a)},nf,kf,bf,cf,hf,df,ff,Af,Af,Rf,Tf,Vf,function(a){pg[a>>6&3].call(this,a)},V,V],pg=[function(a){a=this.u[7]+((a&63)<<1)&65535;var b=this.sa(a|this.R);N(this,this.u[5]);this.u[6]=a+2&65535;this.u[5]=b;this.b-=8},function(a){a=ge(this,a,0);$d(this,a);Q(this,a);this.b-=11},function(a){var b=be(this);this.K=
-this.b;he(this,a,0,b);Q(this,b);this.b=this.K-Ef[this.g]},function(a){Q(this,oe(this,a,this.Ta?65535:0));this.b-=this.g?9:3+(7==this.f?2:0)}],og=[function(a){qg[a&15].call(this,a)},V,V,V,yf,yf,yf,yf,Jf,function(a){a&8?(this.N&49152||(this.N=this.N&-2017|(a&7)<<5,this.I|=1),this.b-=5):V.call(this,a)},Xf,Zf,Mf,Mf,Mf,Mf],qg=[uf,Of,If,mf,wf,Hf,function(){ae(this);this.b-=13},function(){this.na(8,6)},V,V,V,V,V,V,V,V],mg=[Ff,Ff,sf,sf,Se,Se,Te,Te,Pf,Pf,V,V,V,V,Kf,Kf],ng=[lf,jf,ef,gf,of,pf,Ue,Ve,tf,Nf,ag,
-cg,eg,function(a){rg[a>>6&3].call(this,a)},V,V],rg=[V,function(a){a=ge(this,a,65536);$d(this,a);Q(this,a);this.b-=11},function(a){var b=be(this);this.K=this.b;he(this,a,65536,b);Q(this,b);this.b=this.K-Ef[this.g]},V];
-function sg(a){t.call(this,"ROM",a,sg);this.ha=this.g=null;this.w=a.addr;this.f=a.size;this.D=!1;this.B=a.alias;this.C=a.file;this.H=ra(this.C);if(this.C){a=this.C;var b=sa(this.H);"json"!=b&&"hex"!=b&&(a=Fa()+"/api/v1/dump?file="+this.C+"&format=bytes&decimal=true");var c=this;Da(a,null,!0,function(a,b,f){f?(c.P("Unable to load ROM resource (error "+f+": "+a+")"),c.C=null):(mb(c.Qa,a,b),(a=Ea(a,b))?(c.g=a.da,c.ha=a.ha):c.C=null);tg(c)})}}z(sg);k=sg.prototype;
-k.Fa=function(a,b,c,d){this.v=b;this.b=c;this.i=d;tg(this)};k.Ha=function(){this.ha&&(this.i&&ug(this.i,this.id,this.w,this.f,this.ha),delete this.ha);return!0};k.Ga=function(){return!0};
-function tg(a){if(!sb(a)){if(a.C){if(!a.g||!a.v)return;a.f||(a.f=a.g.length);if(a.g.length!=a.f)ub(a,"ROM size ("+p(a.g.length,8,!0)+") does not match specified size ("+p(a.f,8,!0)+")");else{var b;a:{b=a.w;a.status(a.f+"-byte ROM at "+qa(b));if(57344<=b&&b<57344+kc){var c={};b=(c[b]=[sg.prototype.Ld,sg.prototype.De,null,null,null,a.f>>1],c);if(Cb(a.v,a,b,256,a.Ya)){b=a.D=!0;break a}}else if(uc(a.v,b,a.f,Zc)){for(c=0;c>>a.ka;0=b.length)break;for(var h=h+2,m=b[h++]&255|(b[h++]&255)<<8,n=b[h++]&255|(b[h++]&255)<<8,l=l+((m&255)+(m>>8)+(n&255)+(n>>8)),v=h,r=m-=6;0=b.length)break;l+=b[h++]&255;if(l&255)break;if(r)for(;r--;)a.b.rb(n++,b[v++]&255);else n&1?a.b.ga():zd(a.b,n,f);g=!0}else h++;else h+=2}if(!g&&(null==c&&(c=e),null!=c)){for(e=0;e=b)a.preventDefault&&a.preventDefault(),64e.K&&(e.K-=32),e.f|=128,e.f&64&&Mc(e.b,e.ja))});this.la=Oc(52,4);this.$=Lc(this.b,function(){e.g|=128;e.g&64&&Mc(e.b,e.la)});Cb(b,this,Tg);H(this)};
-k.yc=function(){if(!this.J){var a=ld(this.C,"connection");if(a){var b=a.split("->");if(2==b.length){var c=xa(b[0]);if(c!=this.Ya)return;b=xa(b[1]);if(this.J=ob(b)){var d=this.J.exports;if(d){var e=d.connect;e&&e.call(this.J);if(this.L=d.receiveData){this.status(this.Qa+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.Ha=function(a,b){if(!b)if(this.yc(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
-k.Ga=function(a){return a?this.save():!0};k.reset=function(){Ug(this)};k.save=function(){var a=new O(this);a.set(0,[]);return a.data()};k.restore=function(){return Ug(this)};function Ug(a){a.K=0;a.f=0;a.g=128;a.w=[];return!0}k.jc=function(a){if("number"==typeof a)this.w.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.S||8,c=a-this.H%a,this.S&&(b=wa("",c)));this.O&&!this.H&&c&&(b=String.fromCharCode(this.O)+b);this.B.value+=b;this.B.scrollTop=this.B.scrollHeight;this.H+=c}else if(null!=this.D){if(10==a||1024<=this.D.length)this.j(this.D),
-this.D="";10!=a&&(this.D+=String.fromCharCode(a))}this.g&=-129;Nc(this.b,this.$,1E3/Math.round(this.R/10))}};var Vg={},Tg=(Vg[65392]=[null,null,X.prototype.Fd,X.prototype.xe,"RCSR"],Vg[65394]=[null,null,X.prototype.Ed,X.prototype.we,"RBUF"],Vg[65396]=[null,null,X.prototype.Zd,X.prototype.Re,"XCSR"],Vg[65398]=[null,null,X.prototype.Yd,X.prototype.Qe,"XBUF"],Vg);Wa(function(){for(var a=D(document,"pdp11","serial"),b=0;b'+b+"");a.innerHTML=b}},!0;case "descTape":return this.G[b]=c,!0;case "loadTape":e=2;case "attachTape":return e||(e=1),this.G[b]=c,c.onclick=
-function(){var a=d.G.listTapes;a&&Yg(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.O){c.parentNode.removeChild(c);break}this.G[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;Yg(d,ra(b,!0),b,1,a)}return!1};return!0;case "readProgress":return this.G[b]=c,!0}return!1};
-k.Fa=function(a,b,c,d){this.C=a;this.v=b;this.b=c;this.i=d;this.S=Zg(a);var e=this;if((this.g=ld(this.C,"autoMount")||this.g)&&"string"==typeof this.g)try{this.g=eval("("+this.g+")")}catch(f){q("PC11 auto-mount error: "+f.message+" ("+this.g+")"),this.g=null}this.W=Oc(56,4);this.ca=Lc(this.b,function(){1==(e.f&32769)&&!(e.f&128)&&e.Kc.indexOf("/api/v1/dump")&&(e=sa(c),f="json"==e||"gz"==e?encodeURI(c):Fa()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!Da(f,null,!0,function(e,f,g){var h=0>g&&a.C&&!a.C.A.ia;g?a.P('Unable to load tape "'+b+'" (error '+g+": "+e+")",h):(mb(a.Qa,e,f),(e=Ea(e,f))&&hh(a,b,c,d,e.da,e.Ka,
-e.Ja));a.A.ab=!1;a.D&&(a.D--,a.D||H(a));eh(a)})}function bh(a,b,c,d){if((a=a.G.listTapes)&&a.options){for(var e=0;e>2;var f=e=0,b=new DataView(b,0,d);a.b=Array(a.va);for(d=0;dc.indexOf("/api/v1/dump")&&(b=sa(c),"json"==b||"gz"==b?f=encodeURI(c):(d="path",e="&mbhd=10",!c.indexOf("http:")||!c.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(b)?(d="disk",e="&mbhd=0"):ta(c,"/")&&(d="dir"),f=Fa()+"/api/v1/dump?"+d+"="+encodeURIComponent(c)+(a.fc?"":e)+"&format=json"));return!!Da(f,
-null,!0,function(b,c,d){oh(a,b,c,d)})}
-function oh(a,b,c,d){var e=null;a.g=!1;var f=0>d&&a.C&&!a.C.A.ia;if(d)a.controller.P('Unable to load disk "'+a.Xa+'" (error '+d+": "+b+")",f);else{mb(a.controller.Qa,b,c);try{if(0g&&0c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+
-c+")");if(h.length)if(1==h.length)q(h[0]);else{a.va=h.length;a.Aa=h[0].length;a.ra=h[0][0].length;var l=h[0][0][0];a.La=l&&l.length||512;for(d=c=0;d>2,n=l.pattern;void 0===n&&(n=l.pattern=0);var v=l.data;if(void 0===v){var r=l.bytes;if(void 0!==r&&r.length){for(var w=m<<2,y=r.length;y>2,e=Array(d),f=0;f>2,c=(d>((b&3)<<3)&255;return c};k.write=function(a,b,c){if(this.g)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Ca?f=a.Pa+a.Ca&&(a.Ca+=f-(a.Pa+a.Ca)+1):(a.Pa=f,a.Ca=1);d[f]=d[f]&~(255<g)break;e|=g<=this.b.length||l>=this.b[h].length||m>=this.b[h][l].length){c="sector (CHS="+h+":"+l+":"+m+") out of range ("+
-b+" changes applied)";b=-1;break}if(this.g){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.b[h][l][m]){for(l=h.data.length;lb&&-2!=b&&this.controller.P("Unable to restore disk '"+this.Xa+": "+c);return b};
-k.toJSON=function(){var a;a=0;for(var b;b=qh(this,a++);)sh(b);a=JSON.stringify(this.b,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
-function sh(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function M(a){t.call(this,"RL11",a,M,2097152);this.B=a.autoMount||null;this.H=0;this.f=Array(4);this.L=!Oa("Mobi")&&window&&"FileReader"in window}z(M);k=M.prototype;
-k.ta=function(a,b,c){var d=this;switch(b){case "listDisks":return this.G[b]=c,c.onchange=function(){var a=d.G.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){q("RL11 option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b=''+b+"");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.G[b]=c,c.onchange=function(){var a=pa(c.value,10);null!=a&&th(d,a)},!0;case "loadDrive":return this.G[b]=
-c,c.onclick=function(){var a=d.G.listDisks;a&&uh(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.L){c.parentNode.removeChild(c);break}this.G[b]=c;c.onclick=function(){var a=d.G.listDrives;if(a&&a.options&&d.f)if(a=d.f[pa(a.value,10)||0])if(a=a.Da){var b;b="";for(var c=0,h;h=qh(a,c++);)for(var l=0,m=h.length;l>1),this.b=new Int32Array(this.A,0,this.size>>2),ad(this,Xc?bd:cd);else{a=this.b=Array(this.size>>
+2);for(f=0;f>2),b=0;b>8,c)},S:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ca:function(a,b){a&1&&this.v.Da(b,64,2);b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+
+1]&255)<<8},ta:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<>8);this.Sa=!0},O:function(a,b){if(this.i&&null!=this.F){var c=this.i;hd(c,this.F+a,1,c.M)&&c.fa(!0)}return this.hc(a,b)},Qa:function(a,b){if(this.i&&null!=this.F){var c=this.i;hd(c,this.F+a,2,c.M)&&c.fa(!0)}return this.ic(a,b)},ka:function(a,
+b,c){if(this.i&&null!=this.F){var d=this.i;hd(d,this.F+a,1,d.D)&&d.fa(!0)}this.f?this.B(a,b,c):this.$b(a,b,c)},wa:function(a,b,c){if(this.i&&null!=this.F){var d=this.i;hd(d,this.F+a,2,d.D)&&d.fa(!0)}this.f?this.B(a,b,c):this.nc(a,b,c)},M:function(a){return this.G[a]},R:function(a,b){a=this.G[a];this.i&&F(this.i,128)&&E(this.i,"Memory.readByte("+J(this.i,b)+"): "+J(this.i,a),!0);return a},X:function(a,b){a&1&&this.v.Da(b,64,2);return this.D.getUint16(a,!0)},$:function(a,b){a&1&&this.v.Da(b,64,2);a=
+this.I[a>>1];this.i&&F(this.i,128)&&E(this.i,"Memory.readWord("+J(this.i,b)+"): "+J(this.i,a),!0);return a},ia:function(a,b){this.G[a]=b;this.Sa=!0},Ya:function(a,b,c){this.G[a]=b;this.Sa=!0;this.i&&F(this.i,128)&&E(this.i,"Memory.writeByte("+J(this.i,c)+","+J(this.i,b)+")",!0)},va:function(a,b,c){a&1&&this.v.Da(c,64,4);this.D.setUint16(a,b,!0);this.Sa=!0},Aa:function(a,b,c){a&1&&this.v.Da(c,64,4);this.I[a>>1]=b;this.Sa=!0;this.i&&F(this.i,128)&&E(this.i,"Memory.writeWord("+J(this.i,c)+","+J(this.i,
+b)+")",!0)}};function sc(a,b,c){a.i=b;a.g=a.C=0;c&&((a.g=c.g)&&gd(a,fd,!1),(a.C=c.C)&&ed(a,fd,!1))}function id(a,b){b?--a.C||(a.Zb=a.f?a.B:a.$b,a.Nb=a.f?a.H:a.nc):--a.g||(a.Vb=a.hc,a.qa=a.ic)}function ed(a,b,c){c&&a.C||(a.Zb=!a.f&&b[1]||a.B,a.Nb=!a.f&&b[3]||a.H);if(c||void 0===c)a.$b=b[1]||a.B,a.nc=b[3]||a.H}function gd(a,b,c){c&&a.g||(a.Vb=b[0]||a.J,a.qa=b[2]||a.L);if(c||void 0===c)a.hc=b[0]||a.J,a.ic=b[2]||a.L}function ad(a,b){b||(b=jd);gd(a,b,void 0);ed(a,b,void 0)}
+var jd=[],dd=[I.prototype.S,I.prototype.ta,I.prototype.ca,I.prototype.Na],fd=[I.prototype.O,I.prototype.ka,I.prototype.Qa,I.prototype.wa];if(zb)var cd=[I.prototype.M,I.prototype.ia,I.prototype.X,I.prototype.va],bd=[I.prototype.R,I.prototype.Ya,I.prototype.$,I.prototype.Aa];
+function kd(a,b){t.call(this,"CPU",a,kd,1);var c=a.multiplier||1;this.kb=a.cycles||b;this.eb=c;this.ub=Math.round(this.kb/1E4)/100;this.ob=this.ub*this.eb;this.w.W=!1;this.w.Yb=!1;this.w.sb=a.autoStart;this.w.vb=!1;this.Hb=this.ta=0;this.Ib=a.csStart;this.wb=a.csInterval;this.xb=a.csStop;this.L=[];this.zc=this.$d.bind(this);H(this)}z(kd);var ld=["power","reset"];k=kd.prototype;
+k.Ea=function(a,b,c,d){this.C=a;this.v=b;this.i=d;this.B=a.B;for(b=0;b=a.ta&&(a.ta+=a.wb,c=!0);0<=a.xb&&a.xb<=rd(a)&&(a.wb=a.xb=-1,od(a),a.fa(),c=!0);c&&a.j(rd(a)+" cycles: checksum="+p(a.Hb))}}
+k.ra=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.G[b]=c,!0;case "run":return this.G[b]=c,c.onclick=function(){var a;if(a=d.C)if(a=d.C,a.w.ha)a=!0;else{var b=null,c,h=rb(a.id);for(c=0;ca.$/a.ob?b=1:d=!0;a.eb=b;b=a.ub*a.eb;if(a.ob!=b){a.ob=b;b=a.ob.toFixed(2)+"Mhz";var e=a.G.setSpeed;e&&(e.textContent=b);a.j("target speed: "+b)}c&&a.C&&a.C.rb()}dc(a,a.X);a.X=0;a.S=Aa();a.ca=0;td(a);return d}function Mc(a,b){var c=a.L.length;a.L.push([-1,b]);return c}function Oc(a,b,c,d){0<=b&&ba.L[b][0])&&(c=a.kb*a.eb/1E3*c|0,a.w.W&&(c+=ud(a)),a.L[b][0]=c)}
+function vd(a,b){for(var c=a.L.length-1;0<=c;c--){var d=a.L[c];0>d[0]||b>d[0]&&(b=d[0])}return b}function cc(a,b){for(var c=a.L.length-1;0<=c;c--){var d=a.L[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function ud(a,b){var c=a.ia-=a.b;a.b=a.J=0;b&&(a.ia=0);return c}
+k.$d=function(){if(this.w.W){this.Eb>=this.kb&&td(this,!0);this.Aa=0;this.lb=Aa();if(this.ca){var a=this.lb-this.ca;a>this.Ub&&(this.S+=a,this.S>this.lb&&(this.S=this.lb))}try{do{var b=vd(this,this.w.vb?1:this.mb);try{this.jb(b)}catch(e){if("number"!=typeof e)throw e;}b=ud(this,!0);this.Aa+=b;this.X+=b;ec(this,b);cc(this,b);this.va-=b;if(0>=this.va){this.va+=this.mb;15<=++this.xc&&(this.oa(),this.xc=0);break}}while(this.w.W)}catch(e){this.fa();this.C&&this.C.stop(Aa(),rd(this));yb(this,e.stack||e.message);
+return}if(this.w.W){a=setTimeout;b=this.zc;this.ca=Aa();var c=this.Ub;this.Aa&&(c=Math.round(c*this.Aa/this.mb));var c=c-(this.ca-this.lb),d=this.ca-this.S;d&&(this.$=Math.round(this.X/(10*d))/100,864E5<=d&&(this.ka=0,sd(this)));if(0>c||this.$c&&(this.S-=c),c=0;this.Eb+=this.Aa;this.ca+=c;a(b,c)}}};
+k.ib=function(a){if(xb(this))return!1;if(this.w.W)return this.j(this.toString()+" busy"),!1;sd(this);this.w.W=!0;this.w.Yb=!0;var b=this.G.run;b&&(b.textContent="Halt");this.C&&(a&&this.C.rb(!0),this.C.start(this.S,rd(this)));setTimeout(this.zc,0);return!0};k.jb=function(){return 0};k.fa=function(a){var b=!1;if(this.w.W){ud(this);dc(this,this.X);this.X=0;this.w.W=!1;if(b=this.G.run)b.textContent="Run";this.C&&this.C.stop(Aa(),rd(this));b=!0}this.w.complete=a;return b};
+function wd(a){this.cb=+a.model||1170;this.Ob=a.addrReset||0;kd.call(this,a,6666667);this.decode=1120==this.cb?xd.bind(this):yd.bind(this);zd(this);this.M=0;this.O=null;this.w.complete=!1}z(wd,kd);k=wd.prototype;k.reset=function(){this.status("model "+this.cb);this.w.W&&this.fa();zd(this);nd(this);this.w.error=!1;this.parent.reset.call(this)};
+function zd(a){a.T=65536;a.U=32768;a.aa=65535;a.Z=32768;a.N=15;a.u=[0,0,0,0,0,0,0,a.Ob];a.Wa=[0,0,0,0,0,0];a.Ia=[0,0,0,0];a.A=0;a.Za=0;a.Uc=[4,2,0,1];a.V=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.xa=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.Lb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0,0];a.Ec=[0,0,0,0,0,0,0,0];a.Dc=0;a.K=0;a.H=a.I=0;a.g=a.f=a.tb=0;a.wa=-1;bc(a)}function bc(a){a.Wb=255;a.Ha=0;a.kc=0;a.D=0;a.fb=0;a.Kb=0;a.pb=0;a.Ua=0;a.Na=0;a.Sb=262143;a.O=null;a.v&&Rc(a)}function Rc(a){a.Ua?(a.R=65536,a.ba=a.Tc,a.qa=a.Xd,a.Nb=a.Pe,uc(a.v,a.pb&16?22:18)):(a.R=0,a.ba=a.Sc,a.qa=a.Cc,a.Nb=a.Jc,uc(a.v,16))}k.uc=function(){return 0};k.save=function(){var a=new N(this);a.set(0,[]);a.set(1,[this.ka,this.eb]);a.set(2,Dc(this.v));return a.data()};
+k.restore=function(a){var b=a[1];this.ka=b[1];sd(this,b[3]);a:{b=this.v;a=a[2];var c;for(c=0;c>14&3;c=a.N>>14&3;a.A!=c&&(a.Ia[c]=a.u[6],a.u[6]=a.Ia[a.A]);a.N=b;a.K|=2}function Q(a,b){a.K&128||(a.Z=a.aa=b,a.U=0)}function Fd(a,b,c){a.K&128||(a.Z=a.aa=a.T=b,a.U=c||0)}function Gd(a,b,c,d){a.K&128||(a.Z=a.aa=a.T=b,a.U=(c^b)&(d^b))}function Hd(a,b){a.K&128||(a.Z=a.aa=a.T=b,a.U=a.Z^a.T>>1)}
+function Id(a,b,c,d){a.K&128||(a.Z=a.aa=a.T=b,a.U=(c^d)&(d^b))}k.sa=function(a,b,c){if(!this.M){var d=!1;0>this.wa?this.wa=Sc(this):this.A||(a=4,d=!0);this.D&57344||(this.fb=63222,this.Kb=a);this.A=0;var e=this.qa(a|this.R),f=this.qa(a+2&65535|this.R);Tc(this,f&-12289|this.wa>>2&12288);d&&(this.Ha|=4,this.u[6]=4);be(this,this.wa);be(this,this.u[7]);O(this,e);this.K&=~b;this.wa=-1;this.K|=8;this.Yc=a;this.Xc=c;if(-18!=c)throw a;}};
+function ce(a){var b=de(a),c=de(a)&-1793;a.N&49152&&(c=c&-225|a.N&63712);O(a,b);Tc(a,c);a.K&=-17}function Cc(a,b){var c=b>>13&31;31>c&&a.pb&32&&(b=a.Lb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)"));return b}
+function ee(a,b,c){var d,e,f;if(!(c&a.Ua))return b;d=b>>13;a.pb&a.Uc[a.A]||(d&=7);e=a.V[a.A][d];f=(a.xa[a.A][d]<<6)+(b&8191)&a.Sb;var g=0;switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.V[a.A][d]=e;if(4194170!==f||a.A)a.Na=a.A,a.Za=d;b=!1;g&&(g&57344&&(0<=a.wa&&(g|=128),a.D&57344||(a.D=a.D|g|a.Na<<5|a.Za<<1),
+b=!0),a.D&61440||!(4191360>f||4194239c&&d&1&&(f=1));a.b-=3;break;case 3:f=2;e=a.u[c];7!=c&&(e|=g);e=a.qa(e);e|=g;a.b-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.u[c]+f&65535;7!=c&&(e|=g);a.b-=4;break;case 5:f=-2;e=a.u[c]-2&65535;7!=c&&(e|=g);e=a.qa(e)|g;a.b-=8;break;case 6:return e=a.qa(Ed(a,2)),e=e+a.u[c]&65535|g,a.b-=6,e;case 7:return e=a.qa(Ed(a,2)),e=
+e+a.u[c]&65535,e=a.qa(e|a.R)|g,a.b-=10,e}a.u[c]=a.u[c]+f&65535;!g||a.D&57344||(a.fb=a.fb<<8|f<<3&248|c);6==c&&0>f&&he(a,b,a.u[6]);return e}k.Tb=function(a){if(!this.Ua)return this.v.Tb(a);this.M++;a=fe(this,ee(this,a,3));this.M--;return a};k.bb=function(a){if(!this.Ua)return this.v.bb(a);this.M++;a=this.Cc(ee(this,a,2));this.M--;return a};k.qb=function(a,b){this.Ua?(this.M++,ge(this,ee(this,a,5),b),this.M--):this.v.qb(a,b)};
+k.Bb=function(a,b){this.Ua?(this.M++,this.Jc(ee(this,a,4),b),this.M--):this.v.Bb(a,b)};k.Sc=function(a,b,c){return ie(this,a,b,c)};k.Tc=function(a,b,c){return ee(this,ie(this,a,b,c),c)};k.Cc=function(a){return this.v.na(a)};k.Xd=function(a){return this.v.na(ee(this,a,2))};k.Jc=function(a,b){this.v.hb(a,b&65535)};k.Pe=function(a,b){this.v.hb(ee(this,a,4),b)};
+function je(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?(d=ie(a,b,d,2),c&65536||61440!==(a.N&61440)&&(d&=65535),a.A=a.N>>12&3,c=a.qa(d|c&a.R),a.A=a.N>>14&3):c=6!=d||(a.N>>2&12288)===(a.N&12288)?a.u[d]:a.Ia[a.N>>12&3];return c}function ke(a,b,c,d){a.D&57344||(a.fb=22);var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=ie(a,b,e,4),c&65536||(e&=65535),a.A=a.N>>12&3,e=ee(a,e|c&65536,4),a.A=a.N>>14&3,a.v.hb(e,d)):6!=e||(a.N>>2&12288)===(a.N&12288)?a.u[e]=d:a.Ia[a.N>>12&3]=d}
+function le(a,b){b>>=6;var c=a.I=b&7;return(b=a.H=(b&56)>>3)?fe(a,a.ba(b,c,3)):a.u[c]&255}function me(a,b){b>>=6;var c=a.I=b&7;return(b=a.H=(b&56)>>3)?a.v.na(a.ba(b,c,2)):a.u[c]}function ne(a,b){var c=a.f=b&7;b=a.g=(b&56)>>3;return ie(a,b,c,8)}function oe(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?fe(a,a.ba(b,c,3)):a.u[c]&255}function pe(a,b){var c=a.f=b&7;return(b=a.g=(b&56)>>3)?a.v.na(a.ba(b,c,2)):a.u[c]}
+function R(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.tb=a.ba(b,e,7),ge(a,e,d.call(a,c,fe(a,e)))):a.u[e]=a.u[e]&65280|d.call(a,c,a.u[e]&255)}function S(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.ba(b,e,6),a.v.hb(e,d.call(a,c,a.v.na(e)))):a.u[e]=d.call(a,c,a.u[e])}function qe(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?ge(a,a.ba(b,e,5),c):a.u[e]=c?a.u[e]&~d|c<<24>>24&d:a.u[e]&~d;return c}function re(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?a.v.hb(a.ba(b,d,4),c):a.u[d]=c&65535;return c}
+function T(a,b,c){c&&(O(a,a.u[7]+(b<<24>>23)),a.b-=2);a.b-=3}
+k.jb=function(a){this.w.complete=!0;var b=this.i&&se(this.i)?1:this.w.Yb?-1:0,c=a?this.w.Yb?0:1:-1;this.w.Yb=!1;this.ia=this.b=a;do{if(b){if(this.i&&te(this.i,this.u[7],c)){this.fa();break}c||c++;b++}if(this.K){this.K&112&&(this.K&32?this.sa(168,32,-7):this.K&16?this.sa(12,16,-9):this.K&64&&this.sa(4,64,-8));if(a=this.K&7){a=!1;if(this.K&2){this.K&=-3;var d=160,e=(this.kc&224)>>5,f=this.O&&this.O.yb>e?this.O:null;f&&(d=f.be,e=f.yb);e>(this.N&224)>>5?(this.K&4&&(Ed(this,2),this.K&=-5),this.sa(d,0,
+-18),e=!0):e=!1;if(e){if(f)if(a=f,f=this.O,f==a)this.O=a.next;else for(;f;){e=f.next;if(e==a){f.next=e.next;break}f=e}a=!0}}else this.K&1&&this.K++;a=a&&0>c}if(a)break}this.K=this.K&7|this.N&16;this.decode(Dd(this))}while(0>1|b<<16;Hd(this,a);return a&65535}function ze(a,b){a=b&128|b>>1|b<<8;Hd(this,a<<8);return a&255}function Ae(a,b){a=b&~a;Q(this,a);return a}function Be(a,b){a=b&~a;Q(this,a<<8);return a}function Ce(a,b){a|=b;Q(this,a);return a}function De(a,b){a|=b;Q(this,a<<8);return a}
+function Ee(a,b){a=~b|65536;Fd(this,a);return a&65535}function Fe(a,b){a=~b|256;Fd(this,a<<8);return a&255}function Ge(a,b){a=b-a;this.K&128||(this.Z=this.aa=a,this.U=b&(b^a));return a&65535}function He(a,b){a=b-a;var c=a<<8;b<<=8;this.K&128||(this.Z=this.aa=c,this.U=b&(b^c));return a&255}function Ie(a,b){a=b+a;this.K&128||(this.Z=this.aa=a,this.U=a&(b^a));return a&65535}function Je(a,b){a=b+a;var c=a<<8;this.K&128||(this.Z=this.aa=c,this.U=c&(b<<8^c));return a&255}
+function Ke(a,b){a=-b;Fd(this,a,a&b&32768);return a&65535}function Le(a,b){a=-b;Fd(this,a<<8,(a&b&128)<<8);return a&255}function Me(a,b){a=b<<1|this.T>>16&1;Hd(this,a);return a&65535}function Ne(a,b){a=b<<1|this.T>>16&1;Hd(this,a<<8);return a&255}function Oe(a,b){a=(this.T&65536|b)>>1|b<<16;Hd(this,a);return a&65535}function Pe(a,b){a=((this.T&65536)>>8|b)>>1|b<<8;Hd(this,a<<8);return a&255}function Qe(a,b){var c=b-a;Id(this,c,a,b);return c&65535}
+function Re(a,b){var c=b-a;Id(this,c<<8,a<<8,b<<8);return c&255}function Se(a,b){this.K&128||(this.Z=this.aa=b&65280,this.U=this.T=0);return(b<<8|b>>8)&65535}function Te(a,b){a^=b;Q(this,a);return a&65535}function Ue(a){S(this,a,me(this,a),ue);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}
+function Ve(a){var b=pe(this,a);a=a>>6&7;var c=this.u[a];c&32768&&(c|=4294901760);this.T=this.U=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.U=32768)}this.u[a]=c&65535;this.Z=this.aa=c;this.b-=(this.g?6:7)+b}
+function We(a){var b=pe(this,a);a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.T=this.U=0;b&=63;if(b&32){b=64-b;32>b-1;this.T=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.u[a|1]=d&65535;this.Z=d>>16;this.aa=d>>16|d;this.b-=(this.g?6:7)+b}function Xe(a){T(this,a,!Ad(this))}function Ye(a){T(this,a,Ad(this))}
+function Ze(a){S(this,a,me(this,a),Ae);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}function $e(a){R(this,a,le(this,a),Be);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}function af(a){S(this,a,me(this,a),Ce);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}function bf(a){R(this,a,le(this,a),De);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}
+function cf(a){Q(this,me(this,a)&pe(this,a));this.b-=this.g?4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}function df(a){Q(this,(le(this,a)&oe(this,a))<<8);this.b-=this.g?4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}function ef(a){T(this,a,Cd(this))}function ff(a){T(this,a,!this.Ta()==!Bd(this))}function gf(a){T(this,a,!Cd(this)&&!this.Ta()==!Bd(this))}function hf(a){T(this,a,!Ad(this)&&!Cd(this))}function jf(a){T(this,a,Cd(this)||!this.Ta()!=!Bd(this))}
+function kf(a){T(this,a,Ad(this)||Cd(this))}function lf(a){T(this,a,!this.Ta()!=!Bd(this))}function mf(a){T(this,a,this.Ta())}function nf(a){T(this,a,!Cd(this))}function of(a){T(this,a,!this.Ta())}function pf(){this.sa(12,0,-1);this.b-=5}function qf(a){T(this,a,!0)}function rf(a){T(this,a,!Bd(this))}function sf(a){T(this,a,Bd(this))}function U(a){a&1&&(this.T=0);a&2&&(this.U=0);a&4&&(this.aa=1);a&8&&(this.Z=0);this.b-=5}
+function tf(a){var b=me(this,a);a=pe(this,a);Id(this,b-a,a,b);this.b-=this.g?4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}function uf(a){var b=le(this,a)<<8;a=oe(this,a)<<8;Id(this,b-a,a,b);this.b-=this.g?4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)}
+function vf(a){var b=pe(this,a);if(b){a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.T=this.U=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.u[a]=d&65535,this.u[a|1]=c-d*b&65535,this.aa=d>>16|d,this.Z=d>>16):(this.U=32768,this.aa=d>>15|d,this.Z=c>>16,-1===b&&65534===this.u[a]&&(this.u[a]=this.u[a|1]=1));this.b-=53}else this.aa=this.Z=0,this.U=32768,this.T=65536,this.b-=7}function wf(){this.sa(24,0,-2);this.b-=25}
+function xf(){this.N&49152?(this.Ha|=128,this.sa(4,0,-3)):(this.B&&this.B.setData(this.u[0],!0),this.i?yf(this.i):this.fa());this.b-=7}function zf(){this.sa(16,0,-4);this.b-=25}var Af=[0,7,7,10,7,11,9,13];function Bf(a){this.J=this.b;O(this,ne(this,a));this.b=this.J-Af[this.g]}var Cf=[0,14,14,17,14,18,16,20];function Df(a){this.J=this.b;var b=ne(this,a);a=a>>6&7;be(this,this.u[a]);this.u[a]=this.u[7];O(this,b);this.b=this.J-Cf[this.g]}var Ef=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
+function Ff(a){var b=me(this,a);this.J=this.b;Q(this,re(this,a,b));this.b=this.J-Ef[(this.H?8:0)+this.g]+(7!=this.f||this.g?0:2)}function Gf(a){var b=le(this,a);Q(this,qe(this,a,b,65535)<<8);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}var Hf=[7,13,13,17,14,18,17,21];
+function If(a){var b=pe(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.u[a];c&32768&&(c|=-65536);b=~~(b*c);this.u[a]=b>>16&65535;this.u[a|1]=b&65535;this.K&128||(this.Z=b>>16,this.aa=this.Z|b,this.U=0,this.T=-32768>b||32767>6;if(this.u[b]=this.u[b]-1&65535)O(this,this.u[7]-((a&63)<<1)),this.b+=1;this.b-=6}function Of(a){S(this,a,me(this,a),Qe);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)}
+function Pf(a){S(this,a,0,Se);this.b-=this.g?9:3+(7==this.f?2:0)}function Qf(){this.sa(28,0,-5);this.b-=5}function Rf(){this.B&&(this.B.lc(this.u[7],!0),this.B.setData(this.u[0],!0));this.K|=4;Ed(this,-2);this.b-=3}function Sf(a){S(this,a,me(this,a),Te);this.b-=this.g?9:3+(7==this.f?2:0)}function V(a){var b;if(b=this.i)b=this.i,F(b,1)?(E(b,"undefined opcode "+J(b,a),!0,!0),b=yf(b)):b=!1;b||this.sa(8,0,-6)}function xd(a){Tf[a>>12].call(this,a)}function Uf(a){Vf[a>>6&3].call(this,a)}
+function Wf(a){Xf[a>>6&3].call(this,a)}function Yf(a){Zf[a>>6&3].call(this,a)}function $f(a){ag[a&15].call(this,a)}function bg(a){cg[a&15].call(this,a)}function dg(a){eg[a>>6&3].call(this,a)}function fg(a){gg[a>>6&3].call(this,a)}function hg(a){ig[a>>6&3].call(this,a)}
+var Tf=[function(a){jg[a>>8&15].call(this,a)},Ff,tf,cf,Ze,af,Ue,V,function(a){kg[a>>8&15].call(this,a)},Gf,uf,df,$e,bf,Of,V],jg=[function(a){lg[a>>4&15].call(this,a)},qf,nf,ef,ff,lf,gf,jf,Df,Df,Uf,Wf,Yf,V,V,V],Vf=[function(a){Fd(this,re(this,a,0));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,Ee);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,1,Ie);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,1,Ge);this.b-=this.g?9:3+(7==this.f?2:0)}],Xf=[function(a){S(this,a,0,
+Ke);this.b-=this.g?11:6},function(a){S(this,a,Ad(this)?1:0,ue);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,Ad(this)?1:0,Qe);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=pe(this,a);Fd(this,a);this.b-=this.g?4:3+(7==this.f?2:0)}],Zf=[function(a){S(this,a,0,Oe);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,Me);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,ye);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){S(this,a,0,we);this.b-=this.g?9:3+(7==this.f?2:0)}],
+lg=[function(a){mg[a&15].call(this,a)},V,V,V,Bf,Bf,Bf,Bf,Mf,V,$f,bg,Pf,Pf,Pf,Pf],mg=[xf,Rf,Lf,pf,zf,Kf,V,V,V,V,V,V,V,V,V,V],ag=[Jf,function(){this.T=0;this.b-=5},function(){this.U=0;this.b-=5},U,function(){this.aa=1;this.b-=5},U,U,U,function(){this.Z=0;this.b-=5},U,U,U,U,U,U,U],cg=[Jf,function(){this.T=65536;this.b-=5},function(){this.U=32768;this.b-=5},W,function(){this.aa=0;this.b-=5},W,W,W,function(){this.Z=32768;this.b-=5},W,W,W,W,W,W,W],kg=[of,mf,hf,kf,rf,sf,Xe,Ye,wf,Qf,dg,fg,hg,V,V,V],eg=[function(a){Fd(this,
+qe(this,a,0,255));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,Fe);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,1,Je);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,1,He);this.b-=this.g?9:3+(7==this.f?2:0)}],gg=[function(a){R(this,a,0,Le);this.b-=this.g?11:6},function(a){R(this,a,Ad(this)?1:0,ve);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,Ad(this)?1:0,Re);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=oe(this,a);Fd(this,a<<8);this.b-=this.g?4:3+
+(7==this.f?2:0)}],ig=[function(a){R(this,a,0,Pe);this.b-=this.g?9+(this.tb&1):3+(7==this.f?2:0)},function(a){R(this,a,0,Ne);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,ze);this.b-=this.g?9+(this.tb&1):3+(7==this.f?2:0)},function(a){R(this,a,0,xe);this.b-=this.g?9:3+(7==this.f?2:0)}];function yd(a){ng[a>>12].call(this,a)}
+var ng=[function(a){og[a>>8&15].call(this,a)},Ff,tf,cf,Ze,af,Ue,function(a){pg[a>>8&15].call(this,a)},function(a){qg[a>>8&15].call(this,a)},Gf,uf,df,$e,bf,Of,V],og=[function(a){rg[a>>4&15].call(this,a)},qf,nf,ef,ff,lf,gf,jf,Df,Df,Uf,Wf,Yf,function(a){sg[a>>6&3].call(this,a)},V,V],sg=[function(a){a=this.u[7]+((a&63)<<1)&65535;var b=this.qa(a|this.R);O(this,this.u[5]);this.u[6]=a+2&65535;this.u[5]=b;this.b-=8},function(a){a=je(this,a,0);be(this,a);Q(this,a);this.b-=11},function(a){var b=de(this);this.J=
+this.b;ke(this,a,0,b);Q(this,b);this.b=this.J-Hf[this.g]},function(a){Q(this,re(this,a,this.Ta?65535:0));this.b-=this.g?9:3+(7==this.f?2:0)}],rg=[function(a){tg[a&15].call(this,a)},V,V,V,Bf,Bf,Bf,Bf,Mf,function(a){a&8?(this.N&49152||(this.N=this.N&-2017|(a&7)<<5,this.K|=1),this.b-=5):V.call(this,a)},$f,bg,Pf,Pf,Pf,Pf],tg=[xf,Rf,Lf,pf,zf,Kf,function(){ce(this);this.b-=13},function(){this.sa(8,0,-6)},V,V,V,V,V,V,V,V],pg=[If,If,vf,vf,Ve,Ve,We,We,Sf,Sf,V,V,V,V,Nf,Nf],qg=[of,mf,hf,kf,rf,sf,Xe,Ye,wf,Qf,
+dg,fg,hg,function(a){ug[a>>6&3].call(this,a)},V,V],ug=[V,function(a){a=je(this,a,65536);be(this,a);Q(this,a);this.b-=11},function(a){var b=de(this);this.J=this.b;ke(this,a,65536,b);Q(this,b);this.b=this.J-Hf[this.g]},V];
+function vg(a){t.call(this,"ROM",a,vg);this.ga=this.g=null;this.A=a.addr;this.f=a.size;this.D=!1;this.B=a.alias;this.C=a.file;this.H=ra(this.C);if(this.C){a=this.C;var b=sa(this.H);"json"!=b&&"hex"!=b&&(a=Fa()+"/api/v1/dump?file="+this.C+"&format=bytes&decimal=true");var c=this;Da(a,null,!0,function(a,b,f){f?(c.P("Unable to load ROM resource (error "+f+": "+a+")"),c.C=null):(qb(c.Qa,a,b),(a=Ea(a,b))?(c.g=a.da,c.ga=a.ga):c.C=null);wg(c)})}}z(vg);k=vg.prototype;
+k.Ea=function(a,b,c,d){this.v=b;this.b=c;this.i=d;wg(this)};k.Ga=function(){this.ga&&(this.i&&xg(this.i,this.id,this.A,this.f,this.ga),delete this.ga);return!0};k.Fa=function(){return!0};
+function wg(a){if(!wb(a)){if(a.C){if(!a.g||!a.v)return;a.f||(a.f=a.g.length);if(a.g.length!=a.f)yb(a,"ROM size ("+p(a.g.length,8,!0)+") does not match specified size ("+p(a.f,8,!0)+")");else{var b;a:{b=a.A;a.status(a.f+"-byte ROM at "+qa(b));if(57344<=b&&b<57344+nc){var c={};b=(c[b]=[vg.prototype.Ld,vg.prototype.De,null,null,null,a.f>>1],c);if(Gb(a.v,a,b,256,a.Ya)){b=a.D=!0;break a}}else if(xc(a.v,b,a.f,$c)){for(c=0;c>>a.ja;0=b.length)break;for(var h=h+2,m=b[h++]&255|(b[h++]&255)<<8,n=b[h++]&255|(b[h++]&255)<<8,l=l+((m&255)+(m>>8)+(n&255)+(n>>8)),v=h,r=m-=6;0=b.length)break;l+=b[h++]&255;if(l&255)break;if(r)for(E(a,"loading "+p(r,4,!0)+" bytes at "+p(n,4,!0)+"-"+p(n+r-1,4,!0),1048576);r--;)a.b.qb(n++,b[v++]&255);else n&1?a.b.fa():null==d&&
+(d=n),null!=d&&E(a,"starting address: "+p(d,4,!0),1048576);g=!0}else h++;else h+=2}if(!g&&(null==c&&(c=e),null!=c)){for(g=0;g=b)a.preventDefault&&a.preventDefault(),64e.J&&(e.J-=32),e.f|=128,e.f&64&&Nc(e.b,e.ia))});this.ka=Pc(52,4);this.$=Mc(this.b,function(){e.g|=128;e.g&64&&Nc(e.b,e.ka)});Gb(b,this,Wg);H(this)};
+k.yc=function(){if(!this.I){var a=md(this.C,"connection");if(a){var b=a.split("->");if(2==b.length){var c=xa(b[0]);if(c!=this.Ya)return;b=xa(b[1]);if(this.I=sb(b)){var d=this.I.exports;if(d){var e=d.connect;e&&e.call(this.I);if(this.L=d.receiveData){this.status(this.Qa+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.Ga=function(a,b){if(!b)if(this.yc(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
+k.Fa=function(a){return a?this.save():!0};k.reset=function(){Xg(this)};k.save=function(){var a=new N(this);a.set(0,[]);return a.data()};k.restore=function(){return Xg(this)};function Xg(a){a.J=0;a.f=0;a.g=128;a.A=[];return!0}k.jc=function(a){if("number"==typeof a)this.A.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.S||8,c=a-this.H%a,this.S&&(b=wa("",c)));this.O&&!this.H&&c&&(b=String.fromCharCode(this.O)+b);this.B.value+=b;this.B.scrollTop=this.B.scrollHeight;this.H+=c}else if(null!=this.D){if(10==a||1024<=this.D.length)this.j(this.D),
+this.D="";10!=a&&(this.D+=String.fromCharCode(a))}this.g&=-129;Oc(this.b,this.$,1E3/Math.round(this.R/10))}};var Yg={},Wg=(Yg[65392]=[null,null,X.prototype.Fd,X.prototype.xe,"RCSR"],Yg[65394]=[null,null,X.prototype.Ed,X.prototype.we,"RBUF"],Yg[65396]=[null,null,X.prototype.Zd,X.prototype.Re,"XCSR"],Yg[65398]=[null,null,X.prototype.Yd,X.prototype.Qe,"XBUF"],Yg);Za(function(){for(var a=D(document,"pdp11","serial"),b=0;b'+b+"");a.innerHTML=b}},!0;case "descTape":return this.G[b]=c,!0;case "loadTape":e=2;case "attachTape":return e||(e=1),this.G[b]=c,c.onclick=
+function(){var a=d.G.listTapes;a&&ah(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.O){c.parentNode.removeChild(c);break}this.G[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;ah(d,ra(b,!0),b,1,a)}return!1};return!0;case "readProgress":return this.G[b]=c,!0}return!1};
+k.Ea=function(a,b,c,d){this.C=a;this.v=b;this.b=c;this.i=d;this.S=bh(a);var e=this;if((this.g=md(this.C,"autoMount")||this.g)&&"string"==typeof this.g)try{this.g=eval("("+this.g+")")}catch(f){q("PC11 auto-mount error: "+f.message+" ("+this.g+")"),this.g=null}this.X=Pc(56,4);this.ca=Mc(this.b,function(){1==(e.f&32769)&&!(e.f&128)&&e.Jc.indexOf("/api/v1/dump")&&(e=sa(c),f="json"==e||"gz"==e?encodeURI(c):Fa()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!Da(f,null,!0,function(e,f,g){var h=0>g&&a.C&&!a.C.w.ha;g?a.P('Unable to load tape "'+b+'" (error '+g+": "+e+")",h):(qb(a.Qa,e,f),(e=Ea(e,f))&&kh(a,b,c,d,e.da,e.Ka,
+e.Ja));a.w.ab=!1;a.D&&(a.D--,a.D||H(a));hh(a)})}function eh(a,b,c,d){if((a=a.G.listTapes)&&a.options){for(var e=0;e>2;var f=e=0,b=new DataView(b,0,d);a.b=Array(a.ua);for(d=0;dc.indexOf("/api/v1/dump")&&(b=sa(c),"json"==b||"gz"==b?f=encodeURI(c):(d="path",e="&mbhd=10",!c.indexOf("http:")||!c.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(b)?(d="disk",e="&mbhd=0"):ta(c,"/")&&(d="dir"),f=Fa()+"/api/v1/dump?"+d+"="+encodeURIComponent(c)+(a.fc?"":e)+"&format=json"));return!!Da(f,
+null,!0,function(b,c,d){rh(a,b,c,d)})}
+function rh(a,b,c,d){var e=null;a.g=!1;var f=0>d&&a.C&&!a.C.w.ha;if(d)a.controller.P('Unable to load disk "'+a.Xa+'" (error '+d+": "+b+")",f);else{qb(a.controller.Qa,b,c);try{if(0g&&0c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+
+c+")");if(h.length)if(1==h.length)q(h[0]);else{a.ua=h.length;a.za=h[0].length;a.pa=h[0][0].length;var l=h[0][0][0];a.La=l&&l.length||512;for(d=c=0;d>2,n=l.pattern;void 0===n&&(n=l.pattern=0);var v=l.data;if(void 0===v){var r=l.bytes;if(void 0!==r&&r.length){for(var w=m<<2,y=r.length;y>2,e=Array(d),f=0;f>2,c=(d>((b&3)<<3)&255;return c};k.write=function(a,b,c){if(this.g)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.Ba?f=a.Pa+a.Ba&&(a.Ba+=f-(a.Pa+a.Ba)+1):(a.Pa=f,a.Ba=1);d[f]=d[f]&~(255<g)break;e|=g<=this.b.length||l>=this.b[h].length||m>=this.b[h][l].length){c="sector (CHS="+h+":"+l+":"+m+") out of range ("+
+b+" changes applied)";b=-1;break}if(this.g){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(h=this.b[h][l][m]){for(l=h.data.length;lb&&-2!=b&&this.controller.P("Unable to restore disk '"+this.Xa+": "+c);return b};
+k.toJSON=function(){var a;a=0;for(var b;b=th(this,a++);)vh(b);a=JSON.stringify(this.b,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
+function vh(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function M(a){t.call(this,"RL11",a,M,4194304);this.B=a.autoMount||null;this.H=0;this.f=Array(4);this.L=!Ra("Mobi")&&window&&"FileReader"in window}z(M);k=M.prototype;
+k.ra=function(a,b,c){var d=this;switch(b){case "listDisks":return this.G[b]=c,c.onchange=function(){var a=d.G.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(h){q("RL11 option error: "+h.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b=''+b+"");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.G[b]=c,c.onchange=function(){var a=pa(c.value,10);null!=a&&wh(d,a)},!0;case "loadDrive":return this.G[b]=
+c,c.onclick=function(){var a=d.G.listDisks;a&&xh(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.L){c.parentNode.removeChild(c);break}this.G[b]=c;c.onclick=function(){var a=d.G.listDrives;if(a&&a.options&&d.f)if(a=d.f[pa(a.value,10)||0])if(a=a.Ca){var b;b="";for(var c=0,h;h=th(a,c++);)for(var l=0,m=h.length;lb;b++){var c=document.createElement("option");c.value=b;c.text="RL"+b;a.appendChild(c)}a.value="0";th(this,0)}}return!0};k.Ga=function(a){return a?this.save():!0};k.reset=function(){vh(this)};k.save=function(){return(new O(this)).data()};
-k.restore=function(a){return vh(this,a[0])};function yh(a,b){b||(a.H=0);if(a.B)for(var c in a.B){var d=a.B[c],e=d.path||"",f;if(!(f=d.name))a:{if((f=a.G.listDisks)&&f.options)for(var g=0;gg||9e||e>=a.f.length)a.P("Unable to load the selected drive");else if(c)if("?"==c)a.P('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ra(c);a.status("Attempting to load "+c+' as "'+b+'"')}Ah(a,e,b,c,!1,d)}else zh(a,e)}
-function Ah(a,b,c,d,e,f){var g=-1,h=a.f[b];h.gb.toLowerCase()!=d.toLowerCase()&&(g++,zh(a,b,!0),h.ec?a.P("RL11 busy"):(h.ec=!0,e&&(h.dc=!0,a.H++,F(a)&&E(a,"auto-loading disk: "+c)),h.Qb=!!f,nh(new jh(a,h,"preload"),c,d,f,a.Pc)&&g++));return g}
-k.Pc=function(a,b,c,d,e){var f;a.ec=!1;b&&(f=b.b.length?[b.b.length,b.b[0].length,b.b[0][0].length,b.b[0][0][0].length]:[0,0,0,0],b&&f[0]>a.va||f[1]>a.Aa)&&(this.P('Disk "'+c+'" too large for drive '+("RL"+a.gc)),b=null);b?(a.Da=b,a.Xa=c,a.gb=d,this.P('Mounted disk "'+c+'" in drive '+("RL"+a.gc),a.dc||e),this.C&&this.C.sb()):a.Qb=!1;a.dc&&(a.dc=!1,--this.H||H(this));th(this,a.gc)};
-function xh(a,b,c,d){if((a=a.G.listDisks)&&a.options){for(var e=0;e>12&48;this.K=f>>16&63;this.w=this.g=b<<7|(c?64:0)|d&63;this.D=65536-e&65535;a&&(this.ea=this.ea|a|32768);return!0};
-k.ld=function(a,b,c,d,e,f,g){var h=0,l=a.Da,m=null,n;l||(h=5120,e=0);for(;e--;){if(!m){m=a.Da.seek(b,c,d+1);if(!m){h=5120;break}n=0}var v,r;if(0>(v=a.Da.read(m,n++))||0>(r=a.Da.read(m,n++))){h=5120;break}this.v.hb(f,v|r<<8);if(Kc(this.v)){h=8192;break}f+=2;if(n>=l.La&&(m=null,++d>=l.ra&&(d=0,++c>=l.Aa&&(c=0,++b>=l.va)))){h=5120;break}}return g(h,b,c,d,e,f)};
-k.fe=function(a,b,c,d,e,f,g){var h=0,l=a.Da,m=null,n;l||(h=5120,e=0);for(;e--;){var v=this.v.pa(f);if(Kc(this.v)){h=8192;break}f+=2;if(!m){m=a.Da.seek(b,c,d+1,!0);if(!m){h=5120;break}n=0}if(!a.Da.write(m,n++,v&255)||!a.Da.write(m,n++,v>>8)){h=5120;break}if(n>=l.La&&(m=null,++d>=l.ra&&(d=0,++c>=l.Aa&&(c=0,++b>=l.va)))){h=5120;break}}return g(h,b,c,d,e,f)};k.Id=function(){return this.ea&65535};
-k.Ae=function(a){this.ea=this.ea&-1023|a&1022;this.M=this.M&-4|(a&48)>>4;if(!(this.ea&128)){var b;a=!0;var c=this.f[(this.ea&768)>>8],d,e,f,g;this.ea&=-2;switch(this.ea&14){case 4:this.g&8&&(this.ea&=63);this.D=c.status|this.w&64;break;case 6:1==(this.g&3)&&(b=this.g&65408,c=(this.g&16)<<2,this.w=this.g&4?this.w+b:this.w-b,this.g=this.w=this.w&65408|c);break;case 8:this.D=this.w;break;case 12:b=this.ld;case 10:b||(b=this.fe),d=this.g>>7,e=this.g&64?1:0,f=this.g&63,d>=c.va||f>=c.ra?this.ea|=37888:
-(g=(this.K&63)<<16|this.J,a=65536-this.D&65535,a=b.call(this,c,d,e,f,a,g,this.Qc.bind(this)))}a&&(this.ea|=129,this.ea&64&&Mc(this.b,this.O))}};k.Gd=function(){return this.J};k.ye=function(a){this.J=a&65534};k.Jd=function(){return this.g};k.Be=function(a){this.g=a};k.Kd=function(){return this.D};k.Ce=function(a){this.D=a};k.Hd=function(){return this.K};k.ze=function(a){this.K=a&63};
-var Bh={},wh=(Bh[63744]=[null,null,M.prototype.Id,M.prototype.Ae,"RLCS"],Bh[63746]=[null,null,M.prototype.Gd,M.prototype.ye,"RLBA"],Bh[63748]=[null,null,M.prototype.Jd,M.prototype.Be,"RLDA"],Bh[63750]=[null,null,M.prototype.Kd,M.prototype.Ce,"RLMP"],Bh[63752]=[null,null,M.prototype.Hd,M.prototype.ze,"RLBE"],Bh);function Ch(a){t.call(this,"Debugger",a,Ch);this.ca=a.base||16;this.Ba=!1;this.K=0;this.R=!1;this.w=-1;this.g=[];this.W={}}z(Ch);
-var Dh={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};Ch.prototype.vc=function(){return-1};Ch.prototype.wc=function(){};
-function Eh(a,b,c,d){if(c)if(b){0>a.w&&a.g.length&&(a.w=0);if(0>a.w||b!=a.g[a.w])a.g.splice(0,0,b),a.w=0;a.w--}else a.R?b="end":b=a.g[a.w+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(xa(b.substring(c,f))),c=f+1}}return a}
-function Fh(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break;
+!a.children[0].files.length}),c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;xh(d,ra(b,!0),b,a)}return!1},!0;c.parentNode.removeChild(c)}return!1};
+k.Ea=function(a,b,c,d){this.C=a;this.v=b;this.b=c;this.i=d;if((this.B=md(this.C,"autoMount")||this.B)&&"string"==typeof this.B)try{this.B=eval("("+this.B+")")}catch(e){q("RL11 auto-mount error: "+e.message+" ("+this.B+")"),this.B=null}yh(this);this.O=Pc(112,5);Gb(b,this,zh,4194304);Ah(this,"None","",!0);this.L&&Ah(this,"Local Disk","?");Ah(this,"Remote Disk","??");Bh(this)||H(this)};
+k.Ga=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.C.sc){for(a=0;ab;b++){var c=document.createElement("option");c.value=b;c.text="RL"+b;a.appendChild(c)}a.value="0";wh(this,0)}}return!0};k.Fa=function(a){return a?this.save():!0};k.reset=function(){yh(this)};k.save=function(){return(new N(this)).data()};
+k.restore=function(a){return yh(this,a[0])};function Bh(a,b){b||(a.H=0);if(a.B)for(var c in a.B){var d=a.B[c],e=d.path||"",f;if(!(f=d.name))a:{if((f=a.G.listDisks)&&f.options)for(var g=0;gg||9e||e>=a.f.length)a.P("Unable to load the selected drive");else if(c)if("?"==c)a.P('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=ra(c);a.status("Attempting to load "+c+' as "'+b+'"')}Dh(a,e,b,c,!1,d)}else Ch(a,e)}
+function Dh(a,b,c,d,e,f){var g=-1,h=a.f[b];h.gb.toLowerCase()!=d.toLowerCase()&&(g++,Ch(a,b,!0),h.ec?a.P("RL11 busy"):(h.ec=!0,e&&(h.dc=!0,a.H++,F(a)&&E(a,"auto-loading disk: "+c)),h.Pb=!!f,qh(new mh(a,h,"preload"),c,d,f,a.Pc)&&g++));return g}
+k.Pc=function(a,b,c,d,e){var f;a.ec=!1;b&&(f=b.b.length?[b.b.length,b.b[0].length,b.b[0][0].length,b.b[0][0][0].length]:[0,0,0,0],b&&f[0]>a.ua||f[1]>a.za)&&(this.P('Disk "'+c+'" too large for drive '+("RL"+a.gc)),b=null);b?(a.Ca=b,a.Xa=c,a.gb=d,this.P('Mounted disk "'+c+'" in drive '+("RL"+a.gc),a.dc||e),this.C&&this.C.rb()):a.Pb=!1;a.dc&&(a.dc=!1,--this.H||H(this));wh(this,a.gc)};
+function Ah(a,b,c,d){if((a=a.G.listDisks)&&a.options){for(var e=0;e>12&48;this.J=f>>16&63;this.A=this.g=b<<7|(c?64:0)|d&63;this.D=65536-e&65535;a&&(this.ea=this.ea|a|32768);return!0};
+k.ld=function(a,b,c,d,e,f,g){var h=0,l=a.Ca,m=null,n;l||(h=5120,e=0);for(;e--;){if(!m){m=a.Ca.seek(b,c,d+1);if(!m){h=5120;break}n=0}var v,r;if(0>(v=a.Ca.read(m,n++))||0>(r=a.Ca.read(m,n++))){h=5120;break}this.v.hb(f,v|r<<8);if(Lc(this.v)){h=8192;break}f+=2;if(n>=l.La&&(m=null,++d>=l.pa&&(d=0,++c>=l.za&&(c=0,++b>=l.ua)))){h=5120;break}}return g(h,b,c,d,e,f)};
+k.fe=function(a,b,c,d,e,f,g){var h=0,l=a.Ca,m=null,n;l||(h=5120,e=0);for(;e--;){var v=this.v.na(f);if(Lc(this.v)){h=8192;break}f+=2;if(!m){m=a.Ca.seek(b,c,d+1,!0);if(!m){h=5120;break}n=0}if(!a.Ca.write(m,n++,v&255)||!a.Ca.write(m,n++,v>>8)){h=5120;break}if(n>=l.La&&(m=null,++d>=l.pa&&(d=0,++c>=l.za&&(c=0,++b>=l.ua)))){h=5120;break}}return g(h,b,c,d,e,f)};k.Id=function(){return this.ea&65535};
+k.Ae=function(a){this.ea=this.ea&-1023|a&1022;this.M=this.M&-4|(a&48)>>4;if(!(this.ea&128)){var b;a=!0;var c=this.f[(this.ea&768)>>8],d,e,f,g;this.ea&=-2;switch(this.ea&14){case 4:this.g&8&&(this.ea&=63);this.D=c.status|this.A&64;break;case 6:1==(this.g&3)&&(b=this.g&65408,c=(this.g&16)<<2,this.A=this.g&4?this.A+b:this.A-b,this.g=this.A=this.A&65408|c);break;case 8:this.D=this.A;break;case 12:b=this.ld;case 10:b||(b=this.fe),d=this.g>>7,e=this.g&64?1:0,f=this.g&63,d>=c.ua||f>=c.pa?this.ea|=37888:
+(g=(this.J&63)<<16|this.I,a=65536-this.D&65535,a=b.call(this,c,d,e,f,a,g,this.Qc.bind(this)))}a&&(this.ea|=129,this.ea&64&&Nc(this.b,this.O))}};k.Gd=function(){return this.I};k.ye=function(a){this.I=a&65534};k.Jd=function(){return this.g};k.Be=function(a){this.g=a};k.Kd=function(){return this.D};k.Ce=function(a){this.D=a};k.Hd=function(){return this.J};k.ze=function(a){this.J=a&63};
+var Eh={},zh=(Eh[63744]=[null,null,M.prototype.Id,M.prototype.Ae,"RLCS"],Eh[63746]=[null,null,M.prototype.Gd,M.prototype.ye,"RLBA"],Eh[63748]=[null,null,M.prototype.Jd,M.prototype.Be,"RLDA"],Eh[63750]=[null,null,M.prototype.Kd,M.prototype.Ce,"RLMP"],Eh[63752]=[null,null,M.prototype.Hd,M.prototype.ze,"RLBE"],Eh);function Fh(a){t.call(this,"Debugger",a,Fh);this.ca=a.base||16;this.Aa=!1;this.J=0;this.R=!1;this.A=-1;this.g=[];this.X={}}z(Fh);
+var Gh={"||":0,"&&":1,"|":2,"^":3,"&":4,"!=":5,"==":5,">=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};Fh.prototype.vc=function(){return-1};Fh.prototype.wc=function(){};
+function Hh(a,b,c,d){if(c)if(b){0>a.A&&a.g.length&&(a.A=0);if(0>a.A||b!=a.g[a.A])a.g.splice(0,0,b),a.A=0;a.A--}else a.R?b="end":b=a.g[a.A+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(xa(b.substring(c,f))),c=f+1}}return a}
+function Ih(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break;
case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d=f||e?1:0;break;default:return!1}a.push(d|0)}return!0}
-function Gh(a,b,c){var d;if(b){b=Hh(a,b);for(var e=0,f=!1,g=b,h=[],l=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1;g=n+g;d>>=8}d=p(c,0,!0)+" "+c+". "+qa(c,0,!0)+" "+("0b"+g);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.j((null!=b?b+": ":"")+d);return e}function Kh(a,b){if(b)return Jh(a,b,a.W[b]);var c=0;for(b in a.W)Jh(a,b,a.W[b]),c++;return 0=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1;g=n+g;d>>=8}d=p(c,0,!0)+" "+c+". "+qa(c,0,!0)+" "+("0b"+g);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.j((null!=b?b+": ":"")+d);return e}function Nh(a,b){if(b)return Mh(a,b,a.X[b]);var c=0;for(b in a.X)Mh(a,b,a.X[b]),c++;return 0this.b.pb?Th:[];Uh(this,function(a){a:{var b=d.v.X,c=a[0],e=a=0,l=b.length;if(c){a=d.ba(Vh(d,c));if(-1===a){d.j("invalid address: "+c);break a}e=a>>>d.v.ka;l=1}d.j("blockid physical blockaddr used size type");d.j("-------- --------- ---------- ------ ------ ----");for(var c=-1,m=0;l--;){var n=b[e];n.type==c?m++||d.j("..."):(c=n.type,m=yc[c],n&&d.j(p(n.id,8)+" %"+
-p(e<d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;db||7a?"R"+a:6==a?"SP":"PC"}k.wc=function(a){var b;0<=a&&(8>a?b=this.b.u[a]:16>a?b=this.b.Wa[a-8]:20>a?b=this.b.Ia[a-16]:20==a?b=Rc(this.b):21==a&&this.B&&hc(this.B)&&(b=this.B.Va));return b};
-k.message=function(a,b){b&&(a+=" @"+J(this,Y(this.b.Lb).F));this.oa&1073741824?this.wa.push(a):this.ja&&a==this.ja||(this.ja=a,this.oa&-2147483648&&this.b&&this.b.A.Z&&(this.ga(),a+=" (cpu halted)"),this.j(a),this.b&&(a=this.b,td(a),a.wa=0,a.qa()))};function Nh(a){var b;if(!pe(a))a.H&&a.H.length&&a.j("instruction history buffer freed"),a.$=0,a.H=[];else if(!a.H||!a.H.length){a.H=Array(1E3);for(b=0;b>8;a.j("trapped to "+J(a,c&255,1)+(d?" ("+J(a,d)+")":""))}a.L=Y(a.b.u[7]);b&&1!=a.S?bi(a):ci(a)}}function ai(a,b){var c;(c=!a.b||!sb(a.b))||(c=a.b,c.A.ia?c=!0:(c.j(c.toString()+" not powered"),c=!1),c=!c);return c||a.b.A.Z?(b||a.j("cpu busy or unavailable, command ignored"),!1):!tb(a.b)}k.Ha=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};
-k.Ga=function(a,b){b&&this.j(a?"suspending":"shutting down");return a?this.save():!0};k.reset=function(a){Nh(this);this.xa=0;this.ja=null;this.K=0;this.L=Y(this.b.u[7]);this.A.Z=!1;di(this);a||od(this)};k.save=function(){var a=new O(this);a.set(0,Xh(this.L));a.set(1,Xh(this.O));a.set(2,[this.g,this.R,this.oa]);a.set(3,this.J);return a.data()};
-k.restore=function(a){var b=0;void 0!==a[2]&&(this.L=Yh(a[b++]),this.O=Yh(a[b++]),this.g=a[b][0],"string"==typeof this.g&&(this.g=[this.g]),this.R=a[b][1],this.oa|=a[b][2]);a[3]&&(this.J=a[3]);return!0};k.start=function(a,b){this.S||this.j("running");this.A.Z=!0;this.Pb=a;this.Tb=b};
-k.stop=function(a,b){if(this.A.Z){this.A.Z=!1;this.K=b-this.Tb;if(!this.S){b="stopped";if(this.K){a-=this.Pb;var c=0d&&(d=a.b.bb(b)),65535!=(d&65535)&&(a.lc(a.H[a.$],b),++a.$==a.H.length&&(a.$=0)));return!1}function vf(a){var b=a.b;if(b.A.Z)throw N(b,a.b.Lb),a.ga(),-1;return!1}
-function Mh(a){var b,c;a.f=["bp"];if(a.M)for(b=1;b>>d.ka],!1)}a.M=["br"];if(a.D)for(b=1;b>>d.ka],!0);a.D=["bw"];a.mb=0}k.nb=function(a,b,c){var d=!0;c||ei(this,a,b,!1,!0);if(a!=this.f){var e=this.ba(b);if(-1===e)this.j("invalid address: "+J(this,b.F)),d=!1;else{var f=this.v;f.X[e>>>f.ka].nb(e&f.v,a==this.D)}}d&&(a.push(b),c?b.Oa=!0:(fi(this,a,a.length-1,"set"),Nh(this)));return d};
-function ei(a,b,c,d,e){var f=!1;c=a.ba(c);for(var g=1;g>>d.ka],b==a.D));h.Oa||Nh(a);break}}return f}function gi(a,b){for(var c=1;c>23)&65535,x=J(w,r);else if(8192==A)r=r.F-((f&63)<<1)&65535,x=J(w,r);else if(12288==A)x=J(w,f&7,1);else if(24576==A)x=J(w,f&63,1);else if(32768==A)x=J(w,f&255,1);else if(A=f&y,y&4032&&(A>>=6,y>>=6),
-y&63)switch(y=A&7,A&56){case 0:x=$h(y);break;case 8:x="@"+$h(y);break;case 16:7>y?x="("+$h(y)+")+":(A=w.pa(r,2),x="#"+J(w,A,0,!0));break;case 24:7>y?x="@("+$h(y)+")+":(A=w.pa(r,2),x="@#"+J(w,A,0,!0));break;case 32:x="-("+$h(y)+")";break;case 40:x="@-("+$h(y)+")";break;case 48:A=w.pa(r,2);x=J(w,A,0,!0)+"("+$h(y)+")";7==y&&(x=J(w,A+r.F&65535));break;case 56:A=w.pa(r,2),x="@"+J(w,A)+"("+$h(y)+")",7==y&&(x="@"+J(w,A+r.F&65535))}w=x;if(!w||!w.length){h="INVALID";break}"string"!=typeof w&&(m=w[1],w=w[0]);
-0b?(c=$h(b),c+="="+J(a,d.u[b])):13>b?c="A"+(b-8)+"="+J(a,d.Wa[b-8]):16<=b&&20>b?c="S"+(b-16)+"="+J(a,d.Ia[b-16]):20==b?c="PS="+J(a,Rc(d)):21==b&&a.B&&hc(a.B)&&(c="SW="+J(a,a.B.Va,3));c&&(c+=" ");return c}function li(a){var b,c="";for(b=0;6>b;b++)c+=ki(a,b);c=c+"\n"+(ki(a,6)+ki(a,7));c+=ki(a,20)+ki(a,21);return c+=ji(a,"T")+ji(a,"N")+ji(a,"Z")+ji(a,"V")+ji(a,"C")}k.qc=function(a,b){return a[0]>b[0]?1:a[0]>>0,g],v=za(n,l,a.qc);0>v&&n.splice(-(v+1),0,l)}m&&(h.a=m.replace(/''/g,'"'))}a.J.push({Xe:b,F:c,Wc:d,ha:e,oc:f})}function mi(a,b,c){var d=[],e=a.ba(b)>>>0;for(b=0;b>>0,h=f.Wc;if(e>=g&&eb)){d.u[b]=f&65535;break}a.j("unknown register: "+e);return}a.C.qa();a.j("updated registers:")}a.j(li(a));c&&(a.L=Y(d.u[7]),ci(a,J(a,a.L.F)))}}function qi(a,b){b=xa(b);var c=b.match(/^(['"])(.*?)\1$/);c?1h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.j(m)}h[3]&&(g=h[3],f=null);f=ii(a,b,g,f);a.j(f);a.L=b;e-=b.F-l;c++}}}
-function hi(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.j(">> "+b):(a.R&&(a.j("ended assemble at "+J(a,a.O.F)),a.L=a.O,a.R=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.ja=null;if(sb(a)&&0n||"z"ma.length&&(a.j("note: only "+ma.length+" available"),Z=ma.length);fa-=Z;0>fa&&(null==ma[ma.length-1].F?(Z=fa+Z,fa=0):fa+=ma.length);var Jd=[];"call"==Bg&&(Jb=1E5,Jd=["CALL"]);for(void 0!==Ag&&a.j(Z+" instructions earlier:");0=ma.length&&(fa=0);a.ub=Z;Dg++;Jb--}}Dg||(a.j("no "+Cg+"history available"),a.ub=void 0)}else{var Lb=Vh(a,la);if(Lb){var Bc=0;La&&("l"==La.charAt(0)&&(La=La.substr(1)||Ki),Bc=Ih(a,La)>>>0,65536>4||1,Nb="";Mi--&&0Ec?String.fromCharCode(Ec):"."}Nb&&(Nb+="\n");Nb+=la+" "+Kd+(0==Ob?" "+Gg:"")}Nb&&a.j(Nb);a.lb=Lb}}}}break;case "e":if("else"==g[0])break;var jb,Ld,Md,Nd,Od=g[0],Pd=g[1];"eb"==Od?(jb=1,Ld=255,Md=a.Gb,Nd=a.Xb):"e"==Od||"ew"==Od?(jb=2,Ld=65535,Md=a.pa,Nd=a.hb):Pd=null;if(null==Pd)a.j("edit memory commands:"),a.j("\teb [a] [...] edit bytes at address a"),a.j("\tew [a] [...] edit words at address a");else{var Fc=Vh(a,Pd);if(Fc)for(var Gc=2;GcSd;){for(var Ma=null,Pi=256;65536>Sb.F>>>0;){Td.F=a.pa(Sb,2);if(null==Sb.F||!Pi--)break;if(!(Td.F&1)){for(var Qi=a,Hc=Td,Ig=null,Tb=Hc.F,Jg=Tb,Ud=1;6>=Ud&&Tb;Ud++){if(2\nLicense: GPL version 3 or later ");this.j("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis ");for(b=0;bvi){if(xi(d,this.J)){this.w=new O(this,"1.30.3","failsafe");xi(this.w)&&(Ci(this,d),a=2,Di(this.w));this.w.set("timestamp",Ba());Ei(this.w);var e=this.f&&!this.D;if(1==a||Ga("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=Bi(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?xi(d,g):("error"==
-f&&"no machine state"!=g?(this.P("Error: "+g),"unable to verify user"==g&&(Na("user",""),this.g=null)):this.j(f+": "+g),Di(d),xi(d)?(c=Bi(d),e=!0):c=!1))}e&&Ai(this,c?d:null)}else 2==a&&d.clear()}else Ai(this);delete this.J;delete this.K}e=nb(this.id);for(f=0;fa[1];a=a[2];this.ca=!0;this.A.ia=!0;var d=this.G.power;d&&(d.textContent="Shutdown");this.b&&(Fi(this,this.b,b,c,a),this.qa(),this.b.tb());this.O&&(Ci(this,b),b.clear());!c&&this.w&&(this.w.clear(),delete this.w);this.C=0};
-function Ci(a,b){if(Ga("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.g||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.3"};d.url=a.$;d.user=c;d.type="bug";d.data=b;Da("http://www.pcjs.org/api/v1/report",d,!0)}}
-function si(a,b,c){var d,e="none";if(a.C)return null;a.C--;var f=new O(a,"1.30.3"),g=new O(a,"1.30.3","validate"),h=Ba();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.3");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.Ga&&(c&&a.b.ga(),d=a.b.Ga(b,c),"object"===typeof d&&f.set(a.b.id,d),c&&(a.b.A.ia=!1,!1===d&&(e=null)));for(var h=nb(a.id),l=0;l(b.K+=a))){for(var e=0;ef.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"),
-a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){f=null,a=n.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Da(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
-"");a=a.replace(d[0],g);Wi(a,b,c)}})}else c(a,null)}
-function Xi(a,b,c,d){function e(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=va(a))}function f(a){e("Error: "+a);l&&(--Ji||Ya(!0));l=!1}var g,h,l=!0;Ji++;lb[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],v=document.createElement("style");v.type="text/css";v.styleSheet?v.styleSheet.cssText=m:v.appendChild(document.createTextNode(m));n.appendChild(v)}c||
-(c="/versions/pdpjs/1.30.3/components.xsl");m=function(d,h){h?Ui(c,null,null,!1,e,function(d,l){l?(mb(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(l=h.transformNode(l))?(g.outerHTML=l,--Ji||Ya(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(l),(l=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--Ji||Ya(!0)):f("invalid machine element: "+
-a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?Ui(b,a,d,!0,e,m):Vi(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(r){f(r.message)}return l}window.embedPDP11=function(a,b,c,d){Ya(!1);return Xi(a,b,c,d)};window.enableEvents=Ya;window.sendEvent=Za;})();//# sourceMappingURL=/tmp/pdpjs/1.30.3/pdp11-dbg.map
+63],35904:[72,63],35968:[7,63],36032:[5,63],36096:[66,63],36160:[59,63],36224:[64,63],36288:[61,63]},65528:{128:[76,7],152:[108,12288]},65535:{0:[55],1:[99],2:[75],3:[26],4:[109],5:[70],6:[110],7:[111],160:[69],161:[31],162:[41],163:[33],164:[45],165:[36],166:[43],167:[35],168:[38],169:[32],170:[42],171:[34],172:[46],173:[37],174:[44],175:[30],176:[69],177:[80],178:[88],179:[82],180:[92],181:[85],182:[90],183:[84],184:[87],185:[81],186:[89],187:[83],188:[93],189:[86],190:[91],191:[79]}},Vh=[0],Wh=
+[58,60,65,96,108,110,100,101,102,103,104,105,59,64];k=Oh.prototype;
+k.Ea=function(a,b,c,d){this.v=b;this.C=a;this.b=c;this.B=a.B;(a=md(a,"messages"))&&Rh(this,a);this.ub=Uh;this.Eb=1145>this.b.cb?Wh:[];Xh(this,function(a){a:{var b=d.v.Y,c=a[0],e=a=0,l=b.length;if(c){a=d.ba(Yh(d,c));if(-1===a){d.j("invalid address: "+c);break a}e=a>>>d.v.ja;l=1}d.j("blockid physical blockaddr used size type");d.j("-------- --------- ---------- ------ ------ ----");for(var c=-1,m=0;l--;){var n=b[e];n.type==c?m++||d.j("..."):(c=n.type,m=Bc[c],n&&d.j(p(n.id,8)+" %"+
+p(e<d&&(d+=b.length);0>d&&(d=0);for(var e=b.length;db||7a?"R"+a:6==a?"SP":"PC"}k.wc=function(a){var b;0<=a&&(8>a?b=this.b.u[a]:16>a?b=this.b.Wa[a-8]:20>a?b=this.b.Ia[a-16]:20==a?b=Sc(this.b):21==a&&this.B&&kc(this.B)&&(b=this.B.Va));return b};
+k.message=function(a,b){b&&(a+=" @"+J(this,Y(this.b.Kb).F));this.ma&1073741824?this.va.push(a):this.ia&&a==this.ia||(this.ia=a,this.ma&-2147483648&&this.b&&this.b.w.W&&(this.fa(),a+=" (cpu halted)"),this.j(a),this.b&&(a=this.b,ud(a),a.va=0,a.oa()))};function Qh(a){var b;if(!se(a))a.H&&a.H.length&&a.j("instruction history buffer freed"),a.$=0,a.H=[];else if(!a.H||!a.H.length){a.H=Array(1E3);for(b=0;b>8;a.j("trapped to "+J(a,c&255,1)+(d?" ("+d+")":""))}a.L=Y(a.b.u[7]);b&&1!=a.S?ei(a):fi(a)}}function di(a,b){var c;(c=!a.b||!wb(a.b))||(c=a.b,c.w.ha?c=!0:(c.j(c.toString()+" not powered"),c=!1),c=!c);return c||a.b.w.W?(b||a.j("cpu busy or unavailable, command ignored"),!1):!xb(a.b)}k.Ga=function(a,b){return!b&&(this.reset(!0),a&&this.restore&&!this.restore(a))?!1:!0};
+k.Fa=function(a,b){b&&this.j(a?"suspending":"shutting down");return a?this.save():!0};k.reset=function(a){Qh(this);this.wa=0;this.ia=null;this.J=0;this.L=Y(this.b.u[7]);this.w.W=!1;gi(this);a||pd(this)};k.save=function(){var a=new N(this);a.set(0,$h(this.L));a.set(1,$h(this.O));a.set(2,[this.g,this.R,this.ma]);a.set(3,this.I);return a.data()};
+k.restore=function(a){var b=0;void 0!==a[2]&&(this.L=ai(a[b++]),this.O=ai(a[b++]),this.g=a[b][0],"string"==typeof this.g&&(this.g=[this.g]),this.R=a[b][1],this.ma|=a[b][2]);a[3]&&(this.I=a[3]);return!0};k.start=function(a,b){this.S||this.j("running");this.w.W=!0;this.Ob=a;this.Sb=b};
+k.stop=function(a,b){if(this.w.W){this.w.W=!1;this.J=b-this.Sb;if(!this.S){b="stopped";if(this.J){a-=this.Ob;var c=0d&&(d=a.b.bb(b)),65535!=(d&65535)&&(a.lc(a.H[a.$],b),++a.$==a.H.length&&(a.$=0)));return!1}function yf(a){var b=a.b;if(b.w.W)throw O(b,a.b.Kb),a.fa(),-1;return!1}
+function Ph(a){var b,c;a.f=["bp"];if(a.M)for(b=1;b>>d.ja],!1)}a.M=["br"];if(a.D)for(b=1;b>>d.ja],!0);a.D=["bw"];a.mb=0}k.nb=function(a,b,c){var d=!0;c||hi(this,a,b,!1,!0);if(a!=this.f){var e=this.ba(b);if(-1===e)this.j("invalid address: "+J(this,b.F)),d=!1;else{var f=this.v;f.Y[e>>>f.ja].nb(e&f.v,a==this.D)}}d&&(a.push(b),c?b.Oa=!0:(ii(this,a,a.length-1,"set"),Qh(this)));return d};
+function hi(a,b,c,d,e){var f=!1;c=a.ba(c);for(var g=1;g>>d.ja],b==a.D));h.Oa||Qh(a);break}}return f}function ji(a,b){for(var c=1;c>23)&65535,x=J(w,r);else if(8192==C)r=r.F-((f&63)<<1)&65535,x=J(w,r);else if(12288==C)x=J(w,f&7,1);else if(24576==C)x=J(w,f&63,1);else if(32768==C)x=J(w,f&255,1);else if(C=f&y,y&4032&&(C>>=6,y>>=6),
+y&63)switch(y=C&7,C&56){case 0:x=ci(y);break;case 8:x="@"+ci(y);break;case 16:7>y?x="("+ci(y)+")+":(C=w.na(r,2),x="#"+J(w,C,0,!0));break;case 24:7>y?x="@("+ci(y)+")+":(C=w.na(r,2),x="@#"+J(w,C,0,!0));break;case 32:x="-("+ci(y)+")";break;case 40:x="@-("+ci(y)+")";break;case 48:C=w.na(r,2);x=J(w,C,0,!0)+"("+ci(y)+")";7==y&&(x=J(w,C+r.F&65535));break;case 56:C=w.na(r,2),x="@"+J(w,C)+"("+ci(y)+")",7==y&&(x="@"+J(w,C+r.F&65535))}w=x;if(!w||!w.length){h="INVALID";break}"string"!=typeof w&&(m=w[1],w=w[0]);
+0b?(c=ci(b),c+="="+J(a,d.u[b])):13>b?c="A"+(b-8)+"="+J(a,d.Wa[b-8]):16<=b&&20>b?c="S"+(b-16)+"="+J(a,d.Ia[b-16]):20==b?c="PS="+J(a,Sc(d)):21==b&&a.B&&kc(a.B)&&(c="SW="+J(a,a.B.Va,3));c&&(c+=" ");return c}function oi(a){var b,c="";for(b=0;6>b;b++)c+=ni(a,b);c=c+"\n"+(ni(a,6)+ni(a,7));c+=ni(a,20)+ni(a,21);return c+=mi(a,"T")+mi(a,"N")+mi(a,"Z")+mi(a,"V")+mi(a,"C")}k.qc=function(a,b){return a[0]>b[0]?1:a[0]>>0,g],v=za(n,l,a.qc);0>v&&n.splice(-(v+1),0,l)}m&&(h.a=m.replace(/''/g,'"'))}a.I.push({Xe:b,F:c,Wc:d,ga:e,oc:f})}function pi(a,b,c){var d=[],e=a.ba(b)>>>0;for(b=0;b>>0,h=f.Wc;if(e>=g&&eb)){d.u[b]=f&65535;break}a.j("unknown register: "+e);return}a.C.oa();a.j("updated registers:")}a.j(oi(a));c&&(a.L=Y(d.u[7]),fi(a,J(a,a.L.F)))}}function ti(a,b){b=xa(b);var c=b.match(/^(['"])(.*?)\1$/);c?1h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.j(m)}h[3]&&(g=h[3],f=null);f=li(a,b,g,f);a.j(f);a.L=b;e-=b.F-l;c++}}}
+function ki(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.j(">> "+b):(a.R&&(a.j("ended assemble at "+J(a,a.O.F)),a.L=a.O,a.R=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.ia=null;if(wb(a)&&0n||"z"ma.length&&(a.j("note: only "+ma.length+" available"),Z=ma.length);fa-=Z;0>fa&&(null==ma[ma.length-1].F?(Z=fa+Z,fa=0):fa+=ma.length);var Ld=[];"call"==Eg&&(Nb=1E5,Ld=["CALL"]);for(void 0!==Dg&&a.j(Z+" instructions earlier:");0=ma.length&&(fa=0);a.tb=Z;Gg++;Nb--}}Gg||(a.j("no "+Fg+"history available"),a.tb=void 0)}else{var kb=Yh(a,la);if(kb){var Pb=0,Md=!1,Nd="ds"==La;Ma&&(Md=!0,"l"==Ma.charAt(0)&&(Md=!1,Ma=Ma.substr(1)||Ni),Pb=Lh(a,Ma)>>>0,65536Fc?String.fromCharCode(Fc):"."}Na&&(Na+="\n");Na=Nd?Na+(Oa+","):Na+(la+" "+Oa+(0==Qb?" "+Jg:""))}Na&&a.j(Na);a.lb=kb}}}}break;case "e":if("else"==g[0])break;var nb,Pd,Qd,Rd,Sd=g[0],Td=g[1];"eb"==Sd?(nb=1,Pd=255,Qd=a.Fb,Rd=a.Xb):"e"==Sd||"ew"==Sd?(nb=2,Pd=65535,Qd=a.na,Rd=a.hb):Td=null;if(null==Td)a.j("edit memory commands:"),a.j("\teb [a] [...] edit bytes at address a"),
+a.j("\tew [a] [...] edit words at address a");else{var Gc=Yh(a,Td);if(Gc)for(var Hc=2;HcWd;){for(var Pa=null,Si=256;65536>Vb.F>>>0;){Xd.F=a.na(Vb,2);if(null==Vb.F||!Si--)break;
+if(!(Xd.F&1)){for(var Ti=a,Ic=Xd,Lg=null,Wb=Ic.F,Mg=Wb,Yd=1;6>=Yd&&Wb;Yd++){if(2\nLicense: GPL version 3 or later ");this.j("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis ");for(b=0;byi){if(Ai(d,this.I)){this.A=new N(this,"1.30.3","failsafe");Ai(this.A)&&(Fi(this,d),a=2,Gi(this.A));this.A.set("timestamp",Ba());Hi(this.A);var e=this.f&&!this.D;if(1==a||Ga("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=Ei(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Ai(d,g):("error"==
+f&&"no machine state"!=g?(this.P("Error: "+g),"unable to verify user"==g&&(Qa("user",""),this.g=null)):this.j(f+": "+g),Gi(d),Ai(d)?(c=Ei(d),e=!0):c=!1))}e&&Di(this,c?d:null)}else 2==a&&d.clear()}else Di(this);delete this.I;delete this.J}e=rb(this.id);for(f=0;fa[1];a=a[2];this.ca=!0;this.w.ha=!0;var d=this.G.power;d&&(d.textContent="Shutdown");this.b&&(Ii(this,this.b,b,c,a),this.oa(),this.b.sb());this.O&&(Fi(this,b),b.clear());!c&&this.A&&(this.A.clear(),delete this.A);this.C=0};
+function Fi(a,b){if(Ga("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.g||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.3"};d.url=a.$;d.user=c;d.type="bug";d.data=b;Da("http://www.pcjs.org/api/v1/report",d,!0)}}
+function vi(a,b,c){var d,e="none";if(a.C)return null;a.C--;var f=new N(a,"1.30.3"),g=new N(a,"1.30.3","validate"),h=Ba();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.3");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.Fa&&(c&&a.b.fa(),d=a.b.Fa(b,c),"object"===typeof d&&f.set(a.b.id,d),c&&(a.b.w.ha=!1,!1===d&&(e=null)));for(var h=rb(a.id),l=0;l(b.J+=a))){for(var e=0;ef.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"),
+a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){f=null,a=n.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");Da(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/,
+"");a=a.replace(d[0],g);Zi(a,b,c)}})}else c(a,null)}
+function $i(a,b,c,d){function e(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=va(a))}function f(a){e("Error: "+a);l&&(--Mi||ab(!0));l=!1}var g,h,l=!0;Mi++;pb[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],v=document.createElement("style");v.type="text/css";v.styleSheet?v.styleSheet.cssText=m:v.appendChild(document.createTextNode(m));n.appendChild(v)}c||
+(c="/versions/pdpjs/1.30.3/components.xsl");m=function(d,h){h?Xi(c,null,null,!1,e,function(d,l){l?(qb(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(l=h.transformNode(l))?(g.outerHTML=l,--Mi||ab(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(l),(l=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--Mi||ab(!0)):f("invalid machine element: "+
+a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?Xi(b,a,d,!0,e,m):Yi(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(r){f(r.message)}return l}window.embedPDP11=function(a,b,c,d){ab(!1);return $i(a,b,c,d)};window.enableEvents=ab;window.sendEvent=bb;})();//# sourceMappingURL=/tmp/pdpjs/1.30.3/pdp11-dbg.map
diff --git a/versions/pdpjs/1.30.3/pdp11.js b/versions/pdpjs/1.30.3/pdp11.js
index 00e2390dd..57a21f9bb 100644
--- a/versions/pdpjs/1.30.3/pdp11.js
+++ b/versions/pdpjs/1.30.3/pdp11.js
@@ -40,48 +40,48 @@ function pa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}
function sa(){function a(a){return(10>a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())}
function r(a,b,c,d){var e=0,f=null,g=null;if("object"==typeof resources&&(f=resources[a]))return d&&d(a,f,e),[f,e];if(c&&"function"==typeof resources)return resources(a,function(b,c){d&&d(a,b,c)}),g;var k=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");c&&(k.onreadystatechange=function(){4===k.readyState&&(f=k.responseText,200==k.status||!k.status&&f.length&&"file:"==(window?window.location.protocol:"file:")||(e=k.status||-1),d&&d(a,f,e))});if(b&&"object"==
typeof b){var l="",n;for(n in b)b.hasOwnProperty(n)&&(l&&(l+="&"),l+=n+"="+encodeURIComponent(b[n]));l=l.replace(/%20/g,"+");k.open("POST",a,!!c);k.setRequestHeader("Content-type","application/x-www-form-urlencoded");k.send(l)}else k.open("GET",a,!!c),"bytes"==b&&k.overrideMimeType("text/plain; charset=x-user-defined"),k.send();c||(f=k.responseText,200!=k.status&&(e=k.status||-1),d&&d(a,f,e),g=[f,e]);return g}
-function ta(a,b){var c,d={K:null,X:null,ga:null,fa:null};if("["==b.charAt(0)||"{"==b.charAt(0))try{var e,f,g;if("<"==b.substr(0,1))throw Error(b);g=0>b.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.ga=g.load;d.fa=g.exec;if(e=g.bytes)d.K=e;else if(e=g.words)for(d.K=Array(2*e.length),f=c=0;c>8&255;else if(e=g.data)for(d.K=Array(4*e.length),f=c=0;c>8&255,d.K[f++]=e[c]>>16&255,d.K[f++]=e[c]>>24&255;else d.K=g;d.X=g.symbols;d.K.length?1==d.K.length&&(t(d.K[0]),d=null):(t("Empty resource: "+a),d=null)}catch(k){t("Resource data error ("+a+"): "+k.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;cb.indexOf("0x")&&'["'!=b.substr(0,2)?JSON.parse(b.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+b+")");d.ga=g.load;d.fa=g.exec;if(e=g.bytes)d.K=e;else if(e=g.words)for(d.K=Array(2*e.length),f=c=0;c>8&255;else if(e=g.data)for(d.K=Array(4*e.length),f=c=0;c>8&255,d.K[f++]=e[c]>>16&255,d.K[f++]=e[c]>>24&255;else d.K=g;d.W=g.symbols;d.K.length?1==d.K.length&&(t(d.K[0]),d=null):(t("Empty resource: "+a),d=null)}catch(k){t("Resource data error ("+a+"): "+k.message),d=null}else{e=[];b=b.replace(/\n/gm," ").replace(/ +$/,"").split(" ");for(c=0;cb?this.ya=this.id:(this.oa=this.id.substr(0,b),this.ya=this.id.substr(b+1));this[a]=c;this.j={ready:!1,Fa:!1,rb:!1,P:!1,error:!1};this.lb=null;this.j.error=!1;this.o={};this.D=null;y.push(this)}var Ka=void 0,La={};
+Fa(Aa("Opera")||Aa("iOS")?"onunload":"onbeforeunload",function(){Ha(Ba.exit)});function x(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Ob=b.comment;this.mc=b;b=this.id.indexOf(".");0>b?this.ya=this.id:(this.oa=this.id.substr(0,b),this.ya=this.id.substr(b+1));this[a]=c;this.j={ready:!1,Ea:!1,rb:!1,O:!1,error:!1};this.kb=null;this.j.error=!1;this.o={};this.F=null;y.push(this)}var Ka=void 0,La={};
if(window){Ka||(Ka=window.location.search.substr(1));for(var Ma,Na=/\+/g,Oa=/([^&=]+)=?([^&]*)/g;Ma=Oa.exec(Ka);)La[decodeURIComponent(Ma[1].replace(Na," "))]=decodeURIComponent(Ma[2].replace(Na," "))}function Pa(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b}
function z(a,b){b||(b=x);a.prototype=Pa(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Qa=window.PCjs.Machines||(window.PCjs.Machines={}),y=window.PCjs.Components||(window.PCjs.Components=[])}else Qa={},y=[];function Ra(a,b,c){Qa[a]&&b&&(Qa[a][b]=c)}function A(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;ba;a++)this.b["S"+a]=[0,0,!1,!1,this.vc,a]}z(Ya);var Za=7;function $a(a,b){return a.b[b]&&a.b[b][1]}h=Ya.prototype;h.reset=function(){this.stop()};
-h.$=function(a,b,c,d){if(this.l&&this.l.$(a,b,c,d)||this.a&&this.a.$(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.o[b]=c,this.s++,!0;default:return"led"==a||"rled"==a?(this.o[b]=c,this.f[b]=d?1:0,this.s++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.o[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){ab(a,b)}}(this,
-b),a.onmouseup=a.onmouseout=function(a,b){return function(){bb(a,b)}}(this,b),a.ontouchstart=function(a,b){return function(c){ab(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){bb(a,b)}}(this,b),!0):this.parent.$.call(this,a,b,c,d)}};h.ia=function(a,b,c,d){this.l=a;this.h=b;this.a=c;this.D=d;cb(b,this,db);eb(b,this.reset.bind(this));fb(this);gb(this)};h.ka=function(a,b){b||(hb(),this.reset());return!0};h.ja=function(){return!0};
-function ib(a,b,c){if(a=a.o[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function fb(a,b){for(var c in a.f)ib(a,c,null!=b?b:a.f[c])}function jb(a,b,c){if(a=a.o[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function gb(a){for(var b in a.b)jb(a,b,a.b[b][1])}function kb(a,b,c,d){a.o[b]&&(void 0===c&&(Wa(a,"Value for "+b+" is invalid"),G(a.a)),c=8==(a.D&&a.D.h||8)?ka(c,d):m(c,d),a.o[b].textContent!=c&&(a.o[b].textContent=c))}
-function ab(a,b){var c=a.b[b];jb(a,b,c[1]=1-c[1]);c[3]=!0;c[4]&&c[4].call(a,c[1],c[5]);"STEP"!=b&&(a.A="DEP"==b,a.C="EXAM"==b)}function bb(a,b){var c=a.b[b];c[2]&&c[3]&&(jb(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5]));c[3]=!1}h.tc=function(a){a||this.a.j.S||(this.h.reset(),lb(this.a),$a(this,"ENABLE")&&mb(this.a))};h.uc=function(){};h.pc=function(a){a||G(this.a)};
-h.nc=function(a){if(!a&&!this.a.j.S)if($a(this,"ENABLE"))mb(this.a);else{a=this.D;var b;if(b=a)a.j.Fa&&(a.j.rb=!0),b=!a.j.Fa;if(b)Ua(a,!0),a.ob(0),Ua(a,!1);else try{var c=this.a.ob(1);0a;a++)this.b["S"+a][1]=0&1<a.a.Ya?8:16,c=65472<=a.ea&&a.ea<65472+b,b=c?1:2,c=c?15:a.h.ma;$a(a,"STEP")||(b=-b);sb(a,a.ea&~c|a.ea+b&c)}function sb(a,b){a.ea=b&a.h.ma;b=a.ea;for(var c=0;22>c;c++)tb(a,"A"+c,b&1<c;c++)tb(a,"D"+c,b&1<a;a++)this.b["S"+a]=[0,0,!1,!1,this.vc,a]}z(Ya);var Za=7;function $a(a,b){return a.b[b]&&a.b[b][1]}h=Ya.prototype;h.reset=function(){this.stop()};
+h.Z=function(a,b,c,d){if(this.l&&this.l.Z(a,b,c,d)||this.a&&this.a.Z(a,b,c,d))return!0;switch(b){case "R0":case "R1":case "R2":case "R3":case "R4":case "R5":case "R6":case "R7":case "NF":case "ZF":case "VF":case "CF":case "PS":return this.o[b]=c,this.s++,!0;default:return"led"==a||"rled"==a?(this.o[b]=c,this.f[b]=d?1:0,this.s++,!0):"switch"==a?(void 0===this.b[b]&&(this.b[b]=[d?1:0,d?1:0]),this.o[b]=c,a=c.parentElement||c,a=a.parentElement||a,a.onmousedown=function(a,b){return function(){ab(a,b)}}(this,
+b),a.onmouseup=a.onmouseout=function(a,b){return function(){bb(a,b)}}(this,b),a.ontouchstart=function(a,b){return function(c){ab(a,b);c.preventDefault()}}(this,b),a.ontouchend=function(a,b){return function(){bb(a,b)}}(this,b),!0):this.parent.Z.call(this,a,b,c,d)}};h.ia=function(a,b,c,d){this.l=a;this.g=b;this.a=c;this.F=d;cb(b,this,db);eb(b,this.reset.bind(this));fb(this);gb(this)};h.ka=function(a,b){b||(hb(),this.reset());return!0};h.ja=function(){return!0};
+function ib(a,b,c){if(a=a.o[b])a.style.backgroundColor=c?"#ff0000":"#000000"}function fb(a,b){for(var c in a.f)ib(a,c,null!=b?b:a.f[c])}function jb(a,b,c){if(a=a.o[b])a.style.marginTop=c?"0px":"20px",a.style.backgroundColor=c?"#00ff00":"#228B22"}function gb(a){for(var b in a.b)jb(a,b,a.b[b][1])}function kb(a,b,c,d){a.o[b]&&(void 0===c&&(Wa(a,"Value for "+b+" is invalid"),G(a.a)),c=8==(a.F&&a.F.g||8)?ka(c,d):m(c,d),a.o[b].textContent!=c&&(a.o[b].textContent=c))}
+function ab(a,b){var c=a.b[b];jb(a,b,c[1]=1-c[1]);c[3]=!0;c[4]&&c[4].call(a,c[1],c[5]);"STEP"!=b&&(a.A="DEP"==b,a.C="EXAM"==b)}function bb(a,b){var c=a.b[b];c[2]&&c[3]&&(jb(a,b,c[1]=c[0]),c[4]&&c[4].call(a,c[1],c[5]));c[3]=!1}h.tc=function(a){a||this.a.j.P||(this.g.reset(),lb(this.a),$a(this,"ENABLE")&&mb(this.a))};h.uc=function(){};h.pc=function(a){a||G(this.a)};
+h.nc=function(a){if(!a&&!this.a.j.P)if($a(this,"ENABLE"))mb(this.a);else{a=this.F;var b;if(b=a)a.j.Ea&&(a.j.rb=!0),b=!a.j.Ea;if(b)Ua(a,!0),a.ob(0),Ua(a,!1);else try{var c=this.a.ob(1);0a;a++)this.b["S"+a][1]=0&1<a.a.La?8:16,c=65472<=a.da&&a.da<65472+b,b=c?1:2,c=c?15:a.g.ma;$a(a,"STEP")||(b=-b);sb(a,a.da&~c|a.da+b&c)}function sb(a,b){a.da=b&a.g.ma;b=a.da;for(var c=0;22>c;c++)tb(a,"A"+c,b&1<c;c++)tb(a,"D"+c,b&1<>2;this.l=this.b-1;this.A=this.C/this.b|0;this.za=[];this.f=0;this.m=!1;this.sb=0;this.w=[];this.dc=[wb,xb,yb,zb];a=new I(this);Ab(a,this.D);this.h=Array(this.A);for(b=0;b>2;this.l=this.b-1;this.A=this.C/this.b|0;this.za=[];this.f=0;this.m=!1;this.sb=0;this.w=[];this.dc=[wb,xb,yb,zb];a=new I(this);Ab(a,this.F);this.g=Array(this.A);for(b=0;b>8:e[2](f)&255):f&1&&(e=d.za[a&-2])&&(e[2]?c=e[2](f&-2)>>8:e[0]&&(c=e[0](f)));if(0<=c)return c;J(d,b,16);return 255}
function xb(a,b,c){var d=!1,e=this.controller,f=e.za[a],g=c&65535;if(f)if(f[1])f[1](b,g),d=!0;else{if(f[3]){a=f[2]?f[2](0):0;if(g&1)f[3](a&255|b<<8,g&-2);else f[3](a&-256|b,g);d=!0}}else if(g&1&&(f=e.za[a&-2]))if(f[3])g&=-2,a=f[2]?f[2](0):0,f[3](a&255|b<<8,g),d=!0;else if(f[1])f[1](b,g);d||J(e,c,16)}function yb(a,b){var c=-1,d=this.controller;a=d.za[a];var e=b&65535;a&&(a[2]?c=a[2](e):a[0]&&(c=a[0](e)|a[0](e+1)<<8));if(0<=c)return c;J(d,b,16);return 65535}
function zb(a,b,c){var d=!1,e=this.controller;a=e.za[a];var f=c&65535;a&&(a[3]?(a[3](b,f),d=!0):a[1]&&(a[1](b&255,f),a[1](b>>8,f+1),d=!0));d||J(e,c,16)}function Cb(a,b){if(b!=a.s){var c;a.s&&(c=(1<>>a.c;0g&&(p=g);if(!e&&l&&l.size){if(l.type==d){if(f+g<=l.La)return l.pb+=l.La-f,l.La=f,!0;if(f>=l.La+l.pb){p=l.size-(f-n);p>g&&(p=g);l.pb=f-l.La+p;f=n+a.b;g-=p;k++;continue}}return Hb(1,f,g)}f=new I(a,f,p,a.b,d,e);Ab(f,a.D,l);a.h[k++]=f;f=n+a.b;g-=p}return 0>=g?(d==Ib&&(a.sb+=c),a.status((c>>10)+"Kb "+Jb[d]+" at "+ka(b)),!0):Hb(2,b,c)}
-function Eb(a,b,c){var d=[];for(b>>>=a.c;0>>=a.c;0>>a.c].Ab(b&a.l,b)}function Mb(a,b){3932160<=b&&(b=Lb(a.a,b));return a.h[(b&a.ma)>>>a.c].W(b&a.l,b)}h.mb=function(a){3932160<=a&&(a=Lb(this.a,a));var b=a&this.l,c=(a&this.ma)>>>this.c;this.m=!1;this.f++;a=this.h[c].Vb(b,a);this.f--;return a};
-h.$a=function(a,b){3932160<=a&&(a=Lb(this.a,a));this.m=!1;this.f++;this.h[(a&this.ma)>>>this.c].Hb(a&this.l,b&255,a);this.f--};function Nb(a,b,c){3932160<=b&&(b=Lb(a.a,b));a.h[(b&a.ma)>>>a.c].qb(b&a.l,c&65535,b)}h.nb=function(a,b){3932160<=a&&(a=Lb(this.a,a));var c=a&this.l,d=(a&this.ma)>>>this.c;this.m=!1;this.f++;this.h[d].bc(c,b&65535,a);this.f--};
-function Ob(a){for(var b=0,c=[],d=0;da.a.Ya)){var l=k[0]?k[0].bind(b):null,n=k[1]?k[1].bind(b):null,p=k[2]?k[2].bind(b):null,u=k[3]?k[3].bind(b):null,w=k[5]||1;65472<=g&&65487>=g&&(!l&&p&&(l=function(a){return function(b){return a(b)&255}.bind(b)}(p)),!n&&u&&(n=function(a){return function(b,c){return a(b,c)}.bind(b)}(u)));for(var D=k[4],U=0;U>5&3;b.bb=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ba!=c&&(b.Ba=c,Xb(b))}};h.Hc=function(){var a=this.a.Ca;a&65280&&(a=(a<<8|a>>8)&65535);return a};h.Ic=function(){return this.a.Cb};h.Jc=function(){return this.a.Ga};
-h.Cd=function(a){var b=this.a;1170>b.Ya&&(a&=-49);b.Ga!=a&&(b.Ga=a,b.Pb=a&16?4194303:262143,Xb(b))};h.kd=function(a){a=a>>1&63;var b=this.a.ab[a>>1];return a&1?b>>16:b&65535};h.ce=function(a,b){b=b>>1&63;var c=b>>1;this.a.ab[c]=b&1?this.a.ab[c]&65535|(a&63)<<16:this.a.ab[c]&-65536|a&65534};h.cd=function(a){return this.a.H[1][a>>1&7]};h.Wd=function(a,b){this.a.H[1][b>>1&7]=a&65295};h.ad=function(a){return this.a.H[1][(a>>1&7)+8]};h.Ud=function(a,b){this.a.H[1][(b>>1&7)+8]=a&65295};
-h.bd=function(a){return this.a.Y[1][a>>1&7]};h.Vd=function(a,b){b=b>>1&7;this.a.Y[1][b]=a;this.a.H[1][b]&=65295};h.$c=function(a){return this.a.Y[1][(a>>1&7)+8]};h.Td=function(a,b){b=(b>>1&7)+8;this.a.Y[1][b]=a;this.a.H[1][b]&=65295};h.Dc=function(a){return this.a.H[0][a>>1&7]};h.yd=function(a,b){this.a.H[0][b>>1&7]=a&65295};h.Bc=function(a){return this.a.H[0][(a>>1&7)+8]};h.wd=function(a,b){this.a.H[0][(b>>1&7)+8]=a&65295};h.Cc=function(a){return this.a.Y[0][a>>1&7]};
-h.xd=function(a,b){b=b>>1&7;this.a.Y[0][b]=a;this.a.H[0][b]&=65295};h.Ac=function(a){return this.a.Y[0][(a>>1&7)+8]};h.vd=function(a,b){b=(b>>1&7)+8;this.a.Y[0][b]=a;this.a.H[0][b]&=65295};h.jd=function(a){return this.a.H[3][a>>1&7]};h.be=function(a,b){this.a.H[3][b>>1&7]=a&65295};h.gd=function(a){return this.a.H[3][(a>>1&7)+8]};h.$d=function(a,b){this.a.H[3][(b>>1&7)+8]=a&65295};h.hd=function(a){return this.a.Y[3][a>>1&7]};h.ae=function(a,b){b=b>>1&7;this.a.Y[3][b]=a;this.a.H[3][b]&=65295};
-h.fd=function(a){return this.a.Y[3][(a>>1&7)+8]};h.Zd=function(a,b){b=(b>>1&7)+8;this.a.Y[3][b]=a;this.a.H[3][b]&=65295};h.Na=function(a){a&=7;return this.a.B&2048?this.a.Ha[a]:this.a.g[a]};h.Pa=function(a,b){b&=7;this.a.B&2048?this.a.Ha[b]=a:this.a.g[b]=a};h.Oc=function(){return this.a.B&49152?this.a.na[0]:this.a.g[6]};h.Hd=function(a){this.a.B&49152?this.a.na[0]=a:this.a.g[6]=a};h.Rc=function(){return this.a.g[7]};h.Kd=function(a){this.a.g[7]=a};
-h.Oa=function(a){a&=7;return this.a.B&2048?this.a.g[a]:this.a.Ha[a]};h.Qa=function(a,b){b&=7;this.a.B&2048?this.a.g[b]=a:this.a.Ha[b]=a};h.Pc=function(){return 1==(this.a.B&49152)>>14?this.a.g[6]:this.a.na[1]};h.Id=function(a){1==(this.a.B&49152)>>14?this.a.g[6]=a:this.a.na[1]=a};h.Qc=function(){return 3==(this.a.B&49152)>>14?this.a.g[6]:this.a.na[3]};h.Jd=function(a){3==(this.a.B&49152)>>14?this.a.g[6]=a:this.a.na[3]=a};h.yc=function(a){return this.a.Yb[a-65504>>1]};
-h.td=function(a,b){this.a.Yb[b-65504>>1]=a};h.Ub=function(a){if(65520==a){a=0;switch(Ib){case Ib:a=this.h.sb}a=(a>>6)-1}else a=0;return a};h.ac=function(){};h.ed=function(){return 1};h.Yd=function(){};h.xc=function(){return this.a.M};h.sd=function(){this.a.M=0};h.Fc=function(){return this.a.Xb};h.Ad=function(a,b){b&1||(a&=255);this.a.Xb=a};h.Kc=function(a){return a?this.a.Db:0};h.Dd=function(a){var b=this.a;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.Db=a;b.u|=2};
-h.dd=function(a){return a?this.a.Da&65280:0};h.Xd=function(a){this.a.Da=a|255};h.Nc=function(){return Yb(this.a)};h.Gd=function(a){Zb(this.a,a&-1809|Yb(this.a)&1808);this.a.u|=128};h.$b=function(){};
+function Fb(a,b,c,d,e){for(var f=b,g=c,k=f>>>a.c;0g&&(p=g);if(!e&&l&&l.size){if(l.type==d){if(f+g<=l.Ka)return l.pb+=l.Ka-f,l.Ka=f,!0;if(f>=l.Ka+l.pb){p=l.size-(f-n);p>g&&(p=g);l.pb=f-l.Ka+p;f=n+a.b;g-=p;k++;continue}}return Hb(1,f,g)}f=new I(a,f,p,a.b,d,e);Ab(f,a.F,l);a.g[k++]=f;f=n+a.b;g-=p}return 0>=g?(d==Ib&&(a.sb+=c),a.status((c>>10)+"Kb "+Jb[d]+" at "+ka(b)),!0):Hb(2,b,c)}
+function Eb(a,b,c){var d=[];for(b>>>=a.c;0>>=a.c;0>>a.c].Ab(b&a.l,b)}function Mb(a,b){3932160<=b&&(b=Lb(a.a,b));return a.g[(b&a.ma)>>>a.c].V(b&a.l,b)}h.lb=function(a){3932160<=a&&(a=Lb(this.a,a));var b=a&this.l,c=(a&this.ma)>>>this.c;this.m=!1;this.f++;a=this.g[c].Vb(b,a);this.f--;return a};
+h.Za=function(a,b){3932160<=a&&(a=Lb(this.a,a));this.m=!1;this.f++;this.g[(a&this.ma)>>>this.c].Hb(a&this.l,b&255,a);this.f--};function Nb(a,b,c){3932160<=b&&(b=Lb(a.a,b));a.g[(b&a.ma)>>>a.c].qb(b&a.l,c&65535,b)}h.nb=function(a,b){3932160<=a&&(a=Lb(this.a,a));var c=a&this.l,d=(a&this.ma)>>>this.c;this.m=!1;this.f++;this.g[d].bc(c,b&65535,a);this.f--};
+function Ob(a){for(var b=0,c=[],d=0;da.a.La)){var l=k[0]?k[0].bind(b):null,n=k[1]?k[1].bind(b):null,p=k[2]?k[2].bind(b):null,u=k[3]?k[3].bind(b):null,w=k[5]||1;65472<=g&&65487>=g&&(!l&&p&&(l=function(a){return function(b){return a(b)&255}.bind(b)}(p)),!n&&u&&(n=function(a){return function(b,c){return a(b,c)}.bind(b)}(u)));for(var D=k[4],U=0;U>5&3;b.ab=a>>1&15;var c=0;a&257&&(c=4,a&1&&(c|=2));b.Ba!=c&&(b.Ba=c,Xb(b))}};h.Hc=function(){var a=this.a.Ca;a&65280&&(a=(a<<8|a>>8)&65535);return a};h.Ic=function(){return this.a.Cb};h.Jc=function(){return this.a.Fa};
+h.Cd=function(a){var b=this.a;1170>b.La&&(a&=-49);b.Fa!=a&&(b.Fa=a,b.Pb=a&16?4194303:262143,Xb(b))};h.kd=function(a){a=a>>1&63;var b=this.a.$a[a>>1];return a&1?b>>16:b&65535};h.ce=function(a,b){b=b>>1&63;var c=b>>1;this.a.$a[c]=b&1?this.a.$a[c]&65535|(a&63)<<16:this.a.$a[c]&-65536|a&65534};h.cd=function(a){return this.a.H[1][a>>1&7]};h.Wd=function(a,b){this.a.H[1][b>>1&7]=a&65295};h.ad=function(a){return this.a.H[1][(a>>1&7)+8]};h.Ud=function(a,b){this.a.H[1][(b>>1&7)+8]=a&65295};
+h.bd=function(a){return this.a.X[1][a>>1&7]};h.Vd=function(a,b){b=b>>1&7;this.a.X[1][b]=a;this.a.H[1][b]&=65295};h.$c=function(a){return this.a.X[1][(a>>1&7)+8]};h.Td=function(a,b){b=(b>>1&7)+8;this.a.X[1][b]=a;this.a.H[1][b]&=65295};h.Dc=function(a){return this.a.H[0][a>>1&7]};h.yd=function(a,b){this.a.H[0][b>>1&7]=a&65295};h.Bc=function(a){return this.a.H[0][(a>>1&7)+8]};h.wd=function(a,b){this.a.H[0][(b>>1&7)+8]=a&65295};h.Cc=function(a){return this.a.X[0][a>>1&7]};
+h.xd=function(a,b){b=b>>1&7;this.a.X[0][b]=a;this.a.H[0][b]&=65295};h.Ac=function(a){return this.a.X[0][(a>>1&7)+8]};h.vd=function(a,b){b=(b>>1&7)+8;this.a.X[0][b]=a;this.a.H[0][b]&=65295};h.jd=function(a){return this.a.H[3][a>>1&7]};h.be=function(a,b){this.a.H[3][b>>1&7]=a&65295};h.gd=function(a){return this.a.H[3][(a>>1&7)+8]};h.$d=function(a,b){this.a.H[3][(b>>1&7)+8]=a&65295};h.hd=function(a){return this.a.X[3][a>>1&7]};h.ae=function(a,b){b=b>>1&7;this.a.X[3][b]=a;this.a.H[3][b]&=65295};
+h.fd=function(a){return this.a.X[3][(a>>1&7)+8]};h.Zd=function(a,b){b=(b>>1&7)+8;this.a.X[3][b]=a;this.a.H[3][b]&=65295};h.Na=function(a){a&=7;return this.a.B&2048?this.a.Ga[a]:this.a.h[a]};h.Pa=function(a,b){b&=7;this.a.B&2048?this.a.Ga[b]=a:this.a.h[b]=a};h.Oc=function(){return this.a.B&49152?this.a.na[0]:this.a.h[6]};h.Hd=function(a){this.a.B&49152?this.a.na[0]=a:this.a.h[6]=a};h.Rc=function(){return this.a.h[7]};h.Kd=function(a){this.a.h[7]=a};
+h.Oa=function(a){a&=7;return this.a.B&2048?this.a.h[a]:this.a.Ga[a]};h.Qa=function(a,b){b&=7;this.a.B&2048?this.a.h[b]=a:this.a.Ga[b]=a};h.Pc=function(){return 1==(this.a.B&49152)>>14?this.a.h[6]:this.a.na[1]};h.Id=function(a){1==(this.a.B&49152)>>14?this.a.h[6]=a:this.a.na[1]=a};h.Qc=function(){return 3==(this.a.B&49152)>>14?this.a.h[6]:this.a.na[3]};h.Jd=function(a){3==(this.a.B&49152)>>14?this.a.h[6]=a:this.a.na[3]=a};h.yc=function(a){return this.a.Yb[a-65504>>1]};
+h.td=function(a,b){this.a.Yb[b-65504>>1]=a};h.Ub=function(a){if(65520==a){a=0;switch(Ib){case Ib:a=this.g.sb}a=(a>>6)-1}else a=0;return a};h.ac=function(){};h.ed=function(){return 1};h.Yd=function(){};h.xc=function(){return this.a.ea};h.sd=function(){this.a.ea=0};h.Fc=function(){return this.a.Xb};h.Ad=function(a,b){b&1||(a&=255);this.a.Xb=a};h.Kc=function(a){return a?this.a.Db:0};h.Dd=function(a){var b=this.a;if(a&=65024){var c=a>>9;do a+=34;while(c>>=1)}b.Db=a;b.u|=2};
+h.dd=function(a){return a?this.a.mb&65280:0};h.Xd=function(a){this.a.mb=a|255};h.Nc=function(){return Yb(this.a)};h.Gd=function(a){Zb(this.a,a&-1793|Yb(this.a)&1792);this.a.u|=128};h.$b=function(){};
var M={},Wb=(M[61568]=[null,null,L.prototype.kd,L.prototype.ce,"UNIMAP",64,1170],M[62592]=[null,null,L.prototype.cd,L.prototype.Wd,"SIPDR",8,1145],M[62608]=[null,null,L.prototype.ad,L.prototype.Ud,"SDPDR",8,1145],M[62624]=[null,null,L.prototype.bd,L.prototype.Vd,"SIPAR",8,1145],M[62640]=[null,null,L.prototype.$c,L.prototype.Td,"SDPAR",8,1145],M[62656]=[null,null,L.prototype.Dc,L.prototype.yd,"KIPDR",8,1145],M[62672]=[null,null,L.prototype.Bc,L.prototype.wd,"KDPDR",8,1145],M[62688]=[null,null,L.prototype.Cc,
L.prototype.xd,"KIPAR",8,1145],M[62704]=[null,null,L.prototype.Ac,L.prototype.vd,"KDPAR",8,1145],M[62798]=[null,null,L.prototype.Jc,L.prototype.Cd,"MMR3",1,1145],M[65382]=[null,null,L.prototype.Ec,L.prototype.zd,"LKS"],M[65402]=[null,null,L.prototype.Gc,L.prototype.Bd,"MMR0",1,1145],M[65404]=[null,null,L.prototype.Hc,L.prototype.$b,"MMR1",1,1145],M[65406]=[null,null,L.prototype.Ic,L.prototype.$b,"MMR2",1,1145],M[65408]=[null,null,L.prototype.jd,L.prototype.be,"UIPDR",8,1145],M[65424]=[null,null,L.prototype.gd,
L.prototype.$d,"UDPDR",8,1145],M[65440]=[null,null,L.prototype.hd,L.prototype.ae,"UIPAR",8,1145],M[65456]=[null,null,L.prototype.fd,L.prototype.Zd,"UDPAR",8,1145],M[65472]=[null,null,L.prototype.Na,L.prototype.Pa,"R0SET0"],M[65473]=[null,null,L.prototype.Na,L.prototype.Pa,"R1SET0"],M[65474]=[null,null,L.prototype.Na,L.prototype.Pa,"R2SET0"],M[65475]=[null,null,L.prototype.Na,L.prototype.Pa,"R3SET0"],M[65476]=[null,null,L.prototype.Na,L.prototype.Pa,"R4SET0"],M[65477]=[null,null,L.prototype.Na,L.prototype.Pa,
@@ -89,149 +89,149 @@ L.prototype.$d,"UDPDR",8,1145],M[65440]=[null,null,L.prototype.hd,L.prototype.ae
L.prototype.Qa,"R5SET1",1,1145],M[65486]=[null,null,L.prototype.Pc,L.prototype.Id,"R6SUPER",1,1145],M[65487]=[null,null,L.prototype.Qc,L.prototype.Jd,"R6USER",1,1145],M[65504]=[null,null,L.prototype.yc,L.prototype.td,"CTRL",8,1170],M[65520]=[null,null,L.prototype.Ub,L.prototype.ac,"LSIZE",1,1170],M[65522]=[null,null,L.prototype.Ub,L.prototype.ac,"HSIZE",1,1170],M[65524]=[null,null,L.prototype.ed,L.prototype.Yd,"SYSID",1,1170],M[65526]=[null,null,L.prototype.xc,L.prototype.sd,"CPUERR",1,1170],M[65528]=
[null,null,L.prototype.Fc,L.prototype.Ad,"MB",1,1170],M[65530]=[null,null,L.prototype.Kc,L.prototype.Dd,"PIR"],M[65532]=[null,null,L.prototype.dd,L.prototype.Xd,"SL"],M[65534]=[null,null,L.prototype.Nc,L.prototype.Gd,"PSW"],M);Ga(function(){for(var a=E(document,"pdp11","device"),b=0;b>1),this.a=new Int32Array(this.b,0,this.size>>2),gc(this,cc?hc:ic);else{a=this.a=Array(this.size>>
-2);for(f=0;f>2),b=0;b>8,c)},N:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},ba:function(a,b){a&1&&J(this.h,b,64);b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},ra:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<>8);this.va=!0},F:function(a,b){return this.I(a,b)},R:function(a,b){return this.Vb(a,b)},pa:function(a,b,c){this.l?this.f(a,b,c):this.Hb(a,b,c)},ta:function(a,b,c){this.l?this.f(a,b,c):this.bc(a,b,c)},C:function(a){return this.o[a]},J:function(a){return this.o[a]},O:function(a,b){a&1&&J(this.h,b,64);return this.c.getUint16(a,!0)},aa:function(a,b){a&1&&J(this.h,b,64);return this.s[a>>1]},oa:function(a,b){this.o[a]=b;this.va=!0},qa:function(a,b){this.o[a]=b;this.va=!0},sa:function(a,b,c){a&1&&J(this.h,
-c,64);this.c.setUint16(a,b,!0);this.va=!0},ua:function(a,b,c){a&1&&J(this.h,c,64);this.s[a>>1]=b;this.va=!0}};function Ab(a,b,c){a.D=b;a.i=a.m=0;c&&((a.i=c.i)&&lc(a,mc,!1),(a.m=c.m)&&nc(a,mc,!1))}function nc(a,b,c){c&&a.m||(a.Gb=!a.l&&b[1]||a.f,a.qb=!a.l&&b[3]||a.A);if(c||void 0===c)a.Hb=b[1]||a.f,a.bc=b[3]||a.A}function lc(a,b,c){c&&a.i||(a.Ab=b[0]||a.v,a.W=b[2]||a.w);if(c||void 0===c)a.I=b[0]||a.v,a.Vb=b[2]||a.w}function gc(a,b){b||(b=oc);lc(a,b,void 0);nc(a,b,void 0)}
-var oc=[],kc=[I.prototype.N,I.prototype.ra,I.prototype.ba,I.prototype.ya],mc=[I.prototype.F,I.prototype.pa,I.prototype.R,I.prototype.ta];if(Xa)var ic=[I.prototype.C,I.prototype.oa,I.prototype.O,I.prototype.sa],hc=[I.prototype.J,I.prototype.qa,I.prototype.aa,I.prototype.ua];
-function pc(a,b){x.call(this,"CPU",a,pc);var c=a.multiplier||1;this.ib=a.cycles||b;this.sa=c;this.xb=Math.round(this.ib/1E4)/100;this.Ia=this.xb*this.sa;this.j.S=!1;this.j.Eb=!1;this.j.Va=a.autoStart;this.j.hb=!1;this.fb=this.Ja=0;this.gb=a.csStart;this.Ra=a.csInterval;this.Sa=a.csStop;this.J=[];this.Tb=this.od.bind(this);F(this)}z(pc);var qc=["power","reset"];h=pc.prototype;
-h.ia=function(a,b,c,d){this.l=a;this.h=b;this.D=d;this.I=a.I;for(b=0;b=a.Ja&&(a.Ja+=a.Ra,c=!0);0<=a.Sa&&a.Sa<=uc(a)&&(a.Ra=a.Sa=-1,tc(a),G(a),c=!0);c&&a.U(uc(a)+" cycles: checksum="+m(a.fb))}}
-h.$=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.o[b]=c,!0;case "run":return this.o[b]=c,c.onclick=function(){var a;if(a=d.l)if(a=d.l,a.j.P)a=!0;else{var b=null,c,k=A(a.id);for(c=0;ca.pa/a.Ia&&(b=1);a.sa=b;b=a.xb*a.sa;if(a.Ia!=b){a.Ia=b;b=a.Ia.toFixed(2)+"Mhz";var d=a.o.setSpeed;d&&(d.textContent=b);a.U("target speed: "+b)}c&&a.l&&xc(a.l)}ob(a,a.ba);a.ba=0;a.aa=ra();a.qa=0;wc(a)}function Rb(a,b){var c=a.J.length;a.J.push([-1,b]);return c}function Tb(a,b,c,d){0<=b&&ba.J[b][0])&&(c=a.ib*a.sa/1E3*c|0,a.J[b][0]=c+yc(a))}
-function nb(a,b){for(var c=a.J.length-1;0<=c;c--){var d=a.J[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function yc(a,b){var c=a.ra-=a.a;a.a=a.F=0;b&&(a.ra=0);return c}
-h.od=function(){if(this.j.S){this.yb>=this.ib&&wc(this,!0);this.Ua=0;this.eb=ra();if(this.qa){var a=this.eb-this.qa;a>this.Qb&&(this.aa+=a,this.aa>this.eb&&(this.aa=this.eb))}try{do{for(var b,c=this.j.hb?1:this.jb,d=this.J.length-1;0<=d;d--){var e=this.J[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.ob(b)}catch(f){if("number"!=typeof f)throw f;}b=yc(this,!0);this.Ua+=b;this.ba+=b;pb(this,b);nb(this,b);this.Ta-=b;if(0>=this.Ta){this.Ta+=this.jb;15<=++this.Rb&&(this.xa(),this.Rb=0);break}}while(this.j.S)}catch(f){G(this);
-this.l&&this.l.stop(ra(),uc(this));Wa(this,f.stack||f.message);return}if(this.j.S){a=setTimeout;b=this.Tb;this.qa=ra();c=this.Qb;this.Ua&&(c=Math.round(c*this.Ua/this.jb));c-=this.qa-this.eb;if(d=this.qa-this.aa)this.pa=Math.round(this.ba/(10*d))/100,864E5<=d&&(this.ua=0,vc(this));if(0>c||this.pac&&(this.aa-=c),c=0;this.yb+=this.Ua;this.qa+=c;a(b,c)}}};
-function mb(a){var b;a.j.error?(a.U(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.j.S)a.U(a.toString()+" busy");else{vc(a);a.j.S=!0;a.j.Eb=!0;if(b=a.o.run)b.textContent="Halt";a.l&&a.l.start(a.aa,uc(a));setTimeout(a.Tb,0)}}h.ob=function(){return 0};function G(a){var b=!1;if(a.j.S){yc(a);ob(a,a.ba);a.ba=0;a.j.S=!1;if(b=a.o.run)b.textContent="Run";a.l&&a.l.stop(ra(),uc(a));b=!0}a.j.complete=void 0;return b}
-function zc(a){this.Ya=+a.model||1170;this.Mb=a.addrReset||0;pc.call(this,a,6666667);this.decode=1120==this.Ya?Ac.bind(this):Bc.bind(this);Cc(this);this.ta=0;this.O=null;this.j.complete=!1}z(zc,pc);h=zc.prototype;h.reset=function(){this.status("model "+this.Ya);this.j.S&&G(this);Cc(this);sc(this);this.j.error=!1;this.parent.reset.call(this)};
-function Cc(a){a.m=65536;a.f=32768;a.i=65535;a.s=32768;a.B=15;a.g=[0,0,0,0,0,0,0,a.Mb];a.Ha=[0,0,0,0,0,0];a.na=[0,0,0,0];a.v=0;a.bb=0;a.lc=[4,2,0,1];a.H=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.Y=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.ab=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0];a.Yb=[0,0,0,0,0,0,0,0];a.Xb=0;a.u=0;a.A=a.C=0;a.c=a.b=a.wb=0;a.Ka=-1;lb(a)}function lb(a){a.Da=255;a.M=0;a.Db=0;a.w=0;a.Ca=0;a.Cb=0;a.Ga=0;a.Ba=0;a.cb=0;a.Pb=262143;a.O=null;a.h&&Xb(a)}function Xb(a){a.Ba?(a.R=65536,a.N=a.kc,a.W=a.ld,a.qb=a.de,Cb(a.h,a.Ga&16?22:18)):(a.R=0,a.N=a.jc,a.W=a.Wb,a.qb=a.cc,Cb(a.h,16))}function Dc(a,b,c){a.Mb=b;O(a,b);!c&&a.D&&(G(a)||a.D.c())}h.Lb=function(){return 0};
-h.save=function(){var a=new P(this);a.set(0,[]);a.set(1,[this.ua,this.sa]);a.set(2,Ob(this.h));return a.data()};h.restore=function(a){var b=a[1];this.ua=b[1];vc(this,b[3]);a:{b=this.h;a=a[2];var c;for(c=0;c>14&3;c=a.B>>14&3;a.v!=c&&(a.na[c]=a.g[6],a.g[6]=a.na[a.v]);a.B=b;a.u|=2}function R(a,b){a.u&128||(a.s=a.i=b,a.f=0)}function Gc(a,b,c){a.u&128||(a.s=a.i=a.m=b,a.f=c||0)}function Hc(a,b,c,d){a.u&128||(a.s=a.i=a.m=b,a.f=(c^b)&(d^b))}function Ic(a,b){a.u&128||(a.s=a.i=a.m=b,a.f=a.s^a.m>>1)}function Jc(a,b,c,d){a.u&128||(a.s=a.i=a.m=b,a.f=(c^d)&(d^b))}
-function K(a,b,c){if(!a.ta){var d=!1;0>a.Ka?a.Ka=Yb(a):a.v||(b=4,d=!0);a.w&57344||(a.Ca=63222,a.Cb=b);a.v=0;var e=a.W(b|a.R),f=a.W(b+2&65535|a.R);Zb(a,f&-12289|a.Ka>>2&12288);d&&(a.M|=4,a.g[6]=4);Kc(a,a.Ka);Kc(a,a.g[7]);O(a,e);a.u&=-113;a.Ka=-1;a.u|=8;if(26!=c)throw b;}}function Lc(a){var b=Mc(a),c=Mc(a)&-1793;a.B&49152&&(c=c&-225|a.B&63712);O(a,b);Zb(a,c);a.u&=-17}
-function Lb(a,b){var c=b>>13&31;31>c&&a.Ga&32&&(b=a.ab[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)"));return b}
-function Nc(a,b,c){var d,e,f;if(!(c&a.Ba))return b;d=b>>13;a.Ga&a.lc[a.v]||(d&=7);e=a.H[a.v][d];f=(a.Y[a.v][d]<<6)+(b&8191)&a.Pb;var g=0;switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.H[a.v][d]=e;if(4194170!==f||a.v)a.cb=a.v,a.bb=d;b=!1;g&&(g&57344&&(0<=a.Ka&&(g|=128),a.w&57344||(a.w=a.w|g|a.cb<<5|a.bb<<1),
-b=!0),a.w&61440||!(4191360>f||4194239>>a.c].Gb(b&a.l,c&255,b)}function Mc(a){var b=a.W(a.g[6]|a.R);a.g[6]=a.g[6]+2&65535;return b}function Kc(a,b){var c=a.g[6]-2&65535;a.g[6]=c;a.w&57344||(a.Ca=a.Ca<<8|246);!a.v&&c<=a.Da&&4c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.g[c];7!==c&&(e|=g);e=a.W(e);e|=g;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.g[c]+f&65535;7!==c&&(e|=g);a.a-=4;break;case 5:f=-2;e=a.g[c]-2&65535;7!==c&&(e|=g);e=a.W(e)|g;a.a-=
-8;break;case 6:return e=a.W(Fc(a,2)),e=e+a.g[c]&65535|g,a.a-=6,e;case 7:return e=a.W(Fc(a,2)),e=e+a.g[c]&65535,e=a.W(e|a.R)|g,a.a-=10,e}a.g[c]=a.g[c]+f&65535;!g||a.w&57344||(a.Ca=a.Ca<<8|f<<3&248|c);6==c&&!a.v&&d&4&&0>=f&&(a.g[6]<=a.Da||65534<=a.g[6])&&(a.g[6]<=a.Da-32?(a.M|=4,a.g[6]=4,K(a,4,24)):(a.M|=8,a.u|=64));return e}h.mb=function(a){if(!this.Ba)return this.h.mb(a);this.ta++;a=this.Wb(Nc(this,a,2));this.ta--;return a};
-h.$a=function(a,b){this.Ba?(this.ta++,Oc(this,Nc(this,a,5),b),this.ta--):this.h.$a(a,b)};h.nb=function(a,b){this.Ba?(this.ta++,this.cc(Nc(this,a,4),b),this.ta--):this.h.nb(a,b)};h.jc=function(a,b,c){return Pc(this,a,b,c)};h.kc=function(a,b,c){return Nc(this,Pc(this,a,b,c),c)};h.Wb=function(a){return Mb(this.h,a)};h.ld=function(a){return Mb(this.h,Nc(this,a,2))};h.cc=function(a,b){Nb(this.h,a,b&65535)};h.de=function(a,b){Nb(this.h,Nc(this,a,4),b)};
-function Qc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=Pc(a,b,d,2),c&65536||61440!==(a.B&61440)&&(d&=65535),a.v=a.B>>12&3,c=a.W(d|c&a.R),a.v=a.B>>14&3):c=6!=d||(a.B>>2&12288)===(a.B&12288)?a.g[d]:a.na[a.B>>12&3];return c}function Rc(a,b,c,d){a.w&57344||(a.Ca=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=Pc(a,b,e,4),c&65536||(e&=65535),a.v=a.B>>12&3,e=Nc(a,e|c&65536,4),a.v=a.B>>14&3,Nb(a.h,e,d)):6!=e||(a.B>>2&12288)===(a.B&12288)?a.g[e]=d:a.na[a.B>>12&3]=d}
-function Sc(a,b){b>>=6;var c=a.C=b&7;(b=a.A=(b&56)>>3)?(c=a.N(b,c,3),a=Kb(a.h,c)):a=a.g[c]&255;return a}function Tc(a,b){b>>=6;var c=a.C=b&7;return(b=a.A=(b&56)>>3)?Mb(a.h,a.N(b,c,2)):a.g[c]}function Uc(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return Pc(a,b,c,8)}function Vc(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.N(b,c,3),a=Kb(a.h,c)):a=a.g[c]&255;return a}function Wc(a,b){var c=a.b=b&7;return(b=a.c=(b&56)>>3)?Mb(a.h,a.N(b,c,2)):a.g[c]}
-function S(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.wb=a.N(b,e,7),Oc(a,e,d.call(a,c,Kb(a.h,e)))):a.g[e]=a.g[e]&65280|d.call(a,c,a.g[e])}function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.N(b,e,6),Nb(a.h,e,d.call(a,c,Mb(a.h,e)))):a.g[e]=d.call(a,c,a.g[e])}function Xc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?Oc(a,a.N(b,e,5),c):a.g[e]=c?a.g[e]&~d|c<<24>>24&d:a.g[e]&~d;return c}function Yc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?Nb(a.h,a.N(b,d,4),c):a.g[d]=c&65535;return c}
-function V(a,b,c){c&&(O(a,a.g[7]+(b<<24>>23)),a.a-=2);a.a-=3}
-h.ob=function(a){this.j.complete=!0;var b=a?this.j.Eb?0:1:-1;this.j.Eb=!1;this.ra=this.a=a;do{if(this.u){this.u&112&&(this.u&32?K(this,168,28):this.u&64?K(this,4,30):this.u&16&&K(this,12,32),this.u&=-113);if(a=this.u&7){a=!1;if(this.u&2){this.u&=-3;var c=160,d=(this.Db&224)>>5,e=this.O&&this.O.Ma>d?this.O:null;e&&(c=e.qd,d=e.Ma);d>(this.B&224)>>5?(this.u&4&&(Fc(this,2),this.u&=-5),K(this,c,26),d=!0):d=!1;if(d){if(e)if(a=e,e=this.O,e==a)this.O=a.next;else for(;e;){d=e.next;if(d==a){e.next=d.next;break}e=
-d}a=!0}}else this.u&1&&this.u++;a=a&&0>b}if(a)break}this.u=this.u&7|this.B&16;this.decode(Ec(this))}while(0>1|b<<16;Ic(this,a);return a&65535}function dd(a,b){a=b&2048|b>>1|b<<8;Ic(this,a<<8);return a&255}function ed(a,b){a=b&~a;R(this,a);return a}function fd(a,b){a=b&~a;R(this,a<<8);return a}function gd(a,b){a|=b;R(this,a);return a}function hd(a,b){a|=b;R(this,a<<8);return a}function id(a,b){a=~b|65536;Gc(this,a);return a&65535}function jd(a,b){a=~b|256;Gc(this,a<<8);return a&255}
-function kd(a,b){a=b-a;this.u&128||(this.s=this.i=a,this.f=b&(b^a));return a&65535}function ld(a,b){a=b-a;var c=a<<8;b<<=8;this.u&128||(this.s=this.i=c,this.f=b&(b^c));return a&255}function md(a,b){a=b+a;this.u&128||(this.s=this.i=a,this.f=a&(b^a));return a&65535}function nd(a,b){a=b+a;var c=a<<8;this.u&128||(this.s=this.i=c,this.f=c&(b<<8^c));return a&255}function od(a,b){a=-b;Gc(this,a,a&b&32768);return a&65535}function pd(a,b){a=-b;Gc(this,a<<8,(a&b&128)<<8);return a&255}
-function qd(a,b){a=b<<1|this.m>>16&1;Ic(this,a);return a&65535}function rd(a,b){a=b<<1|this.m>>16&1;Ic(this,a<<8);return a&255}function sd(a,b){a=(this.m&65536|b)>>1|b<<16;Ic(this,a);return a&65535}function td(a,b){a=((this.m&65536)>>8|b)>>1|b<<8;Ic(this,a<<8);return a&255}function ud(a,b){var c=b-a;Jc(this,c,a,b);return c&65535}function vd(a,b){var c=b-a;Jc(this,c<<8,a<<8,b<<8);return c&255}function wd(a,b){this.u&128||(this.s=this.i=b&65280,this.f=this.m=0);return(b<<8|b>>8)&65535}
-function xd(a,b){a^=b;R(this,a);return a&65535}function yd(a){T(this,a,Tc(this,a),Zc);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function zd(a){var b=Wc(this,a);a=a>>6&7;var c=this.g[a];c&32768&&(c|=4294901760);this.m=this.f=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.f=32768)}this.g[a]=c&65535;this.s=this.i=c;this.a-=(this.c?6:7)+b}
-function Ad(a){var b=Wc(this,a);a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.m=this.f=0;b&=63;if(b&32){b=64-b;32>b-1;this.m=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.g[a|1]=d&65535;this.s=d>>16;this.i=d>>16|d;this.a-=(this.c?6:7)+b}function Bd(a){V(this,a,!Q(this))}function Cd(a){V(this,a,Q(this))}
-function Dd(a){T(this,a,Tc(this,a),ed);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function Ed(a){S(this,a,Sc(this,a),fd);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function Fd(a){T(this,a,Tc(this,a),gd);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}function Gd(a){S(this,a,Sc(this,a),hd);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}
-function Hd(a){R(this,Tc(this,a)&Wc(this,a));this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Id(a){R(this,(Sc(this,a)&Vc(this,a))<<8);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Jd(a){V(this,a,this.i&65535?0:4)}function Kd(a){V(this,a,!this.Aa()==!(this.f&32768))}function Ld(a){V(this,a,!!(this.i&65535)&&!this.Aa()==!(this.f&32768))}function Md(a){V(this,a,!Q(this)&&!!(this.i&65535))}
-function Nd(a){V(this,a,(this.i&65535?0:4)||!this.Aa()!=!(this.f&32768))}function Od(a){V(this,a,Q(this)||(this.i&65535?0:4))}function Pd(a){V(this,a,!this.Aa()!=!(this.f&32768))}function Qd(a){V(this,a,this.Aa())}function Rd(a){V(this,a,!!(this.i&65535))}function Sd(a){V(this,a,!this.Aa())}function Td(){K(this,12,1);this.a-=5}function Ud(a){V(this,a,!0)}function Vd(a){V(this,a,!(this.f&32768))}function Wd(a){V(this,a,this.f&32768?2:0)}
-function W(a){a&1&&(this.m=0);a&2&&(this.f=0);a&4&&(this.i=1);a&8&&(this.s=0);this.a-=5}function Xd(a){var b=Tc(this,a);a=Wc(this,a);Jc(this,b-a,a,b);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}function Yd(a){var b=Sc(this,a)<<8;a=Vc(this,a)<<8;Jc(this,b-a,a,b);this.a-=this.c?4+(this.C&&6<=this.b?1:0):(this.A?4:3)+(7==this.b?2:0)}
-function Zd(a){var b=Wc(this,a);if(b){a=a>>6&7;var c=this.g[a]<<16|this.g[a|1];this.m=this.f=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.g[a]=d&65535,this.g[a|1]=c-d*b&65535,this.i=d>>16|d,this.s=d>>16):(this.f=32768,this.i=d>>15|d,this.s=c>>16,-1===b&&65534===this.g[a]&&(this.g[a]=this.g[a|1]=1));this.a-=53}else this.i=this.s=0,this.f=32768,this.m=65536,this.a-=7}function $d(){K(this,24,2);this.a-=25}
-function ae(){this.B&49152?(this.M|=128,K(this,4,3)):this.D?this.D.b():G(this);this.a-=7}function be(){K(this,16,4);this.a-=25}var ce=[0,7,7,10,7,11,9,13];function de(a){this.F=this.a;O(this,Uc(this,a));this.a=this.F-ce[this.c]}var ee=[0,14,14,17,14,18,16,20];function fe(a){this.F=this.a;var b=Uc(this,a);a=a>>6&7;Kc(this,this.g[a]);this.g[a]=this.g[7];O(this,b);this.a=this.F-ee[this.c]}var ge=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
-function he(a){var b=Tc(this,a);this.F=this.a;R(this,Yc(this,a,b));this.a=this.F-ge[(this.A?8:0)+this.c]+(7!=this.b||this.c?0:2)}function ie(a){var b=Sc(this,a);R(this,Xc(this,a,b,65535)<<8);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}var je=[7,13,13,17,14,18,17,21];
-function ke(a){var b=Wc(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.g[a];c&32768&&(c|=-65536);b=~~(b*c);this.g[a]=b>>16&65535;this.g[a|1]=b&65535;this.u&128||(this.s=b>>16,this.i=this.s|b,this.f=0,this.m=-32768>b||32767>6;if(this.g[b]=this.g[b]-1&65535)O(this,this.g[7]-((a&63)<<1)),this.a+=1;this.a-=6}function qe(a){T(this,a,Tc(this,a),ud);this.a-=this.c?9+(this.C&&6<=this.b?1:0):(this.A?5:3)+(7==this.b?2:0)}
-function re(a){T(this,a,0,wd);this.a-=this.c?9:3+(7==this.b?2:0)}function se(){K(this,28,5);this.a-=5}function te(){this.I&&(this.I.ea=this.g[7],this.I.setData(this.g[0],!0));this.u|=4;Fc(this,-2);this.a-=3}function ue(a){T(this,a,Tc(this,a),xd);this.a-=this.c?9:3+(7==this.b?2:0)}function Y(){K(this,8,6)}function Ac(a){ve[a>>12].call(this,a)}function we(a){xe[a>>6&3].call(this,a)}function ye(a){ze[a>>6&3].call(this,a)}function Ae(a){Be[a>>6&3].call(this,a)}function Ce(a){De[a&15].call(this,a)}
-function Ee(a){Fe[a&15].call(this,a)}function Ge(a){He[a>>6&3].call(this,a)}function Ie(a){Je[a>>6&3].call(this,a)}function Ke(a){Le[a>>6&3].call(this,a)}
-var ve=[function(a){Me[a>>8&15].call(this,a)},he,Xd,Hd,Dd,Fd,yd,Y,function(a){Ne[a>>8&15].call(this,a)},ie,Yd,Id,Ed,Gd,qe,Y],Me=[function(a){Pe[a>>4&15].call(this,a)},Ud,Rd,Jd,Kd,Pd,Ld,Nd,fe,fe,we,ye,Ae,Y,Y,Y],xe=[function(a){Gc(this,Yc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,id);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,md);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,kd);this.a-=this.c?9:3+(7==this.b?2:0)}],ze=[function(a){T(this,a,0,
-od);this.a-=this.c?11:6},function(a){T(this,a,Q(this)?1:0,Zc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,Q(this)?1:0,ud);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=Wc(this,a);Gc(this,a);this.a-=this.c?4:3+(7==this.b?2:0)}],Be=[function(a){T(this,a,0,sd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,qd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,cd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,ad);this.a-=this.c?9:3+(7==this.b?2:0)}],
-Pe=[function(a){Qe[a&15].call(this,a)},Y,Y,Y,de,de,de,de,oe,Y,Ce,Ee,re,re,re,re],Qe=[ae,te,ne,Td,be,me,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y],De=[le,function(){this.m=0;this.a-=5},function(){this.f=0;this.a-=5},W,function(){this.i=1;this.a-=5},W,W,W,function(){this.s=0;this.a-=5},W,W,W,W,W,W,W],Fe=[le,function(){this.m=65536;this.a-=5},function(){this.f=32768;this.a-=5},X,function(){this.i=0;this.a-=5},X,X,X,function(){this.s=32768;this.a-=5},X,X,X,X,X,X,X],Ne=[Sd,Qd,Md,Od,Vd,Wd,Bd,Cd,$d,se,Ge,Ie,Ke,Y,Y,Y],He=[function(a){Gc(this,
-Xc(this,a,0,255));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,0,jd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,1,nd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,1,ld);this.a-=this.c?9:3+(7==this.b?2:0)}],Je=[function(a){S(this,a,0,pd);this.a-=this.c?11:6},function(a){S(this,a,Q(this)?1:0,$c);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,Q(this)?1:0,vd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=Vc(this,a);Gc(this,a<<8);this.a-=this.c?4:3+(7==
+function I(a,b,c,d,e,f){this.g=a;this.id=dc+=2;this.a=null;this.Ka=b;this.pb=c;this.size=d||0;this.type=e||ec;this.l=e==fc;this.controller=null;Ab(this);this.va=this.ic=!1;if(this.size)if(f)this.controller=f,a=[null,0],this.a=a[0],gc(this,f.dc);else if(Xa)this.b=new ArrayBuffer(this.size),this.c=new DataView(this.b,0,this.size),this.o=new Uint8Array(this.b,0,this.size),this.s=new Uint16Array(this.b,0,this.size>>1),this.a=new Int32Array(this.b,0,this.size>>2),gc(this,cc?hc:ic);else{a=this.a=Array(this.size>>
+2);for(f=0;f>2),b=0;b>8,c)},M:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},aa:function(a,b){a&1&&J(this.g,b,64);b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},ra:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<>8);this.va=!0},D:function(a,b){return this.I(a,b)},R:function(a,b){return this.Vb(a,b)},pa:function(a,b,c){this.l?this.f(a,b,c):this.Hb(a,b,c)},ta:function(a,b,c){this.l?this.f(a,b,c):this.bc(a,b,c)},C:function(a){return this.o[a]},J:function(a){return this.o[a]},N:function(a,b){a&1&&J(this.g,b,64);return this.c.getUint16(a,!0)},$:function(a,b){a&1&&J(this.g,b,64);return this.s[a>>1]},oa:function(a,b){this.o[a]=b;this.va=!0},qa:function(a,b){this.o[a]=b;this.va=!0},sa:function(a,b,c){a&1&&J(this.g,
+c,64);this.c.setUint16(a,b,!0);this.va=!0},ua:function(a,b,c){a&1&&J(this.g,c,64);this.s[a>>1]=b;this.va=!0}};function Ab(a,b,c){a.F=b;a.i=a.m=0;c&&((a.i=c.i)&&lc(a,mc,!1),(a.m=c.m)&&nc(a,mc,!1))}function nc(a,b,c){c&&a.m||(a.Gb=!a.l&&b[1]||a.f,a.qb=!a.l&&b[3]||a.A);if(c||void 0===c)a.Hb=b[1]||a.f,a.bc=b[3]||a.A}function lc(a,b,c){c&&a.i||(a.Ab=b[0]||a.v,a.V=b[2]||a.w);if(c||void 0===c)a.I=b[0]||a.v,a.Vb=b[2]||a.w}function gc(a,b){b||(b=oc);lc(a,b,void 0);nc(a,b,void 0)}
+var oc=[],jc=[I.prototype.M,I.prototype.ra,I.prototype.aa,I.prototype.ya],mc=[I.prototype.D,I.prototype.pa,I.prototype.R,I.prototype.ta];if(Xa)var ic=[I.prototype.C,I.prototype.oa,I.prototype.N,I.prototype.sa],hc=[I.prototype.J,I.prototype.qa,I.prototype.$,I.prototype.ua];
+function pc(a,b){x.call(this,"CPU",a,pc);var c=a.multiplier||1;this.hb=a.cycles||b;this.sa=c;this.xb=Math.round(this.hb/1E4)/100;this.Ha=this.xb*this.sa;this.j.P=!1;this.j.Eb=!1;this.j.Va=a.autoStart;this.j.gb=!1;this.eb=this.Ia=0;this.fb=a.csStart;this.Ra=a.csInterval;this.Sa=a.csStop;this.J=[];this.Tb=this.od.bind(this);F(this)}z(pc);var qc=["power","reset"];h=pc.prototype;
+h.ia=function(a,b,c,d){this.l=a;this.g=b;this.F=d;this.A=a.A;for(b=0;b=a.Ia&&(a.Ia+=a.Ra,c=!0);0<=a.Sa&&a.Sa<=uc(a)&&(a.Ra=a.Sa=-1,tc(a),G(a),c=!0);c&&a.T(uc(a)+" cycles: checksum="+m(a.eb))}}
+h.Z=function(a,b,c){var d=this;switch(b){case "power":case "reset":return this.o[b]=c,!0;case "run":return this.o[b]=c,c.onclick=function(){var a;if(a=d.l)if(a=d.l,a.j.O)a=!0;else{var b=null,c,k=A(a.id);for(c=0;ca.pa/a.Ha&&(b=1);a.sa=b;b=a.xb*a.sa;if(a.Ha!=b){a.Ha=b;b=a.Ha.toFixed(2)+"Mhz";var d=a.o.setSpeed;d&&(d.textContent=b);a.T("target speed: "+b)}c&&a.l&&xc(a.l)}ob(a,a.aa);a.aa=0;a.$=ra();a.qa=0;wc(a)}function Rb(a,b){var c=a.J.length;a.J.push([-1,b]);return c}function Tb(a,b,c,d){0<=b&&ba.J[b][0])&&(c=a.hb*a.sa/1E3*c|0,a.j.P&&(c+=yc(a)),a.J[b][0]=c)}
+function nb(a,b){for(var c=a.J.length-1;0<=c;c--){var d=a.J[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function yc(a,b){var c=a.ra-=a.a;a.a=a.I=0;b&&(a.ra=0);return c}
+h.od=function(){if(this.j.P){this.yb>=this.hb&&wc(this,!0);this.Ua=0;this.cb=ra();if(this.qa){var a=this.cb-this.qa;a>this.Qb&&(this.$+=a,this.$>this.cb&&(this.$=this.cb))}try{do{for(var b,c=this.j.gb?1:this.ib,d=this.J.length-1;0<=d;d--){var e=this.J[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.ob(b)}catch(f){if("number"!=typeof f)throw f;}b=yc(this,!0);this.Ua+=b;this.aa+=b;pb(this,b);nb(this,b);this.Ta-=b;if(0>=this.Ta){this.Ta+=this.ib;15<=++this.Rb&&(this.xa(),this.Rb=0);break}}while(this.j.P)}catch(f){G(this);
+this.l&&this.l.stop(ra(),uc(this));Wa(this,f.stack||f.message);return}if(this.j.P){a=setTimeout;b=this.Tb;this.qa=ra();c=this.Qb;this.Ua&&(c=Math.round(c*this.Ua/this.ib));c-=this.qa-this.cb;if(d=this.qa-this.$)this.pa=Math.round(this.aa/(10*d))/100,864E5<=d&&(this.ua=0,vc(this));if(0>c||this.pac&&(this.$-=c),c=0;this.yb+=this.Ua;this.qa+=c;a(b,c)}}};
+function mb(a){var b;a.j.error?(a.T(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.j.P)a.T(a.toString()+" busy");else{vc(a);a.j.P=!0;a.j.Eb=!0;if(b=a.o.run)b.textContent="Halt";a.l&&a.l.start(a.$,uc(a));setTimeout(a.Tb,0)}}h.ob=function(){return 0};function G(a){var b=!1;if(a.j.P){yc(a);ob(a,a.aa);a.aa=0;a.j.P=!1;if(b=a.o.run)b.textContent="Run";a.l&&a.l.stop(ra(),uc(a));b=!0}a.j.complete=void 0;return b}
+function zc(a){this.La=+a.model||1170;this.Mb=a.addrReset||0;pc.call(this,a,6666667);this.decode=1120==this.La?Ac.bind(this):Bc.bind(this);Cc(this);this.ta=0;this.N=null;this.j.complete=!1}z(zc,pc);h=zc.prototype;h.reset=function(){this.status("model "+this.La);this.j.P&&G(this);Cc(this);sc(this);this.j.error=!1;this.parent.reset.call(this)};
+function Cc(a){a.m=65536;a.f=32768;a.i=65535;a.s=32768;a.B=15;a.h=[0,0,0,0,0,0,0,a.Mb];a.Ga=[0,0,0,0,0,0];a.na=[0,0,0,0];a.v=0;a.ab=0;a.lc=[4,2,0,1];a.H=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.X=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.$a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+0,0,0,0,0,0,0,0,0];a.Yb=[0,0,0,0,0,0,0,0];a.Xb=0;a.u=0;a.C=a.D=0;a.c=a.b=a.wb=0;a.Ja=-1;lb(a)}function lb(a){a.mb=255;a.ea=0;a.Db=0;a.w=0;a.Ca=0;a.Cb=0;a.Fa=0;a.Ba=0;a.bb=0;a.Pb=262143;a.N=null;a.g&&Xb(a)}function Xb(a){a.Ba?(a.R=65536,a.M=a.kc,a.V=a.ld,a.qb=a.de,Cb(a.g,a.Fa&16?22:18)):(a.R=0,a.M=a.jc,a.V=a.Wb,a.qb=a.cc,Cb(a.g,16))}h.Lb=function(){return 0};h.save=function(){var a=new O(this);a.set(0,[]);a.set(1,[this.ua,this.sa]);a.set(2,Ob(this.g));return a.data()};
+h.restore=function(a){var b=a[1];this.ua=b[1];vc(this,b[3]);a:{b=this.g;a=a[2];var c;for(c=0;c>14&3;c=a.B>>14&3;a.v!=c&&(a.na[c]=a.h[6],a.h[6]=a.na[a.v]);a.B=b;a.u|=2}function R(a,b){a.u&128||(a.s=a.i=b,a.f=0)}function Fc(a,b,c){a.u&128||(a.s=a.i=a.m=b,a.f=c||0)}function Gc(a,b,c,d){a.u&128||(a.s=a.i=a.m=b,a.f=(c^b)&(d^b))}function Hc(a,b){a.u&128||(a.s=a.i=a.m=b,a.f=a.s^a.m>>1)}function Ic(a,b,c,d){a.u&128||(a.s=a.i=a.m=b,a.f=(c^d)&(d^b))}
+function K(a,b,c,d){if(!a.ta){var e=!1;0>a.Ja?a.Ja=Yb(a):a.v||(b=4,e=!0);a.w&57344||(a.Ca=63222,a.Cb=b);a.v=0;var f=a.V(b|a.R),g=a.V(b+2&65535|a.R);Zb(a,g&-12289|a.Ja>>2&12288);e&&(a.ea|=4,a.h[6]=4);Jc(a,a.Ja);Jc(a,a.h[7]);Q(a,f);a.u&=~c;a.Ja=-1;a.u|=8;if(-18!=d)throw b;}}function Kc(a){var b=Lc(a),c=Lc(a)&-1793;a.B&49152&&(c=c&-225|a.B&63712);Q(a,b);Zb(a,c);a.u&=-17}
+function Lb(a,b){var c=b>>13&31;31>c&&a.Fa&32&&(b=a.$a[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)"));return b}
+function Mc(a,b,c){var d,e,f;if(!(c&a.Ba))return b;d=b>>13;a.Fa&a.lc[a.v]||(d&=7);e=a.H[a.v][d];f=(a.X[a.v][d]<<6)+(b&8191)&a.Pb;var g=0;switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.H[a.v][d]=e;if(4194170!==f||a.v)a.bb=a.v,a.ab=d;b=!1;g&&(g&57344&&(0<=a.Ja&&(g|=128),a.w&57344||(a.w=a.w|g|a.bb<<5|a.ab<<1),
+b=!0),a.w&61440||!(4191360>f||4194239>>a.c].Gb(b&a.l,c&255,b)}function Lc(a){var b=a.V(a.h[6]|a.R);a.h[6]=a.h[6]+2&65535;return b}function Jc(a,b){var c=a.h[6]-2&65535;a.h[6]=c;a.w&57344||(a.Ca=a.Ca<<8|246);Oc(a,0,c);a.qb(c,b)}
+function Oc(a,b,c){a.v||a.u&64||!(c<=a.mb&&(b||4c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.h[c];7!=c&&(e|=g);e=a.V(e);e|=g;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.h[c]+f&65535;7!=c&&(e|=g);a.a-=4;break;case 5:f=-2;e=a.h[c]-2&65535;7!=c&&(e|=g);e=a.V(e)|g;a.a-=8;break;case 6:return e=a.V(Ec(a,2)),e=e+a.h[c]&65535|g,a.a-=6,e;case 7:return e=a.V(Ec(a,2)),e=e+a.h[c]&
+65535,e=a.V(e|a.R)|g,a.a-=10,e}a.h[c]=a.h[c]+f&65535;!g||a.w&57344||(a.Ca=a.Ca<<8|f<<3&248|c);6==c&&0>f&&Oc(a,b,a.h[6]);return e}h.lb=function(a){if(!this.Ba)return this.g.lb(a);this.ta++;a=this.Wb(Mc(this,a,2));this.ta--;return a};h.Za=function(a,b){this.Ba?(this.ta++,Nc(this,Mc(this,a,5),b),this.ta--):this.g.Za(a,b)};h.nb=function(a,b){this.Ba?(this.ta++,this.cc(Mc(this,a,4),b),this.ta--):this.g.nb(a,b)};h.jc=function(a,b,c){return Pc(this,a,b,c)};
+h.kc=function(a,b,c){return Mc(this,Pc(this,a,b,c),c)};h.Wb=function(a){return Mb(this.g,a)};h.ld=function(a){return Mb(this.g,Mc(this,a,2))};h.cc=function(a,b){Nb(this.g,a,b&65535)};h.de=function(a,b){Nb(this.g,Mc(this,a,4),b)};function Qc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=Pc(a,b,d,2),c&65536||61440!==(a.B&61440)&&(d&=65535),a.v=a.B>>12&3,c=a.V(d|c&a.R),a.v=a.B>>14&3):c=6!=d||(a.B>>2&12288)===(a.B&12288)?a.h[d]:a.na[a.B>>12&3];return c}
+function Rc(a,b,c,d){a.w&57344||(a.Ca=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=Pc(a,b,e,4),c&65536||(e&=65535),a.v=a.B>>12&3,e=Mc(a,e|c&65536,4),a.v=a.B>>14&3,Nb(a.g,e,d)):6!=e||(a.B>>2&12288)===(a.B&12288)?a.h[e]=d:a.na[a.B>>12&3]=d}function Sc(a,b){b>>=6;var c=a.D=b&7;(b=a.C=(b&56)>>3)?(c=a.M(b,c,3),a=Kb(a.g,c)):a=a.h[c]&255;return a}function Tc(a,b){b>>=6;var c=a.D=b&7;return(b=a.C=(b&56)>>3)?Mb(a.g,a.M(b,c,2)):a.h[c]}function Uc(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return Pc(a,b,c,8)}
+function Vc(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.M(b,c,3),a=Kb(a.g,c)):a=a.h[c]&255;return a}function Wc(a,b){var c=a.b=b&7;return(b=a.c=(b&56)>>3)?Mb(a.g,a.M(b,c,2)):a.h[c]}function S(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.wb=a.M(b,e,7),Nc(a,e,d.call(a,c,Kb(a.g,e)))):a.h[e]=a.h[e]&65280|d.call(a,c,a.h[e]&255)}function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.M(b,e,6),Nb(a.g,e,d.call(a,c,Mb(a.g,e)))):a.h[e]=d.call(a,c,a.h[e])}
+function Xc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?Nc(a,a.M(b,e,5),c):a.h[e]=c?a.h[e]&~d|c<<24>>24&d:a.h[e]&~d;return c}function Yc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?Nb(a.g,a.M(b,d,4),c):a.h[d]=c&65535;return c}function V(a,b,c){c&&(Q(a,a.h[7]+(b<<24>>23)),a.a-=2);a.a-=3}
+h.ob=function(a){this.j.complete=!0;var b=a?this.j.Eb?0:1:-1;this.j.Eb=!1;this.ra=this.a=a;do{if(this.u){this.u&112&&(this.u&32?K(this,168,32,-7):this.u&16?K(this,12,16,-9):this.u&64&&K(this,4,64,-8));if(a=this.u&7){a=!1;if(this.u&2){this.u&=-3;var c=160,d=(this.Db&224)>>5,e=this.N&&this.N.Ma>d?this.N:null;e&&(c=e.qd,d=e.Ma);d>(this.B&224)>>5?(this.u&4&&(Ec(this,2),this.u&=-5),K(this,c,0,-18),d=!0):d=!1;if(d){if(e)if(a=e,e=this.N,e==a)this.N=a.next;else for(;e;){d=e.next;if(d==a){e.next=d.next;break}e=
+d}a=!0}}else this.u&1&&this.u++;a=a&&0>b}if(a)break}this.u=this.u&7|this.B&16;this.decode(Dc(this))}while(0>1|b<<16;Hc(this,a);return a&65535}function dd(a,b){a=b&128|b>>1|b<<8;Hc(this,a<<8);return a&255}function ed(a,b){a=b&~a;R(this,a);return a}function fd(a,b){a=b&~a;R(this,a<<8);return a}function gd(a,b){a|=b;R(this,a);return a}function hd(a,b){a|=b;R(this,a<<8);return a}function id(a,b){a=~b|65536;Fc(this,a);return a&65535}function jd(a,b){a=~b|256;Fc(this,a<<8);return a&255}
+function kd(a,b){a=b-a;this.u&128||(this.s=this.i=a,this.f=b&(b^a));return a&65535}function ld(a,b){a=b-a;var c=a<<8;b<<=8;this.u&128||(this.s=this.i=c,this.f=b&(b^c));return a&255}function md(a,b){a=b+a;this.u&128||(this.s=this.i=a,this.f=a&(b^a));return a&65535}function nd(a,b){a=b+a;var c=a<<8;this.u&128||(this.s=this.i=c,this.f=c&(b<<8^c));return a&255}function od(a,b){a=-b;Fc(this,a,a&b&32768);return a&65535}function pd(a,b){a=-b;Fc(this,a<<8,(a&b&128)<<8);return a&255}
+function qd(a,b){a=b<<1|this.m>>16&1;Hc(this,a);return a&65535}function rd(a,b){a=b<<1|this.m>>16&1;Hc(this,a<<8);return a&255}function sd(a,b){a=(this.m&65536|b)>>1|b<<16;Hc(this,a);return a&65535}function td(a,b){a=((this.m&65536)>>8|b)>>1|b<<8;Hc(this,a<<8);return a&255}function ud(a,b){var c=b-a;Ic(this,c,a,b);return c&65535}function vd(a,b){var c=b-a;Ic(this,c<<8,a<<8,b<<8);return c&255}function wd(a,b){this.u&128||(this.s=this.i=b&65280,this.f=this.m=0);return(b<<8|b>>8)&65535}
+function xd(a,b){a^=b;R(this,a);return a&65535}function yd(a){T(this,a,Tc(this,a),Zc);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.C?5:3)+(7==this.b?2:0)}function zd(a){var b=Wc(this,a);a=a>>6&7;var c=this.h[a];c&32768&&(c|=4294901760);this.m=this.f=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.f=32768)}this.h[a]=c&65535;this.s=this.i=c;this.a-=(this.c?6:7)+b}
+function Ad(a){var b=Wc(this,a);a=a>>6&7;var c=this.h[a]<<16|this.h[a|1];this.m=this.f=0;b&=63;if(b&32){b=64-b;32>b-1;this.m=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.h[a|1]=d&65535;this.s=d>>16;this.i=d>>16|d;this.a-=(this.c?6:7)+b}function Bd(a){V(this,a,!P(this))}function Cd(a){V(this,a,P(this))}
+function Dd(a){T(this,a,Tc(this,a),ed);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.C?5:3)+(7==this.b?2:0)}function Ed(a){S(this,a,Sc(this,a),fd);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.C?5:3)+(7==this.b?2:0)}function Fd(a){T(this,a,Tc(this,a),gd);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.C?5:3)+(7==this.b?2:0)}function Gd(a){S(this,a,Sc(this,a),hd);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.C?5:3)+(7==this.b?2:0)}
+function Hd(a){R(this,Tc(this,a)&Wc(this,a));this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.C?4:3)+(7==this.b?2:0)}function Id(a){R(this,(Sc(this,a)&Vc(this,a))<<8);this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.C?4:3)+(7==this.b?2:0)}function Jd(a){V(this,a,this.i&65535?0:4)}function Kd(a){V(this,a,!this.Aa()==!(this.f&32768))}function Ld(a){V(this,a,!!(this.i&65535)&&!this.Aa()==!(this.f&32768))}function Md(a){V(this,a,!P(this)&&!!(this.i&65535))}
+function Nd(a){V(this,a,(this.i&65535?0:4)||!this.Aa()!=!(this.f&32768))}function Od(a){V(this,a,P(this)||(this.i&65535?0:4))}function Pd(a){V(this,a,!this.Aa()!=!(this.f&32768))}function Qd(a){V(this,a,this.Aa())}function Rd(a){V(this,a,!!(this.i&65535))}function Sd(a){V(this,a,!this.Aa())}function Td(){K(this,12,0,-1);this.a-=5}function Ud(a){V(this,a,!0)}function Vd(a){V(this,a,!(this.f&32768))}function Wd(a){V(this,a,this.f&32768?2:0)}
+function W(a){a&1&&(this.m=0);a&2&&(this.f=0);a&4&&(this.i=1);a&8&&(this.s=0);this.a-=5}function Xd(a){var b=Tc(this,a);a=Wc(this,a);Ic(this,b-a,a,b);this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.C?4:3)+(7==this.b?2:0)}function Yd(a){var b=Sc(this,a)<<8;a=Vc(this,a)<<8;Ic(this,b-a,a,b);this.a-=this.c?4+(this.D&&6<=this.b?1:0):(this.C?4:3)+(7==this.b?2:0)}
+function Zd(a){var b=Wc(this,a);if(b){a=a>>6&7;var c=this.h[a]<<16|this.h[a|1];this.m=this.f=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.h[a]=d&65535,this.h[a|1]=c-d*b&65535,this.i=d>>16|d,this.s=d>>16):(this.f=32768,this.i=d>>15|d,this.s=c>>16,-1===b&&65534===this.h[a]&&(this.h[a]=this.h[a|1]=1));this.a-=53}else this.i=this.s=0,this.f=32768,this.m=65536,this.a-=7}function $d(){K(this,24,0,-2);this.a-=25}
+function ae(){this.B&49152?(this.ea|=128,K(this,4,0,-3)):(this.A&&this.A.setData(this.h[0],!0),this.F?this.F.b():G(this));this.a-=7}function be(){K(this,16,0,-4);this.a-=25}var ce=[0,7,7,10,7,11,9,13];function de(a){this.I=this.a;Q(this,Uc(this,a));this.a=this.I-ce[this.c]}var ee=[0,14,14,17,14,18,16,20];function fe(a){this.I=this.a;var b=Uc(this,a);a=a>>6&7;Jc(this,this.h[a]);this.h[a]=this.h[7];Q(this,b);this.a=this.I-ee[this.c]}var ge=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17];
+function he(a){var b=Tc(this,a);this.I=this.a;R(this,Yc(this,a,b));this.a=this.I-ge[(this.C?8:0)+this.c]+(7!=this.b||this.c?0:2)}function ie(a){var b=Sc(this,a);R(this,Xc(this,a,b,65535)<<8);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.C?5:3)+(7==this.b?2:0)}var je=[7,13,13,17,14,18,17,21];
+function ke(a){var b=Wc(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.h[a];c&32768&&(c|=-65536);b=~~(b*c);this.h[a]=b>>16&65535;this.h[a|1]=b&65535;this.u&128||(this.s=b>>16,this.i=this.s|b,this.f=0,this.m=-32768>b||32767>6;if(this.h[b]=this.h[b]-1&65535)Q(this,this.h[7]-((a&63)<<1)),this.a+=1;this.a-=6}function qe(a){T(this,a,Tc(this,a),ud);this.a-=this.c?9+(this.D&&6<=this.b?1:0):(this.C?5:3)+(7==this.b?2:0)}
+function re(a){T(this,a,0,wd);this.a-=this.c?9:3+(7==this.b?2:0)}function se(){K(this,28,0,-5);this.a-=5}function te(){this.A&&(this.A.da=this.h[7],this.A.setData(this.h[0],!0));this.u|=4;Ec(this,-2);this.a-=3}function ue(a){T(this,a,Tc(this,a),xd);this.a-=this.c?9:3+(7==this.b?2:0)}function Y(){K(this,8,0,-6)}function Ac(a){ve[a>>12].call(this,a)}function we(a){xe[a>>6&3].call(this,a)}function ye(a){ze[a>>6&3].call(this,a)}function Ae(a){Be[a>>6&3].call(this,a)}
+function Ce(a){De[a&15].call(this,a)}function Ee(a){Fe[a&15].call(this,a)}function Ge(a){He[a>>6&3].call(this,a)}function Ie(a){Je[a>>6&3].call(this,a)}function Ke(a){Le[a>>6&3].call(this,a)}
+var ve=[function(a){Me[a>>8&15].call(this,a)},he,Xd,Hd,Dd,Fd,yd,Y,function(a){Ne[a>>8&15].call(this,a)},ie,Yd,Id,Ed,Gd,qe,Y],Me=[function(a){Pe[a>>4&15].call(this,a)},Ud,Rd,Jd,Kd,Pd,Ld,Nd,fe,fe,we,ye,Ae,Y,Y,Y],xe=[function(a){Fc(this,Yc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,id);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,md);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,kd);this.a-=this.c?9:3+(7==this.b?2:0)}],ze=[function(a){T(this,a,0,
+od);this.a-=this.c?11:6},function(a){T(this,a,P(this)?1:0,Zc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,P(this)?1:0,ud);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=Wc(this,a);Fc(this,a);this.a-=this.c?4:3+(7==this.b?2:0)}],Be=[function(a){T(this,a,0,sd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,qd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,cd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,ad);this.a-=this.c?9:3+(7==this.b?2:0)}],
+Pe=[function(a){Qe[a&15].call(this,a)},Y,Y,Y,de,de,de,de,oe,Y,Ce,Ee,re,re,re,re],Qe=[ae,te,ne,Td,be,me,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y],De=[le,function(){this.m=0;this.a-=5},function(){this.f=0;this.a-=5},W,function(){this.i=1;this.a-=5},W,W,W,function(){this.s=0;this.a-=5},W,W,W,W,W,W,W],Fe=[le,function(){this.m=65536;this.a-=5},function(){this.f=32768;this.a-=5},X,function(){this.i=0;this.a-=5},X,X,X,function(){this.s=32768;this.a-=5},X,X,X,X,X,X,X],Ne=[Sd,Qd,Md,Od,Vd,Wd,Bd,Cd,$d,se,Ge,Ie,Ke,Y,Y,Y],He=[function(a){Fc(this,
+Xc(this,a,0,255));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,0,jd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,1,nd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,1,ld);this.a-=this.c?9:3+(7==this.b?2:0)}],Je=[function(a){S(this,a,0,pd);this.a-=this.c?11:6},function(a){S(this,a,P(this)?1:0,$c);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,P(this)?1:0,vd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=Vc(this,a);Fc(this,a<<8);this.a-=this.c?4:3+(7==
this.b?2:0)}],Le=[function(a){S(this,a,0,td);this.a-=this.c?9+(this.wb&1):3+(7==this.b?2:0)},function(a){S(this,a,0,rd);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){S(this,a,0,dd);this.a-=this.c?9+(this.wb&1):3+(7==this.b?2:0)},function(a){S(this,a,0,bd);this.a-=this.c?9:3+(7==this.b?2:0)}];function Bc(a){Re[a>>12].call(this,a)}
-var Re=[function(a){Se[a>>8&15].call(this,a)},he,Xd,Hd,Dd,Fd,yd,function(a){Te[a>>8&15].call(this,a)},function(a){Ue[a>>8&15].call(this,a)},ie,Yd,Id,Ed,Gd,qe,Y],Se=[function(a){Ve[a>>4&15].call(this,a)},Ud,Rd,Jd,Kd,Pd,Ld,Nd,fe,fe,we,ye,Ae,function(a){We[a>>6&3].call(this,a)},Y,Y],We=[function(a){a=this.g[7]+((a&63)<<1)&65535;var b=this.W(a|this.R);O(this,this.g[5]);this.g[6]=a+2&65535;this.g[5]=b;this.a-=8},function(a){a=Qc(this,a,0);Kc(this,a);R(this,a);this.a-=11},function(a){var b=Mc(this);this.F=
-this.a;Rc(this,a,0,b);R(this,b);this.a=this.F-je[this.c]},function(a){R(this,Yc(this,a,this.Aa?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],Ve=[function(a){Xe[a&15].call(this,a)},Y,Y,Y,de,de,de,de,oe,function(a){a&8?(this.B&49152||(this.B=this.B&-2017|(a&7)<<5,this.u|=1),this.a-=5):K(this,8,6)},Ce,Ee,re,re,re,re],Xe=[ae,te,ne,Td,be,me,function(){Lc(this);this.a-=13},function(){K(this,8,6)},Y,Y,Y,Y,Y,Y,Y,Y],Te=[ke,ke,Zd,Zd,zd,zd,Ad,Ad,ue,ue,Y,Y,Y,Y,pe,pe],Ue=[Sd,Qd,Md,Od,Vd,Wd,Bd,Cd,$d,se,Ge,Ie,
-Ke,function(a){Ye[a>>6&3].call(this,a)},Y,Y],Ye=[Y,function(a){a=Qc(this,a,65536);Kc(this,a);R(this,a);this.a-=11},function(a){var b=Mc(this);this.F=this.a;Rc(this,a,65536,b);R(this,b);this.a=this.F-je[this.c]},Y];
-function Ze(a){x.call(this,"ROM",a,Ze);this.X=this.c=null;this.i=a.addr;this.b=a.size;this.m=!1;this.f=a.alias;this.l=a.file;this.s=q(this.l);if(this.l){a=this.l;var b=la(this.s);"json"!=b&&"hex"!=b&&(a=v()+"/api/v1/dump?file="+this.l+"&format=bytes&decimal=true");var c=this;r(a,null,!0,function(a,b,f){f?(c.G("Unable to load ROM resource (error "+f+": "+a+")"),c.l=null):(Ra(c.oa,a,b),(a=ta(a,b))?(c.c=a.K,c.X=a.X):c.l=null);$e(c)})}}z(Ze);h=Ze.prototype;
-h.ia=function(a,b,c,d){this.h=b;this.a=c;this.D=d;$e(this)};h.ka=function(){this.X&&(this.D&&this.D.a(this.id,this.i,this.b,this.X),delete this.X);return!0};h.ja=function(){return!0};
-function $e(a){if(!Va(a)){if(a.l){if(!a.c||!a.h)return;a.b||(a.b=a.c.length);if(a.c.length!=a.b)Wa(a,"ROM size ("+m(a.c.length,8,!0)+") does not match specified size ("+m(a.b,8,!0)+")");else{var b;a:{b=a.i;a.status(a.b+"-byte ROM at "+ka(b));if(57344<=b&&b<57344+H){var c={};b=(c[b]=[Ze.prototype.Zc,Ze.prototype.Sd,null,null,null,a.b>>1],c);if(cb(a.h,a,b,256,a.ya)){b=a.m=!0;break a}}else if(Fb(a.h,b,a.b,fc)){for(c=0;c>>a.c;0=b.length)break;for(var k=k+2,n=b[k++]&255|(b[k++]&255)<<8,p=b[k++]&255|(b[k++]&255)<<8,l=l+((n&255)+(n>>8)+(p&255)+(p>>8)),u=k,w=n-=6;0=b.length)break;l+=b[k++]&255;if(l&255)break;if(w)for(;w--;)a.a.$a(p++,b[u++]&255);else p&1?G(a.a):Dc(a.a,p,f);g=!0}else k++;else k+=2}if(!g&&(null==c&&(c=e),null!=c)){for(e=0;e=b)a.preventDefault&&a.preventDefault(),64e.w&&(e.w-=32),e.b|=128,e.b&64&&Sb(e.a,e.aa))});this.ba=Ub(52,4);this.O=Rb(this.a,function(){e.c|=128;e.c&64&&Sb(e.a,e.ba)});cb(b,this,ff);F(this)};
+var Re=[function(a){Se[a>>8&15].call(this,a)},he,Xd,Hd,Dd,Fd,yd,function(a){Te[a>>8&15].call(this,a)},function(a){Ue[a>>8&15].call(this,a)},ie,Yd,Id,Ed,Gd,qe,Y],Se=[function(a){Ve[a>>4&15].call(this,a)},Ud,Rd,Jd,Kd,Pd,Ld,Nd,fe,fe,we,ye,Ae,function(a){We[a>>6&3].call(this,a)},Y,Y],We=[function(a){a=this.h[7]+((a&63)<<1)&65535;var b=this.V(a|this.R);Q(this,this.h[5]);this.h[6]=a+2&65535;this.h[5]=b;this.a-=8},function(a){a=Qc(this,a,0);Jc(this,a);R(this,a);this.a-=11},function(a){var b=Lc(this);this.I=
+this.a;Rc(this,a,0,b);R(this,b);this.a=this.I-je[this.c]},function(a){R(this,Yc(this,a,this.Aa?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],Ve=[function(a){Xe[a&15].call(this,a)},Y,Y,Y,de,de,de,de,oe,function(a){a&8?(this.B&49152||(this.B=this.B&-2017|(a&7)<<5,this.u|=1),this.a-=5):K(this,8,0,-6)},Ce,Ee,re,re,re,re],Xe=[ae,te,ne,Td,be,me,function(){Kc(this);this.a-=13},function(){K(this,8,0,-6)},Y,Y,Y,Y,Y,Y,Y,Y],Te=[ke,ke,Zd,Zd,zd,zd,Ad,Ad,ue,ue,Y,Y,Y,Y,pe,pe],Ue=[Sd,Qd,Md,Od,Vd,Wd,Bd,Cd,$d,se,
+Ge,Ie,Ke,function(a){Ye[a>>6&3].call(this,a)},Y,Y],Ye=[Y,function(a){a=Qc(this,a,65536);Jc(this,a);R(this,a);this.a-=11},function(a){var b=Lc(this);this.I=this.a;Rc(this,a,65536,b);R(this,b);this.a=this.I-je[this.c]},Y];
+function Ze(a){x.call(this,"ROM",a,Ze);this.W=this.c=null;this.i=a.addr;this.b=a.size;this.m=!1;this.f=a.alias;this.l=a.file;this.s=q(this.l);if(this.l){a=this.l;var b=la(this.s);"json"!=b&&"hex"!=b&&(a=v()+"/api/v1/dump?file="+this.l+"&format=bytes&decimal=true");var c=this;r(a,null,!0,function(a,b,f){f?(c.G("Unable to load ROM resource (error "+f+": "+a+")"),c.l=null):(Ra(c.oa,a,b),(a=ta(a,b))?(c.c=a.K,c.W=a.W):c.l=null);$e(c)})}}z(Ze);h=Ze.prototype;
+h.ia=function(a,b,c,d){this.g=b;this.a=c;this.F=d;$e(this)};h.ka=function(){this.W&&(this.F&&this.F.a(this.id,this.i,this.b,this.W),delete this.W);return!0};h.ja=function(){return!0};
+function $e(a){if(!Va(a)){if(a.l){if(!a.c||!a.g)return;a.b||(a.b=a.c.length);if(a.c.length!=a.b)Wa(a,"ROM size ("+m(a.c.length,8,!0)+") does not match specified size ("+m(a.b,8,!0)+")");else{var b;a:{b=a.i;a.status(a.b+"-byte ROM at "+ka(b));if(57344<=b&&b<57344+H){var c={};b=(c[b]=[Ze.prototype.Zc,Ze.prototype.Sd,null,null,null,a.b>>1],c);if(cb(a.g,a,b,256,a.ya)){b=a.m=!0;break a}}else if(Fb(a.g,b,a.b,fc)){for(c=0;c>>a.c;0=b.length)break;for(var k=k+2,n=b[k++]&255|(b[k++]&255)<<8,p=b[k++]&255|(b[k++]&255)<<8,l=l+((n&255)+(n>>8)+(p&255)+(p>>8)),u=k,w=n-=6;0=b.length)break;l+=b[k++]&255;if(l&255)break;if(w)for(;w--;)a.a.Za(p++,b[u++]&255);else p&1?G(a.a):null==d&&(d=p);g=!0}else k++;else k+=2}if(!g&&(null==c&&(c=e),null!=c)){for(g=0;g=b)a.preventDefault&&a.preventDefault(),64e.w&&(e.w-=32),e.b|=128,e.b&64&&Sb(e.a,e.$))});this.aa=Ub(52,4);this.N=Rb(this.a,function(){e.c|=128;e.c&64&&Sb(e.a,e.aa)});cb(b,this,ff);F(this)};
h.Nb=function(){if(!this.v){var a=rc(this.l,"connection");if(a){var b=a.split("->");if(2==b.length){var c=pa(b[0]);if(c!=this.ya)return;b=pa(b[1]);if(this.v=Sa(b)){var d=this.v.exports;if(d){var e=d.connect;e&&e.call(this.v);if(this.A=d.receiveData){this.status(this.oa+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};h.ka=function(a,b){if(!b)if(this.Nb(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0};
-h.ja=function(a){return a?this.save():!0};h.reset=function(){gf(this)};h.save=function(){var a=new P(this);a.set(0,[]);return a.data()};h.restore=function(){return gf(this)};function gf(a){a.w=0;a.b=0;a.c=128;a.i=[];return!0}h.Bb=function(a){if("number"==typeof a)this.i.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.J||8,c=a-this.s%a,this.J&&(b=" ".slice(0,c)));this.F&&!this.s&&c&&(b=String.fromCharCode(this.F)+b);this.f.value+=b;this.f.scrollTop=this.f.scrollHeight;this.s+=c}else if(null!=this.m){if(10==a||1024<=this.m.length)this.U(this.m),
-this.m="";10!=a&&(this.m+=String.fromCharCode(a))}this.c&=-129;Tb(this.a,this.O,1E3/Math.round(this.I/10))}};var hf={},ff=(hf[65392]=[null,null,Z.prototype.Tc,Z.prototype.Md,"RCSR"],hf[65394]=[null,null,Z.prototype.Sc,Z.prototype.Ld,"RBUF"],hf[65396]=[null,null,Z.prototype.nd,Z.prototype.fe,"XCSR"],hf[65398]=[null,null,Z.prototype.md,Z.prototype.ee,"XBUF"],hf);Ga(function(){for(var a=E(document,"pdp11","serial"),b=0;b'+b+"");a.innerHTML=b}},!0;case "descTape":return this.o[b]=c,!0;case "loadTape":e=2;case "attachTape":return e||(e=1),this.o[b]=c,c.onclick=function(){var a=
-d.o.listTapes;a&&lf(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.F){c.parentNode.removeChild(c);break}this.o[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;lf(d,q(b,!0),b,1,a)}return!1};return!0;case "readProgress":return this.o[b]=c,!0}return!1};
-h.ia=function(a,b,c,d){this.l=a;this.h=b;this.a=c;this.D=d;this.J=mf(a);var e=this;if((this.c=rc(this.l,"autoMount")||this.c)&&"string"==typeof this.c)try{this.c=eval("("+this.c+")")}catch(f){t("PC11 auto-mount error: "+f.message+" ("+this.c+")"),this.c=null}this.N=Ub(56,4);this.R=Rb(this.a,function(){1==(e.b&32769)&&!(e.b&128)&&e.w":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.J||8,c=a-this.s%a,this.J&&(b=" ".slice(0,c)));this.D&&!this.s&&c&&(b=String.fromCharCode(this.D)+b);this.f.value+=b;this.f.scrollTop=this.f.scrollHeight;this.s+=c}else if(null!=this.m){if(10==a||1024<=this.m.length)this.T(this.m),
+this.m="";10!=a&&(this.m+=String.fromCharCode(a))}this.c&=-129;Tb(this.a,this.N,1E3/Math.round(this.I/10))}};var hf={},ff=(hf[65392]=[null,null,Z.prototype.Tc,Z.prototype.Md,"RCSR"],hf[65394]=[null,null,Z.prototype.Sc,Z.prototype.Ld,"RBUF"],hf[65396]=[null,null,Z.prototype.nd,Z.prototype.fe,"XCSR"],hf[65398]=[null,null,Z.prototype.md,Z.prototype.ee,"XBUF"],hf);Ga(function(){for(var a=E(document,"pdp11","serial"),b=0;b'+b+"");a.innerHTML=b}},!0;case "descTape":return this.o[b]=c,!0;case "loadTape":e=2;case "attachTape":return e||(e=1),this.o[b]=c,c.onclick=function(){var a=
+d.o.listTapes;a&&lf(d,a.options[a.selectedIndex].text,a.value,e)},!0;case "mountTape":if(!this.D){c.parentNode.removeChild(c);break}this.o[b]=c;c.addEventListener("change",function(){var a=c.children[0];a.children[1].disabled=!a.children[0].files.length});c.onsubmit=function(a){if(a=a.currentTarget[1].files[0]){var b=a.name;lf(d,q(b,!0),b,1,a)}return!1};return!0;case "readProgress":return this.o[b]=c,!0}return!1};
+h.ia=function(a,b,c,d){this.l=a;this.g=b;this.a=c;this.F=d;this.J=mf(a);var e=this;if((this.c=rc(this.l,"autoMount")||this.c)&&"string"==typeof this.c)try{this.c=eval("("+this.c+")")}catch(f){t("PC11 auto-mount error: "+f.message+" ("+this.c+")"),this.c=null}this.M=Ub(56,4);this.R=Rb(this.a,function(){1==(e.b&32769)&&!(e.b&128)&&e.wc.indexOf("/api/v1/dump")&&(e=la(c),f="json"==e||"gz"==e?encodeURI(c):v()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!r(f,null,!0,function(e,f,g){var k=0>g&&a.l&&!a.l.j.P;g?a.G('Unable to load tape "'+b+'" (error '+g+": "+e+")",k):(Ra(a.oa,e,f),(e=ta(e,f))&&vf(a,b,c,d,e.K,e.ga,e.fa));
-a.j.Fa=!1;a.m&&(a.m--,a.m||F(a));sf(a)})}function pf(a,b,c,d){if((a=a.o.listTapes)&&a.options){for(var e=0;ec.indexOf("/api/v1/dump")&&(e=la(c),f="json"==e||"gz"==e?encodeURI(c):v()+"/api/v1/dump?path="+encodeURIComponent(c)+"&format=json");return!!r(f,null,!0,function(e,f,g){var k=0>g&&a.l&&!a.l.j.O;g?a.G('Unable to load tape "'+b+'" (error '+g+": "+e+")",k):(Ra(a.oa,e,f),(e=ta(e,f))&&vf(a,b,c,d,e.K,e.ga,e.fa));
+a.j.Ea=!1;a.m&&(a.m--,a.m||F(a));sf(a)})}function pf(a,b,c,d){if((a=a.o.listTapes)&&a.options){for(var e=0;e>2;var f=e=0,b=new DataView(b,0,d);a.a=Array(a.V);for(d=0;dc.indexOf("/api/v1/dump")&&(b=la(c),"json"==b||"gz"==b?f=encodeURI(c):(d="path",e="&mbhd=10",!c.indexOf("http:")||!c.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(b)?(d="disk",e="&mbhd=0"):ma(c,"/")&&(d="dir"),f=v()+"/api/v1/dump?"+d+"="+encodeURIComponent(c)+(a.vb?"":e)+"&format=json"));return!!r(f,
+function tf(a,b){if(a.i||!1===b)a.C="",a.i="",b||(a.f&&a.status(1==a.f?"tape detached":"tape unloaded"),a.s=jf,a.f=kf,sf(a))}h.save=function(){return(new O(this)).data()};h.restore=function(){return!0};h.Mc=function(){return this.b&65534};h.Fd=function(a){a&1&&(this.b&32768?(a&=-2,this.b&64&&Sb(this.a,this.M)):(this.b&=-129,this.b|=2048,this.A=0,Tb(this.a,this.R,1E3/Math.round(this.N/10))));this.b=this.b&-66|a&65};h.Lc=function(){this.b&=-129;this.b|=2048;return this.A};h.Ed=function(){};
+var wf={},of=(wf[65384]=[null,null,$b.prototype.Mc,$b.prototype.Fd,"PRS"],wf[65386]=[null,null,$b.prototype.Lc,$b.prototype.Ed,"PRB"],wf);function xf(a,b,c){x.call(this,"Disk",{id:a.oa+".disk"+m(++yf,4)},xf);this.controller=a;this.l=a.l;this.F=a.F;this.f=b;this.wa=b.name;this.vb=b.vb;zf(this,c,b.U,b.Y,b.S,b.ha);F(this)}var yf=0;z(xf);h=xf.prototype;h.ia=function(a,b,c,d){this.F=d};
+function zf(a,b,c,d,e,f){a.mode=b;a.U=c;a.Y=d;a.S=e;a.ha=f;a.a=[];if("preload"!=a.mode){b=Array(a.U);for(c=0;c>2;var f=e=0,b=new DataView(b,0,d);a.a=Array(a.U);for(d=0;dc.indexOf("/api/v1/dump")&&(b=la(c),"json"==b||"gz"==b?f=encodeURI(c):(d="path",e="&mbhd=10",!c.indexOf("http:")||!c.indexOf("ftp:")||0<="dsk ima img 360 720 12 144".split(" ").indexOf(b)?(d="disk",e="&mbhd=0"):ma(c,"/")&&(d="dir"),f=v()+"/api/v1/dump?"+d+"="+encodeURIComponent(c)+(a.vb?"":e)+"&format=json"));return!!r(f,
null,!0,function(b,c,d){Cf(a,b,c,d)})}
-function Cf(a,b,c,d){var e=null;a.c=!1;var f=0>d&&a.l&&!a.l.j.P;if(d)a.controller.G('Unable to load disk "'+a.wa+'" (error '+d+": "+b+")",f);else{Ra(a.controller.oa,b,c);try{if(0g&&0c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+
-c+")");if(k.length)if(1==k.length)t(k[0]);else{a.V=k.length;a.Z=k[0].length;a.T=k[0][0].length;var l=k[0][0][0];a.ha=l&&l.length||512;for(d=c=0;d>2,p=l.pattern;void 0===p&&(p=l.pattern=0);var u=l.data;if(void 0===u){var w=l.bytes;if(void 0!==w&&w.length){for(var D=n<<2,U=w.length;U>2,e=Array(d),f=0;f>2,c=(d>((b&3)<<3)&255;return c};h.write=function(a,b,c){if(this.c)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.ca?f=a.la+a.ca&&(a.ca+=f-(a.la+a.ca)+1):(a.la=f,a.ca=1);d[f]=d[f]&~(255<g)break;e|=g<d&&a.l&&!a.l.j.O;if(d)a.controller.G('Unable to load disk "'+a.wa+'" (error '+d+": "+b+")",f);else{Ra(a.controller.oa,b,c);try{if(0g&&0c.indexOf("0x")&&'["'!=c.substr(0,2)?JSON.parse(c.replace(/([a-z]+):/gm,'"$1":').replace(/\/\/[^\n]*/gm,"")):eval("("+
+c+")");if(k.length)if(1==k.length)t(k[0]);else{a.U=k.length;a.Y=k[0].length;a.S=k[0][0].length;var l=k[0][0][0];a.ha=l&&l.length||512;for(d=c=0;d>2,p=l.pattern;void 0===p&&(p=l.pattern=0);var u=l.data;if(void 0===u){var w=l.bytes;if(void 0!==w&&w.length){for(var D=n<<2,U=w.length;U>2,e=Array(d),f=0;f>2,c=(d>((b&3)<<3)&255;return c};h.write=function(a,b,c){if(this.c)return!1;if(b>2;b=(b&3)<<3;for(var g=d.length;g<=f;g++)d[g]=e;a.ba?f=a.la+a.ba&&(a.ba+=f-(a.la+a.ba)+1):(a.la=f,a.ba=1);d[f]=d[f]&~(255<g)break;e|=g<=this.a.length||l>=this.a[k].length||n>=this.a[k][l].length){c="sector (CHS="+k+":"+l+":"+n+") out of range ("+
-b+" changes applied)";b=-1;break}if(this.c){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(k=this.a[k][l][n]){for(l=k.data.length;lb&&-2!=b&&this.controller.G("Unable to restore disk '"+this.wa+": "+c);return b};
+b+" changes applied)";b=-1;break}if(this.c){c="unable to modify write-protected disk";b=-1;break}e=g[f++];f=g[f++];g=e+f.length;if(k=this.a[k][l][n]){for(l=k.data.length;lb&&-2!=b&&this.controller.G("Unable to restore disk '"+this.wa+": "+c);return b};
h.toJSON=function(){var a;a=0;for(var b;b=Ef(this,a++);)Gf(b);a=JSON.stringify(this.a,function(a,b){if("file"!=a)return b});a=a.replace(/,"length":512/gm,"").replace(/,"pattern":0/gm,"");a=a.replace(/"(sector|length|data|pattern)":/gm,"$1:");a=a.replace(/,"[^"]*":([0-9]+|true|false)/gm,"");a=a.replace(/(sector|length|data|pattern):/gm,'"$1":');return a=a.replace(/([\]}]),/gm,"$1,\n")};
function Gf(a){var b=a.data,c=b.length;if(c<<2==a.length){for(var d=c-1,e=b[d],f=0;d--&&b[d]===e;)f++;f++&&(b.length=c-f,a.pattern=e)}}function N(a){x.call(this,"RL11",a,N);this.f=a.autoMount||null;this.s=0;this.b=Array(4);this.A=!Aa("Mobi")&&window&&"FileReader"in window}z(N);h=N.prototype;
-h.$=function(a,b,c){var d=this;switch(b){case "listDisks":return this.o[b]=c,c.onchange=function(){var a=d.o.descDisk,b=c.options[c.selectedIndex];if(a&&b){var g={};if(b=b.getAttribute("data-value"))try{g=eval("("+b+")")}catch(k){t("RL11 option error: "+k.message)}b=g.desc;void 0===b&&(b="");g=g.href;void 0!==g&&(b=''+b+"");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.o[b]=c,c.onchange=function(){var a=ja(c.value);null!=a&&Hf(d,a)},!0;case "loadDrive":return this.o[b]=
-c,c.onclick=function(){var a=d.o.listDisks;a&&If(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.A){c.parentNode.removeChild(c);break}this.o[b]=c;c.onclick=function(){var a=d.o.listDrives;if(a&&a.options&&d.b)if(a=d.b[ja(a.value)||0])if(a=a.da){var b;b="";for(var c=0,k;k=Ef(a,c++);)for(var l=0,n=k.length;l'+b+"
");a.innerHTML=b}},!0;case "descDisk":case "listDrives":return this.o[b]=c,c.onchange=function(){var a=ja(c.value);null!=a&&Hf(d,a)},!0;case "loadDrive":return this.o[b]=
+c,c.onclick=function(){var a=d.o.listDisks;a&&If(d,a.options[a.selectedIndex].text,a.value)},!0;case "saveDrive":if(!this.A){c.parentNode.removeChild(c);break}this.o[b]=c;c.onclick=function(){var a=d.o.listDrives;if(a&&a.options&&d.b)if(a=d.b[ja(a.value)||0])if(a=a.ca){var b;b="";for(var c=0,k;k=Ef(a,c++);)for(var l=0,n=k.length;lb;b++){var c=document.createElement("option");c.value=b;c.text="RL"+b;a.appendChild(c)}a.value="0";Hf(this,0)}}return!0};h.ja=function(a){return a?this.save():!0};h.reset=function(){Jf(this)};h.save=function(){return(new P(this)).data()};
+h.ia=function(a,b,c,d){this.l=a;this.g=b;this.a=c;this.F=d;if((this.f=rc(this.l,"autoMount")||this.f)&&"string"==typeof this.f)try{this.f=eval("("+this.f+")")}catch(e){t("RL11 auto-mount error: "+e.message+" ("+this.f+")"),this.f=null}Jf(this);this.D=Ub(112,5);cb(b,this,Kf,4194304);Lf(this,"None","",!0);this.A&&Lf(this,"Local Disk","?");Lf(this,"Remote Disk","??");Mf(this)||F(this)};
+h.ka=function(a,b){if(!b){if(!a||!this.restore){if(this.reset(),this.l.Kb){for(a=0;ab;b++){var c=document.createElement("option");c.value=b;c.text="RL"+b;a.appendChild(c)}a.value="0";Hf(this,0)}}return!0};h.ja=function(a){return a?this.save():!0};h.reset=function(){Jf(this)};h.save=function(){return(new O(this)).data()};
h.restore=function(a){return Jf(this,a[0])};function Mf(a,b){b||(a.s=0);if(a.f)for(var c in a.f){var d=a.f[c],e=d.path||"",f;if(!(f=d.name))a:{if((f=a.o.listDisks)&&f.options)for(var g=0;gg||9e||e>=a.b.length)a.G("Unable to load the selected drive");else if(c)if("?"==c)a.G('Use "Choose File" and "Mount" to select and load a local disk.');else{if("??"==c){c=window.prompt("Enter the URL of a remote disk image.","")||"";if(!c)return;b=q(c);a.status("Attempting to load "+c+' as "'+b+'"')}Of(a,e,b,c,!1,d)}else Nf(a,e)}
-function Of(a,b,c,d,e,f){var g=-1,k=a.b[b];k.Ea.toLowerCase()!=d.toLowerCase()&&(g++,Nf(a,b,!0),k.ub?a.G("RL11 busy"):(k.ub=!0,e&&(k.tb=!0,a.s++),k.kb=!!f,Bf(new xf(a,k,"preload"),c,d,f,a.gc)&&g++));return g}
-h.gc=function(a,b,c,d,e){var f;a.ub=!1;b&&(f=b.a.length?[b.a.length,b.a[0].length,b.a[0][0].length,b.a[0][0][0].length]:[0,0,0,0],b&&f[0]>a.V||f[1]>a.Z)&&(this.G('Disk "'+c+'" too large for drive '+("RL"+a.zb)),b=null);b?(a.da=b,a.wa=c,a.Ea=d,this.G('Mounted disk "'+c+'" in drive '+("RL"+a.zb),a.tb||e),this.l&&xc(this.l)):a.kb=!1;a.tb&&(a.tb=!1,--this.s||F(this));Hf(this,a.zb)};
+function Of(a,b,c,d,e,f){var g=-1,k=a.b[b];k.Da.toLowerCase()!=d.toLowerCase()&&(g++,Nf(a,b,!0),k.ub?a.G("RL11 busy"):(k.ub=!0,e&&(k.tb=!0,a.s++),k.jb=!!f,Bf(new xf(a,k,"preload"),c,d,f,a.gc)&&g++));return g}
+h.gc=function(a,b,c,d,e){var f;a.ub=!1;b&&(f=b.a.length?[b.a.length,b.a[0].length,b.a[0][0].length,b.a[0][0][0].length]:[0,0,0,0],b&&f[0]>a.U||f[1]>a.Y)&&(this.G('Disk "'+c+'" too large for drive '+("RL"+a.zb)),b=null);b?(a.ca=b,a.wa=c,a.Da=d,this.G('Mounted disk "'+c+'" in drive '+("RL"+a.zb),a.tb||e),this.l&&xc(this.l)):a.jb=!1;a.tb&&(a.tb=!1,--this.s||F(this));Hf(this,a.zb)};
function Lf(a,b,c,d){if((a=a.o.listDisks)&&a.options){for(var e=0;e>12&48;this.w=f>>16&63;this.i=this.c=b<<7|(c?64:0)|d&63;this.m=65536-e&65535;a&&(this.L=this.L|a|32768);return!0};
-h.zc=function(a,b,c,d,e,f,g){var k=0,l=a.da,n=null,p;l||(k=5120,e=0);for(;e--;){if(!n){n=a.da.seek(b,c,d+1);if(!n){k=5120;break}p=0}var u,w;if(0>(u=a.da.read(n,p++))||0>(w=a.da.read(n,p++))){k=5120;break}Nb(this.h,f,u|w<<8);if(Qb(this.h)){k=8192;break}f+=2;if(p>=l.ha&&(n=null,++d>=l.T&&(d=0,++c>=l.Z&&(c=0,++b>=l.V)))){k=5120;break}}return g(k,b,c,d,e,f)};
-h.ud=function(a,b,c,d,e,f,g){var k=0,l=a.da,n=null,p;l||(k=5120,e=0);for(;e--;){var u=Mb(this.h,f);if(Qb(this.h)){k=8192;break}f+=2;if(!n){n=a.da.seek(b,c,d+1,!0);if(!n){k=5120;break}p=0}if(!a.da.write(n,p++,u&255)||!a.da.write(n,p++,u>>8)){k=5120;break}if(p>=l.ha&&(n=null,++d>=l.T&&(d=0,++c>=l.Z&&(c=0,++b>=l.V)))){k=5120;break}}return g(k,b,c,d,e,f)};h.Wc=function(){return this.L&65535};
-h.Pd=function(a){this.L=this.L&-1023|a&1022;this.C=this.C&-4|(a&48)>>4;if(!(this.L&128)){var b;a=!0;var c=this.b[(this.L&768)>>8],d,e,f,g;this.L&=-2;switch(this.L&14){case 4:this.c&8&&(this.L&=63);this.m=c.status|this.i&64;break;case 6:1==(this.c&3)&&(b=this.c&65408,c=(this.c&16)<<2,this.i=this.c&4?this.i+b:this.i-b,this.c=this.i=this.i&65408|c);break;case 8:this.m=this.i;break;case 12:b=this.zc;case 10:b||(b=this.ud),d=this.c>>7,e=this.c&64?1:0,f=this.c&63,d>=c.V||f>=c.T?this.L|=37888:(g=(this.w&
-63)<<16|this.v,a=65536-this.m&65535,a=b.call(this,c,d,e,f,a,g,this.hc.bind(this)))}a&&(this.L|=129,this.L&64&&Sb(this.a,this.F))}};h.Uc=function(){return this.v};h.Nd=function(a){this.v=a&65534};h.Xc=function(){return this.c};h.Qd=function(a){this.c=a};h.Yc=function(){return this.m};h.Rd=function(a){this.m=a};h.Vc=function(){return this.w};h.Od=function(a){this.w=a&63};
+h.zc=function(a,b,c,d,e,f,g){var k=0,l=a.ca,n=null,p;l||(k=5120,e=0);for(;e--;){if(!n){n=a.ca.seek(b,c,d+1);if(!n){k=5120;break}p=0}var u,w;if(0>(u=a.ca.read(n,p++))||0>(w=a.ca.read(n,p++))){k=5120;break}Nb(this.g,f,u|w<<8);if(Qb(this.g)){k=8192;break}f+=2;if(p>=l.ha&&(n=null,++d>=l.S&&(d=0,++c>=l.Y&&(c=0,++b>=l.U)))){k=5120;break}}return g(k,b,c,d,e,f)};
+h.ud=function(a,b,c,d,e,f,g){var k=0,l=a.ca,n=null,p;l||(k=5120,e=0);for(;e--;){var u=Mb(this.g,f);if(Qb(this.g)){k=8192;break}f+=2;if(!n){n=a.ca.seek(b,c,d+1,!0);if(!n){k=5120;break}p=0}if(!a.ca.write(n,p++,u&255)||!a.ca.write(n,p++,u>>8)){k=5120;break}if(p>=l.ha&&(n=null,++d>=l.S&&(d=0,++c>=l.Y&&(c=0,++b>=l.U)))){k=5120;break}}return g(k,b,c,d,e,f)};h.Wc=function(){return this.L&65535};
+h.Pd=function(a){this.L=this.L&-1023|a&1022;this.C=this.C&-4|(a&48)>>4;if(!(this.L&128)){var b;a=!0;var c=this.b[(this.L&768)>>8],d,e,f,g;this.L&=-2;switch(this.L&14){case 4:this.c&8&&(this.L&=63);this.m=c.status|this.i&64;break;case 6:1==(this.c&3)&&(b=this.c&65408,c=(this.c&16)<<2,this.i=this.c&4?this.i+b:this.i-b,this.c=this.i=this.i&65408|c);break;case 8:this.m=this.i;break;case 12:b=this.zc;case 10:b||(b=this.ud),d=this.c>>7,e=this.c&64?1:0,f=this.c&63,d>=c.U||f>=c.S?this.L|=37888:(g=(this.w&
+63)<<16|this.v,a=65536-this.m&65535,a=b.call(this,c,d,e,f,a,g,this.hc.bind(this)))}a&&(this.L|=129,this.L&64&&Sb(this.a,this.D))}};h.Uc=function(){return this.v};h.Nd=function(a){this.v=a&65534};h.Xc=function(){return this.c};h.Qd=function(a){this.c=a};h.Yc=function(){return this.m};h.Rd=function(a){this.m=a};h.Vc=function(){return this.w};h.Od=function(a){this.w=a&63};
var Pf={},Kf=(Pf[63744]=[null,null,N.prototype.Wc,N.prototype.Pd,"RLCS"],Pf[63746]=[null,null,N.prototype.Uc,N.prototype.Nd,"RLBA"],Pf[63748]=[null,null,N.prototype.Xc,N.prototype.Qd,"RLDA"],Pf[63750]=[null,null,N.prototype.Yc,N.prototype.Rd,"RLMP"],Pf[63752]=[null,null,N.prototype.Vc,N.prototype.Od,"RLBE"],Pf);
-function Qf(a,b,c){x.call(this,"Computer",a,Qf);this.j.P=!1;Rf(this,b);this.w=rc(this,"autoPower",a);this.l=0;this.N=a.busWidth||a.buswidth;this.b=Sf;this.s=null;this.i=this.F=!1;this.O=rc(this,"url")||"";(Math.random()+.1).toString(36);this.c=Tf(this);if(this.a=Ta("CPU",this.id)){this.D=Ta("Debugger",this.id);this.h=new vb({id:this.oa+".bus",busWidth:this.N},this.a,this.D);var d,e=A(this.id);if((this.I=Ta("Panel",this.id))&&this.I.Wa)for(b=0;b\nLicense: GPL version 3 or later ");this.U("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis ");for(b=0;b\nLicense: GPL version 3 or later ");this.T("Portions adapted from the PDP-11/70 Emulator v1.4 by Paul Nankervis ");for(b=0;bSf){if(Uf(d,this.s)){this.f=new P(this,"1.30.3","failsafe");Uf(this.f)&&(Zf(this,d),a=2,$f(this.f));this.f.set("timestamp",sa());ag(this.f);var e=this.b&&!this.i;if(1==a||ua("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=Yf(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Uf(d,g):("error"==
-f&&"no machine state"!=g?(this.G("Error: "+g),"unable to verify user"==g&&(za("user",""),this.c=null)):this.U(f+": "+g),$f(d),Uf(d)?(c=Yf(d),e=!0):c=!1))}e&&Xf(this,c?d:null)}else 2==a&&d.clear()}else Xf(this);delete this.s;delete this.v}e=A(this.id);for(f=0;fa[1];a=a[2];this.R=!0;this.j.P=!0;var d=this.o.power;d&&(d.textContent="Shutdown");this.a&&(bg(this,this.a,b,c,a),this.xa(),this.a.Va());this.C&&(Zf(this,b),b.clear());!c&&this.f&&(this.f.clear(),delete this.f);this.l=0};
-function Zf(a,b){if(ua("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.c||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.3"};d.url=a.O;d.user=c;d.type="bug";d.data=b;r("http://www.pcjs.org/api/v1/report",d,!0)}}
-function dg(a,b,c){var d,e="none";if(a.l)return null;a.l--;var f=new P(a,"1.30.3"),g=new P(a,"1.30.3","validate"),k=sa();g.set("timestamp",k);f.set("timestamp",k);f.set("version","1.30.3");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.ja&&(c&&G(a.a),d=a.a.ja(b,c),"object"===typeof d&&f.set(a.a.id,d),c&&(a.a.j.P=!1,!1===d&&(e=null)));for(var k=A(a.id),l=0;lSf){if(Uf(d,this.s)){this.f=new O(this,"1.30.3","failsafe");Uf(this.f)&&(Zf(this,d),a=2,$f(this.f));this.f.set("timestamp",sa());ag(this.f);var e=this.b&&!this.i;if(1==a||ua("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=Yf(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?Uf(d,g):("error"==
+f&&"no machine state"!=g?(this.G("Error: "+g),"unable to verify user"==g&&(za("user",""),this.c=null)):this.T(f+": "+g),$f(d),Uf(d)?(c=Yf(d),e=!0):c=!1))}e&&Xf(this,c?d:null)}else 2==a&&d.clear()}else Xf(this);delete this.s;delete this.v}e=A(this.id);for(f=0;fa[1];a=a[2];this.R=!0;this.j.O=!0;var d=this.o.power;d&&(d.textContent="Shutdown");this.a&&(bg(this,this.a,b,c,a),this.xa(),this.a.Va());this.D&&(Zf(this,b),b.clear());!c&&this.f&&(this.f.clear(),delete this.f);this.l=0};
+function Zf(a,b){if(ua("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.c||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.3"};d.url=a.N;d.user=c;d.type="bug";d.data=b;r("http://www.pcjs.org/api/v1/report",d,!0)}}
+function dg(a,b,c){var d,e="none";if(a.l)return null;a.l--;var f=new O(a,"1.30.3"),g=new O(a,"1.30.3","validate"),k=sa();g.set("timestamp",k);f.set("timestamp",k);f.set("version","1.30.3");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.ja&&(c&&G(a.a),d=a.a.ja(b,c),"object"===typeof d&&f.set(a.a.id,d),c&&(a.a.j.O=!1,!1===d&&(e=null)));for(var k=A(a.id),l=0;l(b.w+=a))){for(var e=0;e(b.w+=a))){for(var e=0;ef.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"),