From 3d076c44af82b4cdb360748af9656e8745603ace Mon Sep 17 00:00:00 2001
From: Jeff Parsons <jeff@pcjs.org>
Date: Sun, 29 Jan 2017 10:35:51 -0800
Subject: [PATCH] More left/right options for PDP-11/VT100 machine combinations

---
 .../machine/vt100/debugger/machine-left.xml   | 36 +++++++++++++++++++
 devices/pc8080/machine/vt100/machine-left.xml | 34 ++++++++++++++++++
 devices/pdp11/machine/1170/vt100/README.md    |  4 +--
 .../machine/1170/vt100/debugger/README.md     |  4 +--
 .../1170/vt100/debugger/machine-right.xml     | 15 ++++++++
 .../machine/1170/vt100/machine-right.xml      | 14 ++++++++
 6 files changed, 103 insertions(+), 4 deletions(-)
 create mode 100644 devices/pc8080/machine/vt100/debugger/machine-left.xml
 create mode 100644 devices/pc8080/machine/vt100/machine-left.xml
 create mode 100644 devices/pdp11/machine/1170/vt100/debugger/machine-right.xml
 create mode 100644 devices/pdp11/machine/1170/vt100/machine-right.xml

diff --git a/devices/pc8080/machine/vt100/debugger/machine-left.xml b/devices/pc8080/machine/vt100/debugger/machine-left.xml
new file mode 100644
index 0000000000..e3f1c180d1
--- /dev/null
+++ b/devices/pc8080/machine/vt100/debugger/machine-left.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl" href="/versions/pc8080/1.32.2/machine.xsl"?>
+<machine id="vt100" type="pc8080" class="machine-left" border="1" pos="center" background="#FAEBD7">
+	<name pos="center">VT100 Terminal</name>
+	<computer id="computer" busWidth="16"/>
+	<cpu id="cpu8080" model="8080" cycles="2764800" autoStart="true"/>
+	<rom id="rom" addr="0x0000" size="0x2000" file="/devices/pc8080/rom/vt100/VT100.json"/>
+	<ram id="ram" addr="0x2000" size="0x0C00"/>
+	<video id="video" screenWidth="1600" screenHeight="960" smoothing="false" interruptRate="60"
+		   fontROM="/devices/pc8080/rom/vt100/23-018E2.json" fontColor="white" cellWidth="10" cellHeight="10"
+		   bufferAddr="0x2000" bufferRAM="true" bufferFormat="vt100" bufferCols="80" bufferRows="24" pos="left" padding="8px">
+		<menu>
+			<title>VT100 Screen</title>
+			<control type="container" pos="right">
+				<control type="rled" label="ON LINE" binding="online" padLeft="8px"/>
+				<control type="rled" label="LOCAL" binding="local" padLeft="8px"/>
+				<control type="rled" label="LOCKED" binding="locked" padLeft="8px"/>
+				<control type="rled" label="L1" binding="l1" padLeft="8px"/>
+				<control type="rled" label="L2" binding="l2" padLeft="8px"/>
+				<control type="rled" label="L3" binding="l3" padLeft="8px"/>
+				<control type="rled" label="L4" binding="l4" padLeft="8px"/>
+				<control type="led" label="CAPS" binding="caps-lock" padLeft="8px"/>
+				<control type="button" binding="fullScreen" padLeft="8px;line-height:1em">Full Screen</control>
+			</control>
+		</menu>
+	</video>
+	<chipset id="chipset" model="VT100"/>
+	<keyboard id="keyboard" model="VT100">
+		<control type="button" binding="setup" padLeft="8px">SET-UP</control>
+	</keyboard>
+	<serial id="serialPort" adapter="0" binding="print">
+		<control type="button" binding="test" value="HELLO WORLD!\n\\e[D\\e[D\\e[D\\e[D\\e[D\\e[D\\e[D\\e[D\\e[D\\e[D\\e[D" padLeft="8px">TEST RECEIVER</control>
+	</serial>
+	<panel ref="/devices/pc8080/panel/wide.xml"/>
+	<debugger id="debugger" messages="mem|port" commands="s 8086"/>
+</machine>
diff --git a/devices/pc8080/machine/vt100/machine-left.xml b/devices/pc8080/machine/vt100/machine-left.xml
new file mode 100644
index 0000000000..e8cee84278
--- /dev/null
+++ b/devices/pc8080/machine/vt100/machine-left.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl" href="/versions/pc8080/1.32.2/machine.xsl"?>
+<machine id="vt100" type="pc8080" class="machine-left" border="1" pos="center" background="#FAEBD7">
+	<name pos="center">VT100 Terminal</name>
+	<computer id="computer" busWidth="16"/>
+	<rom id="rom" addr="0x0000" size="0x2000" file="/devices/pc8080/rom/vt100/VT100.json"/>
+	<ram id="ram" addr="0x2000" size="0x0C00"/>
+	<video id="video" screenWidth="1600" screenHeight="960" smoothing="false" interruptRate="60"
+		   fontROM="/devices/pc8080/rom/vt100/23-018E2.json" fontColor="white" cellWidth="10" cellHeight="10"
+		   bufferAddr="0x2000" bufferRAM="true" bufferFormat="vt100" bufferCols="80" bufferRows="24" padding="8px">
+		<menu>
+			<title>VT100 Screen</title>
+			<control type="container" pos="right">
+				<control type="rled" label="ON LINE" binding="online" padLeft="8px"/>
+				<control type="rled" label="LOCAL" binding="local" padLeft="8px"/>
+				<control type="rled" label="LOCKED" binding="locked" padLeft="8px"/>
+				<control type="rled" label="L1" binding="l1" padLeft="8px"/>
+				<control type="rled" label="L2" binding="l2" padLeft="8px"/>
+				<control type="rled" label="L3" binding="l3" padLeft="8px"/>
+				<control type="rled" label="L4" binding="l4" padLeft="8px"/>
+				<control type="led" label="CAPS" binding="caps-lock" padLeft="8px"/>
+				<control type="button" binding="fullScreen" padLeft="8px;line-height:1em">Full Screen</control>
+			</control>
+		</menu>
+	</video>
+	<chipset id="chipset" model="VT100"/>
+	<keyboard id="keyboard" model="VT100">
+		<control type="button" binding="setup" padLeft="8px" padBottom="8px">SET-UP</control>
+	</keyboard>
+	<cpu id="cpu8080" model="8080" cycles="2764800">
+		<control type="button" binding="reset">RESET</control>
+	</cpu>
+	<serial id="serialPort" adapter="0"/>
+</machine>
diff --git a/devices/pdp11/machine/1170/vt100/README.md b/devices/pdp11/machine/1170/vt100/README.md
index 714230da03..ad80917eef 100644
--- a/devices/pdp11/machine/1170/vt100/README.md
+++ b/devices/pdp11/machine/1170/vt100/README.md
@@ -5,12 +5,12 @@ permalink: /devices/pdp11/machine/1170/vt100/
 machines:
   - id: test1170
     type: pdp11
-    config: /devices/pdp11/machine/1170/vt100/machine-left.xml
+    config: /devices/pdp11/machine/1170/vt100/machine-right.xml
     connection: dl11->vt100.serialPort
     resume: 1
   - id: vt100
     type: pc8080
-    config: /devices/pc8080/machine/vt100/machine-right.xml
+    config: /devices/pc8080/machine/vt100/machine-left.xml
     connection: serialPort->test1170.dl11
     resume: 1
 ---
diff --git a/devices/pdp11/machine/1170/vt100/debugger/README.md b/devices/pdp11/machine/1170/vt100/debugger/README.md
index 519ecb6308..f1481436c8 100644
--- a/devices/pdp11/machine/1170/vt100/debugger/README.md
+++ b/devices/pdp11/machine/1170/vt100/debugger/README.md
@@ -6,13 +6,13 @@ machines:
   - id: test1170
     type: pdp11
     debugger: true
-    config: /devices/pdp11/machine/1170/vt100/debugger/machine-left.xml
+    config: /devices/pdp11/machine/1170/vt100/debugger/machine-right.xml
     connection: dl11->vt100.serialPort
     resume: 1
   - id: vt100
     type: pc8080
     debugger: true
-    config: /devices/pc8080/machine/vt100/debugger/machine-right.xml
+    config: /devices/pc8080/machine/vt100/debugger/machine-left.xml
     connection: serialPort->test1170.dl11
     resume: 1
 ---
diff --git a/devices/pdp11/machine/1170/vt100/debugger/machine-right.xml b/devices/pdp11/machine/1170/vt100/debugger/machine-right.xml
new file mode 100644
index 0000000000..3363119998
--- /dev/null
+++ b/devices/pdp11/machine/1170/vt100/debugger/machine-right.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl" href="/versions/pdpjs/1.32.2/machine.xsl"?>
+<machine id="test1170" type="pdp11" class="machine-right" border="1" pos="center" background="#FAEBD7">
+	<name pos="center">PDP-11/70 with 256Kb, Front Panel, and Debugger</name>
+	<computer id="computer" busWidth="22"/>
+	<cpu id="cpu" model="1170" cycles="6666667" autoStart="true"/>
+	<ram id="ram" addr="0x00000" size="0x40000" file="/apps/pdp11/boot/monitor/BOOTMON.json"/>
+	<device id="default" type="default"/>
+	<serial id="dl11" adapter="0"/>
+	<panel ref="/devices/pdp11/panel/1170/debugger/front.xml"/>
+	<debugger id="debugger" base="8" messages="" commands=""/>
+	<device ref="/devices/pdp11/pc11/default.xml"/>
+	<device ref="/devices/pdp11/rk11/default.xml"/>
+	<device ref="/devices/pdp11/rl11/default.xml"/>
+</machine>
diff --git a/devices/pdp11/machine/1170/vt100/machine-right.xml b/devices/pdp11/machine/1170/vt100/machine-right.xml
new file mode 100644
index 0000000000..3929e56768
--- /dev/null
+++ b/devices/pdp11/machine/1170/vt100/machine-right.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-stylesheet type="text/xsl" href="/versions/pdpjs/1.32.2/machine.xsl"?>
+<machine id="test1170" type="pdp11" class="machine-right" border="1" pos="center" background="#FAEBD7">
+	<name pos="center">PDP-11/70 with 256Kb and Front Panel</name>
+	<computer id="computer" busWidth="22"/>
+	<cpu id="cpu" model="1170" cycles="6666667" autoStart="true"/>
+	<ram id="ram" addr="0x00000" size="0x40000" file="/apps/pdp11/boot/monitor/BOOTMON.json"/>
+	<device id="default" type="default"/>
+	<serial id="dl11" adapter="0"/>
+	<panel ref="/devices/pdp11/panel/1170/front.xml"/>
+	<device ref="/devices/pdp11/pc11/default.xml"/>
+	<device ref="/devices/pdp11/rk11/default.xml"/>
+	<device ref="/devices/pdp11/rl11/default.xml"/>
+</machine>