Prevent new scripts from interrupting scripts in progress
This commit is contained in:
parent
55b3ac0750
commit
d23ae82679
13 changed files with 1864 additions and 1423 deletions
|
|
@ -6,6 +6,7 @@ machines:
|
|||
- id: test1170
|
||||
type: pdp11
|
||||
debugger: true
|
||||
config: /devices/pdp11/machine/1170/panel/debugger/machine-slim.xml
|
||||
sticky: top
|
||||
---
|
||||
|
||||
|
|
@ -49,77 +50,80 @@ Debugger commands described below to load and execute these "toggle-ins".
|
|||
|
||||
Step 1: Load ADDRESS register with 200.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 200' machine='test1170' command='script' value='set Panel SR 200;toggle Panel LOAD' %}
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 200' machine='test1170' command='script' value='set Panel SR 200; sleep 500; hold Panel LOAD 250' %}
|
||||
|
||||
Step 2: Deposit 012737 at ADDRESS 200.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 012737' machine='test1170' command='script' value='set Panel SR 012737;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 012737' machine='test1170' command='script' value='set Panel SR 012737; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 3: Deposit 000400 at ADDRESS 202.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000400' machine='test1170' command='script' value='set Panel SR 000400;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000400' machine='test1170' command='script' value='set Panel SR 000400; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 4: Deposit 177572 at ADDRESS 204.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 177572' machine='test1170' command='script' value='set Panel SR 177572;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 177572' machine='test1170' command='script' value='set Panel SR 177572; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 5: Deposit 012737 at ADDRESS 206.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 012737' machine='test1170' command='script' value='set Panel SR 012737;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 012737' machine='test1170' command='script' value='set Panel SR 012737; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 6: Deposit 070707 at ADDRESS 210.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 070707' machine='test1170' command='script' value='set Panel SR 070707;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 070707' machine='test1170' command='script' value='set Panel SR 070707; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 7: Deposit 000200 at ADDRESS 212.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000200' machine='test1170' command='script' value='set Panel SR 000200;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000200' machine='test1170' command='script' value='set Panel SR 000200; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 8: Deposit 000000 at ADDRESS 214.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000000' machine='test1170' command='script' value='set Panel SR 000000;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000000' machine='test1170' command='script' value='set Panel SR 000000; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 9: Load ADDRESS register with 300.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 300' machine='test1170' command='script' value='set Panel SR 300;toggle Panel LOAD' %}
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 300' machine='test1170' command='script' value='set Panel SR 300; sleep 500; hold Panel LOAD 250' %}
|
||||
|
||||
Step 10: Deposit 300 at ADDRESS 300.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 300' machine='test1170' command='script' value='toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 300' machine='test1170' command='script' value='hold Panel DEP 250' %}
|
||||
|
||||
Step 11: Load ADDRESS register with 17772300.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 17772300' machine='test1170' command='script' value='set Panel SR 17772300;toggle Panel LOAD' %}
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 17772300' machine='test1170' command='script' value='set Panel SR 17772300; sleep 500; hold Panel LOAD 250' %}
|
||||
|
||||
Step 12: Deposit 077406 at ADDRESS 17772300.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 077406' machine='test1170' command='script' value='set Panel SR 077406;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 077406' machine='test1170' command='script' value='set Panel SR 077406; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 13: Load ADDRESS register with 17772340.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 17772340' machine='test1170' command='script' value='set Panel SR 17772340;toggle Panel LOAD' %}
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 17772340' machine='test1170' command='script' value='set Panel SR 17772340; sleep 500; hold Panel LOAD 250' %}
|
||||
|
||||
Step 14: Deposit 000001 at ADDRESS 17772340.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000001' machine='test1170' command='script' value='set Panel SR 000001;toggle Panel DEP' %}
|
||||
{% include machine-command.html type='clickOnce' label='DEPOSIT 000001' machine='test1170' command='script' value='set Panel SR 000001; sleep 500; hold Panel DEP 250' %}
|
||||
|
||||
Step 15: Load ADDRESS register with 200.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 200' machine='test1170' command='script' value='set Panel SR 200;toggle Panel LOAD' %}
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 200' machine='test1170' command='script' value='set Panel SR 200; sleep 500; hold Panel LOAD 250' %}
|
||||
|
||||
Step 16: Set ENABLE and toggle START.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='START' machine='test1170' command='script' value='set Panel ENABLE 1; toggle Panel START' %}
|
||||
{% include machine-command.html type='clickOnce' label='START' machine='test1170' command='script' value='set Panel ENABLE 1; sleep 500; hold Panel START 250' %}
|
||||
|
||||
Step 17: Load ADDRESS register with 300.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 300' machine='test1170' command='script' value='set Panel SR 300;toggle Panel LOAD' %}
|
||||
{% include machine-command.html type='clickOnce' label='LOAD 300' machine='test1170' command='script' value='set Panel SR 300; sleep 500; hold Panel LOAD 250' %}
|
||||
|
||||
Step 18: Examine ADDRESS 300.
|
||||
|
||||
{% include machine-command.html type='clickOnce' label='EXAM' machine='test1170' command='script' value='toggle Panel EXAM' %}
|
||||
{% include machine-command.html type='clickOnce' label='EXAM' machine='test1170' command='script' value='hold Panel EXAM 250' %}
|
||||
|
||||
Alternatively, with the PDPjs Debugger, the above "toggle-in" is easily entered with the following commands (the
|
||||
At this point, the DATA register should display `070707`. You can also use the PCjs Debugger's `rm` command to verify
|
||||
the contents of DATA register (DR).
|
||||
|
||||
In fact, using the PDPjs Debugger, it's much easier to enter the above "toggle-in" with the following commands (the
|
||||
semicolons are optional; they just make it easier to paste an entire set of commands into the Debugger at once):
|
||||
|
||||
e 200 012737 000400 177572 012737 070707 000200 000000;
|
||||
|
|
|
|||
13
devices/pdp11/machine/1170/panel/debugger/machine-slim.xml
Normal file
13
devices/pdp11/machine/1170/panel/debugger/machine-slim.xml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="/versions/pdpjs/1.34.0/machine.xsl"?>
|
||||
<machine id="test1170" type="pdp11" 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"/>
|
||||
<ram id="ram" addr="0x00000" size="0x40000" file="/apps/pdp11/boot/monitor/BOOTMON.json"/>
|
||||
<rom id="m9312" addr="0xEA00" size="0x200" file="/devices/pdp11/rom/M9312/23-616F1.json"/>
|
||||
<device id="default" type="default"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
<panel ref="/devices/pdp11/panel/1170/debugger/front-slim.xml"/>
|
||||
<debugger id="debugger" base="8" messages="" commands=""/>
|
||||
</machine>
|
||||
219
devices/pdp11/panel/1170/debugger/front-slim.xml
Normal file
219
devices/pdp11/panel/1170/debugger/front-slim.xml
Normal file
|
|
@ -0,0 +1,219 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<panel id="panel" width="100%" padding="8px">
|
||||
<name>Control Panel</name>
|
||||
<control type="container" class="pcjs-panel-group" width="100%" padBottom="8px">
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">16</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">18</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">22</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="B16" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="B18" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="B22" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">KRNL</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">SUPR</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">USER</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="KERNEL" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="SUPER" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="USER" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="6.2%" pos="right"></control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right">ADDRESS</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A0" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A2" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A3" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A5" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A6" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A7" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A8" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A9" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A10" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A11" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A12" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A13" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A14" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A15" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A16" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A17" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A18" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A19" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A20" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="3.1%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="100%" pos="right" style="clear:both;"><control type="rled" binding="A21" width="100%" container="center"/></control>
|
||||
</control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-panel-group" width="100%" padBottom="8px">
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED1</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED2</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED3</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED2" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED3" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED4</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED5</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED6</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED5" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED6" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="6.2%" pos="right"></control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right">DATA</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D0" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D2" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D3" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D5" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D6" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D7" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D8" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D9" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D10" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D11" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D12" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D13" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D14" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="3.1%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="100%" pos="right" style="clear:both;"><control type="rled" binding="D15" width="100%" container="center"/></control>
|
||||
</control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-panel-group" width="100%" padBottom="8px">
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">STRT</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">STEP</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">E/H</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="START" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="STEP" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="ENABLE" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">CONT</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">DEP</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">EXAM</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="CONT" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="DEP" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="EXAM" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="6.2%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="50%" pos="right">LOAD</control>
|
||||
<control type="container" class="pcjs-swlbl" width="50%" pos="right">TEST</control>
|
||||
<control type="container" class="pcjs-swpad" width="50%" pos="right" style="clear:both;"><control type="switch" binding="LOAD" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="50%" pos="right"><control type="switch" binding="TEST" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">0</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">1</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">2</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S0" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S2" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">3</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">4</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">5</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S3" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S5" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">6</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">7</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">8</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S6" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S7" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S8" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">9</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">10</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">11</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S9" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S10" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S11" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">12</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">13</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">14</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S12" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S13" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S14" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">15</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">16</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">17</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S15" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S16" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S17" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">18</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">19</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">20</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S18" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S19" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S20" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="3.1%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="100%" pos="right">21</control>
|
||||
<control type="container" class="pcjs-swpad" width="100%" pos="right" style="clear:both;"><control type="switch" binding="S21" width="100%" container="center"/></control>
|
||||
</control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-textarea" width="100%" padTop="8px" padBottom="8px">
|
||||
<control type="textarea" binding="print" width="100%" height="200px" padRight="8px" pos="relative" style="resize:vertical;"/>
|
||||
<control type="container" width="100%">
|
||||
<control type="text" binding="debugInput" width="auto"/>
|
||||
<control type="button" binding="debugEnter">Enter</control>
|
||||
<control type="button" binding="clear">Clear</control>
|
||||
<control type="button" binding="run" padLeft="16px">Run</control>
|
||||
<control type="button" binding="step">Step</control>
|
||||
<control type="button" binding="reset">Reset</control>
|
||||
<control type="button" binding="setSpeed">Fast</control>
|
||||
<control type="description" binding="speed" padLeft="8px">Stopped</control>
|
||||
</control>
|
||||
</control>
|
||||
</panel>
|
||||
215
devices/pdp11/panel/1170/front-slim.xml
Normal file
215
devices/pdp11/panel/1170/front-slim.xml
Normal file
|
|
@ -0,0 +1,215 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<panel id="panel" width="100%" padding="8px">
|
||||
<name>Control Panel</name>
|
||||
<control type="container" class="pcjs-panel-group" width="100%" padBottom="8px">
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">16</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">18</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">22</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="B16" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="B18" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="B22" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">KRNL</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">SUPR</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">USER</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="KERNEL" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="SUPER" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="USER" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="6.2%" pos="right"></control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right">ADDRESS</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A0" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A2" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A3" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A5" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A6" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A7" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A8" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A9" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A10" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A11" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A12" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A13" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A14" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A15" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A16" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A17" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A18" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A19" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="A20" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="3.1%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="100%" pos="right" style="clear:both;"><control type="rled" binding="A21" width="100%" container="center"/></control>
|
||||
</control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-panel-group" width="100%" padBottom="8px">
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED1</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED2</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED3</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED2" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED3" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED4</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED5</control>
|
||||
<control type="container" class="pcjs-ledlbl" width="33%" pos="right">LED6</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED5" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="LED6" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="6.2%" pos="right"></control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right">DATA</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D0" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D2" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D3" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D5" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D6" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D7" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D8" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D9" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D10" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D11" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl0" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D12" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D13" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-ledpad" width="33%" pos="right"><control type="rled" binding="D14" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="3.1%" pos="right">
|
||||
<control type="container" class="pcjs-ledlbl1" width="100%" pos="right" style="color:transparent">.</control>
|
||||
<control type="container" class="pcjs-ledpad" width="100%" pos="right" style="clear:both;"><control type="rled" binding="D15" width="100%" container="center"/></control>
|
||||
</control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-panel-group" width="100%" padBottom="8px">
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">START</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">STEP</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">ENABLE</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="START" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="STEP" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="ENABLE" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">CONT</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">DEP</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">EXAM</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="CONT" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="DEP" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="EXAM" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="6.2%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="50%" pos="right">LOAD</control>
|
||||
<control type="container" class="pcjs-swlbl" width="50%" pos="right">TEST</control>
|
||||
<control type="container" class="pcjs-swpad" width="50%" pos="right" style="clear:both;"><control type="switch" binding="LOAD" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="50%" pos="right"><control type="switch" binding="TEST" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">0</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">1</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">2</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S0" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S1" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S2" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">3</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">4</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">5</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S3" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S4" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S5" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">6</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">7</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">8</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S6" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S7" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S8" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">9</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">10</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">11</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S9" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S10" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S11" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">12</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">13</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">14</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S12" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S13" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S14" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">15</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">16</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">17</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S15" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S16" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S17" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="9.3%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">18</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">19</control>
|
||||
<control type="container" class="pcjs-swlbl" width="33%" pos="right">20</control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S18" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S19" width="100%" container="center"/></control>
|
||||
<control type="container" class="pcjs-swpad" width="33%" pos="right"><control type="switch" binding="S20" width="100%" container="center"/></control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-triplet" width="3.1%" pos="right">
|
||||
<control type="container" class="pcjs-swlbl" width="100%" pos="right">21</control>
|
||||
<control type="container" class="pcjs-swpad" width="100%" pos="right" style="clear:both;"><control type="switch" binding="S21" width="100%" container="center"/></control>
|
||||
</control>
|
||||
</control>
|
||||
<control type="container" class="pcjs-textarea" width="60%" padTop="8px" padBottom="8px">
|
||||
<control type="textarea" binding="print" width="100%" height="280px" padRight="8px" pos="relative" style="resize:vertical;"/>
|
||||
</control>
|
||||
<control type="container" class="pcjs-registers" width="35%" padding="8px">
|
||||
<control type="button" binding="run">Run</control>
|
||||
<control type="button" binding="reset">Reset</control>
|
||||
<control type="button" binding="setSpeed">Fast</control>
|
||||
<control type="description" binding="speed" pos="default">Stopped</control>
|
||||
</control>
|
||||
</panel>
|
||||
|
|
@ -109,7 +109,7 @@
|
|||
}
|
||||
.pcjs-description, .pcjs-status {
|
||||
font-size: x-small;
|
||||
line-height: 2.8em;
|
||||
line-height: 2.0em;
|
||||
}
|
||||
.pcjs-key {
|
||||
border: 1px solid black;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -973,9 +973,7 @@ class DebuggerPDP11 extends Debugger {
|
|||
if (panel) value = panel.getDR();
|
||||
break;
|
||||
case DebuggerPDP11.REG_SR:
|
||||
if (panel && panel.hasSwitches()) {
|
||||
value = panel.getSR();
|
||||
}
|
||||
if (panel) value = panel.getSR();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -2325,7 +2323,7 @@ class DebuggerPDP11 extends Debugger {
|
|||
}
|
||||
break;
|
||||
case DebuggerPDP11.REG_SR:
|
||||
if (this.panel && this.panel.hasSwitches()) {
|
||||
if (this.panel) {
|
||||
sReg = "SR=" + this.toStrBase(this.panel.getSR(), 3);
|
||||
}
|
||||
break;
|
||||
|
|
@ -3471,12 +3469,9 @@ class DebuggerPDP11 extends Debugger {
|
|||
fMisc = true;
|
||||
break;
|
||||
case "SR":
|
||||
if (this.panel && this.panel.hasSwitches()) {
|
||||
this.panel.setSR(w);
|
||||
fMisc = true;
|
||||
break;
|
||||
}
|
||||
/* falls through */
|
||||
if (this.panel) this.panel.setSR(w);
|
||||
fMisc = true;
|
||||
break;
|
||||
default:
|
||||
if (sRegMatch.charAt(0) == 'R') {
|
||||
var iReg = +sRegMatch.charAt(1);
|
||||
|
|
|
|||
|
|
@ -1100,17 +1100,6 @@ class PanelPDP11 extends Component {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* hasSRSwitches(value)
|
||||
*
|
||||
* @this {PanelPDP11}
|
||||
* @return {boolean}
|
||||
*/
|
||||
hasSRSwitches()
|
||||
{
|
||||
return this.bindings[PanelPDP11.SWITCH.S0] !== undefined;
|
||||
}
|
||||
|
||||
/**
|
||||
* setSRSwitches(value)
|
||||
*
|
||||
|
|
@ -1120,18 +1109,15 @@ class PanelPDP11 extends Component {
|
|||
*/
|
||||
setSRSwitches(value)
|
||||
{
|
||||
if (this.hasSRSwitches() && !isNaN(value)) {
|
||||
this.regSwitches = value | 0;
|
||||
for (var i = 0; i < 22; i++) {
|
||||
this.switches['S'+i][1] = (this.regSwitches & (1 << i))? 1 : 0;
|
||||
}
|
||||
/*
|
||||
* This (re)displays ALL switches, not merely the SR switches, but that's OK.
|
||||
*/
|
||||
this.displaySwitches();
|
||||
return true;
|
||||
this.regSwitches = value | 0;
|
||||
for (var i = 0; i < 22; i++) {
|
||||
this.switches['S'+i][1] = (this.regSwitches & (1 << i))? 1 : 0;
|
||||
}
|
||||
return false;
|
||||
/*
|
||||
* This (re)displays ALL switches, not merely the SR switches, but that's OK.
|
||||
*/
|
||||
this.displaySwitches();
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -1326,7 +1312,6 @@ PanelPDP11.ADDRSEL = {
|
|||
* "step" behavior when pressed more than once in a row). Ditto for the LED table.
|
||||
*/
|
||||
PanelPDP11.SWITCH = {
|
||||
S0: 'S0',
|
||||
DEP: 'DEP',
|
||||
ENABLE: 'ENABLE',
|
||||
EXAM: 'EXAM',
|
||||
|
|
|
|||
|
|
@ -647,7 +647,7 @@ class Component {
|
|||
static getScriptCommands(sScript)
|
||||
{
|
||||
var cch = sScript.length;
|
||||
var aaCommands = [], aTokens = [], sToken = "", chQuote = null;
|
||||
var aCommands = [], aTokens = [], sToken = "", chQuote = null;
|
||||
for (var i = 0; i < cch; i++) {
|
||||
var ch = sScript[i];
|
||||
if (ch == '"' || ch == "'") {
|
||||
|
|
@ -676,7 +676,7 @@ class Component {
|
|||
sToken = "";
|
||||
}
|
||||
if (ch == ';' && aTokens.length) {
|
||||
aaCommands.push(aTokens);
|
||||
aCommands.push(aTokens);
|
||||
aTokens = [];
|
||||
}
|
||||
continue;
|
||||
|
|
@ -688,26 +688,26 @@ class Component {
|
|||
aTokens.push(sToken);
|
||||
}
|
||||
if (aTokens.length) {
|
||||
aaCommands.push(aTokens);
|
||||
aCommands.push(aTokens);
|
||||
}
|
||||
return aaCommands;
|
||||
return aCommands;
|
||||
}
|
||||
|
||||
/**
|
||||
* Component.processScript(idMachine, sComponent, sScript)
|
||||
* Component.processScript(idMachine, sScript)
|
||||
*
|
||||
* @param {string} idMachine
|
||||
* @param {string} sComponent
|
||||
* @param {string} sScript
|
||||
* @return {boolean}
|
||||
*/
|
||||
static processScript(idMachine, sComponent, sScript)
|
||||
static processScript(idMachine, sScript)
|
||||
{
|
||||
var fSuccess = false;
|
||||
if (typeof sScript == "string") {
|
||||
idMachine += ".machine";
|
||||
if (typeof sScript == "string" && !Component.commands[idMachine]) {
|
||||
fSuccess = true;
|
||||
var aaCommands = Component.getScriptCommands(sScript);
|
||||
if (!Component.processCommands(idMachine + ".machine", aaCommands, 0)) {
|
||||
Component.commands[idMachine] = Component.getScriptCommands(sScript);
|
||||
if (!Component.processCommands(idMachine)) {
|
||||
fSuccess = false;
|
||||
}
|
||||
}
|
||||
|
|
@ -715,22 +715,21 @@ class Component {
|
|||
}
|
||||
|
||||
/**
|
||||
* Component.processCommands(idMachine, aaCommands, iCommand)
|
||||
* Component.processCommands(idMachine)
|
||||
*
|
||||
* @param {string} idMachine
|
||||
* @param {Array} aaCommands
|
||||
* @param {number} iCommand
|
||||
* @return {boolean}
|
||||
*/
|
||||
static processCommands(idMachine, aaCommands, iCommand)
|
||||
static processCommands(idMachine)
|
||||
{
|
||||
var fSuccess = true;
|
||||
var aCommands = Component.commands[idMachine];
|
||||
|
||||
// var dbg = Component.getComponentByType("Debugger", idMachine);
|
||||
|
||||
while (iCommand < aaCommands.length) {
|
||||
while (aCommands && aCommands.length) {
|
||||
|
||||
var aTokens = aaCommands[iCommand];
|
||||
var aTokens = aCommands.splice(0, 1)[0];
|
||||
var sCommand = aTokens[0];
|
||||
|
||||
/*
|
||||
|
|
@ -742,11 +741,11 @@ class Component {
|
|||
|
||||
var fnCallReady = null;
|
||||
if (Component.asyncCommands.indexOf(sCommand) >= 0) {
|
||||
fnCallReady = function processNextCommand(iNextCommand) {
|
||||
fnCallReady = function processNextCommand() {
|
||||
return function() {
|
||||
Component.processCommands(idMachine, aaCommands, iNextCommand);
|
||||
Component.processCommands(idMachine);
|
||||
}
|
||||
}(iCommand + 1);
|
||||
}();
|
||||
}
|
||||
|
||||
var fnCommand = Component.globalCommands[sCommand];
|
||||
|
|
@ -786,9 +785,12 @@ class Component {
|
|||
Component.alertUser("Script error: " + sCommand + (fnCommand? " failed" : " unrecognized"));
|
||||
break;
|
||||
}
|
||||
|
||||
iCommand++;
|
||||
}
|
||||
|
||||
if (aCommands && !aCommands.length) {
|
||||
delete Component.commands[idMachine];
|
||||
}
|
||||
|
||||
return fSuccess;
|
||||
}
|
||||
|
||||
|
|
@ -1292,9 +1294,11 @@ if (window) {
|
|||
if (!window['PCjs']) window['PCjs'] = {};
|
||||
if (!window['PCjs']['Machines']) window['PCjs']['Machines'] = {};
|
||||
if (!window['PCjs']['Components']) window['PCjs']['Components'] = [];
|
||||
if (!window['PCjs']['Commands']) window['PCjs']['Commands'] = {};
|
||||
}
|
||||
Component.machines = window? window['PCjs']['Machines'] : {};
|
||||
Component.components = window? window['PCjs']['Components'] : [];
|
||||
Component.commands = window? window['PCjs']['Commands'] : {};
|
||||
|
||||
Component.asyncCommands = [
|
||||
'hold', 'sleep', 'wait'
|
||||
|
|
|
|||
|
|
@ -607,16 +607,15 @@ function findMachineComponent(idMachine, sType)
|
|||
}
|
||||
|
||||
/**
|
||||
* processMachineScript(idMachine, sComponent, sScript)
|
||||
* processMachineScript(idMachine, sScript)
|
||||
*
|
||||
* @param {string} idMachine
|
||||
* @param {string} sComponent
|
||||
* @param {string} sScript
|
||||
* @return {boolean}
|
||||
*/
|
||||
function processMachineScript(idMachine, sComponent, sScript)
|
||||
function processMachineScript(idMachine, sScript)
|
||||
{
|
||||
return Component.processScript(idMachine, sComponent, sScript);
|
||||
return Component.processScript(idMachine, sScript);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -113,11 +113,12 @@ function addStickyMachine(idMachine, sPosition)
|
|||
*/
|
||||
function commandMachine(control, fSingle, idMachine, sComponent, sCommand, sValue)
|
||||
{
|
||||
if (fSingle) {
|
||||
control.disabled = true;
|
||||
}
|
||||
if (sCommand == "script" && window.processMachineScript) {
|
||||
return window.processMachineScript(idMachine, sComponent, sValue);
|
||||
if (window.processMachineScript(idMachine, sValue)) {
|
||||
if (fSingle) control.disabled = true;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
if (sComponent && window.findMachineComponent) {
|
||||
var component = window.findMachineComponent(idMachine, sComponent);
|
||||
|
|
@ -127,7 +128,11 @@ function commandMachine(control, fSingle, idMachine, sComponent, sCommand, sValu
|
|||
var fnCommand = exports[sCommand];
|
||||
if (fnCommand) {
|
||||
//noinspection JSUnresolvedFunction
|
||||
return !!fnCommand.call(component, sValue);
|
||||
if (fnCommand.call(component, sValue)) {
|
||||
if (fSingle) control.disabled = true;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -114,7 +114,7 @@
|
|||
}
|
||||
.pcjs-description, .pcjs-status {
|
||||
font-size: x-small;
|
||||
line-height: 2.8em;
|
||||
line-height: 2.0em;
|
||||
}
|
||||
.pcjs-key {
|
||||
border: 1px solid black;
|
||||
|
|
|
|||
Loading…
Reference in a new issue