Updated PC8080 and PDPjs to support RAM images, eliminating the need for the old "writable ROM" kludge; RAM images can include their own load and exec addresses as part of the JSON file, but the RAM component can provide explicit overrides (if no load address is specified either way, the default load address is the starting RAM address)
This commit is contained in:
parent
4cfaa5ef6e
commit
980c2ac5ab
64 changed files with 1479 additions and 1154 deletions
|
|
@ -13,8 +13,8 @@ All our [8080-Based Machines](machine/) are built from a collection of devices,
|
|||
* [Control Panels](panel/)
|
||||
* CPU (8080)
|
||||
* [Machines](machine/)
|
||||
* RAM
|
||||
* [ROMs](rom/)
|
||||
* [RAM Images](ram/)
|
||||
* [ROM Images](rom/)
|
||||
* Video Adapters
|
||||
|
||||
Complete [machine configurations](machine/) are constructed from those devices. A machine configuration is a single XML file
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ PCjs Project.
|
|||
|
||||
The test machine below loads a copy of the
|
||||
[8080 Exerciser](https://web.archive.org/web/20151006085348/http://www.idb.me.uk/sunhillow/8080.html)
|
||||
(specifically, [8080EX1](/devices/pc8080/rom/exerciser/8080EX1.MAC)) and intercepts the exerciser's CP/M console
|
||||
(specifically, [8080EX1](/devices/pc8080/ram/exerciser/8080EX1.MAC)) and intercepts the exerciser's CP/M console
|
||||
calls so that you can see its progress in the Control Panel window. This is a "headless" test machine
|
||||
(no keyboard or display), so that's all you get.
|
||||
|
||||
|
|
|
|||
|
|
@ -4,8 +4,7 @@
|
|||
<name pos="center">8080 Exerciser Test Machine</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu8080" model="8080" cycles="2000000"/>
|
||||
<rom id="romTest" addr="0x0100" size="0x1200" file="/devices/pc8080/rom/exerciser/8080EX1.json" writable="true"/>
|
||||
<ram id="ramTest" addr="0x1300" size="0xED00"/>
|
||||
<ram id="ram64K" addr="0x0000" size="0x10000" file="/devices/pc8080/ram/exerciser/8080EX1.json" load="0x100" exec="0x100"/>
|
||||
<panel ref="/devices/pc8080/panel/wide.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
</machine>
|
||||
|
|
|
|||
|
|
@ -4,8 +4,7 @@
|
|||
<name pos="center">8080 Exerciser Preliminary 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/exerciser/8080PRE.json" writable="true"/>
|
||||
<ram id="ramTest" addr="0x0500" size="0xFB00"/>
|
||||
<ram id="ram64K" addr="0x0000" size="0x10000" file="/devices/pc8080/ram/exerciser/8080PRE.json" load="0x100" exec="0x100"/>
|
||||
<panel ref="/devices/pc8080/panel/wide.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
</machine>
|
||||
|
|
|
|||
|
|
@ -4,8 +4,7 @@
|
|||
<name pos="center">8080 CPUTEST Machine</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu8080" model="8080" cycles="2000000"/>
|
||||
<rom id="romTest" addr="0x0100" size="0x4B00" file="/devices/pc8080/rom/exerciser/CPUTEST.json" writable="true"/>
|
||||
<ram id="ramTest" addr="0x4C00" size="0xB400"/>
|
||||
<ram id="ram64K" addr="0x0000" size="0x10000" file="/devices/pc8080/ram/exerciser/CPUTEST.json" load="0x100" exec="0x100"/>
|
||||
<panel ref="/devices/pc8080/panel/wide.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
</machine>
|
||||
|
|
|
|||
|
|
@ -4,8 +4,7 @@
|
|||
<name pos="center">8080 "Kelly Smith" Test Machine</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu8080" model="8080" cycles="2000000"/>
|
||||
<rom id="romTest" addr="0x0100" size="0x0701" file="/devices/pc8080/rom/exerciser/TEST.json" writable="true"/>
|
||||
<ram id="ramTest" addr="0x0801" size="0xF7FF"/>
|
||||
<ram id="ram64K" addr="0x0000" size="0x10000" file="/devices/pc8080/ram/exerciser/TEST.json" load="0x100" exec="0x100"/>
|
||||
<panel ref="/devices/pc8080/panel/wide.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
</machine>
|
||||
|
|
|
|||
|
|
@ -4,8 +4,7 @@
|
|||
<name pos="center">8080 Exerciser Test Machine</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu8080" model="8080" cycles="2000000"/>
|
||||
<rom id="romTest" addr="0x0100" size="0x1200" file="/devices/pc8080/rom/exerciser/8080EX1.json" writable="true"/>
|
||||
<ram id="ramTest" addr="0x1300" size="0xED00"/>
|
||||
<ram id="ram64K" addr="0x0000" size="0x10000" file="/devices/pc8080/ram/exerciser/8080EX1.json" load="0x100" exec="0x100"/>
|
||||
<panel ref="/devices/pc8080/panel/wide.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
</machine>
|
||||
|
|
|
|||
21
devices/pc8080/ram/README.md
Normal file
21
devices/pc8080/ram/README.md
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
---
|
||||
layout: page
|
||||
title: 8080-Based RAM Images
|
||||
permalink: /devices/pc8080/ram/
|
||||
---
|
||||
|
||||
8080-Based RAM Images
|
||||
---------------------
|
||||
|
||||
RAM images are added to machines by including a *<ram>* component in the machine XML configuration file
|
||||
with the *file* attribute set to the filename of the image; eg:
|
||||
|
||||
```xml
|
||||
<ram id="romH" addr="0x0000" size="0x0800" file="/devices/pc8080/rom/invaders/INVADERS-H.json"/>
|
||||
```
|
||||
|
||||
The project currently contains the following 8080-based ROMs:
|
||||
|
||||
* [8080 Exerciser Tests](exerciser/)
|
||||
* [Space Invaders (1978)](invaders/)
|
||||
* [DEC VT100 Terminal](vt100/)
|
||||
|
|
@ -1,7 +1,9 @@
|
|||
---
|
||||
layout: page
|
||||
title: 8080 Exerciser Tests
|
||||
permalink: /devices/pc8080/rom/exerciser/
|
||||
permalink: /devices/pc8080/ram/exerciser/
|
||||
redirect_from:
|
||||
- /devices/pc8080/rom/exerciser/
|
||||
---
|
||||
|
||||
8080 Exerciser Tests
|
||||
|
|
@ -12,4 +14,4 @@ permalink: /devices/pc8080/rom/exerciser/
|
|||
* [8080PRE](8080PRE.MAC)
|
||||
|
||||
Our [8080 Exerciser Test Machine](/devices/pc8080/machine/exerciser/) runs [8080EX1](8080EX1.MAC),
|
||||
since it is the most comprehensive test and verifies strict compatibilty with the original Intel 8080.
|
||||
since it is the most comprehensive test and verifies strict compatibility with the original Intel 8080.
|
||||
|
|
@ -9,10 +9,10 @@ PDP-11 Device Configurations
|
|||
|
||||
[PDP-11 Machines](/devices/pdp11/machine/) powered by [PDPjs](/modules/pdp11/) rely on a variety of devices and resources, including:
|
||||
|
||||
* [Loaders](loader/)
|
||||
* [Machines](machine/)
|
||||
* [Panels](panel/)
|
||||
* [ROMs](rom/)
|
||||
* [RAM Images](ram/)
|
||||
* [ROM Images](rom/)
|
||||
|
||||
Our collection of sample machines includes a
|
||||
[PDP-11/70 with Front Panel](/devices/pdp11/machine/1170/panel/) and [PDP-11/70 with VT100 Terminal](/devices/pdp11/machine/1170/vt100/).
|
||||
|
|
|
|||
|
|
@ -10,3 +10,4 @@ PDP-11/20 Machine Configurations
|
|||
PCjs is adding support the following PDP-11/20 configurations:
|
||||
|
||||
* [PDP-11/20 Test Machine](/devices/pdp11/machine/1120/test/) ([Debugger](/devices/pdp11/machine/1120/test/debugger/))
|
||||
* [PDP-11/20 with 16Kb and Bootstrap Loader](/devices/pdp11/machine/1120/bootstrap/) ([Debugger](/devices/pdp11/machine/1120/bootstrap/debugger/))
|
||||
|
|
|
|||
10
devices/pdp11/machine/1120/bootstrap/README.md
Normal file
10
devices/pdp11/machine/1120/bootstrap/README.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11/20 with 16Kb and Bootstrap Loader
|
||||
permalink: /devices/pdp11/machine/1120/bootstrap/
|
||||
machines:
|
||||
- id: test1120
|
||||
type: pdp11
|
||||
---
|
||||
|
||||
{% include machine.html id="test1120" %}
|
||||
11
devices/pdp11/machine/1120/bootstrap/debugger/README.md
Normal file
11
devices/pdp11/machine/1120/bootstrap/debugger/README.md
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11/20 with 16Kb, Bootstrap Loader, and Debugger
|
||||
permalink: /devices/pdp11/machine/1120/bootstrap/debugger/
|
||||
machines:
|
||||
- id: test1120
|
||||
type: pdp11
|
||||
debugger: true
|
||||
---
|
||||
|
||||
{% include machine.html id="test1120" %}
|
||||
13
devices/pdp11/machine/1120/bootstrap/debugger/machine.xml
Normal file
13
devices/pdp11/machine/1120/bootstrap/debugger/machine.xml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="/versions/pdpjs/1.30.1/machine.xsl"?>
|
||||
<machine id="test1120" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/20: 16Kb, Bootstrap Loader, Debugger</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu" model="1120" cycles="6666667"/>
|
||||
<ram id="ram" addr="0x0000" size="0x4000" file="/devices/pdp11/ram/bootstrap/bootstrap.json"/>
|
||||
<device id="default" type="default"/>
|
||||
<device id="pc11" type="pc11"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
<panel ref="/devices/pdp11/panel/test/debugger/terminal.xml"/>
|
||||
<debugger id="debugger" base="8" messages="" commands=""/>
|
||||
</machine>
|
||||
12
devices/pdp11/machine/1120/bootstrap/machine.xml
Normal file
12
devices/pdp11/machine/1120/bootstrap/machine.xml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="/versions/pdpjs/1.30.1/machine.xsl"?>
|
||||
<machine id="test1120" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/20: 16Kb, Bootstrap Loader</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu" model="1120" cycles="6666667"/>
|
||||
<ram id="ram" addr="0x0000" size="0x4000" file="/devices/pdp11/ram/bootstrap/bootstrap.json"/>
|
||||
<device id="default" type="default"/>
|
||||
<device id="pc11" type="pc11"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
<panel ref="/devices/pdp11/panel/test/terminal.xml"/>
|
||||
</machine>
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11/20 Test Machine
|
||||
title: PDP-11/20 Test Machine
|
||||
permalink: /devices/pdp11/machine/1120/test/
|
||||
machines:
|
||||
- id: test1120
|
||||
|
|
|
|||
|
|
@ -1,11 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="/versions/pdpjs/1.30.1/machine.xsl"?>
|
||||
<machine id="test1120" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/20 Test Machine with Debugger</name>
|
||||
<name pos="center">PDP-11/20 Test Machine with 56Kb and Debugger</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu" model="1120" cycles="6666667" resetAddr="0xC000"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1120" cycles="6666667"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<device id="default" type="default"/>
|
||||
<device id="pc11" type="pc11"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<?xml-stylesheet type="text/xsl" href="/versions/pdpjs/1.30.1/machine.xsl"?>
|
||||
<machine id="test1120" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/20 Test Machine</name>
|
||||
<name pos="center">PDP-11/20 Test Machine with 56Kb</name>
|
||||
<computer id="computer" busWidth="16"/>
|
||||
<cpu id="cpu" model="1120" cycles="6666667" resetAddr="0xC000" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1120" cycles="6666667" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<device id="default" type="default"/>
|
||||
<device id="pc11" type="pc11"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
<panel ref="/devices/pdp11/panel/test/terminal.xml"/>
|
||||
</machine>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,8 @@
|
|||
<machine id="test1170" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/70 with Front Panel and Debugger</name>
|
||||
<computer id="computer" busWidth="22"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" resetAddr="0xC000"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<ram id="ram" addr="0x10000" size="0x34000"/>
|
||||
<device id="default" type="default"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,8 @@
|
|||
<machine id="test1170" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/70 with Front Panel</name>
|
||||
<computer id="computer" busWidth="22"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" resetAddr="0xC000" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<ram id="ram" addr="0x10000" size="0x34000"/>
|
||||
<device id="default" type="default"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,8 @@
|
|||
<machine id="test1170" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/70 Test Machine with Debugger</name>
|
||||
<computer id="computer" busWidth="22"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" resetAddr="0xC000"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<ram id="ram" addr="0x10000" size="0x34000"/>
|
||||
<device id="default" type="default"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,8 @@
|
|||
<machine id="test1170" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/70 Test Machine</name>
|
||||
<computer id="computer" busWidth="22"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" resetAddr="0xC000" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<ram id="ram" addr="0x10000" size="0x34000"/>
|
||||
<device id="default" type="default"/>
|
||||
<serial id="dl11" adapter="0" binding="print"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,8 @@
|
|||
<machine id="test1170" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/70 with Front Panel</name>
|
||||
<computer id="computer" busWidth="22"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" resetAddr="0xC000" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<ram id="ram" addr="0x10000" size="0x34000"/>
|
||||
<device id="default" type="default"/>
|
||||
<serial id="dl11" adapter="0"/>
|
||||
|
|
|
|||
|
|
@ -3,9 +3,8 @@
|
|||
<machine id="test1170" class="pdp11" border="1" pos="center" background="#FAEBD7">
|
||||
<name pos="center">PDP-11/70 with Front Panel</name>
|
||||
<computer id="computer" busWidth="22"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" resetAddr="0xC000" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xC000"/>
|
||||
<rom id="rom" addr="0xC000" file="/devices/pdp11/rom/test/boot.json" writable="true"/>
|
||||
<cpu id="cpu" model="1170" cycles="6666667" autoStart="true"/>
|
||||
<ram id="ram" addr="0x0000" size="0xE000" file="/devices/pdp11/ram/bootdemo/bootdemo.json" load="0xC000" exec="0xC000"/>
|
||||
<ram id="ram" addr="0x10000" size="0x34000"/>
|
||||
<device id="default" type="default"/>
|
||||
<serial id="dl11" adapter="0"/>
|
||||
|
|
|
|||
11
devices/pdp11/ram/README.md
Normal file
11
devices/pdp11/ram/README.md
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11 RAM Images
|
||||
permalink: /devices/pdp11/ram/
|
||||
---
|
||||
|
||||
PDP-11 RAM Images
|
||||
-----------------
|
||||
|
||||
* [PDP-11 Boot Demo](bootdemo/)
|
||||
* [PDP-11 Bootstrap Loader](bootstrap/)
|
||||
15
devices/pdp11/ram/bootdemo/README.md
Normal file
15
devices/pdp11/ram/bootdemo/README.md
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11 Boot Demo
|
||||
permalink: /devices/pdp11/ram/bootdemo/
|
||||
redirect_from:
|
||||
- /devices/pdp11/rom/test/
|
||||
---
|
||||
|
||||
PDP-11 Boot Demo
|
||||
----------------
|
||||
|
||||
[BOOTDEMO.MAC](bootdemo.mac) is based on [BOOT.MAC](http://skn.noip.me/pdp11/boot.mac) written by [Paul Nankervis](mailto:paulnank@hotmail.com))
|
||||
|
||||
[BOOTDEMO.MAC](bootdemo.mac) was cross-assembled with [MACRO11](https://github.com/shattered/macro11) to produce [BOOTDEMO.LST](bootdemo.lst),
|
||||
which was then processed by [FileDump](/modules/filedump/) to produce [BOOTDEMO.JSON](bootdemo.json).
|
||||
11
devices/pdp11/ram/bootdemo/makefile
Normal file
11
devices/pdp11/ram/bootdemo/makefile
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
#
|
||||
# Don't have macro11? Make yourself a copy from https://github.com/shattered/macro11
|
||||
#
|
||||
|
||||
all: bootdemo.json
|
||||
|
||||
bootdemo.lst: bootdemo.mac
|
||||
macro11 bootdemo.mac -l bootdemo.lst
|
||||
|
||||
bootdemo.json: bootdemo.lst
|
||||
node ../../../../modules/filedump/bin/filedump --file=bootdemo.lst --format=octal --output=bootdemo.json --overwrite
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11 Loaders
|
||||
permalink: /devices/pdp11/loader/
|
||||
title: PDP-11 Bootstrap Loader
|
||||
permalink: /devices/pdp11/ram/bootstrap/
|
||||
---
|
||||
|
||||
PDP-11 Loaders
|
||||
--------------
|
||||
PDP-11 Bootstrap Loader
|
||||
-----------------------
|
||||
|
||||
The blog post "[PDP-11 Paper Tape BASIC](http://avitech.com.au/?page_id=709)" describes the *Bootstrap Loader*,
|
||||
a small program used to load the *Absolute Loader*, which in turn loads the *PDP-11 BASIC Paper Tape*.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
{"words":[
|
||||
{"load":0x3FE4,"exec":0x3FE4,"words":[
|
||||
0x1DC1 /*016701*/,0x0016 /*000026*/,0x15C2 /*012702*/,0x00EA /*000352*/,0x0A89 /*005211*/,0x8BC9 /*105711*/,0x80FE /*100376*/,0x9C72 /*116162*/,
|
||||
0x0002 /*000002*/,0x3F00 /*037400*/,0x0AB7 /*005267*/,0xFFEE /*177756*/,0x01F5 /*000765*/,0xFF68 /*177550*/]
|
||||
}
|
||||
}
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11 ROMs
|
||||
title: PDP-11 ROM Images
|
||||
permalink: /devices/pdp11/rom/
|
||||
---
|
||||
|
||||
PDP-11 ROMs
|
||||
-----------
|
||||
PDP-11 ROM Images
|
||||
-----------------
|
||||
|
||||
* [Test ROM](test/) (based on [BOOT.MAC](http://skn.noip.me/pdp11/boot.mac) written by [Paul Nankervis](mailto:paulnank@hotmail.com))
|
||||
Any ROM images added to the project will be stored here.
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-11 Test ROM
|
||||
permalink: /devices/pdp11/rom/test/
|
||||
---
|
||||
|
||||
PDP-11 Test ROM
|
||||
---------------
|
||||
|
||||
This isn't a ROM so much as a read-only image that can be loaded in RAM by the ROM component.
|
||||
|
||||
[BOOT.MAC](boot.mac) was cross-assembled with [MACRO11](https://github.com/shattered/macro11) to produce [BOOT.LST](boot.lst),
|
||||
which was then processed by [FileDump](/modules/filedump/) to produce [BOOT.JSON](boot.json).
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
#
|
||||
# Don't have macro11? Make yourself a copy from https://github.com/shattered/macro11
|
||||
#
|
||||
|
||||
all: boot.json
|
||||
|
||||
boot.lst: boot.mac
|
||||
macro11 boot.mac -l boot.lst
|
||||
|
||||
boot.json: boot.lst
|
||||
node ../../../../modules/filedump/bin/filedump --file=boot.lst --format=octal --output=boot.json --overwrite
|
||||
Loading…
Reference in a new issue