More diagnostic output improvements
This commit is contained in:
parent
ea82dfec93
commit
51f8440e9b
40 changed files with 4462 additions and 4398 deletions
|
|
@ -22,7 +22,7 @@ You can also browse our collection of archived disks:
|
|||
* [Challenger 1P Disk Library](/disks/c1p/)
|
||||
* [DEC Disk Library](/disks/dec/)
|
||||
|
||||
{% include_relative pcx86/apps.md %}
|
||||
{% include_relative pcx86/README.md %}
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -1,67 +1,46 @@
|
|||
---
|
||||
layout: page
|
||||
title: IBM PC Application Demos
|
||||
permalink: /apps/pcx86/
|
||||
---
|
||||
IBM PC Application Demos
|
||||
------------------------
|
||||
|
||||
{% include_relative apps.md %}
|
||||
Below are selected [PCx86](/docs/about/pcx86/) demos of classic IBM PC applications. In many cases,
|
||||
we've had to create our own "Demo Disks", because copies of the original distribution disks are difficult
|
||||
to find, and in some cases (e.g., [Executive Suite](/apps/pcx86/1982/esuite/)), the original disks were
|
||||
copy-protected, so we've been forced to use a "cracked" copy of the software instead.
|
||||
|
||||
---
|
||||
A list of all the software available to PCx86 machines can be found in the [IBM PC Disk Library](/disks/pcx86/).
|
||||
|
||||
### Creating IBM PC Application Demos
|
||||
### 1981
|
||||
|
||||
Demos in our [Application Archives](/apps/) combine
|
||||
[Software Application Manifests](/apps/#software-application-manifests) with
|
||||
[Machine Configurations](/devices/pcx86/machine/).
|
||||
* [DONKEY.BAS](/apps/pcx86/1981/donkey/)
|
||||
* [Microsoft Adventure](/disks/pcx86/games/microsoft/adventure/)
|
||||
* [VisiCalc](/apps/pcx86/1981/visicalc/)
|
||||
|
||||
We'll use the [VisiCalc Demo](1981/visicalc/) as an example. First, we choose a machine configuration.
|
||||
For VisiCalc, we chose a Model 5150 machine with a Monochrome Display, and then inserted a link to that machine
|
||||
in the demo's [manifest](1981/visicalc/manifest.xml):
|
||||
### 1982
|
||||
|
||||
```xml
|
||||
<machine href="/devices/pcx86/machine/5150/mda/64kb/machine.xml"/>
|
||||
```
|
||||
* [Executive Suite](/apps/pcx86/1982/esuite/)
|
||||
* [RatBas v2.13](/apps/pcx86/1982/ratbas/)
|
||||
* [Zork I](/disks/pcx86/games/infocom/zork1/)
|
||||
|
||||
Next, the [manifest](1981/visicalc/manifest.xml) requires a disk image containing the VisiCalc program
|
||||
(VC.COM). We used the [DiskDump](/modules/diskdump/) module to create that disk image:
|
||||
### 1983
|
||||
|
||||
cd apps/pcx86/1981/visicalc
|
||||
node ../../../../modules/diskdump/bin/diskdump --path="archive/VC.COM;../README.md" --format=json --output=disk.json --manifest
|
||||
|
||||
The DiskDump command created a disk image named "disk.json" containing two files ("VC.COM" from the "archive"
|
||||
subdirectory, and "README.md" from the "archive" parent directory) and automatically added that disk image to the demo's
|
||||
[manifest](1981/visicalc/manifest.xml):
|
||||
* [Adventures in Math v1.00](/apps/pcx86/1983/adventmath/)
|
||||
* [Planetfall](/disks/pcx86/games/infocom/planet/)
|
||||
* [SuperCalc2 v1.00](/disks/pcx86/apps/other/sc2/1.00/)
|
||||
* [SuperCalc3 v1.00](/disks/pcx86/apps/other/sc3/1.00/)
|
||||
* [Zork II](/disks/pcx86/games/infocom/zork2/)
|
||||
* [Zork III](/disks/pcx86/games/infocom/zork3/)
|
||||
|
||||
```xml
|
||||
<disk id="disk01" size="163840" chs="40:1:8" dir="archive/" href="/apps/pcx86/1981/visicalc/disk.json" md5="61494f998d5fb0e31e7b8bd99f1cc588" md5json="3ad82ed815725e6bd786f92a4714e84f">
|
||||
<file size="27520" time="1981-12-16 23:00:00" attr="0x20" md5="28997dfedb2440c6054d8be835be8634">VC.COM</file>
|
||||
<file dir="../">README.md</file>
|
||||
</disk>
|
||||
```
|
||||
### 1984
|
||||
|
||||
Now that the manifest contains a disk image, we were able to add the manifest to our set of
|
||||
[Sample Disks](/disks/pcx86/samples.xml):
|
||||
* [The Hitchhiker's Guide to the Galaxy](/disks/pcx86/games/infocom/hhiker/)
|
||||
|
||||
```xml
|
||||
<manifest ref="/apps/pcx86/1981/visicalc/manifest.xml" disk="*"/>
|
||||
```
|
||||
### 1985
|
||||
|
||||
Next, we started a version of our chosen machine that's also configured to use the Debugger, by loading
|
||||
the following **machine.xml** into a web browser (it's assumed the Node web server is already running on port 8088):
|
||||
* [Rogue](/apps/pcx86/1985/rogue/)
|
||||
|
||||
http://localhost:8088/devices/pcx86/machine/5150/mda/64kb/debugger/machine.xml
|
||||
### 1987
|
||||
|
||||
Then we booted DOS, loaded the VisiCalc disk, ran VisiCalc, pressed the Debugger's "Halt" button, pressed "Clear" to
|
||||
clear the Debugger's output window, and typed the following Debugger command:
|
||||
|
||||
d state
|
||||
* [ThinkTank v2.14](/apps/pcx86/1987/thinktank/)
|
||||
|
||||
We copied-and-pasted the entire contents of the Debugger's output window into a file named "state.json", and then
|
||||
updated the <machine> entry in the [manifest](1981/visicalc/manifest.xml):
|
||||
### 1992
|
||||
|
||||
```xml
|
||||
<machine href="/devices/pcx86/machine/5150/mda/64kb/machine.xml" state="/apps/pcx86/1981/visicalc/state.json"/>
|
||||
```
|
||||
|
||||
It's important to use a state file *only* with the machine configuration it was created with; in this case, we're OK,
|
||||
because the only difference between the two chosen Model 5150 machines is the addition of the Debugger.
|
||||
* [The Dungeons of Moria v5.5](/apps/pcx86/1992/moria/)
|
||||
|
|
|
|||
|
|
@ -1,46 +0,0 @@
|
|||
IBM PC Application Demos
|
||||
------------------------
|
||||
|
||||
Below are selected [PCx86](/docs/about/pcx86/) demos of classic IBM PC applications. In many cases,
|
||||
we've had to create our own "Demo Disks", because copies of the original distribution disks are difficult
|
||||
to find, and in some cases (e.g., [Executive Suite](/apps/pcx86/1982/esuite/)), the original disks were
|
||||
copy-protected, so we've been forced to use a "cracked" copy of the software instead.
|
||||
|
||||
A list of all the software available to PCx86 machines can be found in the [IBM PC Disk Library](/disks/pcx86/).
|
||||
|
||||
### 1981
|
||||
|
||||
* [DONKEY.BAS](/apps/pcx86/1981/donkey/)
|
||||
* [Microsoft Adventure](/disks/pcx86/games/microsoft/adventure/)
|
||||
* [VisiCalc](/apps/pcx86/1981/visicalc/)
|
||||
|
||||
### 1982
|
||||
|
||||
* [Executive Suite](/apps/pcx86/1982/esuite/)
|
||||
* [RatBas v2.13](/apps/pcx86/1982/ratbas/)
|
||||
* [Zork I](/disks/pcx86/games/infocom/zork1/)
|
||||
|
||||
### 1983
|
||||
|
||||
* [Adventures in Math v1.00](/apps/pcx86/1983/adventmath/)
|
||||
* [Planetfall](/disks/pcx86/games/infocom/planet/)
|
||||
* [SuperCalc2 v1.00](/disks/pcx86/apps/other/sc2/1.00/)
|
||||
* [SuperCalc3 v1.00](/disks/pcx86/apps/other/sc3/1.00/)
|
||||
* [Zork II](/disks/pcx86/games/infocom/zork2/)
|
||||
* [Zork III](/disks/pcx86/games/infocom/zork3/)
|
||||
|
||||
### 1984
|
||||
|
||||
* [The Hitchhiker's Guide to the Galaxy](/disks/pcx86/games/infocom/hhiker/)
|
||||
|
||||
### 1985
|
||||
|
||||
* [Rogue](/apps/pcx86/1985/rogue/)
|
||||
|
||||
### 1987
|
||||
|
||||
* [ThinkTank v2.14](/apps/pcx86/1987/thinktank/)
|
||||
|
||||
### 1992
|
||||
|
||||
* [The Dungeons of Moria v5.5](/apps/pcx86/1992/moria/)
|
||||
67
apps/pcx86/index.md
Normal file
67
apps/pcx86/index.md
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
---
|
||||
layout: page
|
||||
title: IBM PC Application Demos
|
||||
permalink: /apps/pcx86/
|
||||
---
|
||||
|
||||
{% include_relative README.md %}
|
||||
|
||||
---
|
||||
|
||||
### Creating IBM PC Application Demos
|
||||
|
||||
Demos in our [Application Archives](/apps/) combine
|
||||
[Software Application Manifests](/apps/#software-application-manifests) with
|
||||
[Machine Configurations](/devices/pcx86/machine/).
|
||||
|
||||
We'll use the [VisiCalc Demo](1981/visicalc/) as an example. First, we choose a machine configuration.
|
||||
For VisiCalc, we chose a Model 5150 machine with a Monochrome Display, and then inserted a link to that machine
|
||||
in the demo's [manifest](1981/visicalc/manifest.xml):
|
||||
|
||||
```xml
|
||||
<machine href="/devices/pcx86/machine/5150/mda/64kb/machine.xml"/>
|
||||
```
|
||||
|
||||
Next, the [manifest](1981/visicalc/manifest.xml) requires a disk image containing the VisiCalc program
|
||||
(VC.COM). We used the [DiskDump](/modules/diskdump/) module to create that disk image:
|
||||
|
||||
cd apps/pcx86/1981/visicalc
|
||||
node ../../../../modules/diskdump/bin/diskdump --dir=archive/visicalc.81 --format=json --output=VISICALC1981.json --manifest
|
||||
|
||||
The DiskDump command creates a disk image named **VISICALC1981.json** containing the files the archive/visicalc.81
|
||||
subdirectory (ie, **VC.COM**) and automatically added that disk image to the demo's [manifest](1981/visicalc/manifest.xml):
|
||||
|
||||
```xml
|
||||
<disk id="disk01" chs="40:1:8" dir="archive/visicalc.81" href="/apps/pcx86/1981/visicalc/VISICALC1981.json" md5="5b77efdfb86aa747edb49811db75021d" md5json="b1a45cb769cf04daa259263a92bacf16">
|
||||
<name>VisiCalc (1981)</name>
|
||||
<file size="27520" time="1981-12-16 23:00:00" attr="0x20" md5="28997dfedb2440c6054d8be835be8634">VC.COM</file>
|
||||
<link href="http://www.bricklin.com/history/vclicense.htm">VisiCalc License</link>
|
||||
</disk>
|
||||
```
|
||||
|
||||
Now that the manifest contains a disk image, we were able to add the manifest to our set of
|
||||
[Sample Disks](/disks/pcx86/samples.xml):
|
||||
|
||||
```xml
|
||||
<manifest ref="/apps/pcx86/1981/visicalc/manifest.xml"/>
|
||||
```
|
||||
|
||||
Next, we started a version of our chosen machine that's also configured to use the Debugger, by loading
|
||||
the following **machine.xml** into a web browser (it's assumed the Node web server is already running on port 8088):
|
||||
|
||||
http://localhost:8088/devices/pcx86/machine/5150/mda/64kb/debugger/machine.xml
|
||||
|
||||
Then we booted DOS, loaded the VisiCalc disk, ran VisiCalc, pressed the Debugger's "Halt" button, pressed "Clear" to
|
||||
clear the Debugger's output window, and typed the following Debugger command:
|
||||
|
||||
d state
|
||||
|
||||
We copied-and-pasted the entire contents of the Debugger's output window into a file named "state.json", and then
|
||||
updated the <machine> entry in the [manifest](1981/visicalc/manifest.xml):
|
||||
|
||||
```xml
|
||||
<machine href="/devices/pcx86/machine/5150/mda/64kb/machine.xml" state="/apps/pcx86/1981/visicalc/state.json"/>
|
||||
```
|
||||
|
||||
It's important to use a state file *only* with the machine configuration it was created with; in this case, we're OK,
|
||||
because the only difference between the two chosen Model 5150 machines is the addition of the Debugger.
|
||||
Loading…
Reference in a new issue