diff --git a/Gruntfile.js b/Gruntfile.js
index 55cddb8e4..082f71a80 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -630,7 +630,7 @@ module.exports = function(grunt) {
{
cwd: "versions/pcx86/<%= pkg.version %>/",
src: ["pcx86.js", "pcx86-dbg.js", "components.css", "components.xsl"],
- dest: "pubs/pcx86/examples/",
+ dest: "pubs/docs/pcx86/examples/",
expand: true
}
],
@@ -706,7 +706,7 @@ module.exports = function(grunt) {
args: []
},
"zip-examples": {
- options: {cwd: "pubs/pcx86/examples"},
+ options: {cwd: "pubs/docs/pcx86/examples"},
cmd: "./zip.sh",
args: ["v" + pkg.version + ".zip"]
}
diff --git a/README.md b/README.md
index d9959598e..0ac2093e8 100644
--- a/README.md
+++ b/README.md
@@ -15,14 +15,14 @@ machines:
PCjs Machines
=============
-Welcome to PCjs, home of [PCx86](/pubs/pcx86/), the original IBM PC simulation that runs in your web browser. It is
+Welcome to PCjs, home of [PCx86](/docs/pcx86/), the original IBM PC simulation that runs in your web browser. It is
one of several JavaScript Machines in the [PCjs Project](https://github.com/jeffpar/pcjs), an open-source project that
includes:
-* [PCx86](/pubs/pcx86/), an x86-based emulator of the [IBM PC and PC-compatibles](/devices/pcx86/machine/)
+* [PCx86](/docs/pcx86/), an x86-based emulator of the [IBM PC and PC-compatibles](/devices/pcx86/machine/)
* [PC8080](/modules/pc8080/), an 8080 machine emulator (see [Space Invaders](/devices/pc8080/machine/invaders/) and the [VT100 Terminal](/devices/pc8080/machine/vt100/))
-* [C1Pjs](/pubs/c1pjs/), an emulation of the 6502-based [Ohio Scientific Challenger 1P](/devices/c1p/)
-* [PDPjs](/pubs/pdpjs/), a set of machine emulation modules supporting the DEC [PDP-10](/devices/pdp10/machine/) and [PDP-11](/devices/pdp11/machine/)
+* [C1Pjs](/docs/c1pjs/), an emulation of the 6502-based [Ohio Scientific Challenger 1P](/devices/c1p/)
+* [PDPjs](/docs/pdpjs/), a set of machine emulation modules supporting the DEC [PDP-10](/devices/pdp10/machine/) and [PDP-11](/devices/pdp11/machine/)
All PCjs machine simulations are written entirely in [JavaScript](/modules/). No Flash, Java or other plugins are
required. Supported browsers include modern versions of Chrome, Safari, Firefox, Internet Explorer (v9.0 and up), Edge,
@@ -30,17 +30,17 @@ and assorted mobile browsers.
{% include machine.html id="ibm5150" %}
-The [JavaScript Machine](/devices/pcx86/machine/5150/mda/64kb/) above uses [PCx86](/pubs/pcx86/) configured with an Intel
+The [JavaScript Machine](/devices/pcx86/machine/5150/mda/64kb/) above uses [PCx86](/docs/pcx86/) configured with an Intel
8088 running at 4.77Mhz, with 64Kb of RAM and an IBM Monochrome Display Adapter. For more control, there are also
[Control Panel](/devices/pcx86/machine/5150/mda/64kb/debugger/) and [Soft Keyboard](/devices/pcx86/machine/5150/mda/64kb/softkbd/)
configurations, featuring the built-in PCx86 Debugger. For even greater control, build your own PC. The
-[PCx86 Documentation](/pubs/pcx86/) will help you get started.
+[PCx86 Documentation](/docs/pcx86/) will help you get started.
PCx86 has steadily evolved to support more classic x86-based machines, including the IBM PC XT, the 80286-based IBM PC AT,
and the 80386-based COMPAQ DeskPro 386. PCx86 fully supports the original machine ROMs, video cards, etc, and all
machines run at their original speeds.
-The goals of the [PCjs Project](/pubs/about/) are to create fast, full-featured simulations of classic
+The goals of the [PCjs Project](/docs/about/) are to create fast, full-featured simulations of classic
computer hardware, help people understand how these early machines worked, make it easy to experiment with different
machine configurations, and provide a platform for running and analyzing old computer software.
@@ -72,9 +72,9 @@ and [EGA Displays](/devices/pcx86/machine/5160/ega/640kb/array/).
C1Pjs
-----
-Below is the [OSI Challenger C1P](/pubs/c1pjs/), another simulation in the PCjs Project.
+Below is the [OSI Challenger C1P](/docs/c1pjs/), another simulation in the PCjs Project.
It simulates Ohio Scientific's 6502-based microcomputer, released in 1978. More details about this simulation
-and the original machine are available in the [C1Pjs Documentation](/pubs/c1pjs/).
+and the original machine are available in the [C1Pjs Documentation](/docs/c1pjs/).
{% include machine.html id="demoC1P" %}
@@ -87,7 +87,7 @@ Developer Notes
The [PCjs repository](https://github.com/jeffpar/pcjs) on GitHub contains everything needed to run PCjs
computer simulations. All the PCjs emulators run in any modern web browser, with or without a web server,
-and examples are provided for both [local](/pubs/pcx86/examples/) and [remote](http://www.pcjs.org/) operation.
+and examples are provided for both [local](/docs/pcx86/examples/) and [remote](http://www.pcjs.org/) operation.
The project includes:
@@ -103,7 +103,7 @@ JavaScript files to your browser will work. However, instructions for doing tha
In fact, you can run PCjs simulations without a web server at all, using the "file:" protocol instead of "http:".
However, most of the machine configurations require additional resource files (ROMs, disk images, etc), which are
included in the project, but unless all the resource files are moved into a single directory (as they are in these
-[Demos](/pubs/pcx86/examples/)), your browser will probably be unable to load all of them, due to security restrictions.
+[Demos](/docs/pcx86/examples/)), your browser will probably be unable to load all of them, due to security restrictions.
Using the bundled web server is the preferred solution.
The project includes a large selection of disk images, and a powerful [DiskDump](modules/diskdump/) utility that
@@ -411,7 +411,7 @@ specified page; e.g.:
http://localhost:8088/?resume=0
-More information about the *resume* attribute is available in the [documentation](/pubs/pcx86/computer/#attributes).
+More information about the *resume* attribute is available in the [documentation](/docs/pcx86/computer/#attributes).
Updating PCjs
-------------
@@ -469,8 +469,8 @@ See [LICENSE](/LICENSE) for details.
More Information
----------------
-Learn more about the [PCjs Project](/pubs/about/) and [PCx86](/pubs/about/pcx86/). To
-create your own PCx86 machines, see the [PCx86 Documentation](/pubs/pcx86/) for details.
+Learn more about the [PCjs Project](/docs/about/) and [PCx86](/docs/about/pcx86/). To
+create your own PCx86 machines, see the [PCx86 Documentation](/docs/pcx86/) for details.
If you have questions or run into any problems, feel free to [tweet](http://twitter.com/jeffpar) or
[email](mailto:Jeff@pcjs.org).
diff --git a/_posts/2014-04-12-whats-new-in-1.13.0.md b/_posts/2014-04-12-whats-new-in-1.13.0.md
index 44f99d0ea..811ca4011 100644
--- a/_posts/2014-04-12-whats-new-in-1.13.0.md
+++ b/_posts/2014-04-12-whats-new-in-1.13.0.md
@@ -11,7 +11,7 @@ are simple XML files that describe a piece of software (an application, an opera
link to a PCjs machine configuration capable of running the software, along with a "ready-to-run" machine state file.
Conversely, a PCjs machine XML file can refer back to the manifest, to obtain a list of disk images.
-Here are some [Demos](/apps/pc/) of "ready-to-run" apps on [PCjs](/pubs/about/).
+Here are some [Demos](/apps/pc/) of "ready-to-run" apps on [PCjs](/docs/about/).
There have been lots of server-side changes recently, including API improvements that make it easy (well, *easier*)
to dynamically create diskette images from a list of files, or even an entire folder (including all subfolders),
diff --git a/_posts/2014-12-05-canvas-performance-and-contenteditable.md b/_posts/2014-12-05-canvas-performance-and-contenteditable.md
index 449bf1b4d..f4df0f7ff 100644
--- a/_posts/2014-12-05-canvas-performance-and-contenteditable.md
+++ b/_posts/2014-12-05-canvas-performance-and-contenteditable.md
@@ -6,7 +6,7 @@ category: HTML5
permalink: /blog/2014/12/05/
---
-From the beginning of the [JavaScript Machines](/pubs/about/) Project, I've always used an HTML5
+From the beginning of the [JavaScript Machines](/docs/about/) Project, I've always used an HTML5
[Canvas](https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API) object for both machine output
and input. It's the obvious choice for output, because the Canvas provides a 2D drawing API that's
essential both for drawing bitmappped graphics and for faithfully rendering individual characters
diff --git a/_posts/2016-02-08-super-bowl-winner-pcjs.md b/_posts/2016-02-08-super-bowl-winner-pcjs.md
index df006eaed..67d032fa8 100644
--- a/_posts/2016-02-08-super-bowl-winner-pcjs.md
+++ b/_posts/2016-02-08-super-bowl-winner-pcjs.md
@@ -10,9 +10,9 @@ two annoying problems with the [OS/2 FOOTBALL Boot Disk](/disks/pcx86/os2/misc/f
and blank screens.
A hard-error popup would occur when FOOTBALL tried to initialize a non-existent PRN device. To resolve that, PCjs
-now provides basic parallel port emulation, in the form of a [ParallelPort](/pubs/pcx86/parallel/) component that you
+now provides basic parallel port emulation, in the form of a [ParallelPort](/docs/pcx86/parallel/) component that you
include in a machine XML file with the <parallel> element, in much the same way you include the
-[SerialPort](/pubs/pcx86/serial/) component with the <serial> element. This [Compaq DeskPro 386]
+[SerialPort](/docs/pcx86/serial/) component with the <serial> element. This [Compaq DeskPro 386]
(/devices/pcx86/machine/compaq/deskpro386/ega/4096kb/debugger/) machine used to run FOOTBALL has now been updated to
include one parallel port.
diff --git a/_posts/2016-02-17-saving-disks-and-machines.md b/_posts/2016-02-17-saving-disks-and-machines.md
index 0dfc7cd7d..850d27c8a 100644
--- a/_posts/2016-02-17-saving-disks-and-machines.md
+++ b/_posts/2016-02-17-saving-disks-and-machines.md
@@ -115,7 +115,7 @@ Some notes:
```
-While the [PCx86 Documentation](/pubs/pcx86/) explains how to create a *new* machine, by writing your own machine
+While the [PCx86 Documentation](/docs/pcx86/) explains how to create a *new* machine, by writing your own machine
XML file and manually copying all the other pieces, the new **Save Machine** feature is the best way to save
any *existing* IBM PC and embed it on any other website.
diff --git a/_posts/2016-05-04-the-sharpening.md b/_posts/2016-05-04-the-sharpening.md
index 9795ebc53..c584acb08 100644
--- a/_posts/2016-05-04-the-sharpening.md
+++ b/_posts/2016-05-04-the-sharpening.md
@@ -46,7 +46,7 @@ All the browsers I've tested so far (Chrome, Firefox, and Safari) support a
which eliminates much of the fuzziness that would occur when copying pixels from the lower-resolution *buffer* canvas
to the higher-resolution *screen* canvas.
-So I've added a new [Video](/pubs/pcx86/video/) property named *smoothing* that can be set to "true" or "false",
+So I've added a new [Video](/docs/pcx86/video/) property named *smoothing* that can be set to "true" or "false",
and I've set it to "false" for most machines in the project. If *smoothing* is not set, your browser continues to
use its default interpolation method.
@@ -66,7 +66,7 @@ while the right one does not.
Aspect Ratio
---
-The *smoothing* property joins another recent [Video](/pubs/pcx86/video/) property, *aspect*, that was added in a
+The *smoothing* property joins another recent [Video](/docs/pcx86/video/) property, *aspect*, that was added in a
[release](https://github.com/jeffpar/pcjs/releases/tag/v1.21.5) last month.
To recap, aspect ratio is display width divided by display height, but the choice of aspect ratio is complicated by
diff --git a/_posts/2016-08-19-connecting-an-ibm-pc-to-a-dec-vt100-terminal.md b/_posts/2016-08-19-connecting-an-ibm-pc-to-a-dec-vt100-terminal.md
index ea9cfd172..8d1f7c7e2 100644
--- a/_posts/2016-08-19-connecting-an-ibm-pc-to-a-dec-vt100-terminal.md
+++ b/_posts/2016-08-19-connecting-an-ibm-pc-to-a-dec-vt100-terminal.md
@@ -69,7 +69,7 @@ and then embed the machines in the post, each with a single line:
{% include machine.html id="vt100" %}
{% endraw %}
-For people rolling their own web pages, [the basics](/pubs/pcx86/) haven't changed, and adding a serial connection merely
+For people rolling their own web pages, [the basics](/docs/pcx86/) haven't changed, and adding a serial connection merely
requires adding a *connection* property (eg, `connection:"com2->vt100.serialPort"`) to the *parms* parameter passed to the
*embedPCx86()* interface. A similar property (eg, `connection:"serialPort->ibm5170.com2"`) must also be added to the *parms*
passed to *embedPC8080()*.
diff --git a/_posts/2017-08-11-dbase-iii-copy-protection-revisited.md b/_posts/2017-08-11-dbase-iii-copy-protection-revisited.md
index ced5965ff..90df48017 100644
--- a/_posts/2017-08-11-dbase-iii-copy-protection-revisited.md
+++ b/_posts/2017-08-11-dbase-iii-copy-protection-revisited.md
@@ -21,7 +21,7 @@ I have no recollection of how feasible I thought this challenge was, but I'm sur
Perhaps my thinking was that, after all, it's just software, so how hard could it be. In any case, I apparently took
the challenge very seriously, because I also made a lot of notes.
-I recently found [those notes](/pubs/personal/#dbase-iii-copy-protection), along with copies of the
+I recently found [those notes](/docs/personal/#dbase-iii-copy-protection), along with copies of the
[dBASE III disks](/disks/pcx86/apps/other/dbase3/1.0/) used. Unfortunately, all the disks contained was my *patched*
(unlocked) version of `DBASE.EXE`, and for the sake of a complete archive, I wanted the *unpatched* (locked) version as
well. Fortunately, my patching notes also show all the original bytes, so I reproduced the original file by reversing
diff --git a/apps/README.md b/apps/README.md
index 035c2b87f..960261397 100644
--- a/apps/README.md
+++ b/apps/README.md
@@ -80,7 +80,7 @@ described by <file> entries in its [manifest](/apps/pcx86/1981/visicalc/ma
Since this [manifest](/apps/pcx86/1981/visicalc/manifest.xml) also contains a <machine> entry,
the default manifest stylesheet will automatically load and launch the associated
[PCjs machine](/devices/pcx86/machine/5150/mda/64kb/machine.xml). The machine will boot or resume according
-to its own <[computer](/pubs/pcx86/computer/)> settings, unless the manifest overrides the machine's
+to its own <[computer](/docs/pcx86/computer/)> settings, unless the manifest overrides the machine's
default state with its own *state* setting; eg:
```xml
diff --git a/apps/c1p/README.md b/apps/c1p/README.md
index e8029e14a..f134a89a5 100644
--- a/apps/c1p/README.md
+++ b/apps/c1p/README.md
@@ -7,7 +7,7 @@ permalink: /apps/c1p/
Challenger 1P Applications
--------------------------
-[C1Pjs](/pubs/c1pjs/) runs Challenger 1P (C1P) applications written in:
+[C1Pjs](/docs/c1pjs/) runs Challenger 1P (C1P) applications written in:
- [BASIC](BASIC/)
- [6502 Machine-Language](6502/)
diff --git a/apps/pcx86/README.md b/apps/pcx86/README.md
index 6a65d5652..4c6fa623c 100644
--- a/apps/pcx86/README.md
+++ b/apps/pcx86/README.md
@@ -1,7 +1,7 @@
IBM PC Application Demos
------------------------
-Below are selected [PCx86](/pubs/about/pcx86/) demos of classic IBM PC applications. In many cases,
+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.
diff --git a/devices/c1p/machine/8kb/README.md b/devices/c1p/machine/8kb/README.md
index 327337c09..477086d34 100644
--- a/devices/c1p/machine/8kb/README.md
+++ b/devices/c1p/machine/8kb/README.md
@@ -14,4 +14,4 @@ Here are some sample C1P Machine Configurations with 8Kb:
* [8kb with Large Display w/Additional Software](all/) (with [Debugger](all/debugger/))
* [8kb "Server Array" Demo](array/)
-See the [Documentation](/pubs/c1pjs/) for details on the operation of C1Pjs.
+See the [Documentation](/docs/c1pjs/) for details on the operation of C1Pjs.
diff --git a/devices/c1p/machine/README.md b/devices/c1p/machine/README.md
index ef5194ce1..df1ef6ff6 100644
--- a/devices/c1p/machine/README.md
+++ b/devices/c1p/machine/README.md
@@ -15,7 +15,7 @@ Here are some sample C1P Machine Configurations:
- [8kb "Server Array" Demo](8kb/array/)
- [32kb with Diskette Support](32kb/)
-See the [C1Pjs Documentation](/pubs/c1pjs/) for operational details of the emulator.
+See the [C1Pjs Documentation](/docs/c1pjs/) for operational details of the emulator.
Browse our collection of [Challenger 1P Applications](/apps/c1p/), which come in two flavors:
diff --git a/devices/pc8080/panel/README.md b/devices/pc8080/panel/README.md
index e3382e213..9ef530d8c 100644
--- a/devices/pc8080/panel/README.md
+++ b/devices/pc8080/panel/README.md
@@ -7,7 +7,7 @@ permalink: /devices/pc8080/panel/
8080-Based Control Panels
-------------------------
-[Control Panels](/pubs/pcx86/panel/) are XML files that define layouts for Debugger-related controls.
+[Control Panels](/docs/pcx86/panel/) are XML files that define layouts for Debugger-related controls.
The following 8080-based control panel configuration files are currently available:
diff --git a/devices/pcx86/README.md b/devices/pcx86/README.md
index d7152732e..7f605c793 100644
--- a/devices/pcx86/README.md
+++ b/devices/pcx86/README.md
@@ -14,22 +14,22 @@ All our [IBM PC Machines](machine/) are built from a collection of devices, incl
* [ChipSets](chipset/)
* [Control Panels](panel/)
-* [CPUs](/pubs/pcx86/cpu/)
-* [Debugger](/pubs/pcx86/debugger/)
-* [Floppy Drive Controller](/pubs/pcx86/fdc/)
-* [Hard Drive Controller](/pubs/pcx86/hdc/)
+* [CPUs](/docs/pcx86/cpu/)
+* [Debugger](/docs/pcx86/debugger/)
+* [Floppy Drive Controller](/docs/pcx86/fdc/)
+* [Hard Drive Controller](/docs/pcx86/hdc/)
* [Keyboard](keyboard/)
* [Machines](machine/)
-* [Mouse](/pubs/pcx86/mouse/)
-* [RAM](/pubs/pcx86/ram/)
+* [Mouse](/docs/pcx86/mouse/)
+* [RAM](/docs/pcx86/ram/)
* [ROMs](rom/)
-* [Parallel Port](/pubs/pcx86/parallel/)
-* [Serial Port](/pubs/pcx86/serial/)
+* [Parallel Port](/docs/pcx86/parallel/)
+* [Serial Port](/docs/pcx86/serial/)
* [Video Adapters](video/)
Each of those devices can be configured in multiple ways, and some support external UI controls.
-For example, the IBM PC *[Keyboard](/pubs/pcx86/keyboard/)* component supports different keyboard models
+For example, the IBM PC *[Keyboard](/docs/pcx86/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.
@@ -59,7 +59,7 @@ example:
```
In this example, all the devices are fully configured within the machine XML file, except for the
-*[Video](/pubs/pcx86/video/)* ([XML](/devices/pcx86/video/ibm/mda/ibm-mda.xml)),
-*[Floppy Drive Controller](/pubs/pcx86/fdc/)* ([XML](/disks/pcx86/compiled/samples.xml)), and
-*[Keyboard](/pubs/pcx86/keyboard/)* ([XML](/devices/pcx86/keyboard/us83-buttons-arrows.xml)) components,
+*[Video](/docs/pcx86/video/)* ([XML](/devices/pcx86/video/ibm/mda/ibm-mda.xml)),
+*[Floppy Drive Controller](/docs/pcx86/fdc/)* ([XML](/disks/pcx86/compiled/samples.xml)), and
+*[Keyboard](/docs/pcx86/keyboard/)* ([XML](/devices/pcx86/keyboard/us83-buttons-arrows.xml)) components,
which refer to separate XML configuration files.
diff --git a/devices/pcx86/chipset/README.md b/devices/pcx86/chipset/README.md
index 2008c32c5..00a304c1d 100644
--- a/devices/pcx86/chipset/README.md
+++ b/devices/pcx86/chipset/README.md
@@ -7,14 +7,14 @@ permalink: /devices/pcx86/chipset/
IBM PC ChipSet Configurations
-----------------------------
-The following predefined *[ChipSet](/pubs/pcx86/chipset/)* XML configurations are currently available:
+The following predefined *[ChipSet](/docs/pcx86/chipset/)* XML configurations are currently available:
- [IBM Model 5150 w/CGA](5150-cga-max.xml)
- [AT&T Personal Computer 6300](att6300-cga-max.xml)
- [Columbia Data Products MPC 1600](mpc1600-cga-max.xml)
- [Zenith Z-150](z150-cga-max.xml)
-However, most machines use their own *[ChipSet](/pubs/pcx86/chipset/)* model, DIP switch settings, etc; e.g.:
+However, most machines use their own *[ChipSet](/docs/pcx86/chipset/)* model, DIP switch settings, etc; e.g.:
```xml
diff --git a/devices/pcx86/keyboard/README.md b/devices/pcx86/keyboard/README.md
index 5d2e12052..910590b25 100644
--- a/devices/pcx86/keyboard/README.md
+++ b/devices/pcx86/keyboard/README.md
@@ -9,7 +9,7 @@ IBM PC Keyboard Devices
### Keyboard Configuration Files
-The easiest way for a machine to add a *[Keyboard](/pubs/pcx86/keyboard/)* component to its XML configuration file
+The easiest way for a machine to add a *[Keyboard](/docs/pcx86/keyboard/)* component to its XML configuration file
is to use one of the project's predefined configuration files, with the *ref* attribute; e.g.:
```xml
diff --git a/devices/pcx86/machine/5170/README.md b/devices/pcx86/machine/5170/README.md
index 07ddc610e..bd271c1c8 100644
--- a/devices/pcx86/machine/5170/README.md
+++ b/devices/pcx86/machine/5170/README.md
@@ -67,7 +67,7 @@ First and foremost, there is a **Display Switch** near the battery connector tha
front of your system unit" if you have a CGA that is your only (or primary) display adapter, or "toward the
back of your system unit" if you're using an MDA as your only (or primary) display.
-In PCjs, the 5170 **Display Switch** is configured with the <[ChipSet](/pubs/pcx86/chipset/)> *monitor*
+In PCjs, the 5170 **Display Switch** is configured with the <[ChipSet](/docs/pcx86/chipset/)> *monitor*
property, which you can set to either "mono" (aka "mda") or "color" (aka "cga"). Unlike the Model 5150/5160 DIP
switches, there is no UI for this switch, so once the machine has been created, it cannot be changed by the user.
@@ -79,7 +79,7 @@ in the ROM; it defaults to UNINSTALLED and stays UNINSTALLED, since no UI or con
provided.
The rest of a 5170 machine's configuration is normally handled through CMOS settings, such as the number and type
-of floppy diskette drives, which can be configured with the <[ChipSet](/pubs/pcx86/chipset/)> *floppies* property;
+of floppy diskette drives, which can be configured with the <[ChipSet](/docs/pcx86/chipset/)> *floppies* property;
e.g.:
```xml
diff --git a/devices/pcx86/panel/README.md b/devices/pcx86/panel/README.md
index efa15068e..ed86c9dce 100644
--- a/devices/pcx86/panel/README.md
+++ b/devices/pcx86/panel/README.md
@@ -7,11 +7,11 @@ permalink: /devices/pcx86/panel/
IBM PC Control Panels
---------------------
-A *[Control Panel](/pubs/pcx86/panel/)* is a collection of machine controls (e.g., buttons, register values, etc)
-bound to the *[Computer](/pubs/pcx86/computer/)*, *[CPU](/pubs/pcx86/cpu/)*, *[Debugger](/pubs/pcx86/debugger/)*,
-and *[Keyboard](/pubs/pcx86/keyboard/)* components and usually defined in a separate XML file.
+A *[Control Panel](/docs/pcx86/panel/)* is a collection of machine controls (e.g., buttons, register values, etc)
+bound to the *[Computer](/docs/pcx86/computer/)*, *[CPU](/docs/pcx86/cpu/)*, *[Debugger](/docs/pcx86/debugger/)*,
+and *[Keyboard](/docs/pcx86/keyboard/)* components and usually defined in a separate XML file.
-The following predefined IBM PC *[Control Panel](/pubs/pcx86/panel/)* XML configuration are currently available:
+The following predefined IBM PC *[Control Panel](/docs/pcx86/panel/)* XML configuration are currently available:
- [default.xml](default.xml) (a simple layout for 8086/8088-based machines)
- [wide.xml](wide.xml) (a wide version of default.xml)
diff --git a/devices/pcx86/rom/README.md b/devices/pcx86/rom/README.md
index 744b95890..42f655acc 100644
--- a/devices/pcx86/rom/README.md
+++ b/devices/pcx86/rom/README.md
@@ -7,7 +7,7 @@ permalink: /devices/pcx86/rom/
IBM PC ROMs
-----------
-ROMs are added to machines by including one *[ROM](/pubs/pcx86/rom/)* component in the machine XML configuration file
+ROMs are added to machines by including one *[ROM](/docs/pcx86/rom/)* component in the machine XML configuration file
for each ROM in the machine; eg:
```xml
diff --git a/devices/pcx86/video/README.md b/devices/pcx86/video/README.md
index 98c1d35ab..d86e7c58b 100644
--- a/devices/pcx86/video/README.md
+++ b/devices/pcx86/video/README.md
@@ -7,7 +7,7 @@ permalink: /devices/pcx86/video/
IBM PC Video Adapters
---------------------
-Video adapters are added to machines by including a *[Video](/pubs/pcx86/video/)* component in the machine XML
+Video adapters are added to machines by including a *[Video](/docs/pcx86/video/)* component in the machine XML
configuration file.
See the following [IBM PC Video Configurations](ibm/):
diff --git a/devices/pcx86/video/cdp/cga/README.md b/devices/pcx86/video/cdp/cga/README.md
index b38a986a7..172f8feb9 100644
--- a/devices/pcx86/video/cdp/cga/README.md
+++ b/devices/pcx86/video/cdp/cga/README.md
@@ -13,7 +13,7 @@ and it is *identical* the CGA portion of the [IBM CGA](/devices/pcx86/video/ibm/
### Columbia Data Products CGA Configurations
-The easiest way for a machine to include an CGA *[Video](/pubs/pcx86/video/)* component in its XML configuration file
+The easiest way for a machine to include an CGA *[Video](/docs/pcx86/video/)* component in its XML configuration file
is to reference the project's predefined CGA configuration file, using the *ref* attribute; eg:
```xml
diff --git a/devices/pcx86/video/ibm/cga/README.md b/devices/pcx86/video/ibm/cga/README.md
index 19547dcf9..e4453bfaf 100644
--- a/devices/pcx86/video/ibm/cga/README.md
+++ b/devices/pcx86/video/ibm/cga/README.md
@@ -9,7 +9,7 @@ IBM Color Graphics Adapter (CGA)
### IBM CGA Configurations
-The easiest way for a machine to include an CGA *[Video](/pubs/pcx86/video/)* component in its XML configuration file
+The easiest way for a machine to include an CGA *[Video](/docs/pcx86/video/)* component in its XML configuration file
is to reference one of the project's predefined CGA configuration files, using the *ref* attribute; eg:
```xml
diff --git a/devices/pcx86/video/ibm/ega/README.md b/devices/pcx86/video/ibm/ega/README.md
index e603f26f5..42bbb361f 100644
--- a/devices/pcx86/video/ibm/ega/README.md
+++ b/devices/pcx86/video/ibm/ega/README.md
@@ -9,7 +9,7 @@ IBM Enhanced Graphics Adapter (EGA)
### IBM EGA Configurations
-The easiest way for a machine to include an EGA *[Video](/pubs/pcx86/video/)* component in its XML configuration file
+The easiest way for a machine to include an EGA *[Video](/docs/pcx86/video/)* component in its XML configuration file
is to reference one of the project's predefined EGA configuration files, using the *ref* attribute; eg:
```xml
diff --git a/devices/pcx86/video/ibm/mda/README.md b/devices/pcx86/video/ibm/mda/README.md
index c2c4b7fd5..5d6302b8e 100644
--- a/devices/pcx86/video/ibm/mda/README.md
+++ b/devices/pcx86/video/ibm/mda/README.md
@@ -9,7 +9,7 @@ IBM Monochrome Display Adapter (MDA)
### IBM MDA Configurations
-The easiest way for a machine to include an MDA *[Video](/pubs/pcx86/video/)* component in its XML configuration file
+The easiest way for a machine to include an MDA *[Video](/docs/pcx86/video/)* component in its XML configuration file
is to reference one of the project's predefined MDA configuration files, using the *ref* attribute; eg:
```xml
diff --git a/devices/pcx86/video/ibm/vga/README.md b/devices/pcx86/video/ibm/vga/README.md
index 2f8de7398..e3fb063c9 100644
--- a/devices/pcx86/video/ibm/vga/README.md
+++ b/devices/pcx86/video/ibm/vga/README.md
@@ -9,7 +9,7 @@ IBM Video Graphics Array (VGA)
### IBM VGA Configurations
-The easiest way for a machine to include an VGA *[Video](/pubs/pcx86/video/)* component in its XML configuration file
+The easiest way for a machine to include an VGA *[Video](/docs/pcx86/video/)* component in its XML configuration file
is to reference one of the project's VGA configuration files, using the *ref* attribute; eg:
```xml
diff --git a/disks/README.md b/disks/README.md
index c293a6382..214a40e59 100644
--- a/disks/README.md
+++ b/disks/README.md
@@ -41,5 +41,5 @@ For example:
The [PCjs Node Web Server](/server.js) also generates "onclick" handlers for links to **JSON** disk
images that automatically invoke the API for you.
-See [Creating PCx86-Compatible Disk Images](/pubs/pcx86/#creating-pcx86-compatible-disk-images)
-in the [PCx86 Documentation](/pubs/pcx86/) for more information about supported disks and formats.
+See [Creating PCx86-Compatible Disk Images](/docs/pcx86/#creating-pcx86-compatible-disk-images)
+in the [PCx86 Documentation](/docs/pcx86/) for more information about supported disks and formats.
diff --git a/disks/pcx86/README.md b/disks/pcx86/README.md
index 11d647e9b..f8f689876 100644
--- a/disks/pcx86/README.md
+++ b/disks/pcx86/README.md
@@ -88,7 +88,7 @@ folder, along with a **manifest.xml** file containing metadata about the softwar
disks. This is generally referred to as a [Software Manifest](/apps/), 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)](/pubs/pcx86/fdc/)* configuration file,
+A Disk Manifest can then be added to a *[Floppy Drive Controller (FDC)](/docs/pcx86/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](samples.xml), *could* contain individual <disk>
diff --git a/disks/pcx86/apps/other/dbase3/1.0/README.md b/disks/pcx86/apps/other/dbase3/1.0/README.md
index 4eb56ad1a..830d93477 100644
--- a/disks/pcx86/apps/other/dbase3/1.0/README.md
+++ b/disks/pcx86/apps/other/dbase3/1.0/README.md
@@ -14,7 +14,7 @@ Two of the PCjs disks shown below:
are from our private collection and should be exact copies of the original dBASE III v1.0 distribution disks, with the
exception of `DBASE.EXE`, which was patched to eliminate copy-protection checks. Details of that patch are available
-in our collection of [Personal Documents of Dubious Historical Interest](/pubs/personal/#dbase-iii-copy-protection),
+in our collection of [Personal Documents of Dubious Historical Interest](/docs/personal/#dbase-iii-copy-protection),
along with this [blog post](/blog/2017/08/11/).
Also, for completeness, the original `DBASE.EXE` has been recreated by "unpatching" it and saving it on the
diff --git a/disks/pcx86/dos/microsoft/4.0M/README.md b/disks/pcx86/dos/microsoft/4.0M/README.md
index 013db8edf..af476693c 100644
--- a/disks/pcx86/dos/microsoft/4.0M/README.md
+++ b/disks/pcx86/dos/microsoft/4.0M/README.md
@@ -24,7 +24,7 @@ Multitasking MS-DOS 4.00
These disk images contain the first unearthed copy of Microsoft's "multitasking" version of MS-DOS
since its *extremely* limited release around late 1985 or early 1986. They were were discovered by the
-[PCjs Project](/pubs/about/) in March 2013. More information is available at
+[PCjs Project](/docs/about/) in March 2013. More information is available at
[Wikipedia](http://en.wikipedia.org/wiki/Multi-tasking_MS-DOS_4.0),
[OS/2 Museum](http://www.os2museum.com/wp/?p=1769), and
[MSDN Blogs](http://blogs.msdn.com/b/larryosterman/archive/2004/03/22/94209.aspx).
diff --git a/modules/README.md b/modules/README.md
index 7715f7e4d..1adc427f9 100644
--- a/modules/README.md
+++ b/modules/README.md
@@ -15,7 +15,7 @@ The project currently includes these emulation modules:
* [C1Pjs](c1pjs/): 6502 emulation module for the [Challenger 1P](/devices/c1p/)
* [PCx86](pcx86/): x86 emulation module for [IBM PC machines](/devices/pcx86/)
* [PC8080](pc8080/): 8080 emulation module for [8080-based machines](/devices/pc8080/)
-* [PDPjs](/pubs/pdpjs/): emulation modules for [PDP-10](pdp10/) and [PDP-11](pdp11/) machines
+* [PDPjs](/docs/pdpjs/): emulation modules for [PDP-10](pdp10/) and [PDP-11](pdp11/) machines
along with variety of Node support modules, such as:
diff --git a/modules/c1pjs/README.md b/modules/c1pjs/README.md
index 70750e522..a8ed4b168 100644
--- a/modules/c1pjs/README.md
+++ b/modules/c1pjs/README.md
@@ -9,7 +9,7 @@ Challenger 1P Emulation Module (C1Pjs)
Overview
---
-C1Pjs is our 6502-based machine emulation module for the [Ohio Scientific Challenger 1P](/pubs/c1pjs/).
+C1Pjs is our 6502-based machine emulation module for the [Ohio Scientific Challenger 1P](/docs/c1pjs/).
C1Pjs is comprised of the following non-shared components, as listed in [package.json](../../package.json)
(see the *c1pJSFiles* property):
diff --git a/pubs/README.md b/pubs/README.md
index a91a19632..b7f08ac42 100644
--- a/pubs/README.md
+++ b/pubs/README.md
@@ -1,20 +1,11 @@
---
layout: page
-title: Documentation and Publication Archive
-menu_title: Docs
-menu_order: 7
+title: Publication Archive
permalink: /pubs/
-redirect_from:
- - /docs/
---
-Documentation and Publication Archive
--------------------------------------
-
-Preliminary documentation is available for the following PCjs machines:
-
-* [C1Pjs](c1pjs/)
-* [PCx86](pcx86/)
+Publication Archive
+-------------------
For general historical interest, the project includes a Publication Archive that covers:
@@ -34,20 +25,6 @@ For general historical interest, the project includes a Publication Archive that
* [Programming Guides/Samples](c1p/programming/)
* [Reference Manuals](c1p/techref/)
-{% if site.developer %}
-
-Eventually, the project may also provide summaries of all supported CPU instructions; e.g.:
-
-* [x86 Instructions](x86/)
-* [6502 Instructions](6502/)
-
-{% endif %}
-
-Finally, we have an eclectic collection of personal documents, ranging from early PC debugging notes to old program
-listings and more:
-
-* [Personal Documents of Dubious Historical Interest](personal/)
-
---
[
](pc/datasheets/)
diff --git a/pubs/dec/pdp10/README.md b/pubs/dec/pdp10/README.md
index e29dd9255..1831ba509 100644
--- a/pubs/dec/pdp10/README.md
+++ b/pubs/dec/pdp10/README.md
@@ -7,7 +7,7 @@ permalink: /pubs/dec/pdp10/
PDP-10 Publications
-------------------
-This page summarizes PDP-10 documentation that was useful in creating [PDPjs](/pubs/pdpjs/). In most cases,
+This page summarizes PDP-10 documentation that was useful in creating [PDPjs](/docs/pdpjs/). In most cases,
these documents came from the PDF Document Archive at [bitsavers.org](http://bitsavers.org), in the [/pdf/dec/pdp10/](http://bitsavers.org/pdf/dec/pdp10/)
directory. If a PDF was not searchable, it was "OCR'ed" before being archived below.
diff --git a/pubs/6502/README.md b/pubs/docs/6502/README.md
similarity index 79%
rename from pubs/6502/README.md
rename to pubs/docs/6502/README.md
index 5edc177bf..45ecb73ef 100644
--- a/pubs/6502/README.md
+++ b/pubs/docs/6502/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: 6502 Documentation
-permalink: /pubs/6502/
+permalink: /docs/6502/
---
Placeholder for future 6502 documentation.
diff --git a/pubs/docs/README.md b/pubs/docs/README.md
new file mode 100644
index 000000000..14612ce99
--- /dev/null
+++ b/pubs/docs/README.md
@@ -0,0 +1,58 @@
+---
+layout: page
+title: Documentation
+menu_title: Docs
+menu_order: 7
+permalink: /docs/
+---
+
+Documentation
+-------------
+
+Preliminary documentation is available for the following PCjs machines:
+
+* [C1Pjs](c1pjs/)
+* [PCx86](pcx86/)
+
+For general historical interest, the project includes a [Publication Archive](/pubs/) that covers:
+
+* [IBM PCs and Compatibles](/pubs/pc/)
+ * [CPU Documents](/pubs/pc/reference/intel/)
+ * [Datasheets](/pubs/pc/datasheets/)
+ * [Magazines](/pubs/pc/magazines/)
+ * [Programming Guides](/pubs/pc/programming/)
+ * [Reference Manuals](/pubs/pc/reference/)
+ * [Software User and Development Guides](/pubs/pc/software/) (eg, [DOS](/pubs/pc/software/dos/), [OS/2](/pubs/pc/software/os2/), [Windows](/pubs/pc/software/windows/))
+* [Digital Equipment Corporation (DEC)](/pubs/dec/)
+ * [PDP-10](/pubs/dec/pdp10/)
+ * [PDP-11](/pubs/dec/pdp11/)
+ * [VT100](/pubs/dec/vt100/)
+* [Ohio Scientific's 6502-based Challenger 1P](/pubs/c1p/)
+ * [Datasheets](/pubs/c1p/datasheets/)
+ * [Programming Guides/Samples](/pubs/c1p/programming/)
+ * [Reference Manuals](/pubs/c1p/techref/)
+
+{% if site.developer %}
+
+Eventually, the project may also provide summaries of all supported CPU instructions; e.g.:
+
+* [x86 Instructions](x86/)
+* [6502 Instructions](6502/)
+
+{% endif %}
+
+Finally, we have an eclectic collection of personal documents, ranging from early PC debugging notes to old program
+listings and more:
+
+* [Personal Documents of Dubious Historical Interest](personal/)
+
+---
+
+[
](/pubs/pc/datasheets/)
+[
](/pubs/pc/magazines/byte/)
+[
](/pubs/pc/magazines/msj/)
+[
](/pubs/pc/magazines/pctj/)
+[
](/pubs/pc/programming/Graphics_for_the_IBM_PC/)
+[
](/pubs/pc/reference/ibm/)
+[
](/pubs/pc/reference/intel/)
+[
](/pubs/pc/software/)
diff --git a/pubs/about/README.md b/pubs/docs/about/README.md
similarity index 91%
rename from pubs/about/README.md
rename to pubs/docs/about/README.md
index 8894b90e6..b0c2e3fac 100644
--- a/pubs/about/README.md
+++ b/pubs/docs/about/README.md
@@ -3,9 +3,7 @@ layout: page
title: About PCjs
menu_title: About
menu_order: 9
-permalink: /pubs/about/
-redirect_from:
- - /docs/about/
+permalink: /docs/about/
---
## About PCjs
@@ -25,7 +23,7 @@ capabilities can be found in the [Documentation](/pubs/).
### Simulating the Challenger 1P
-The first PCjs simulation was [C1Pjs](/pubs/c1pjs/), which emulates the
+The first PCjs simulation was [C1Pjs](/docs/c1pjs/), which emulates the
Challenger 1P, a 6502-based microcomputer introduced by Ohio Scientific in 1978.
C1Pjs v1.0 was released in July 2012. More information about the first release of C1Pjs was
[posted](http://osiweb.org/osiforum/viewtopic.php?f=3&t=103) on the
@@ -33,16 +31,16 @@ C1Pjs v1.0 was released in July 2012. More information about the first release
### Simulating the IBM PC
-The next PCjs simulation was [PCx86](/pubs/about/pcx86/), which emulates the original IBM PC, IBM PC XT,
+The next PCjs simulation was [PCx86](/docs/about/pcx86/), which emulates the original IBM PC, IBM PC XT,
and IBM PC AT. PCx86 v1.0 was released in late 2012. Browse the source code [here](/modules/pcx86/) or on
[GitHub](https://github.com/jeffpar/pcjs).
-[PCx86](/pubs/about/pcx86/) emulates the Intel 8088, 80186, 80286 and 80386 CPUs, as well as IBM Monochrome Display
+[PCx86](/docs/about/pcx86/) emulates the Intel 8088, 80186, 80286 and 80386 CPUs, as well as IBM Monochrome Display
Adapter (MDA), Color Graphics Adapter (CGA), Enhanced Graphics Adapter (EGA), and Video Graphics Array (VGA) video
cards, along with assorted motherboard and expansion bus components. It also includes an optional
-[Debugger](/pubs/pcx86/debugger/) and a user-configurable [Control Panel](/pubs/pcx86/panel/).
+[Debugger](/docs/pcx86/debugger/) and a user-configurable [Control Panel](/docs/pcx86/panel/).
-Read [About PCx86](/pubs/about/pcx86/) to learn more about its history, features, and upcoming improvements.
+Read [About PCx86](/docs/about/pcx86/) to learn more about its history, features, and upcoming improvements.
### Migrating to Node
diff --git a/pubs/about/pcx86/README.md b/pubs/docs/about/pcx86/README.md
similarity index 91%
rename from pubs/about/pcx86/README.md
rename to pubs/docs/about/pcx86/README.md
index 30d7bb30d..79765a301 100644
--- a/pubs/about/pcx86/README.md
+++ b/pubs/docs/about/pcx86/README.md
@@ -1,11 +1,10 @@
---
layout: page
title: About PCx86
-permalink: /pubs/about/pcx86/
+permalink: /docs/about/pcx86/
redirect_from:
- /pc/
- /pcjs/
- - /docs/about/pcx86/
---
About PCx86
@@ -25,7 +24,7 @@ demo of multiple monitor support, and [IBM PC XT "Server Array"](/devices/pcx86/
+ Build your own IBM PC, PC XT, and PC AT simulations using simple XML machine configuration files.
You decide how much RAM you want, how many disk drives, which disk images to include (and which should be
pre-loaded), what kind of video adapter (MDA, CGA, EGA or VGA), serial ports, mouse, and more. See the
-[Documentation](/pubs/pcx86/) for details.
+[Documentation](/docs/pcx86/) for details.
+ Excellent IBM hardware compatibility ensures all the original IBM BIOS ROMs operate properly, and that the
machines run at their original speed. Even obsolete hardware, such as the original PC XT hard drive controller,
@@ -38,9 +37,9 @@ be specified, and in some cases, even specific CPU *steppings* (including specif
only 8087 support is complete at this point.
+ The modular design allows you to specify which components to enable, and which external controls
-to display for each component. You can choose the size of the display window created by the [Video](/pubs/pcx86/video/)
-component, add **Halt** or **Speed** buttons to the [CPU](/pubs/pcx86/cpu/) component, display clickable "DIP Switches"
-for the [Chipset](/pubs/pcx86/chipset/) component, or even design your own [Control Panel](/pubs/pcx86/panel/).
+to display for each component. You can choose the size of the display window created by the [Video](/docs/pcx86/video/)
+component, add **Halt** or **Speed** buttons to the [CPU](/docs/pcx86/cpu/) component, display clickable "DIP Switches"
+for the [Chipset](/docs/pcx86/chipset/) component, or even design your own [Control Panel](/docs/pcx86/panel/).
+ The UI includes a responsive design that tailors itself to your browser and device, and support for touch events
and soft keyboards means you get the best possible emulation experience -- better than any other browser-based
@@ -48,18 +47,18 @@ emulator currently available. It almost feels like your DOS and Windows mouse-b
to work with your iPad or iPhone -- almost. Please note, however, that some mobile devices provide better support than
others.
-+ A fully-integrated [Debugger](/pubs/pcx86/debugger/) is available. Disassemble code, set breakpoints on
++ A fully-integrated [Debugger](/docs/pcx86/debugger/) is available. Disassemble code, set breakpoints on
memory write/read/execution addresses, dump and edit memory, dump disk sectors, enable/disable categories of diagnostic
messages, and view instruction history, cycle counts and more. The Debugger does not rely on CPU breakpoint
instructions or the trace flag, and does not alter the machine state in any way, allowing you to debug anything,
including 8086 debuggers.
-+ Machines created with the [Computer](/pubs/pcx86/computer/) *resume* property set will save their entire machine
++ Machines created with the [Computer](/docs/pcx86/computer/) *resume* property set will save their entire machine
state using your browser's local storage, so that any changes are preserved when your browser closes, including
disk modifications. Any files you create or modify *inside* the machine will still be there when you return.
TIP: To restore a diskette's original contents, simply press the "Download" button again.
-+ Machine states can also be dumped (using the built-in [Debugger](/pubs/pcx86/debugger/)), saved as JSON files, and
++ Machine states can also be dumped (using the built-in [Debugger](/docs/pcx86/debugger/)), saved as JSON files, and
pre-loaded into a machine, bypassing the normal boot process. You can even combine a pre-defined state with the
"resume" feature, preserving any changes you make to the machine's original state.
@@ -113,8 +112,8 @@ for embedding C1Pjs and PCx86 machine files in Markdown documents and automatica
files into "index.html" web pages.
+ v1.11 improved the *embedPC()* and *embedC1P()* functions, so now you can embed XML machine configuration files
-that reference other configuration files, such as an external [Keyboard](/pubs/pcx86/keyboard/) or
-[Control Panel](/pubs/pcx86/panel/) XML layout. It does this by building the entire XML configuration internally,
+that reference other configuration files, such as an external [Keyboard](/docs/pcx86/keyboard/) or
+[Control Panel](/docs/pcx86/panel/) XML layout. It does this by building the entire XML configuration internally,
rather than relying on XSLT's *document()* function, which doesn't seem to work in all JavaScript XSLT processors.
+ v1.10 fixed embedding in Internet Explorer 11 (Microsoft removed "MSIE" from their default user-agent string).
@@ -126,7 +125,7 @@ machines that include a soft-keyboard.
+ v1.06c added support for user-defined diskette images. Select "Remote Disk" from the diskette list, click
"Download", and enter a URL at the prompt. See **Creating PCx86-Compatible Disk Images** in the
-[PCx86 Documentation](/pubs/pcx86/) for more information about supported disk images.
+[PCx86 Documentation](/docs/pcx86/) for more information about supported disk images.
+ v1.05b added support for webkitAudioContext, bringing your simulated IBM PC's speaker to life. Relive the thrill
of running MUSIC.BAS and listening to those classic tunes. *Sound support is still experimental*.
diff --git a/pubs/c1pjs/README.md b/pubs/docs/c1pjs/README.md
similarity index 100%
rename from pubs/c1pjs/README.md
rename to pubs/docs/c1pjs/README.md
diff --git a/pubs/c1pjs/embed/README.md b/pubs/docs/c1pjs/embed/README.md
similarity index 99%
rename from pubs/c1pjs/embed/README.md
rename to pubs/docs/c1pjs/embed/README.md
index 22a3713d4..5d0382295 100644
--- a/pubs/c1pjs/embed/README.md
+++ b/pubs/docs/c1pjs/embed/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: Embedding The C1Pjs Simulator
-permalink: /pubs/c1pjs/embed/
+permalink: /docs/c1pjs/embed/
machines:
- id: c1p8kb
type: c1p
@@ -9,7 +9,6 @@ machines:
redirect_from:
- /configs/c1p/embed/
- /demos/c1p/embed.html
- - /docs/c1pjs/embed/
---
Embedding The C1Pjs Simulator
diff --git a/pubs/pcx86/README.md b/pubs/docs/pcx86/README.md
similarity index 98%
rename from pubs/pcx86/README.md
rename to pubs/docs/pcx86/README.md
index af6c6e1e5..c604ffecd 100644
--- a/pubs/pcx86/README.md
+++ b/pubs/docs/pcx86/README.md
@@ -1,10 +1,9 @@
---
layout: page
title: PCx86 Documentation
-permalink: /pubs/pcx86/
+permalink: /docs/pcx86/
redirect_from:
- /docs/pcjs/
- - /docs/pcx86/
machines:
- id: ibm5150
type: pcx86
@@ -15,7 +14,7 @@ machines:
PCx86 Documentation
-------------------
-[PCx86](/pubs/about/pcx86/) is a full-featured [IBM PC and PC-compatible](/devices/pcx86/machine/) emulator written
+[PCx86](/docs/about/pcx86/) is a full-featured [IBM PC and PC-compatible](/devices/pcx86/machine/) emulator written
entirely in JavaScript. It supports a variety of XT and AT class machines, with processors ranging from the 8088
through the 80386. The PCjs website provides a variety of "stock" configurations, featuring classic machines running
at their original clock speed, or you can create your own, by mixing, matching, and reconfiguring any of the PCx86
diff --git a/pubs/pcx86/chipset/README.md b/pubs/docs/pcx86/chipset/README.md
similarity index 97%
rename from pubs/pcx86/chipset/README.md
rename to pubs/docs/pcx86/chipset/README.md
index 20b89d46a..c05a7f2c4 100644
--- a/pubs/pcx86/chipset/README.md
+++ b/pubs/docs/pcx86/chipset/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <chipset> Element
-permalink: /pubs/pcx86/chipset/
+permalink: /docs/pcx86/chipset/
---
PCx86 ChipSet Component
@@ -90,7 +90,7 @@ Attributes
yyyy-mm-ddThh:mm:ss
- * Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+ * Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/component/README.md b/pubs/docs/pcx86/component/README.md
similarity index 97%
rename from pubs/pcx86/component/README.md
rename to pubs/docs/pcx86/component/README.md
index d70181659..45fa42759 100644
--- a/pubs/pcx86/component/README.md
+++ b/pubs/docs/pcx86/component/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <component> Element
-permalink: /pubs/pcx86/component/
+permalink: /docs/pcx86/component/
---
PCx86 Component
diff --git a/pubs/pcx86/computer/README.md b/pubs/docs/pcx86/computer/README.md
similarity index 98%
rename from pubs/pcx86/computer/README.md
rename to pubs/docs/pcx86/computer/README.md
index 5c8d05bb9..38fd74661 100644
--- a/pubs/pcx86/computer/README.md
+++ b/pubs/docs/pcx86/computer/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <computer> Element
-permalink: /pubs/pcx86/computer/
+permalink: /docs/pcx86/computer/
---
PCx86 Computer Component
diff --git a/pubs/pcx86/cpu/README.md b/pubs/docs/pcx86/cpu/README.md
similarity index 94%
rename from pubs/pcx86/cpu/README.md
rename to pubs/docs/pcx86/cpu/README.md
index 254b66b69..18456dcbb 100644
--- a/pubs/pcx86/cpu/README.md
+++ b/pubs/docs/pcx86/cpu/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <cpu> Element
-permalink: /pubs/pcx86/cpu/
+permalink: /docs/pcx86/cpu/
---
PCx86 CPU Component
@@ -36,7 +36,7 @@ Attributes
* This can be set to "true" or "false" to explicitly control whether or not the machine starts running automatically.
If this parameter is omitted, the machine will autostart only if no Debugger component is included and no **Run** button is defined.
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*. The *id* attribute is optional, since machines
+Also supports the attributes of *[Component](/docs/pcx86/component/)*. The *id* attribute is optional, since machines
currently support only one CPU component.
Bindings
@@ -46,7 +46,7 @@ Bindings
* For use with a control of type *button*, to start/stop the CPU.
* *reset*
* For use with a control of type *button*, to reset the CPU. This binding actually belongs to the
- *[Computer](/pubs/pcx86/computer/)* component, because every component is reset, but the CPU offers the binding
+ *[Computer](/docs/pcx86/computer/)* component, because every component is reset, but the CPU offers the binding
for convenience.
* *speed*
* For use with any control with an *textContent* property, to display the current CPU speed.
diff --git a/pubs/pcx86/debugger/README.md b/pubs/docs/pcx86/debugger/README.md
similarity index 94%
rename from pubs/pcx86/debugger/README.md
rename to pubs/docs/pcx86/debugger/README.md
index fdbb383cf..df75fa054 100644
--- a/pubs/pcx86/debugger/README.md
+++ b/pubs/docs/pcx86/debugger/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <debugger> Element
-permalink: /pubs/pcx86/debugger/
+permalink: /docs/pcx86/debugger/
---
PCx86 Debugger Component
@@ -26,7 +26,7 @@ Attributes
* One or more message categories to enable, separated by |. By default, all message categories are disabled.
See the Debugger's "m" command for a current list of message categories.
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*. The *id* attribute is optional, since machines
+Also supports the attributes of *[Component](/docs/pcx86/component/)*. The *id* attribute is optional, since machines
currently support only one Debugger component.
Bindings
diff --git a/pubs/pcx86/examples/.gitignore b/pubs/docs/pcx86/examples/.gitignore
similarity index 100%
rename from pubs/pcx86/examples/.gitignore
rename to pubs/docs/pcx86/examples/.gitignore
diff --git a/pubs/pcx86/examples/1981-04-24.json b/pubs/docs/pcx86/examples/1981-04-24.json
similarity index 100%
rename from pubs/pcx86/examples/1981-04-24.json
rename to pubs/docs/pcx86/examples/1981-04-24.json
diff --git a/pubs/pcx86/examples/PCDOS100.json b/pubs/docs/pcx86/examples/PCDOS100.json
similarity index 100%
rename from pubs/pcx86/examples/PCDOS100.json
rename to pubs/docs/pcx86/examples/PCDOS100.json
diff --git a/pubs/pcx86/examples/README.md b/pubs/docs/pcx86/examples/README.md
similarity index 88%
rename from pubs/pcx86/examples/README.md
rename to pubs/docs/pcx86/examples/README.md
index f3dda7398..bb6e4fcea 100644
--- a/pubs/pcx86/examples/README.md
+++ b/pubs/docs/pcx86/examples/README.md
@@ -1,18 +1,18 @@
---
layout: page
title: PCx86 Documentation Examples
-permalink: /pubs/pcx86/examples/
+permalink: /docs/pcx86/examples/
machines:
- id: example3
type: pcx86
- config: /pubs/pcx86/examples/example3b.xml
+ config: /docs/pcx86/examples/example3b.xml
---
PCx86 Documentation Examples
----------------------------
-This folder provides all the self-contained [PCx86](/pubs/about/pcx86/) examples described in the
-[Documentation](/pubs/pcx86/).
+This folder provides all the self-contained [PCx86](/docs/about/pcx86/) examples described in the
+[Documentation](/docs/pcx86/).
To use them, download [examples.zip](examples.zip), unzip it into a folder on your desktop computer or web server,
and experiment with them in your web browser. Since all these examples are self-contained, they should work with either
diff --git a/pubs/pcx86/examples/components.css b/pubs/docs/pcx86/examples/components.css
similarity index 100%
rename from pubs/pcx86/examples/components.css
rename to pubs/docs/pcx86/examples/components.css
diff --git a/pubs/pcx86/examples/components.xsl b/pubs/docs/pcx86/examples/components.xsl
similarity index 100%
rename from pubs/pcx86/examples/components.xsl
rename to pubs/docs/pcx86/examples/components.xsl
diff --git a/pubs/pcx86/examples/example1.html b/pubs/docs/pcx86/examples/example1.html
similarity index 100%
rename from pubs/pcx86/examples/example1.html
rename to pubs/docs/pcx86/examples/example1.html
diff --git a/pubs/pcx86/examples/example1.xml b/pubs/docs/pcx86/examples/example1.xml
similarity index 100%
rename from pubs/pcx86/examples/example1.xml
rename to pubs/docs/pcx86/examples/example1.xml
diff --git a/pubs/pcx86/examples/example2.html b/pubs/docs/pcx86/examples/example2.html
similarity index 100%
rename from pubs/pcx86/examples/example2.html
rename to pubs/docs/pcx86/examples/example2.html
diff --git a/pubs/pcx86/examples/example2.xml b/pubs/docs/pcx86/examples/example2.xml
similarity index 100%
rename from pubs/pcx86/examples/example2.xml
rename to pubs/docs/pcx86/examples/example2.xml
diff --git a/pubs/pcx86/examples/example3.json b/pubs/docs/pcx86/examples/example3.json
similarity index 100%
rename from pubs/pcx86/examples/example3.json
rename to pubs/docs/pcx86/examples/example3.json
diff --git a/pubs/pcx86/examples/example3a.html b/pubs/docs/pcx86/examples/example3a.html
similarity index 100%
rename from pubs/pcx86/examples/example3a.html
rename to pubs/docs/pcx86/examples/example3a.html
diff --git a/pubs/pcx86/examples/example3a.xml b/pubs/docs/pcx86/examples/example3a.xml
similarity index 100%
rename from pubs/pcx86/examples/example3a.xml
rename to pubs/docs/pcx86/examples/example3a.xml
diff --git a/pubs/pcx86/examples/example3b.html b/pubs/docs/pcx86/examples/example3b.html
similarity index 100%
rename from pubs/pcx86/examples/example3b.html
rename to pubs/docs/pcx86/examples/example3b.html
diff --git a/pubs/pcx86/examples/example3b.xml b/pubs/docs/pcx86/examples/example3b.xml
similarity index 100%
rename from pubs/pcx86/examples/example3b.xml
rename to pubs/docs/pcx86/examples/example3b.xml
diff --git a/pubs/pcx86/examples/examples.zip b/pubs/docs/pcx86/examples/examples.zip
similarity index 100%
rename from pubs/pcx86/examples/examples.zip
rename to pubs/docs/pcx86/examples/examples.zip
diff --git a/pubs/pcx86/examples/ibm-basic-1.00.json b/pubs/docs/pcx86/examples/ibm-basic-1.00.json
similarity index 100%
rename from pubs/pcx86/examples/ibm-basic-1.00.json
rename to pubs/docs/pcx86/examples/ibm-basic-1.00.json
diff --git a/pubs/pcx86/examples/ibm-mda-cga.json b/pubs/docs/pcx86/examples/ibm-mda-cga.json
similarity index 100%
rename from pubs/pcx86/examples/ibm-mda-cga.json
rename to pubs/docs/pcx86/examples/ibm-mda-cga.json
diff --git a/pubs/pcx86/examples/pcx86-dbg.js b/pubs/docs/pcx86/examples/pcx86-dbg.js
similarity index 100%
rename from pubs/pcx86/examples/pcx86-dbg.js
rename to pubs/docs/pcx86/examples/pcx86-dbg.js
diff --git a/pubs/pcx86/examples/pcx86.js b/pubs/docs/pcx86/examples/pcx86.js
similarity index 100%
rename from pubs/pcx86/examples/pcx86.js
rename to pubs/docs/pcx86/examples/pcx86.js
diff --git a/pubs/pcx86/examples/visicalc.json b/pubs/docs/pcx86/examples/visicalc.json
similarity index 100%
rename from pubs/pcx86/examples/visicalc.json
rename to pubs/docs/pcx86/examples/visicalc.json
diff --git a/pubs/pcx86/examples/zip.sh b/pubs/docs/pcx86/examples/zip.sh
similarity index 100%
rename from pubs/pcx86/examples/zip.sh
rename to pubs/docs/pcx86/examples/zip.sh
diff --git a/pubs/pcx86/fdc/README.md b/pubs/docs/pcx86/fdc/README.md
similarity index 94%
rename from pubs/pcx86/fdc/README.md
rename to pubs/docs/pcx86/fdc/README.md
index 1b12f8866..3072f5f6a 100644
--- a/pubs/pcx86/fdc/README.md
+++ b/pubs/docs/pcx86/fdc/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <fdc> Element
-permalink: /pubs/pcx86/fdc/
+permalink: /docs/pcx86/fdc/
---
PCx86 Floppy Drive Controller (FDC) Component
@@ -35,7 +35,7 @@ Attributes
'{A: {name: "PC-DOS 1.0", path: "pcdos-1.00.json"}}'
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
@@ -44,7 +44,7 @@ Bindings
For use with a control of type *list*. The list will be populated automatically with a series of <option>
elements based on the number of floppy drives, as determined by the SW1 settings obtained from the
- *[ChipSet](/pubs/pcx86/chipset/)* component.
+ *[ChipSet](/docs/pcx86/chipset/)* component.
* *listDisks*
diff --git a/pubs/pcx86/hdc/README.md b/pubs/docs/pcx86/hdc/README.md
similarity index 96%
rename from pubs/pcx86/hdc/README.md
rename to pubs/docs/pcx86/hdc/README.md
index d6db1ce3f..5347ae3e5 100644
--- a/pubs/pcx86/hdc/README.md
+++ b/pubs/docs/pcx86/hdc/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <hdc> Element
-permalink: /pubs/pcx86/hdc/
+permalink: /docs/pcx86/hdc/
---
PCx86 Hard Drive Controller (HDC) Component
@@ -59,7 +59,7 @@ Attributes
The default *type* setting is *'XT'*.
- * Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+ * Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/keyboard/README.md b/pubs/docs/pcx86/keyboard/README.md
similarity index 95%
rename from pubs/pcx86/keyboard/README.md
rename to pubs/docs/pcx86/keyboard/README.md
index d214edd44..c9b979bf3 100644
--- a/pubs/pcx86/keyboard/README.md
+++ b/pubs/docs/pcx86/keyboard/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <keyboard> Element
-permalink: /pubs/pcx86/keyboard/
+permalink: /docs/pcx86/keyboard/
---
PCx86 Keyboard Component
@@ -28,7 +28,7 @@ Attributes
* us84: US keyboard with 84-key layout
* us101: US keyboard with 101-key layout
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/machine/README.md b/pubs/docs/pcx86/machine/README.md
similarity index 86%
rename from pubs/pcx86/machine/README.md
rename to pubs/docs/pcx86/machine/README.md
index e4828b01c..27a1d96e2 100644
--- a/pubs/pcx86/machine/README.md
+++ b/pubs/docs/pcx86/machine/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <machine> Element
-permalink: /pubs/pcx86/machine/
+permalink: /docs/pcx86/machine/
---
PCx86 Machine Component
@@ -19,7 +19,7 @@ Purpose
Container for a complete machine definition.
-Machines are components that contain other components. See [Component](/pubs/pcx86/component/) for more details.
+Machines are components that contain other components. See [Component](/docs/pcx86/component/) for more details.
Attributes
----------
@@ -28,7 +28,7 @@ Attributes
For PCx86 machines, this must be set to "pcx86", indicating the machine belongs to the PCx86 application.
- * Also supports the attributes of [Component](/pubs/pcx86/component/). The *id* attribute is optional for a machine,
+ * Also supports the attributes of [Component](/docs/pcx86/component/). The *id* attribute is optional for a machine,
unless there is more than one machine on a page, in which case each machine must have a unique *id*.
Bindings
diff --git a/pubs/pcx86/mouse/README.md b/pubs/docs/pcx86/mouse/README.md
similarity index 94%
rename from pubs/pcx86/mouse/README.md
rename to pubs/docs/pcx86/mouse/README.md
index 3a3b86b74..575acc24e 100644
--- a/pubs/pcx86/mouse/README.md
+++ b/pubs/docs/pcx86/mouse/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <mouse> Element
-permalink: /pubs/pcx86/mouse/
+permalink: /docs/pcx86/mouse/
---
PCx86 Mouse Component
@@ -44,7 +44,7 @@ Attributes
One of "serial", "bus", or "inport"; the default is "serial" if either *serial* or *binding* are set
- * Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+ * Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/panel/README.md b/pubs/docs/pcx86/panel/README.md
similarity index 81%
rename from pubs/pcx86/panel/README.md
rename to pubs/docs/pcx86/panel/README.md
index dc660b648..4232332f0 100644
--- a/pubs/pcx86/panel/README.md
+++ b/pubs/docs/pcx86/panel/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <panel> Element
-permalink: /pubs/pcx86/panel/
+permalink: /docs/pcx86/panel/
---
PCx86 Control Panel Component
@@ -18,8 +18,8 @@ Purpose
-------
Creates an instance of the Control Panel component, which simply acts as a container for controls that the
-machine wants to bind to the *[Computer](/pubs/pcx86/computer/)*, *[CPU](/pubs/pcx86/cpu/)*,
-*[Keyboard](/pubs/pcx86/keyboard/)* and/or *[Debugger](/pubs/pcx86/debugger/)* components.
+machine wants to bind to the *[Computer](/docs/pcx86/computer/)*, *[CPU](/docs/pcx86/cpu/)*,
+*[Keyboard](/docs/pcx86/keyboard/)* and/or *[Debugger](/docs/pcx86/debugger/)* components.
Attributes
----------
@@ -29,8 +29,8 @@ None.
Bindings
--------
-Refer to available bindings in the *[Computer](/pubs/pcx86/computer/)*, *[CPU](/pubs/pcx86/cpu/)*,
-*[Keyboard](/pubs/pcx86/keyboard/)* and *[Debugger](/pubs/pcx86/debugger/)* components.
+Refer to available bindings in the *[Computer](/docs/pcx86/computer/)*, *[CPU](/docs/pcx86/cpu/)*,
+*[Keyboard](/docs/pcx86/keyboard/)* and *[Debugger](/docs/pcx86/debugger/)* components.
Example
-------
diff --git a/pubs/pcx86/parallel/README.md b/pubs/docs/pcx86/parallel/README.md
similarity index 93%
rename from pubs/pcx86/parallel/README.md
rename to pubs/docs/pcx86/parallel/README.md
index a922126ba..da97dc30c 100644
--- a/pubs/pcx86/parallel/README.md
+++ b/pubs/docs/pcx86/parallel/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <parallel> Element
-permalink: /pubs/pcx86/parallel/
+permalink: /docs/pcx86/parallel/
---
PCx86 ParallelPort Component
@@ -33,7 +33,7 @@ Attributes
For example, if you've defined a Control Panel with a <textarea> control bound to "print", specifying a
binding of "print" for the Parallel Port component will bind its port to the same control.
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/ram/README.md b/pubs/docs/pcx86/ram/README.md
similarity index 90%
rename from pubs/pcx86/ram/README.md
rename to pubs/docs/pcx86/ram/README.md
index 2257a3373..3bb8aaa66 100644
--- a/pubs/pcx86/ram/README.md
+++ b/pubs/docs/pcx86/ram/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <ram> Element
-permalink: /pubs/pcx86/ram/
+permalink: /docs/pcx86/ram/
---
PCx86 Random-Access Memory (RAM) Component
@@ -29,14 +29,14 @@ Attributes
* *size* (optional; default is 0x00000)
- The amount of RAM, in bytes. If the size is omitted (or 0), the *[ChipSet](/pubs/pcx86/chipset/)* component
+ The amount of RAM, in bytes. If the size is omitted (or 0), the *[ChipSet](/docs/pcx86/chipset/)* component
is queried for the amount of RAM indicated by SW1/SW2.
* *test* (optional; default is true)
Disables the ROM BIOS memory test when set to "false".
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/rom/README.md b/pubs/docs/pcx86/rom/README.md
similarity index 90%
rename from pubs/pcx86/rom/README.md
rename to pubs/docs/pcx86/rom/README.md
index afed747c2..7728e85df 100644
--- a/pubs/pcx86/rom/README.md
+++ b/pubs/docs/pcx86/rom/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <rom> Element
-permalink: /pubs/pcx86/rom/
+permalink: /docs/pcx86/rom/
---
PCx86 Read-Only Memory (ROM) Component
@@ -36,11 +36,11 @@ Attributes
* *notify* (optional)
- The *id* of a component to notify when *file* has been loaded. For example, the *[Video](/pubs/pcx86/video/)*
+ The *id* of a component to notify when *file* has been loaded. For example, the *[Video](/docs/pcx86/video/)*
component may need to know when an external video ROM has been loaded. Any component can load its own files,
including ROM image files, but it's simpler to use the ROM component and request notification.
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/serial/README.md b/pubs/docs/pcx86/serial/README.md
similarity index 93%
rename from pubs/pcx86/serial/README.md
rename to pubs/docs/pcx86/serial/README.md
index 50fbefe23..310f58a9b 100644
--- a/pubs/pcx86/serial/README.md
+++ b/pubs/docs/pcx86/serial/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <serial> Element
-permalink: /pubs/pcx86/serial/
+permalink: /docs/pcx86/serial/
---
PCx86 SerialPort Component
@@ -33,7 +33,7 @@ Attributes
For example, if you've defined a Control Panel with a <textarea> control bound to "print", specifying a
binding of "print" for the Serial Port component will bind its port to the same control.
- * Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+ * Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pcx86/video/README.md b/pubs/docs/pcx86/video/README.md
similarity index 95%
rename from pubs/pcx86/video/README.md
rename to pubs/docs/pcx86/video/README.md
index eda42be69..504b856a6 100644
--- a/pubs/pcx86/video/README.md
+++ b/pubs/docs/pcx86/video/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: PCx86 <video> Element
-permalink: /pubs/pcx86/video/
+permalink: /docs/pcx86/video/
---
PCx86 Video Component
@@ -33,7 +33,7 @@ Attributes
* "cga" (Color Graphics Adapter)
* "ega" (Enhanced Graphics Adapter)
- If *model* is not set, the SW1 switch block settings from the [ChipSet](/pubs/pcx86/chipset/) component will
+ If *model* is not set, the SW1 switch block settings from the [ChipSet](/docs/pcx86/chipset/) component will
determine the video model to use ("mda" or "cga" only).
* *screenWidth*, *screenHeight* (required)
@@ -66,7 +66,7 @@ Attributes
true enables HTML5 canvas image smoothing, false disables it (if not specified, the browser's default is used);
can also be present as a URL parameter.
-Also supports the attributes of *[Component](/pubs/pcx86/component/)*.
+Also supports the attributes of *[Component](/docs/pcx86/component/)*.
Bindings
--------
diff --git a/pubs/pdpjs/README.md b/pubs/docs/pdpjs/README.md
similarity index 94%
rename from pubs/pdpjs/README.md
rename to pubs/docs/pdpjs/README.md
index 9a9f5d53e..68bf594d7 100644
--- a/pubs/pdpjs/README.md
+++ b/pubs/docs/pdpjs/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: PDPjs Overview
-permalink: /pubs/pdpjs/
+permalink: /docs/pdpjs/
---
PDPjs Overview
----
+--------------
PDPjs is a collection of JavaScript modules used to simulate an assortment of classic DEC computers.
diff --git a/pubs/personal/1984-09-16--DBASE_III_DEBUG.pdf b/pubs/docs/personal/1984-09-16--DBASE_III_DEBUG.pdf
similarity index 100%
rename from pubs/personal/1984-09-16--DBASE_III_DEBUG.pdf
rename to pubs/docs/personal/1984-09-16--DBASE_III_DEBUG.pdf
diff --git a/pubs/personal/1984-09-25--DBASE_III_PATCH.pdf b/pubs/docs/personal/1984-09-25--DBASE_III_PATCH.pdf
similarity index 100%
rename from pubs/personal/1984-09-25--DBASE_III_PATCH.pdf
rename to pubs/docs/personal/1984-09-25--DBASE_III_PATCH.pdf
diff --git a/pubs/personal/README.md b/pubs/docs/personal/README.md
similarity index 81%
rename from pubs/personal/README.md
rename to pubs/docs/personal/README.md
index 341996356..4a297d27b 100644
--- a/pubs/personal/README.md
+++ b/pubs/docs/personal/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: Personal Documents of Dubious Historical Interest
-permalink: /pubs/personal/
+permalink: /docs/personal/
---
Personal Documents of Dubious Historical Interest
@@ -14,8 +14,8 @@ adventures in PC debugging: decoding and disabling [dBASE III Copy-Protection](#
### dBASE III Copy-Protection
-* [dBASE III Debugging Notes](/pubs/personal/1984-09-16--DBASE_III_DEBUG.pdf)
-* [dBASE III Patching Procedure](/pubs/personal/1984-09-25--DBASE_III_PATCH.pdf)
+* [dBASE III Debugging Notes](/docs/personal/1984-09-16--DBASE_III_DEBUG.pdf)
+* [dBASE III Patching Procedure](/docs/personal/1984-09-25--DBASE_III_PATCH.pdf)
NOTE: Copies of the [dBASE III](/disks/pcx86/apps/other/dbase3/1.0/) disks can be found in our [IBM PC Disk Library](/disks/pcx86/).
diff --git a/pubs/x86/README.md b/pubs/docs/x86/README.md
similarity index 84%
rename from pubs/x86/README.md
rename to pubs/docs/x86/README.md
index 0018071de..83a6c8ea9 100644
--- a/pubs/x86/README.md
+++ b/pubs/docs/x86/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: x86 Documentation
-permalink: /pubs/x86/
+permalink: /docs/x86/
---
Placeholder for future x86 documentation.
diff --git a/pubs/x86/ops/AAA/README.md b/pubs/docs/x86/ops/AAA/README.md
similarity index 98%
rename from pubs/x86/ops/AAA/README.md
rename to pubs/docs/x86/ops/AAA/README.md
index 9dae88936..1c476ebc0 100644
--- a/pubs/x86/ops/AAA/README.md
+++ b/pubs/docs/x86/ops/AAA/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: "x86 Instructions: AAA"
-permalink: /pubs/x86/ops/AAA/
+permalink: /docs/x86/ops/AAA/
---
AAA (0x37)
----
+----------
### Description
diff --git a/pubs/x86/ops/AAA/pcjs/opAAA.js b/pubs/docs/x86/ops/AAA/pcjs/opAAA.js
similarity index 100%
rename from pubs/x86/ops/AAA/pcjs/opAAA.js
rename to pubs/docs/x86/ops/AAA/pcjs/opAAA.js
diff --git a/pubs/x86/ops/AAD/AAD.ASM b/pubs/docs/x86/ops/AAD/AAD.ASM
similarity index 100%
rename from pubs/x86/ops/AAD/AAD.ASM
rename to pubs/docs/x86/ops/AAD/AAD.ASM
diff --git a/pubs/x86/ops/AAD/README.md b/pubs/docs/x86/ops/AAD/README.md
similarity index 98%
rename from pubs/x86/ops/AAD/README.md
rename to pubs/docs/x86/ops/AAD/README.md
index 748f3eb67..d7ada033f 100644
--- a/pubs/x86/ops/AAD/README.md
+++ b/pubs/docs/x86/ops/AAD/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: "x86 Instructions: AAD"
-permalink: /pubs/x86/ops/AAD/
+permalink: /docs/x86/ops/AAD/
---
AAD (0xD5)
----
+----------
### Description
diff --git a/pubs/x86/ops/AAM/AAM.ASM b/pubs/docs/x86/ops/AAM/AAM.ASM
similarity index 100%
rename from pubs/x86/ops/AAM/AAM.ASM
rename to pubs/docs/x86/ops/AAM/AAM.ASM
diff --git a/pubs/x86/ops/AAM/README.md b/pubs/docs/x86/ops/AAM/README.md
similarity index 98%
rename from pubs/x86/ops/AAM/README.md
rename to pubs/docs/x86/ops/AAM/README.md
index fa392380f..1f74e1fc5 100644
--- a/pubs/x86/ops/AAM/README.md
+++ b/pubs/docs/x86/ops/AAM/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: "x86 Instructions: AAM"
-permalink: /pubs/x86/ops/AAM/
+permalink: /docs/x86/ops/AAM/
---
AAM (0xD4)
----
+----------
### Description
diff --git a/pubs/x86/ops/ICEBP/README.md b/pubs/docs/x86/ops/ICEBP/README.md
similarity index 98%
rename from pubs/x86/ops/ICEBP/README.md
rename to pubs/docs/x86/ops/ICEBP/README.md
index 4e56b0850..99c77ddf4 100644
--- a/pubs/x86/ops/ICEBP/README.md
+++ b/pubs/docs/x86/ops/ICEBP/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: "x86 Instructions: ICEBP"
-permalink: /pubs/x86/ops/ICEBP/
+permalink: /docs/x86/ops/ICEBP/
---
ICEBP (0xF1)
----
+------------
### Description
diff --git a/pubs/x86/ops/LOADALL/286load.asm b/pubs/docs/x86/ops/LOADALL/286load.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/286load.asm
rename to pubs/docs/x86/ops/LOADALL/286load.asm
diff --git a/pubs/x86/ops/LOADALL/386load.asm b/pubs/docs/x86/ops/LOADALL/386load.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/386load.asm
rename to pubs/docs/x86/ops/LOADALL/386load.asm
diff --git a/pubs/x86/ops/LOADALL/README.md b/pubs/docs/x86/ops/LOADALL/README.md
similarity index 99%
rename from pubs/x86/ops/LOADALL/README.md
rename to pubs/docs/x86/ops/LOADALL/README.md
index 52ef2d272..a155e17b9 100644
--- a/pubs/x86/ops/LOADALL/README.md
+++ b/pubs/docs/x86/ops/LOADALL/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: "x86 Instructions: LOADALL"
-permalink: /pubs/x86/ops/LOADALL/
+permalink: /docs/x86/ops/LOADALL/
---
LOADALL386 (0x070F)
----
+-------------------
### Description
diff --git a/pubs/x86/ops/LOADALL/cpu_type.asm b/pubs/docs/x86/ops/LOADALL/cpu_type.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/cpu_type.asm
rename to pubs/docs/x86/ops/LOADALL/cpu_type.asm
diff --git a/pubs/x86/ops/LOADALL/emuload.asm b/pubs/docs/x86/ops/LOADALL/emuload.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/emuload.asm
rename to pubs/docs/x86/ops/LOADALL/emuload.asm
diff --git a/pubs/x86/ops/LOADALL/loadfns.286.asm b/pubs/docs/x86/ops/LOADALL/loadfns.286.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/loadfns.286.asm
rename to pubs/docs/x86/ops/LOADALL/loadfns.286.asm
diff --git a/pubs/x86/ops/LOADALL/loadfns.386.asm b/pubs/docs/x86/ops/LOADALL/loadfns.386.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/loadfns.386.asm
rename to pubs/docs/x86/ops/LOADALL/loadfns.386.asm
diff --git a/pubs/x86/ops/LOADALL/macros.286.asm b/pubs/docs/x86/ops/LOADALL/macros.286.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/macros.286.asm
rename to pubs/docs/x86/ops/LOADALL/macros.286.asm
diff --git a/pubs/x86/ops/LOADALL/macros.386.asm b/pubs/docs/x86/ops/LOADALL/macros.386.asm
similarity index 100%
rename from pubs/x86/ops/LOADALL/macros.386.asm
rename to pubs/docs/x86/ops/LOADALL/macros.386.asm
diff --git a/pubs/x86/ops/LOADALL/tspec_a3_doc.html b/pubs/docs/x86/ops/LOADALL/tspec_a3_doc.html
similarity index 100%
rename from pubs/x86/ops/LOADALL/tspec_a3_doc.html
rename to pubs/docs/x86/ops/LOADALL/tspec_a3_doc.html
diff --git a/pubs/x86/ops/README.md b/pubs/docs/x86/ops/README.md
similarity index 95%
rename from pubs/x86/ops/README.md
rename to pubs/docs/x86/ops/README.md
index bcc6a4ddd..f9a19fd15 100644
--- a/pubs/x86/ops/README.md
+++ b/pubs/docs/x86/ops/README.md
@@ -1,7 +1,7 @@
---
layout: page
title: x86 Instructions
-permalink: /pubs/x86/ops/
+permalink: /docs/x86/ops/
---
Placeholder for future x86 documentation.
diff --git a/pubs/x86/ops/SALC/README.md b/pubs/docs/x86/ops/SALC/README.md
similarity index 98%
rename from pubs/x86/ops/SALC/README.md
rename to pubs/docs/x86/ops/SALC/README.md
index c6dc74b93..232a4cbf6 100644
--- a/pubs/x86/ops/SALC/README.md
+++ b/pubs/docs/x86/ops/SALC/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: "x86 Instructions: SALC"
-permalink: /pubs/x86/ops/SALC/
+permalink: /docs/x86/ops/SALC/
---
SALC (0xD6)
----
+-----------
### Description
diff --git a/pubs/x86/ops/UMOV/README.md b/pubs/docs/x86/ops/UMOV/README.md
similarity index 97%
rename from pubs/x86/ops/UMOV/README.md
rename to pubs/docs/x86/ops/UMOV/README.md
index 703b58f4f..43bd4c549 100644
--- a/pubs/x86/ops/UMOV/README.md
+++ b/pubs/docs/x86/ops/UMOV/README.md
@@ -1,11 +1,11 @@
---
layout: page
title: "x86 Instructions: UMOV"
-permalink: /pubs/x86/ops/UMOV/
+permalink: /docs/x86/ops/UMOV/
---
UMOV (0x100F,0x110F,0x120F,0x130F)
----
+----------------------------------
### Description
diff --git a/pubs/pc/reference/intel/8086/README.md b/pubs/pc/reference/intel/8086/README.md
index 0e6821a3a..ba870833c 100644
--- a/pubs/pc/reference/intel/8086/README.md
+++ b/pubs/pc/reference/intel/8086/README.md
@@ -98,17 +98,17 @@ On the 8086/8088/80186/80188, values 0-3 were treated the same as values 4-7, an
Starting with the 80186, opcodes 0xC0 and 0xC1 were reused for new shift and rotate instruction groups,
and opcodes 0xC8 and 0xC9 became the `ENTER` and `LEAVE` instructions.
-### [AAM](/pubs/x86/ops/AAM/) (0xD4)
+### [AAM](/docs/x86/ops/AAM/) (0xD4)
While AAM is documented, it has undocumented features (eg, its ability to divide by values other than 10,
-and its effect on the flags). See the [AAM](/pubs/x86/ops/AAM/) instruction for details.
+and its effect on the flags). See the [AAM](/docs/x86/ops/AAM/) instruction for details.
-### [AAD](/pubs/x86/ops/AAD/) (0xD5)
+### [AAD](/docs/x86/ops/AAD/) (0xD5)
While AAD is documented, it has undocumented features (eg, its ability to multiply by values other than 10,
-and its effect on the flags). See the [AAD](/pubs/x86/ops/AAD/) instruction for details.
+and its effect on the flags). See the [AAD](/docs/x86/ops/AAD/) instruction for details.
-### [SALC](/pubs/x86/ops/SALC/) (0xD6)
+### [SALC](/docs/x86/ops/SALC/) (0xD6)
Performs an operation equivalent to `SBB AL,AL`, but without modifying any flags. In other words, AL will be set to
0xFF or 0x00, depending on whether CF is set or clear. This instruction exists on all later x86 CPUs, but for some
@@ -119,7 +119,7 @@ reason, it has never been documented. Also known as **SETALC**.
It is believed that 0xF1 decodes identically to 0xF0 (the `LOCK` prefix).
On newer processors, 0xF1 is an undocumented instruction usually called `ICEBP` or `INT1`. See the
-[ICEBP](/pubs/x86/ops/ICEBP/) instruction for details.
+[ICEBP](/docs/x86/ops/ICEBP/) instruction for details.
Assorted Publications
---------------------