pcjs/disks/pcx86
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2017-06-21 19:33:53 -07:00
..
apps Started work on v1.35.1 2017-06-21 11:18:02 -07:00
compiled Updated the VisiCalc demo with an autoType sequence, a fresh disk image, new state file, and reference cards; also, updated autoType support to cancel autoType if a saved machine state is loaded 2017-06-19 08:48:10 -07:00
cpm Started work on v1.35.1 2017-06-21 11:18:02 -07:00
diags Started work on v1.35.1 2017-06-21 11:18:02 -07:00
dos Updated the manifest for the PC-DOS 1.10 disk (and shrank the JSON-encoded image a bit) 2017-06-21 19:33:53 -07:00
empty Started work on v1.35.1 2017-06-21 11:18:02 -07:00
fixed Updated information on fixed disk images 2017-06-15 16:34:43 -07:00
games Started work on v1.35.1 2017-06-21 11:18:02 -07:00
minix Started work on v1.35.1 2017-06-21 11:18:02 -07:00
os2 Started work on v1.35.1 2017-06-21 11:18:02 -07:00
shareware Started work on v1.35.1 2017-06-21 11:18:02 -07:00
tools Started work on v1.35.1 2017-06-21 11:18:02 -07:00
unix Started work on v1.35.1 2017-06-21 11:18:02 -07:00
windows Started work on v1.35.1 2017-06-21 11:18:02 -07:00
library.xml Added RatBas files 2017-06-16 18:11:26 -07:00
README.md Website README updates 2017-06-21 16:55:12 -07:00
samples.xml Added "Adventures in Math (1983)" along with some notes about the failure to properly archive files 2017-06-14 09:48:51 -07:00

layout title permalink
page IBM PC Disk Library /disks/pcx86/

IBM PC Disk Library

Our IBM PC Disk Library lists all the Disk Manifests in the PCjs Project and makes those disks available to any IBM PC Machine in the project that uses the library.

Whenever possible, PCjs archives copies of original distribution diskettes. Exceptions include the application "Demo Disks" that we've created for our IBM PC Application Demos. PCjs may also make minor changes to a disk's boot sector, to ensure that all PCjs disk images can be mounted in modern operating systems. This is documented, for example, in the description of the PC-DOS 0.90 disk.

The summary below is not a complete list of everything in the library, just highlights. For some of the disks, we have provided more information about the software, and in some cases, machines that automatically run the software. Ideally, everything in the library would also be listed below, and linked to a page that describes the software in more detail, along with a live demonstration of the software, but that's not yet a reality.

Operating Systems

Applications

Additional applications for which we have created special "Demo Disks" include:

Games

Shareware

Tools

Tests

Fixed Disks


Disk Manifests

Typically, all the distribution disks for a single version of a piece of software are placed in a single folder, along with a manifest.xml file containing metadata about the software and a list of the individual disks. This is generally referred to as a Software Manifest, but in the context of the Disk Library, it's simply known as a Disk Manifest.

A Disk Manifest can then be added to a Floppy Drive Controller (FDC) configuration file, making all its disks available to any machine loading that particular configuration file.

A simple FDC configuration file, such as samples.xml, could contain individual <disk> entries like:

<disk path="/disks/pcx86/dos/ibm/1.00/PCDOS100.json">PC-DOS 1.00</disk>
<disk path="/disks/pcx86/dos/ibm/1.10/PCDOS110.json">PC-DOS 1.10</disk>
<disk path="/disks/pcx86/dos/ibm/2.00/PCDOS200-DISK1.json">PC-DOS 2.00 (Disk 1)</disk>
<disk path="/disks/pcx86/dos/ibm/2.00/PCDOS200-DISK2.json">PC-DOS 2.00 (Disk 2)</disk>
...

However, listing individual diskettes like that is tedious, so support was added for Disk Manifest references:

Instead of listing the PC-DOS 2.00 diskettes individually, they can now be added to an XML configuration file with a single Disk Manifest reference:

<manifest ref="/disks/pcx86/dos/ibm/2.00/manifest.xml" disk="*"/>

When you want to include only one particular disk from a manifest, set the disk value to the id of the disk. Here's how you would include only the first disk from PC-DOS 2.00:

<manifest ref="/disks/pcx86/dos/ibm/2.00/manifest.xml" disk="disk01"/>

Here's what the entire Disk Manifest for PC-DOS 2.00 currently looks like:

<manifest type="software">
    <title>PC-DOS</title>
    <version>2.00</version>
    <type>DOS</type>
    <category>Operating System</category>
    <author>IBM/Microsoft</author>
    <releaseDate/>
    <disk id="disk01" size="184320" chs="40:1:9" img="archive/PCDOS200-DISK1.img" href="/disks/pcx86/dos/ibm/2.00/PCDOS200-DISK1.json" md5="d57ceef82122790d1c0ff7bebc12f90a" md5json="2507c02da6cbafe9a94a35cbdd993be2">
        <name>PC-DOS 2.00 (Disk 1)</name>
    </disk>
    <disk id="disk02" size="184320" chs="40:1:9" img="archive/PCDOS200-DISK2.img" href="/disks/pcx86/dos/ibm/2.00/PCDOS200-DISK2.json" md5="1c7aac53c78446992f8821cf42d04c4a" md5json="b66e296319c1f97990b596b1aa376d39">
        <name>PC-DOS 2.00 (Disk 2)</name>
    </disk>
</manifest>