More 8080 improvements, including some initial "Fake CP/M" support
This commit is contained in:
parent
dfe66764ef
commit
5b6f6756a2
25 changed files with 1051 additions and 842 deletions
|
|
@ -2,7 +2,7 @@
|
|||
<?xml-stylesheet type="text/xsl" href="/versions/pc8080/1.21.7/machine.xsl"?>
|
||||
<machine id="invaders" class="pc8080" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">Space Invaders</name>
|
||||
<computer id="computer"/>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu8080" model="8080" cycles="2000000"/>
|
||||
<rom id="romH" addr="0x0000" size="0x0800" file="/devices/pc8080/rom/invaders/INVADERS-H.json"/>
|
||||
<rom id="romG" addr="0x0800" size="0x0800" file="/devices/pc8080/rom/invaders/INVADERS-G.json"/>
|
||||
|
|
@ -14,6 +14,6 @@
|
|||
<title>224x256 Screen (Rotated)</title>
|
||||
</menu>
|
||||
</video>
|
||||
<panel ref="/devices/pc8080/panel/default.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
<panel ref="/devices/pc8080/panel/left.xml"/>
|
||||
<debugger id="debugger" commands="s 8086"/>
|
||||
</machine>
|
||||
|
|
|
|||
14
devices/pc8080/machine/test/README.md
Normal file
14
devices/pc8080/machine/test/README.md
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
---
|
||||
layout: page
|
||||
title: 8080 Test Machine
|
||||
permalink: /devices/pc8080/machine/test/
|
||||
machines:
|
||||
- type: pc8080
|
||||
id: test8080
|
||||
debugger: true
|
||||
---
|
||||
|
||||
8080 Test Machine
|
||||
---
|
||||
|
||||
{% include machine.html id="test8080" %}
|
||||
11
devices/pc8080/machine/test/machine.xml
Normal file
11
devices/pc8080/machine/test/machine.xml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="/versions/pc8080/1.21.7/machine.xsl"?>
|
||||
<machine id="test8080" class="pc8080" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">8080 Test Machine</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu8080" model="8080" cycles="2000000"/>
|
||||
<rom id="romTest" addr="0x0100" size="0x0400" file="/devices/pc8080/rom/test/8080PRE.json" writable="true"/>
|
||||
<ram id="ramTest" addr="0x0500" size="0xFB00"/>
|
||||
<panel ref="/devices/pc8080/panel/wide.xml"/>
|
||||
<debugger id="debugger" commands="s 8086"/>
|
||||
</machine>
|
||||
|
|
@ -6,13 +6,9 @@
|
|||
</control>
|
||||
<control type="container" class="pcjs-registers" width="100%" padleft="8px">
|
||||
<control type="register" label="A" binding="A" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="F" binding="F" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="B" binding="B" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="C" binding="C" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="D" binding="D" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="E" binding="E" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="H" binding="H" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="L" binding="L" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="BC" binding="BC" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="DE" binding="DE" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="HL" binding="HL" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="SP" binding="SP" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="PC" binding="PC" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="container" pos="left">
|
||||
35
devices/pc8080/panel/wide.xml
Normal file
35
devices/pc8080/panel/wide.xml
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<panel id="panel" width="100%" padding="8px">
|
||||
<name>Control Panel</name>
|
||||
<control type="container" class="pcjs-textarea" width="100%" padright="8px">
|
||||
<control type="textarea" binding="print" width="100%" height="252px" pos="relative" style="resize:vertical;"/>
|
||||
</control>
|
||||
<control type="container" class="pcjs-registers" width="100%" padleft="8px">
|
||||
<control type="register" label="A" binding="A" width="20px" padright="8px" padbottom="8px">00</control>
|
||||
<control type="register" label="BC" binding="BC" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="DE" binding="DE" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="HL" binding="HL" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="SP" binding="SP" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="register" label="PC" binding="PC" width="40px" padright="8px" padbottom="8px">0000</control>
|
||||
<control type="container" pos="left">
|
||||
<control type="flag" label="I" binding="IF" width="8px" padright="4px" padbottom="8px">0</control>
|
||||
<control type="flag" label="S" binding="SF" width="8px" padright="4px" padbottom="8px">0</control>
|
||||
<control type="flag" label="Z" binding="ZF" width="8px" padright="4px" padbottom="8px">0</control>
|
||||
<control type="flag" label="A" binding="AF" width="8px" padright="4px" padbottom="8px">0</control>
|
||||
<control type="flag" label="P" binding="PF" width="8px" padright="4px" padbottom="8px">0</control>
|
||||
<control type="flag" label="C" binding="CF" width="8px" padright="4px" padbottom="8px">0</control>
|
||||
</control>
|
||||
<control type="description" padleft="16px" padbottom="8px">Speed:</control>
|
||||
<control type="description" binding="speed" padleft="4px" padbottom="8px">Stopped</control>
|
||||
</control>
|
||||
<control type="container" padleft="8px" padbottom="8px">
|
||||
<control type="button" binding="run">Run</control>
|
||||
<control type="button" binding="step">Step</control>
|
||||
<control type="button" binding="reset">Reset</control>
|
||||
<control type="button" binding="setSpeed">Fast</control>
|
||||
<control pos=""/>
|
||||
<control type="text" binding="debugInput" width="100px"/>
|
||||
<control type="button" binding="debugEnter">Enter</control>
|
||||
<control type="button" binding="clear">Clear</control>
|
||||
</control>
|
||||
</panel>
|
||||
66
devices/pc8080/rom/test/8080PRE.json
Normal file
66
devices/pc8080/rom/test/8080PRE.json
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
{"bytes":[
|
||||
62,1,254,2,202,0,0,254,1,194,0,0,195,17,1,118,
|
||||
255,205,23,1,195,0,0,225,124,254,1,202,33,1,195,0,
|
||||
0,125,254,20,202,42,1,195,0,0,49,153,3,241,193,209,
|
||||
225,49,169,3,229,213,197,245,58,161,3,254,2,194,0,0,
|
||||
58,162,3,254,4,194,0,0,58,163,3,254,6,194,0,0,
|
||||
58,164,3,254,8,194,0,0,58,165,3,254,10,194,0,0,
|
||||
58,166,3,254,12,194,0,0,58,167,3,254,14,194,0,0,
|
||||
58,168,3,254,16,194,0,0,33,169,3,126,254,165,194,0,
|
||||
0,33,170,3,126,254,60,194,0,0,49,0,5,33,149,1,
|
||||
229,201,195,0,0,62,255,230,15,254,15,194,0,0,62,90,
|
||||
230,15,254,10,194,0,0,15,254,5,194,0,0,15,254,130,
|
||||
194,0,0,15,254,65,194,0,0,15,254,160,194,0,0,33,
|
||||
52,18,229,193,120,254,18,194,0,0,121,254,52,194,0,0,
|
||||
33,1,0,229,241,220,219,1,195,82,3,225,33,214,0,229,
|
||||
241,212,231,1,195,82,3,225,33,245,1,229,33,1,0,229,
|
||||
241,216,205,82,3,33,2,2,229,33,214,0,229,241,208,205,
|
||||
82,3,33,1,0,229,241,218,13,2,205,82,3,33,214,0,
|
||||
229,241,210,24,2,205,82,3,33,4,0,229,241,236,35,2,
|
||||
195,82,3,225,33,211,0,229,241,228,47,2,195,82,3,225,
|
||||
33,61,2,229,33,4,0,229,241,232,205,82,3,33,74,2,
|
||||
229,33,211,0,229,241,224,205,82,3,33,4,0,229,241,234,
|
||||
85,2,205,82,3,33,211,0,229,241,226,96,2,205,82,3,
|
||||
33,64,0,229,241,204,107,2,195,82,3,225,33,151,0,229,
|
||||
241,196,119,2,195,82,3,225,33,133,2,229,33,64,0,229,
|
||||
241,200,205,82,3,33,146,2,229,33,151,0,229,241,192,205,
|
||||
82,3,33,64,0,229,241,202,157,2,205,82,3,33,151,0,
|
||||
229,241,194,168,2,205,82,3,33,128,0,229,241,252,179,2,
|
||||
195,82,3,225,33,87,0,229,241,244,191,2,195,82,3,225,
|
||||
33,205,2,229,33,128,0,229,241,248,205,82,3,33,218,2,
|
||||
229,33,87,0,229,241,240,205,82,3,33,128,0,229,241,250,
|
||||
229,2,205,82,3,33,87,0,229,241,242,240,2,205,82,3,
|
||||
33,247,2,233,205,82,3,62,165,6,4,15,5,194,251,2,
|
||||
254,90,196,82,3,6,16,60,5,194,7,3,254,106,196,82,
|
||||
3,6,0,33,0,0,35,5,194,22,3,124,254,1,196,82,
|
||||
3,125,254,0,196,82,3,17,50,3,14,9,205,5,0,195,
|
||||
0,0,56,48,56,48,32,80,114,101,108,105,109,105,110,97,
|
||||
114,121,32,116,101,115,116,115,32,99,111,109,112,108,101,116,
|
||||
101,36,193,38,4,120,15,15,15,15,230,15,111,126,205,138,
|
||||
3,120,230,15,111,126,205,138,3,121,15,15,15,15,230,15,
|
||||
111,126,205,138,3,121,230,15,111,126,205,138,3,62,13,205,
|
||||
138,3,62,10,205,138,3,195,0,0,245,197,213,229,14,2,
|
||||
95,205,5,0,225,209,193,241,201,2,4,6,8,10,12,14,
|
||||
16,0,0,0,0,0,0,0,0,165,60,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
|
||||
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
|
||||
}
|
||||
Loading…
Reference in a new issue