More COMPAQ tweaks
This commit is contained in:
parent
8cd37b58e9
commit
3d514e4d6b
21 changed files with 147 additions and 48 deletions
|
|
@ -16,3 +16,37 @@ The symbol information in the MAP file will be automatically converted and appen
|
|||
The PCjs server's Dump API can be used as well:
|
||||
|
||||
http://www.pcjs.org/api/v1/dump?file=http://archive.pcjs.org/devices/pc/video/ibm/ega/ibm-ega.rom&format=bytes&decimal=true
|
||||
|
||||
### Font Information
|
||||
|
||||
As noted in [Video.onROMLoad()](/modules/pcjs/lib/video.js), the Video component needs to know where the card's
|
||||
font data is located:
|
||||
|
||||
For EGA cards, in the absence of any parameters, we assume that we're receiving the original
|
||||
IBM EGA ROM, which stores its 8x14 font data at 0x2230 as one continuous sequence; the total size
|
||||
of the 8x14 font is 0xE00 bytes.
|
||||
|
||||
At 0x3030, there is an "ALPHA SUPPLEMENT" table, which contains 15 bytes per row instead of 14,
|
||||
because each row is preceded by one byte containing the corresponding ASCII code; there are 20
|
||||
entries in the supplemental table, for a total size of 0x12C bytes.
|
||||
|
||||
Finally, at 0x3160, we have the 8x8 font data (also known as the thicker "double dot" CGA font);
|
||||
the total size of the 8x8 font is 0x800 bytes. No other font data is present in the EGA ROM;
|
||||
the thin 5x7 "single dot" CGA font is notably absent, which is fine, because we never loaded it for
|
||||
the MDA/CGA either.
|
||||
|
||||
TODO: Determine how the supplemental table is used and whether we need to add some "run-time"
|
||||
font generation to support it (as opposed to "init-time" generation, which is all we do now).
|
||||
There's probably a similar need for user-defined fonts; for now, they're simply not supported.
|
||||
|
||||
For reference, here are the first 0x80 bytes at offset 0x2230 from this ROM, which contain the font data
|
||||
for the first 9 8x14 characters:
|
||||
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // 0x00002230 ................
|
||||
0x7E,0x81,0xA5,0x81,0x81,0xBD,0x99,0x81,0x7E,0x00,0x00,0x00,0x00,0x00,0x7E,0xFF, // 0x00002240 ~.......~.....~.
|
||||
0xDB,0xFF,0xFF,0xC3,0xE7,0xFF,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x6C,0xFE,0xFE, // 0x00002250 ......~......l..
|
||||
0xFE,0xFE,0x7C,0x38,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x38,0x7C,0xFE,0x7C, // 0x00002260 ..|8........8|.|
|
||||
0x38,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x3C,0x3C,0xE7,0xE7,0xE7,0x18,0x18, // 0x00002270 8...............
|
||||
0x3C,0x00,0x00,0x00,0x00,0x00,0x18,0x3C,0x7E,0xFF,0xFF,0x7E,0x18,0x18,0x3C,0x00, // 0x00002280 ........~..~....
|
||||
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x3C,0x3C,0x18,0x00,0x00,0x00,0x00,0x00, // 0x00002290 ................
|
||||
0xFF,0xFF,0xFF,0xFF,0xFF,0xE7,0xC3,0xC3,0xE7,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00, // 0x000022A0 ................
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" width="640px" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<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"/>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" touchscreen="mouse" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<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"/>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" touchscreen="mouse" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<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"/>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<video id="videoEGA" model="ega" memory="0x40000" screenwidth="640" screenheight="350" width="640px" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<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"/>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<video id="videoEGA" model="ega" memory="0x40000" screenwidth="640" screenheight="350" touchscreen="mouse" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<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"/>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<video id="videoEGA" model="ega" memory="0x40000" screenwidth="640" screenheight="350" touchscreen="mouse" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<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"/>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<video id="videoEGA" model="ega" memory="0x10000" screenwidth="640" screenheight="350" touchscreen="mouse" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<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"/>
|
||||
|
|
|
|||
Loading…
Reference in a new issue