Additional DOS and OS/2 directory listings

This commit is contained in:
Jeff Parsons 2016-01-17 22:53:42 -08:00
commit 59b7ca3f79
22 changed files with 805 additions and 112 deletions

View file

@ -11,10 +11,10 @@ and [C1Pjs](/docs/c1pjs/).
### Software Application Manifests
Every complete software package is stored in its own folder, either as a set of individual files
(under [/apps](/apps/)) or as a set of disk images (under [/disks](/disks/)), along with a **manifest.xml**
file that describes the software. The manifest format is still being developed, but at a minimum, it
should contain the following information about the software:
In the PCjs Project, every complete software package is stored in its own folder, either as a set of individual
files (under [/apps](/apps/)) or as a set of disk images (under [/disks](/disks/)), along with a **manifest.xml**
file that describes the software. The manifest format is still being developed, but at a minimum, it should contain
the following information about the software:
- Title
- Version

View file

@ -17,27 +17,25 @@ Below are selected demos of classic IBM PC applications running on [PCjs](/docs/
Additional software is available in the [IBM PC Disk Archive](/disks/pc/).
More information about creating [Application Demos](https://github.com/jeffpar/pcjs/tree/master/apps/pc)
is available in the [PCjs Project](https://github.com/jeffpar/pcjs) on [GitHub](https://github.com/).
### Creating IBM PC Application Demos
{% if page.developer %}
### Developer Notes: How To Produce A Demo
Demos in our [Application Archives](/apps/) combine [Software Application Manifests](/apps/#software-application-manifests)
with [Machine Configurations](/devices/pc/machine/).
We'll use the [VisiCalc Demo](1981/visicalc/) as an example. First you must 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):
in the demo's [manifest](1981/visicalc/manifest.xml):
<machine href="/devices/pc/machine/5150/mda/64kb/machine.xml"/>
Next, the [Manifest](1981/visicalc/manifest.xml) required a disk image containing the VisiCalc program
Next, the [manifest](1981/visicalc/manifest.xml) required a disk image containing the VisiCalc program
(VC.COM). We used the [DiskDump](/modules/diskdump/) module to create that disk image:
cd apps/pc/1981/visicalc
node ../../../../modules/diskdump/bin/diskdump --path="static/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 "static" subdirectory,
and "README.md" from the "static" parent directory) and automatically added that disk image to the demo's [Manifest](1981/visicalc/manifest.xml):
and "README.md" from the "static" parent directory) and automatically added that disk image to the demo's [manifest](1981/visicalc/manifest.xml):
<disk id="disk01" size="163840" chs="40:1:8" dir="static/" href="/apps/pc/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>
@ -49,7 +47,7 @@ Now that the manifest contains a disk image, we were able to add the manifest to
<manifest ref="/apps/pc/1981/visicalc/manifest.xml" disk="*"/>
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):
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/pc/machine/5150/mda/64kb/debugger/machine.xml
@ -59,12 +57,9 @@ 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 &lt;machine&gt; entry in the [Manifest](1981/visicalc/manifest.xml):
the &lt;machine&gt; entry in the [manifest](1981/visicalc/manifest.xml):
<machine href="/devices/pc/machine/5150/mda/64kb/machine.xml" state="/apps/pc/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.
{% endif %}