diff --git a/devices/pdp10/README.md b/devices/pdp10/README.md
new file mode 100644
index 000000000..4a0fdc9f5
--- /dev/null
+++ b/devices/pdp10/README.md
@@ -0,0 +1,14 @@
+---
+layout: page
+title: PDP-10 Device Configurations
+permalink: /devices/pdp10/
+---
+
+PDP-10 Device Configurations
+----------------------------
+
+[PDP-10 Machines](/devices/pdp10/machine/) rely on a variety of machine configuration files and resources, including:
+
+* [Control Panels](panel/)
+
+Test machines include a [PDP-10 (Model KA10) with Debugger](/devices/pdp11/machine/ka10/panel/debugger/).
diff --git a/devices/pdp10/machine/README.md b/devices/pdp10/machine/README.md
new file mode 100644
index 000000000..77a799cc5
--- /dev/null
+++ b/devices/pdp10/machine/README.md
@@ -0,0 +1,12 @@
+---
+layout: page
+title: PDP-10 Machine Configurations
+permalink: /devices/pdp10/machine/
+---
+
+PDP-10 Machine Configurations
+-----------------------------
+
+PDPjs supports the following PDP-10 machine configurations:
+
+* [PDP-10 Model KA10](/devices/pdp10/machine/ka10/)
diff --git a/devices/pdp10/machine/ka10/README.md b/devices/pdp10/machine/ka10/README.md
new file mode 100644
index 000000000..60e0c79b5
--- /dev/null
+++ b/devices/pdp10/machine/ka10/README.md
@@ -0,0 +1,12 @@
+---
+layout: page
+title: PDP-10 (Model KA10) Machine Configurations
+permalink: /devices/pdp10/machine/ka10/
+---
+
+PDP-10 (Model KA10) Machine Configurations
+------------------------------------------
+
+PDPjs supports the following PDP-10 Model KA10 machine configurations:
+
+* [PDP-10 Model KA10 Test Machine](/devices/pdp10/machine/ka10/test/) (with [Debugger](/devices/pdp10/machine/ka10/test/debugger/))
diff --git a/devices/pdp10/machine/ka10/test/README.md b/devices/pdp10/machine/ka10/test/README.md
new file mode 100644
index 000000000..afe4379af
--- /dev/null
+++ b/devices/pdp10/machine/ka10/test/README.md
@@ -0,0 +1,15 @@
+---
+layout: page
+title: PDP-10 (Model KA10) Test Machine
+permalink: /devices/pdp10/machine/ka10/test/
+machines:
+ - id: ka10test
+ type: pdp10
+---
+
+PDP-10 Test Machine
+-------------------
+
+A PDP-10 (Model KA10) is simulated below.
+
+{% include machine.html id="ka10test" %}
diff --git a/devices/pdp10/machine/ka10/test/debugger/README.md b/devices/pdp10/machine/ka10/test/debugger/README.md
new file mode 100644
index 000000000..acc87c29c
--- /dev/null
+++ b/devices/pdp10/machine/ka10/test/debugger/README.md
@@ -0,0 +1,16 @@
+---
+layout: page
+title: PDP-10 (Model KA10) Test Machine with Debugger
+permalink: /devices/pdp10/machine/ka10/test/debugger/
+machines:
+ - id: ka10test
+ type: pdp10
+ debugger: true
+---
+
+PDP-10 Test Machine with Debugger
+---------------------------------
+
+A PDP-10 (Model KA10) is simulated below.
+
+{% include machine.html id="ka10test" %}
diff --git a/devices/pdp10/machine/ka10/test/debugger/machine.xml b/devices/pdp10/machine/ka10/test/debugger/machine.xml
new file mode 100644
index 000000000..470a11fec
--- /dev/null
+++ b/devices/pdp10/machine/ka10/test/debugger/machine.xml
@@ -0,0 +1,12 @@
+
+
+
+ PDP-10 Test Machine with Debugger
+
+
+
+
+
+
+
+
diff --git a/devices/pdp10/machine/ka10/test/machine.xml b/devices/pdp10/machine/ka10/test/machine.xml
new file mode 100644
index 000000000..2a951bf8d
--- /dev/null
+++ b/devices/pdp10/machine/ka10/test/machine.xml
@@ -0,0 +1,11 @@
+
+
+
+ PDP-10 Test Machine
+
+
+
+
+
+
+
diff --git a/devices/pdp10/panel/README.md b/devices/pdp10/panel/README.md
new file mode 100644
index 000000000..b6cea17fc
--- /dev/null
+++ b/devices/pdp10/panel/README.md
@@ -0,0 +1,10 @@
+---
+layout: page
+title: PDP-10 Control Panels
+permalink: /devices/pdp11/panel/
+---
+
+PDP-10 Control Panels
+---------------------
+
+* [Terminal Test Panels](test/)
diff --git a/devices/pdp10/panel/test/README.md b/devices/pdp10/panel/test/README.md
new file mode 100644
index 000000000..ed5fee625
--- /dev/null
+++ b/devices/pdp10/panel/test/README.md
@@ -0,0 +1,10 @@
+---
+layout: page
+title: PDP-10 Test Panels
+permalink: /devices/pdp10/panel/test/
+---
+
+PDP-10 Test Panels
+------------------
+
+* [Terminal Test Panel](terminal.xml) (with [Debugger](debugger/terminal.xml))
diff --git a/devices/pdp10/panel/test/debugger/README.md b/devices/pdp10/panel/test/debugger/README.md
new file mode 100644
index 000000000..a13c0ad2a
--- /dev/null
+++ b/devices/pdp10/panel/test/debugger/README.md
@@ -0,0 +1,10 @@
+---
+layout: page
+title: PDP-10 Test Panel with Debugger
+permalink: /devices/pdp10/panel/test/debugger/
+---
+
+PDP-10 Test Panel with Debugger
+-------------------------------
+
+* [Terminal Test Panel with Debugger](terminal.xml)
diff --git a/devices/pdp10/panel/test/debugger/terminal.xml b/devices/pdp10/panel/test/debugger/terminal.xml
new file mode 100644
index 000000000..1bd1dae7b
--- /dev/null
+++ b/devices/pdp10/panel/test/debugger/terminal.xml
@@ -0,0 +1,23 @@
+
+
+ Control Panel
+
+
+
+
+ Enter
+ Clear
+
+
+
+ Registers
+ 000000
+
+
+ Run
+ Step
+ Reset
+ Fast
+ Stopped
+
+
diff --git a/devices/pdp10/panel/test/terminal.xml b/devices/pdp10/panel/test/terminal.xml
new file mode 100644
index 000000000..2439fcde5
--- /dev/null
+++ b/devices/pdp10/panel/test/terminal.xml
@@ -0,0 +1,17 @@
+
+
+ Control Panel
+
+
+
+
+ Registers
+ 000000
+
+
+ Run
+ Reset
+ Fast
+ Stopped
+
+
diff --git a/modules/htmlout/lib/htmlout.js b/modules/htmlout/lib/htmlout.js
index 694974570..9c79e296b 100644
--- a/modules/htmlout/lib/htmlout.js
+++ b/modules/htmlout/lib/htmlout.js
@@ -54,6 +54,7 @@ var usr = require("../../shared/lib/usrlib");
* @property {Array.} pcCSSFiles
* @property {Array.} pcX86Files
* @property {Array.} pc8080Files
+ * @property {Array.} pdp10Files
* @property {Array.} pdp11Files
*/
var pkg = require("../../../package.json");
@@ -169,6 +170,7 @@ var aMachineFiles = {
'PC': pkg.pcCSSFiles.concat(pkg.pcX86Files), // deprecated (same as PCx86)
'PCx86': pkg.pcCSSFiles.concat(pkg.pcX86Files),
'PC8080': pkg.pcCSSFiles.concat(pkg.pc8080Files),
+ 'PDP10': pkg.pcCSSFiles.concat(pkg.pdp10Files),
'PDP11': pkg.pcCSSFiles.concat(pkg.pdp11Files)
};
var aMachineFileTypes = {
@@ -1872,7 +1874,7 @@ HTMLOut.prototype.getRandomString = function(sIndent)
*
* At a minimum, each machine object should contain the following properties:
*
- * 'type' (eg, a machine type, such as "C1P", "PCx86", "PC8080", or "PDP11")
+ * 'type' (eg, a machine type, such as "C1P", "PCx86", "PC8080", "PDP10", or "PDP11")
* 'version' (eg, "1.10", "*" to select the current version, or "uncompiled"; "*" is the default)
* 'debugger' (eg, true or false; false is the default)
*
diff --git a/modules/pdp10/lib/defines.js b/modules/pdp10/lib/defines.js
index 2560419e3..3c4749612 100644
--- a/modules/pdp10/lib/defines.js
+++ b/modules/pdp10/lib/defines.js
@@ -75,18 +75,6 @@ var PDP10 = {
/*
* CPU model numbers (supported)
- *
- * The 11/20 includes the 11/10, which is not identified separately because there was
- * nothing functionally different about it.
- *
- * The 11/40 added the MODE bits to the PSW (but only KERNEL=00 and USER=11) and 18-bit
- * addressing via an MMU; there was still only one register set.
- *
- * The 11/45 added REGSET bit to the PSW (to support a second register set), SUPER=01
- * mode to the existing KERNEL=00 and USER=11 modes, separate I/D spaces, and other MMU
- * extensions (eg, MMR1 and MMR3).
- *
- * The 11/70 added 22-bit addressing and corresponding extensions to the MMU.
*/
MODEL_KA10: 1001,
diff --git a/modules/shared/lib/embed.js b/modules/shared/lib/embed.js
index 65ac2e2cd..4a0f930c7 100644
--- a/modules/shared/lib/embed.js
+++ b/modules/shared/lib/embed.js
@@ -579,6 +579,21 @@ function embedPC8080(idMachine, sXMLFile, sXSLFile, sParms)
return embedMachine("PC8080", "pc8080", APPVERSION, idMachine, sXMLFile, sXSLFile, sParms);
}
+/**
+ * embedPDP10(idMachine, sXMLFile, sXSLFile, sParms)
+ *
+ * @param {string} idMachine
+ * @param {string} sXMLFile
+ * @param {string} sXSLFile
+ * @param {string} [sParms]
+ * @return {boolean} true if successful, false if error
+ */
+function embedPDP10(idMachine, sXMLFile, sXSLFile, sParms)
+{
+ if (fAsync) Web.enablePageEvents(false);
+ return embedMachine("PDPjs", "pdp10", APPVERSION, idMachine, sXMLFile, sXSLFile, sParms);
+}
+
/**
* embedPDP11(idMachine, sXMLFile, sXSLFile, sParms)
*
@@ -635,6 +650,7 @@ if (APPNAME == "PC8080") {
window['embedPC8080'] = embedPC8080;
}
if (APPNAME == "PDPjs") {
+ window['embedPDP10'] = embedPDP10;
window['embedPDP11'] = embedPDP11;
}