From b93f6bf6304437331327d79c5ffe477fa2dbe089 Mon Sep 17 00:00:00 2001 From: Jeff Parsons Date: Tue, 22 Dec 2015 12:56:25 -0800 Subject: [PATCH] README updates and a new EGA config --- apps/pc/README.md | 5 +-- devices/README.md | 11 +++-- devices/c1p/README.md | 7 ++- devices/pc/README.md | 45 ++++++++++++++++--- devices/pc/basic/README.md | 21 +++++++++ devices/pc/bios/README.md | 21 +++++++++ devices/pc/machine/README.md | 2 +- devices/pc/video/README.md | 21 +++++++++ devices/pc/video/compaq/vga/README.md | 2 +- .../pc/video/ibm/ega/ibm-ega-128kb-lockfs.xml | 13 ++++++ devices/pc/video/ibm/vga/README.md | 10 +++++ devices/pc/video/paradise/vga/README.md | 2 +- disks/pc/os2/ibm/1.0/machine.xml | 2 +- 13 files changed, 143 insertions(+), 19 deletions(-) create mode 100644 devices/pc/basic/README.md create mode 100644 devices/pc/bios/README.md create mode 100644 devices/pc/video/README.md create mode 100644 devices/pc/video/ibm/ega/ibm-ega-128kb-lockfs.xml create mode 100644 devices/pc/video/ibm/vga/README.md diff --git a/apps/pc/README.md b/apps/pc/README.md index b94e7a4a1..da00d01c0 100644 --- a/apps/pc/README.md +++ b/apps/pc/README.md @@ -19,9 +19,8 @@ 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/). -Learn more about -[Application Demos](https://github.com/jeffpar/pcjs/tree/master/apps/pc) in the -[PCjs Project](https://github.com/jeffpar/pcjs) on [GitHub](https://github.com/). +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/). {% if page.developer %} diff --git a/devices/README.md b/devices/README.md index 862789700..dce9ef2f0 100644 --- a/devices/README.md +++ b/devices/README.md @@ -1,10 +1,15 @@ --- layout: page -title: Machine Configurations +title: Device Configurations permalink: /devices/ --- -Machine Configurations +Device Configurations --- -Browse [IBM PC](/devices/pc/machine/) and [Challenger 1P](/devices/c1p/machine/) machine configurations. +All PCjs machines, including the: + +* [IBM PC](pc/machine/) +* [Challenger 1P](c1p/machine/) + +are built from collections of [PC Devices](pc/) and [C1P Devices](c1p/). diff --git a/devices/c1p/README.md b/devices/c1p/README.md index aa103d4f5..7ddc4e791 100644 --- a/devices/c1p/README.md +++ b/devices/c1p/README.md @@ -1,13 +1,12 @@ --- layout: page -title: Challenger 1P Machine Configurations +title: Challenger 1P Device Configurations permalink: /devices/c1p/ --- -Challenger 1P Configurations +Challenger 1P Device Configurations --- -This folder contains Challenger 1P [Machine Configurations](machine/), along with [Control Panels](panel/) and -other components. +This folder contains [Control Panels](panel/) and other components for all [Challenger 1P Machine Configurations](machine/). [Applications](/apps/c1p/) and [Disk Images](/disks/c1p/) are also available. diff --git a/devices/pc/README.md b/devices/pc/README.md index 0fcff73c9..7dae979d2 100644 --- a/devices/pc/README.md +++ b/devices/pc/README.md @@ -1,13 +1,48 @@ --- layout: page -title: PC Machine Configurations +title: IBM PC Device Configurations permalink: /devices/pc/ --- -PC Machine Configurations +IBM PC Device Configurations --- -This folder contains IBM PC [Machine Configurations](machine/), along with [Control Panels](/devices/pc/panel/), -[Keyboard Layouts](/devices/pc/keyboard/) and other components. +IBM PC [Machine Configurations](machine/) are built from a collection of devices, including: -[Application Demos](/apps/pc/) and [Disk Archives](/disks/pc/) are also available. +* CPU +* RAM +* ROMs (eg, [BASIC](basic/), [BIOS](bios/)) +* [Keyboards](keyboard/) +* [Video Adapters](video/) +* Floppy Disk Controllers +* Hard Disk (Fixed Disk) Controllers +* [Control Panels](panel/) + +Each of those devices can be configured in multiple ways, and also some support external UI controls. + +For example, the IBM PC Keyboard component supports different keyboard models (eg, 83-key, 84-key, 101-key), +and each of those models can also be configured to have dedicated buttons for selected key combinations, +or even entire keyboard layouts. + +Complete machine configurations are constructed from those devices. A machine configuration is a single XML file +that lists all the device components to be used. A machine XML file can choose to configure every device itself, +or it can include pre-configured device XML files, such as those provided above or elsewhere. + +For example, here's what the machine located at [/devices/pc/machine/5150/mda/64kb/machine.xml](/devices/pc/machine/5150/mda/64kb/machine.xml) +looks like: + + + IBM PC (Model 5150) with Monochrome Display + + + + + diff --git a/devices/pc/basic/README.md b/devices/pc/basic/README.md new file mode 100644 index 000000000..ad3c317ab --- /dev/null +++ b/devices/pc/basic/README.md @@ -0,0 +1,21 @@ +--- +layout: page +title: IBM PC BASIC ROMs +permalink: /devices/pc/basic/ +--- + +BASIC ROMs +--- + +The project contains the following BASIC ROMs: + +* [BASIC 1.00](ibm-basic-1.00.json) +* [BASIC 1.10](ibm-basic-1.10.json) + +These built-in versions of BASIC were also referred to as *Cassette BASIC*, because no disk drive was required. +Only the original IBM PC (Model 5150) actually provided a cassette interface, but IBM continued to use that +name to describe the built-in BASIC at least up through the IBM PC AT (Model 5170). + +Here's an [IBM PC Machine](/devices/pc/machine/) XML excerpt that shows how to include a BASIC ROM: + + diff --git a/devices/pc/bios/README.md b/devices/pc/bios/README.md new file mode 100644 index 000000000..4e0470594 --- /dev/null +++ b/devices/pc/bios/README.md @@ -0,0 +1,21 @@ +--- +layout: page +title: IBM PC BIOS ROMs +permalink: /devices/pc/bios/ +--- + +BIOS ROMs +--- + +The project contains the following IBM PC BIOS ROMs: + +* [Model 5150: Apr 24, 1981](5150/1981-04-24.json) +* [Model 5150: Oct 19, 1981](5150/1981-10-19.json) +* [Model 5150: Oct 27, 1982](5150/1982-10-27.json) +* [Model 5160: Nov 08, 1982](5160/1982-11-08.json) +* [Model 5160: May 09, 1986](5160/1986-05-09.json) + +As well as BIOS ROMs, with more detailed information, for the following machines: + +* [Model 5170](5170/) +* [Compaq DeskPro 386](compaq/deskpro386/) diff --git a/devices/pc/machine/README.md b/devices/pc/machine/README.md index dad7965b1..1ddaed556 100644 --- a/devices/pc/machine/README.md +++ b/devices/pc/machine/README.md @@ -19,7 +19,7 @@ along with these IBM PC-compatibles: * [Compaq DeskPro 386](compaq/deskpro386/) -Configurations for the [Challenger 1P](/devices/c1p/machine/) and other non-IBM machines are also [available](/devices/). +Browse the [Devices](/devices/) used by all PCjs machines, including the 6502-based [Challenger 1P](/devices/c1p/machine/). --- diff --git a/devices/pc/video/README.md b/devices/pc/video/README.md new file mode 100644 index 000000000..99e8ba46f --- /dev/null +++ b/devices/pc/video/README.md @@ -0,0 +1,21 @@ +--- +layout: page +title: IBM PC Video Support +permalink: /devices/pc/video/ +--- + +IBM PC Video Support +--- + +PCjs supports the following IBM PC video adapters: + +* MDA (Monochrome Display Adapter) +* CGA (Color Graphics Adapter) +* EGA (Enhanced Graphics Adapter) +* [VGA](ibm/vga/) (Video Graphics Adapter) + +More detailed information is available for the following IBM-compatible video adapters: + +* [Compaq EGA](/devices/pc/video/compaq/ega/) +* [Compaq VGA](/devices/pc/video/compaq/vga/) +* [Paradise VGA](/devices/pc/video/paradise/vga/) diff --git a/devices/pc/video/compaq/vga/README.md b/devices/pc/video/compaq/vga/README.md index 703912506..e2d455516 100644 --- a/devices/pc/video/compaq/vga/README.md +++ b/devices/pc/video/compaq/vga/README.md @@ -60,7 +60,7 @@ For a more human-readable dump, use the `--comments` option: And for those who want a binary file, the FileDump API can be used to recreate binary data from JSON data: -> [http://www.pcjs.org/api/v1/dump?file=http://www.pcjs.org/devices/pc/video/compaq/vga/109360-001/1988-05-18.json&format=rom](http://www.pcjs.org/api/v1/dump?file=http://www.pcjs.org/devices/pc/video/compaq/vga/109360-001/1988-05-18.json&format=rom) +> [http://localhost:8088/api/v1/dump?file=/devices/pc/video/compaq/vga/109360-001/1988-05-18.json&format=rom](http://localhost:8088/api/v1/dump?file=/devices/pc/video/compaq/vga/109360-001/1988-05-18.json&format=rom) The Compaq VGA ROM BIOS concludes with the usual copyright string and author initials: diff --git a/devices/pc/video/ibm/ega/ibm-ega-128kb-lockfs.xml b/devices/pc/video/ibm/ega/ibm-ega-128kb-lockfs.xml new file mode 100644 index 000000000..69eb493eb --- /dev/null +++ b/devices/pc/video/ibm/ega/ibm-ega-128kb-lockfs.xml @@ -0,0 +1,13 @@ + + diff --git a/devices/pc/video/ibm/vga/README.md b/devices/pc/video/ibm/vga/README.md new file mode 100644 index 000000000..d4c2968ce --- /dev/null +++ b/devices/pc/video/ibm/vga/README.md @@ -0,0 +1,10 @@ +--- +layout: page +title: "IBM Video Graphics Array (VGA)" +permalink: /devices/pc/video/ibm/vga/ +--- + +IBM Video Graphics Array (VGA) +--- + +The disassembled contents of the ROM from the IBM's PS/2 Display Adapter is available [here](ibm-vga.nasm). diff --git a/devices/pc/video/paradise/vga/README.md b/devices/pc/video/paradise/vga/README.md index 9a4e7414d..c6fb47608 100644 --- a/devices/pc/video/paradise/vga/README.md +++ b/devices/pc/video/paradise/vga/README.md @@ -23,7 +23,7 @@ For a more human-readable dump, use the `--comments` option: And for those who want a binary file, the FileDump API can be used to recreate binary data from JSON data: -> [http://www.pcjs.org/api/v1/dump?file=http://www.pcjs.org/devices/pc/video/paradise/vga/1988-05-23.json&format=rom](http://www.pcjs.org/api/v1/dump?file=http://www.pcjs.org/devices/pc/video/paradise/vga/1988-05-23.json&format=rom) +> [http://localhost:8088/api/v1/dump?file=/devices/pc/video/paradise/vga/1988-05-23.json&format=rom](http://localhost:8088/api/v1/dump?file=/devices/pc/video/paradise/vga/1988-05-23.json&format=rom) The first 128 bytes of the ROM BIOS contain: diff --git a/disks/pc/os2/ibm/1.0/machine.xml b/disks/pc/os2/ibm/1.0/machine.xml index a6516a119..9f58218b7 100644 --- a/disks/pc/os2/ibm/1.0/machine.xml +++ b/disks/pc/os2/ibm/1.0/machine.xml @@ -8,7 +8,7 @@ -