Updated all machine 'video' elements to use new 'menu' element ('name' element is now deprecated)
This commit is contained in:
parent
de90d921ed
commit
f1115aa8f4
37 changed files with 155 additions and 70 deletions
|
|
@ -8,24 +8,28 @@ v1.15.5 of PCjs now, which includes the following fixes:
|
|||
of the refresh bit in port 0x61 to bit 6 of the CPU cycle count (see *in8042RWReg()* in [chipset.js](/modules/pcjs/lib/chipset.js));
|
||||
the original AT BIOS was satisfied with a refresh bit that merely alternated, whereas the new AT BIOS
|
||||
is much more particular about the rate at which that bit changes, since many hard-coded delay-loops have
|
||||
now been replaced with code that waits for a specific number of refresh cycles.
|
||||
now been replaced with code that waits for a specific number of refresh cycles.
|
||||
|
||||
+ The 8042 Keyboard Controller emulation needed a few more tweaks, mainly with respect to what happens
|
||||
when the keyboard's "clock" line is toggled (see *set8042CmdData()* in [chipset.js](/modules/pcjs/lib/chipset.js)).
|
||||
|
||||
+ The Floppy Disk Controller needed to add support for the "READ ID" command, in order for the BIOS
|
||||
"double-stepping" test to work (double-stepping is required on an 80-track drive when attempting to read
|
||||
a 40-track diskette).
|
||||
|
||||
+ The BIOS Diskette Reset function does something odd after resetting the Floppy Disk Controller: it
|
||||
issues not one but *four* "SENSE INTERRUPT STATUS" commands to the FDC, and expects each response to
|
||||
return an incrementally larger drive number. I found this a bit mystifying, considering that IBM's
|
||||
own FDC/HDC "combo card" supports a maximum of *two* diskette drives. But, there's no point in arguing
|
||||
own FDC/HDC "combo card" supports a maximum of *two* diskette drives. But, there's no point arguing
|
||||
with a BIOS that's almost 30 years old.
|
||||
+ The BIOS attempts to detect what its authors must have considered a common problem: failure to run SETUP
|
||||
after installing a second hard drive. So, when the CMOS reports only one hard drive installed, the BIOS
|
||||
probes for a second hard drive anyway, and it does so by simply writing the drive number to the ATC's "DRVHD"
|
||||
register and then immediately reading the "STATUS" register, without issuing any intervening command.
|
||||
|
||||
+ The BIOS attempts to detect what its authors must have considered a common problem: the user's failure
|
||||
to run SETUP after installing a second hard drive. So, when the CMOS reports only one hard drive installed,
|
||||
the BIOS probes for a second hard drive anyway, and it does so by simply writing the drive number to the ATC's
|
||||
"DRVHD" register and then immediately reading the "STATUS" register, without issuing any intervening command.
|
||||
It was an easy fix to *outATCDrvHd()* in [hdc.js](/modules/pcjs/lib/hdc.js), but I was surprised
|
||||
to discover that the ATC had this behavior, and now I'm wondering how many other I/O operations require
|
||||
immediate "STATUS" register updates.
|
||||
to discover that the ATC had this behavior, and now I'm wondering if there are any other I/O operations
|
||||
that must immediately update the "STATUS" register.
|
||||
|
||||
This PCjs release also fixes a problem reported by a user: if you disable **localStorage** support in your
|
||||
browser, previous versions of PCjs would fault. While every browser that supports PCjs also supports
|
||||
|
|
@ -41,7 +45,7 @@ and a little annoying, because **localStorage** is *not* a **cookie**.
|
|||
|
||||
PCjs *never* sets any cookies. Cookies are bits of data that your browser saves and then automatically sends
|
||||
off to the server every time you make a request. **localStorage** is nothing more than local storage; it is
|
||||
*not* automatically sent anywhere. Granted, a JavaScript application could abuse it and send it around like a
|
||||
*not* automatically sent anywhere. Granted, a JavaScript application could abuse it and send it out just like a
|
||||
cookie, but PCjs does *not* do that; the only exception is when PCjs detects a problem, and even then, you must
|
||||
first agree to submit your machine's state as part of the bug report.
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true"/>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal.xml"/>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true"/>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true"/>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
@ -18,4 +20,4 @@
|
|||
<fdc ref="/disks/pc/samples.xml" pos="right"/>
|
||||
<hdc id="hdcXT" drives='[{name:"10Mb Hard Disk",type:3}]'/>
|
||||
<chipset id="chipset" model="5160" sw1="01001001"/>
|
||||
</machine>
|
||||
</machine>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
|
|
|
|||
|
|
@ -7,8 +7,11 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" width="960px" padding="8px">
|
||||
<name>CGA Display</name>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" autolock="true" charset="/devices/pc/video/ibm-mda-cga.json" width="960px" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="false"/>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
|
|
|
|||
|
|
@ -7,8 +7,11 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" padding="8px">
|
||||
<name>CGA Display</name>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" autolock="true" charset="/devices/pc/video/ibm-mda-cga.json" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -8,8 +8,11 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" autolock="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
|
|
|
|||
|
|
@ -8,8 +8,11 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" autolock="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" touchscreen="true" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true"/>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-f1-f10.xml"/>
|
||||
|
|
|
|||
|
|
@ -8,13 +8,16 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" fontrom="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" autolock="true" fontrom="/devices/pc/video/ibm-mda-cga.json" pos="center" width="960px" padding="8px">
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml" automount='{A:{name:"MS-DOS 4.0M (Disk 1)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK1.json"}, B:{name:"MS-DOS 4.0M (Disk 2)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK2.json"}}'/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px" automount='{A:{name:"MS-DOS 4.0M (Disk 1)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK1.json"}, B:{name:"MS-DOS 4.0M (Disk 2)",path:"/disks/pc/dos/microsoft/4.0M/MSDOS400M-DISK2.json"}}'/>
|
||||
<chipset id="chipset" model="5160" sw1="01001001" pos="left" padleft="8px" padbottom="8px">
|
||||
<control type="switches" class="input" label="SW1" binding="sw1" left="0px"/>
|
||||
<control type="description" class="output" binding="swdesc" left="0px"/>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" touchscreen="true" pos="center" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
@ -18,4 +20,4 @@
|
|||
<fdc ref="/disks/pc/library.xml" pos="right"/>
|
||||
<hdc id="hdcXT" drives='[{name:"10Mb Hard Disk",type:3}]'/>
|
||||
<chipset id="chipset" model="5160" sw1="01001001"/>
|
||||
</machine>
|
||||
</machine>
|
||||
|
|
|
|||
|
|
@ -10,12 +10,14 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoEGA" model="ega" memory="0x10000" screenwidth="640" screenheight="350" pos="center" padding="8px">
|
||||
<name>Enhanced Color Display</name>
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px"/>
|
||||
<chipset id="chipset" model="5160" sw1="01001101" pos="left" padleft="8px" padbottom="8px">
|
||||
<control type="switches" class="input" label="SW1" binding="sw1" left="0px"/>
|
||||
<control type="description" class="output" binding="swdesc" left="0px"/>
|
||||
|
|
|
|||
|
|
@ -8,8 +8,11 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" width="640px" pos="center" padding="8px">
|
||||
<name>Enhanced Color Display</name>
|
||||
<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>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal.xml"/>
|
||||
<cpu id="cpu8088" model="8088">
|
||||
|
|
|
|||
|
|
@ -9,13 +9,16 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" pos="center" padding="8px">
|
||||
<name>Enhanced Color Display</name>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px"/>
|
||||
<chipset id="chipset" model="5160" sw1="01001101" pos="left" padleft="8px" padbottom="8px">
|
||||
<control type="switches" class="input" label="SW1" binding="sw1" left="0px"/>
|
||||
<control type="description" class="output" binding="swdesc" left="0px"/>
|
||||
|
|
|
|||
|
|
@ -9,8 +9,11 @@
|
|||
<rom id="romHDC" addr="0xc8000" size="0x2000" file="/devices/pc/hdc/ibm-xebec-1982.json"/>
|
||||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" pos="center" padding="8px">
|
||||
<name>Enhanced Color Display</name>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml"/>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="720px" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu80188" model="80188" autostart="true" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="720px" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal.xml"/>
|
||||
<fdc ref="/disks/pc/samples.xml"/>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.10.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5160/1982-11-08.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" pos="center" width="720px" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/us83.xml"/>
|
||||
<debugger id="debugger"/>
|
||||
|
|
|
|||
|
|
@ -8,13 +8,16 @@
|
|||
<ram id="ramExt" addr="0x100000" size="0x80000" comment=""/>
|
||||
<rom id="romEGA" addr="0xc0000" size="0x4000" file="/devices/pc/video/ibm-ega.json" notify="videoEGA"/>
|
||||
<rom id="romBIOS" addr="0xf0000" size="0x10000" alias="0xff0000" file="/devices/pc/bios/5170/1984-01-10.json"/>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" pos="center" padding="8px">
|
||||
<name>Enhanced Color Display</name>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
<debugger id="debugger" messages="" commands=""/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
|
||||
<hdc id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2}]'/>
|
||||
<chipset id="chipset" model="5170" floppies="[1200,1200]"/>
|
||||
<serial id="com1" adapter="1" binding="print"/>
|
||||
|
|
|
|||
|
|
@ -8,13 +8,16 @@
|
|||
<ram id="ramExt" addr="0x100000" size="0x80000" comment=""/>
|
||||
<rom id="romEGA" addr="0xc0000" size="0x4000" file="/devices/pc/video/ibm-ega.json" notify="videoEGA"/>
|
||||
<rom id="romBIOS" addr="0xf0000" size="0x10000" alias="0xff0000" file="/devices/pc/bios/5170/1985-11-15.json"/>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" pos="center" padding="8px">
|
||||
<name>Enhanced Color Display</name>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
<debugger id="debugger" messages="" commands=""/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.20 (Disk 1)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK1.json"}, B: {name: "PC-DOS 3.20 (Disk 2)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK2.json"}}'/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px" automount='{A: {name: "PC-DOS 3.20 (Disk 1)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK1.json"}, B: {name: "PC-DOS 3.20 (Disk 2)", path: "/disks/pc/dos/ibm/3.20/PCDOS320-DISK2.json"}}'/>
|
||||
<hdc id="hdcAT" type="at" drives='[{name:"20Mb Hard Disk",type:2}]'/>
|
||||
<chipset id="chipset" model="5170" floppies="[1440,1200]"/>
|
||||
<serial id="com1" adapter="1" binding="print"/>
|
||||
|
|
|
|||
|
|
@ -7,13 +7,16 @@
|
|||
<ram id="ramLow" addr="0x00000" size="0xa0000"/>
|
||||
<rom id="romEGA" addr="0xc0000" size="0x4000" file="/devices/pc/video/ibm-ega.json" notify="videoEGA"/>
|
||||
<rom id="romBIOS" addr="0xf0000" size="0x10000" alias="0xff0000" file="/devices/pc/bios/5170/1984-01-10.json"/>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" pos="center" padding="8px">
|
||||
<name>Enhanced Color Display</name>
|
||||
<video id="videoEGA" model="ega" memory="0x20000" screenwidth="640" screenheight="350" autolock="true" pos="center" padding="8px">
|
||||
<menu>
|
||||
<title>Enhanced Color Display</title>
|
||||
<control type="button" class="input" binding="lockPointer" pos="right">Lock Pointer</control>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard ref="/devices/pc/keyboard/minimal-functions.xml"/>
|
||||
<debugger id="debugger" messages="" commands=""/>
|
||||
<panel ref="/devices/pc/panel/wide.xml"/>
|
||||
<fdc ref="/disks/pc/library.xml" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
|
||||
<fdc ref="/disks/pc/library.xml" width="320px" automount='{A: {name: "PC-DOS 3.00 (Disk 1)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK1.json"}, B: {name: "PC-DOS 3.00 (Disk 2)", path: "/disks/pc/dos/ibm/3.00/PCDOS300-DISK2.json"}}'/>
|
||||
<chipset id="chipset" model="5170" floppies="[1200,1200]"/>
|
||||
<serial id="com1" adapter="1" binding="print"/>
|
||||
<serial id="com2" adapter="2"/>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px" padbottom="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px" padbottom="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.rom"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.rom"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.rom" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard id="keyboard" pos="left" padleft="8px">
|
||||
<control type="button" class="input" binding="esc">ESC</control>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px" padbottom="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -8,7 +8,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoCGA" screenwidth="960" screenheight="400" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" padding="8px">
|
||||
<name>Color Display</name>
|
||||
<menu>
|
||||
<title>Color Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<keyboard id="keyboard" pos="left" padleft="8px">
|
||||
<control type="button" class="input" binding="esc">ESC</control>
|
||||
|
|
@ -18,7 +20,7 @@
|
|||
<debugger id="debugger"/>
|
||||
<panel ref="/devices/pc/panel/default.xml"/>
|
||||
<fdc id="fdcNEC" automount='{A: {name: "Zork I", path: "/disks/pc/games/infocom/zork1/zork1-readonly.json"}}' pos="left" padleft="8px">
|
||||
<control type="list" class="input" binding="listDrives"></control>
|
||||
<control type="list" class="input" binding="listDrives"/>
|
||||
<control type="list" class="input" binding="listDisks">
|
||||
<disk path="">None</disk>
|
||||
<manifest ref="/disks/pc/games/infocom/zork1/manifest.xml" disk="*"/>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@
|
|||
<rom id="romBASIC" addr="0xf6000" size="0x8000" file="/devices/pc/basic/ibm-basic-1.00.json"/>
|
||||
<rom id="romBIOS" addr="0xfe000" size="0x2000" file="/devices/pc/bios/5150/1981-04-24.json"/>
|
||||
<video id="videoMDA" screenwidth="720" screenheight="350" scale="true" charset="/devices/pc/video/ibm-mda-cga.json" padding="8px">
|
||||
<name>Monochrome Display</name>
|
||||
<menu>
|
||||
<title>Monochrome Display</title>
|
||||
</menu>
|
||||
</video>
|
||||
<cpu id="cpu8088" model="8088" autostart="true" pos="left" padleft="8px">
|
||||
<control type="button" class="input" binding="run">Run</control>
|
||||
|
|
|
|||
|
|
@ -541,7 +541,7 @@ Keyboard.aSoftCodes = {
|
|||
* keyUp events, in part because of differences in the way browsers generate the keyDown and keyUp events.
|
||||
* For example, Safari on iOS devices will not generate up/down events for shift keys, and for other keys,
|
||||
* the up/down events are usually generated after the actual press is complete, and in rapid succession,
|
||||
* which doesn't always give the simulation enough time to detect the key.
|
||||
* which doesn't always give a simulation (eg, C1Pjs) enough time to detect the key.
|
||||
*
|
||||
* The other problem (which is more of a problem with keyboards like the C1P than any IBM keyboards) is
|
||||
* that the shift/modifier state for a character on the "source" keyboard may not match the shift/modifier
|
||||
|
|
@ -697,12 +697,12 @@ Keyboard.aKeyCodes[Keyboard.KEYCODE.DEL + Keyboard.KEYCODE.ONDOWN] = Keyboard
|
|||
Keyboard.aKeyCodes[Keyboard.KEYCODE.F11 + Keyboard.KEYCODE.ONDOWN] = Keyboard.SCANCODE.F11;
|
||||
Keyboard.aKeyCodes[Keyboard.KEYCODE.F12 + Keyboard.KEYCODE.ONDOWN] = Keyboard.SCANCODE.F12;
|
||||
|
||||
Keyboard.aKeyCodes[Keyboard.KEYCODE.FAKE_CTRLC] = Keyboard.SCANCODE.C + (Keyboard.SCANCODE.CTRL << 8);
|
||||
Keyboard.aKeyCodes[Keyboard.KEYCODE.FAKE_CTRLC] = Keyboard.SCANCODE.C | (Keyboard.SCANCODE.CTRL << 8);
|
||||
Keyboard.aKeyCodes[Keyboard.KEYCODE.FAKE_CTRLBREAK] = Keyboard.SCANCODE.SCROLL_LOCK | (Keyboard.SCANCODE.CTRL << 8);
|
||||
Keyboard.aKeyCodes[Keyboard.KEYCODE.FAKE_CTRLALTDEL] = Keyboard.SCANCODE.NUM_DEL + (Keyboard.SCANCODE.CTRL << 8) + (Keyboard.SCANCODE.ALT << 16);
|
||||
Keyboard.aKeyCodes[Keyboard.KEYCODE.FAKE_CTRLALTDEL] = Keyboard.SCANCODE.NUM_DEL | (Keyboard.SCANCODE.CTRL << 8) | (Keyboard.SCANCODE.ALT << 16);
|
||||
|
||||
/**
|
||||
* keySimulateUpOrDown() origin codes (useful only for debugging)
|
||||
* keySimulateUpOrDown() codes (for diagnostic purposes only)
|
||||
*
|
||||
* @enum {number}
|
||||
*/
|
||||
|
|
@ -1108,9 +1108,9 @@ Keyboard.prototype.reset = function()
|
|||
this.initState();
|
||||
|
||||
/*
|
||||
* The physical (not virtual) state of various shift keys.
|
||||
* The physical (not virtual) state of various shift/lock keys.
|
||||
*
|
||||
* TODO: Determine how (or whether) we can query the browser's initial key states.
|
||||
* TODO: Determine how (or whether) we can query the browser's initial shift/lock key states.
|
||||
*/
|
||||
this.bitsShift = 0;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue