README and JSON updates
This commit is contained in:
parent
c0cefd79c8
commit
a54d5564a7
43 changed files with 15526 additions and 3931 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -25,7 +25,7 @@ and merge them into a single 64Kb file, using the PCjs [FileDump](/modules/filed
|
|||
|
||||
Then, within the resulting 64Kb file, we extract the ROM code+data from the upper 32Kb:
|
||||
|
||||
filedump --file=1988-11-11/archive/VGA_Wonder_V3-1.02.rom --offset=32768 --format=json --output=1988-11-11/VGA_Wonder_V3-1.02.json
|
||||
filedump --file=1988-11-11/archive/VGA_Wonder_V3-1.02.rom --offset=32768 --format=bytes --comments --output=1988-11-11/VGA_Wonder_V3-1.02.json
|
||||
|
||||
And now we have a JSON-encoded ROM image that PCjs machines can load.
|
||||
|
||||
|
|
@ -35,7 +35,7 @@ To create a human-readable dump, you can use the following command:
|
|||
|
||||
filedump --file=1988-11-11/VGA_Wonder_V3-1.02.json --format=bytes --comments
|
||||
|
||||
Here are the first 12 lines from that dump:
|
||||
Here are the first 12 lines from [VGA_Wonder_V3-1.02.json](1988-11-11/VGA_Wonder_V3-1.02.json):
|
||||
|
||||
0x55,0xAA,0x40,0xEB,0x63,0x37,0x34,0x30,0x30,0x3E,0xFF,0xFF,0x81,0x00,0x88,0x2C, // 0x00000000 U.@.c7400......,
|
||||
0xCE,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x49,0x42, // 0x00000010 ..............IB
|
||||
|
|
|
|||
|
|
@ -18,23 +18,27 @@ and it is *identical* the CGA portion of the [IBM CGA](/devices/pcx86/video/ibm/
|
|||
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:
|
||||
|
||||
<video ref="/devices/pcx86/video/cdp/cga/cdp-cga.xml"/>
|
||||
```xml
|
||||
<video ref="/devices/pcx86/video/cdp/cga/cdp-cga.xml"/>
|
||||
```
|
||||
|
||||
The referenced XML file automatically defines visual elements (eg, dimensions of the display window and other
|
||||
visual indicators), display behaviors (eg, touchscreen support, mouse pointer locking), and the character ROM to load.
|
||||
|
||||
Here's what *cdp-cga.xml* currently looks like:
|
||||
|
||||
<video id="videoCGA" model="cga" screenwidth="960" screenheight="480" scale="true" charset="/devices/pcx86/video/cdp/cga/MPC_VID-1.0.json" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
</video>
|
||||
```xml
|
||||
<video id="videoCGA" model="cga" screenwidth="960" screenheight="480" scale="true" charset="/devices/pcx86/video/cdp/cga/MPC_VID-1.0.json" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
</video>
|
||||
```
|
||||
|
||||
### Columbia Data Products CGA Character ROM
|
||||
|
||||
|
|
|
|||
|
|
@ -57,4 +57,6 @@ add the 8x14 and 8x8 font data offsets to the ROM component's *notify* attribute
|
|||
|
||||
For example, here's how we deal with the font data offsets used by the IBM VGA:
|
||||
|
||||
<rom id="romVGA" addr="0xc0000" size="0x6000" file="ibm-vga.json" notify="videoVGA[0x378d,0x3f8d]"/>
|
||||
```xml
|
||||
<rom id="romVGA" addr="0xc0000" size="0x6000" file="ibm-vga.json" notify="videoVGA[0x378d,0x3f8d]"/>
|
||||
```
|
||||
|
|
|
|||
|
|
@ -14,23 +14,27 @@ IBM Color Graphics Adapter (CGA)
|
|||
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:
|
||||
|
||||
<video ref="/devices/pcx86/video/ibm/cga/ibm-cga.xml"/>
|
||||
```xml
|
||||
<video ref="/devices/pcx86/video/ibm/cga/ibm-cga.xml"/>
|
||||
```
|
||||
|
||||
The referenced XML file automatically defines visual elements (eg, dimensions of the display window and other
|
||||
visual indicators), display behaviors (eg, touchscreen support, mouse pointer locking), and the character ROM to load.
|
||||
|
||||
Here's what *ibm-cga.xml* currently looks like:
|
||||
|
||||
<video id="videoCGA" screenwidth="960" screenheight="480" scale="true" charset="/devices/pcx86/video/ibm/cga/ibm-cga.json" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
</video>
|
||||
```xml
|
||||
<video id="videoCGA" screenwidth="960" screenheight="480" scale="true" charset="/devices/pcx86/video/ibm/cga/ibm-cga.json" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
</video>
|
||||
```
|
||||
|
||||
The following IBM CGA configuration files are currently available:
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,9 @@ IBM Enhanced Graphics Adapter (EGA)
|
|||
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:
|
||||
|
||||
<video ref="/devices/pcx86/video/ibm/ega/1984-09-13/64kb.xml"/>
|
||||
```xml
|
||||
<video ref="/devices/pcx86/video/ibm/ega/1984-09-13/64kb.xml"/>
|
||||
```
|
||||
|
||||
The referenced XML file automatically defines visual elements (eg, dimensions of the display window and other
|
||||
visual indicators), display behaviors (eg, touchscreen support, mouse pointer locking), the ROM to load (and where
|
||||
|
|
@ -22,17 +24,19 @@ to load it), and other video card hardware features (eg, *memory* and *switches*
|
|||
|
||||
Here's what *64kb.xml* currently looks like:
|
||||
|
||||
<video id="videoEGA" model="ega" memory="0x10000" screenwidth="640" screenheight="350" touchscreen="mouse" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>IBM Enhanced Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
<rom id="romEGA" addr="0xc0000" size="0x4000" file="/devices/pcx86/video/ibm/ega/1984-09-13/ibm-ega.json" notify="videoEGA"/>
|
||||
</video>
|
||||
```xml
|
||||
<video id="videoEGA" model="ega" memory="0x10000" screenwidth="640" screenheight="350" touchscreen="mouse" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>IBM Enhanced Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
<rom id="romEGA" addr="0xc0000" size="0x4000" file="/devices/pcx86/video/ibm/ega/1984-09-13/ibm-ega.json" notify="videoEGA"/>
|
||||
</video>
|
||||
```
|
||||
|
||||
The following IBM EGA configuration files are currently available:
|
||||
|
||||
|
|
|
|||
|
|
@ -12,23 +12,27 @@ IBM Monochrome Display Adapter (MDA)
|
|||
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:
|
||||
|
||||
<video ref="/devices/pcx86/video/ibm/mda/ibm-mda.xml"/>
|
||||
```xml
|
||||
<video ref="/devices/pcx86/video/ibm/mda/ibm-mda.xml"/>
|
||||
```
|
||||
|
||||
The referenced XML file automatically defines visual elements (eg, dimensions of the display window and other
|
||||
visual indicators), display behaviors (eg, touchscreen support, mouse pointer locking), and the character ROM to load.
|
||||
|
||||
Here's what *ibm-mda.xml* currently looks like:
|
||||
|
||||
<video id="videoMDA" screenWidth="1440" screenHeight="900" scale="true" smoothing="false" fontROM="/devices/pcx86/video/ibm/mda/ibm-mda.json" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
</video>
|
||||
```xml
|
||||
<video id="videoMDA" screenWidth="1440" screenHeight="900" scale="true" smoothing="false" fontROM="/devices/pcx86/video/ibm/mda/ibm-mda.json" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
</control>
|
||||
</menu>
|
||||
</video>
|
||||
```
|
||||
|
||||
The following IBM MDA configuration files are currently available:
|
||||
|
||||
|
|
|
|||
|
|
@ -14,7 +14,9 @@ IBM Video Graphics Array (VGA)
|
|||
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:
|
||||
|
||||
<video ref="/devices/pcx86/video/ibm/vga/1986-10-27/256kb-autolockfs.xml"/>
|
||||
```xml
|
||||
<video ref="/devices/pcx86/video/ibm/vga/1986-10-27/256kb-autolockfs.xml"/>
|
||||
```
|
||||
|
||||
The referenced XML file automatically defines visual elements (eg, dimensions of the display window and other
|
||||
visual indicators), display behaviors (eg, touchscreen support, mouse pointer locking), the ROM to load (and where
|
||||
|
|
@ -22,18 +24,20 @@ to load it), and other video card hardware features (eg, *memory* and *switches*
|
|||
|
||||
Here's what *256kb-autolockfs.xml* currently looks like:
|
||||
|
||||
<video id="videoVGA" model="vga" screenwidth="1280" screenheight="960" scale="true" touchscreen="mouse" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>IBM VGA Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
<control type="button" binding="fullScreen" padleft="8px">Full Screen</control>
|
||||
</control>
|
||||
</menu>
|
||||
<rom id="romVGA" addr="0xc0000" size="0x6000" file="/devices/pcx86/video/ibm/vga/1986-10-27/ibm-vga.json" notify="videoVGA[0x378d,0x3f8d]"/>
|
||||
</video>
|
||||
```xml
|
||||
<video id="videoVGA" model="vga" screenwidth="1280" screenheight="960" scale="true" touchscreen="mouse" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>IBM VGA Color Display</title>
|
||||
<control type="container" pos="right">
|
||||
<control type="led" label="Caps" binding="caps-lock" padleft="8px"/>
|
||||
<control type="led" label="Num" binding="num-lock" padleft="8px"/>
|
||||
<control type="led" label="Scroll" binding="scroll-lock" padleft="8px"/>
|
||||
<control type="button" binding="fullScreen" padleft="8px">Full Screen</control>
|
||||
</control>
|
||||
</menu>
|
||||
<rom id="romVGA" addr="0xc0000" size="0x6000" file="/devices/pcx86/video/ibm/vga/1986-10-27/ibm-vga.json" notify="videoVGA[0x378d,0x3f8d]"/>
|
||||
</video>
|
||||
```
|
||||
|
||||
The following IBM VGA configuration files are currently available:
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue