pcjs/devices/pc
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2016-01-21 14:03:29 -08:00
..
basic README updates and a new EGA config 2015-12-22 12:56:25 -08:00
bios Ignore more files 2016-01-14 13:19:21 -08:00
hdc Pre-v1.15.5 checkpoint 2014-10-17 11:04:20 -07:00
keyboard Changed the last embedPC() parameter from sStateFile to sParms, although for backward compatibility, if sParms is not a JSON object definition (ie, beginning with a brace), it continues to be treated as a state filename. 2016-01-18 16:11:08 -08:00
machine Cleaned up the 5170 machines a bit (and eliminated some redundant ones) 2016-01-21 14:03:29 -08:00
panel More README updates 2015-12-11 09:26:19 -08:00
video Fixed two missing links (fixes all known missing links) 2016-01-10 13:47:10 -08:00
README.md Restored analytics tracking, merged the apps menu into the machines menu, and updated the 404 page 2015-12-27 16:42:45 -08:00

layout title permalink
page IBM PC Device Configurations /devices/pc/

IBM PC Device Configurations

IBM PC Machine Configurations are built from a collection of devices, including:

Each of those devices can be configured in multiple ways, and some support external UI controls.

For example, the IBM PC Keyboard component supports different keyboard models (eg, 83-key, 84-key, 101-key), and each of those models can also be configured to have dedicated buttons for selected key combinations, or even entire keyboard layouts.

Complete machine configurations are constructed from those devices. A machine configuration is a single XML file that lists all the device components to be used. A machine XML file can choose to configure every device itself, or it can include pre-configured device XML files, such as those provided above or elsewhere.

For example, here's what the machine located at /devices/pc/machine/5150/mda/64kb/machine.xml looks like:

<machine id="ibm5150" class="pc" border="1" pos="center" background="#FAEBD7">
	<name pos="center">IBM PC (Model 5150) with Monochrome Display</name>
	<computer id="pc-mda-64k" name="IBM PC" resume="1"/>
	<ram id="ramLow" addr="0x00000"/>
	<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 ref="/devices/pc/video/ibm/mda/ibm-mda.xml"/>
	<cpu id="cpu8088" model="8088" autostart="true" padleft="8px">
		<control type="button" binding="run">Run</control>
		<control type="button" binding="reset">Reset</control>
	</cpu>
	<keyboard ref="/devices/pc/keyboard/keyboard-minimal.xml"/>
	<fdc ref="/disks/pc/samples.xml" pos="right"/>
	<chipset id="chipset" model="5150" sw1="01000001" sw2="11110000"/>
</machine>

All the devices are fully configured within the XML file, except for the Keyboard and Floppy Disk Controller (FDC) devices, which are defined in separate XML files.