diff --git a/CMakeLists.txt b/CMakeLists.txt
index 29fedd6ad..2f6c18af0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -36,7 +36,7 @@ if(MUNT_EXTERNAL)
endif()
project(86Box
- VERSION 5.2
+ VERSION 6.0
DESCRIPTION "Emulator of x86-based systems"
HOMEPAGE_URL "https://86box.net"
LANGUAGES C CXX)
diff --git a/README-UNIX-MODE-WITH-OSD.txt b/README-UNIX-MODE-WITH-OSD.txt
new file mode 100644
index 000000000..2fff90103
--- /dev/null
+++ b/README-UNIX-MODE-WITH-OSD.txt
@@ -0,0 +1,78 @@
+UNIX MODE WITH OSD
+
+86Box supports running on the linux framebuffer without QT and without X, making the pc appear as a nearly native old machine.
+
+running it that way is already supported but when doing it, 86box loses all menu and all abilities to mount floppies and CDs, it also becomes the owner of the entire pc with no way of quitting it or changing virtual console.
+
+to overcome this, an on screen display menu is available that allows doing everything the textual console (src/unix/unix.c) does;
+mount/unmount all supported media like floppy and cd
+hard reset the machine
+quit 86box
+seeing the current performance %
+
+key bindings:
+Right Control + F11 opens the osd
+
+while is open:
+arrows up, down moves the cursor
+enter does the action, at mount options it enters a list of appropriate files (*.img, *.iso)
+ESC goes back to main or closes the OSD
+
+current limitations:
+ OSD can mount images to first floppy and first cd, secondary devices are not supported
+ it does not show if an image is mounted or not
+ the option "version" does actully print it, but it can't be seen beacuse its printed under 86box display
+ extremely long filenames can overflow the blue window
+ the title does actually overflow the window width :)
+
+These are the steps to install a machine fully dedicated to 86Box and tuned to make it appear almost native.
+This works almost the same for on a Raspberry Pi
+
+
+1) install a vanilla Debian Trixie with netinst and without any graphical environment, or a "server" distro for RPI
+ depending on the machine speed, this will make boot time extremely short
+
+2) apt update if necessary
+
+3) install git and almost all required packages
+ apt install git build-essential cmake extra-cmake-modules pkg-config ninja-build libfreetype-dev libsdl2-dev libpng-dev libopenal-dev librtmidi-dev libfluidsynth-dev libsndfile1-dev libserialport-dev libevdev-dev libxkbcommon-dev libxkbcommon-x11-dev libslirp-dev
+
+4) setup git and clone
+ git@github.com:86Box/86Box.git
+ git@github.com:86Box/roms.git
+
+5) build (128 => super speed, too much for a 2GB machine)
+ cd 86Box
+ mkdir build
+ cd build
+ cmake .. --preset regular -D QT=OFF -D PREFER_STATIC=ON
+ cmake --build regular -j 128
+ cd ../../
+ ln -s 86Box/build/regular/src/86Box 86Box.exe
+
+6) boot
+ as root so it can take complete ownership of the linux framebuffer
+
+7) notes:
+- 86Box will complain to be unable to find readline, this is fine, we don't need the command line at all
+- ALSOFT will complain it can't connect to PipeWire, no problem, sounds will come from standard ALSA
+
+8) additional steps
+ add a new udev rule to automount any USB key to a known location so files in it can be listed in the OSD floppy/cd mount options
+
+ create /etc/udev/rules.d/99-automount.rules
+
+ with:
+ ACTION=="add", ENV{ID_BUS}=="usb", ENV{ID_TYPE}=="disk", ENV{ID_FS_TYPE}=="exfat", RUN+="/usr/bin/systemd-mount --no-block --automount=yes --collect /dev/%k '/mnt'"
+
+ replicate this line for each filesystem you expect the usb key to be formatted, in this example "exfat"
+ this is going to conflict if multiple keys are inserted, don't do it
+
+final step
+ configure some 86box vm using another pc with the GUI
+ copy the VM definitions to this new pc and manually launch 86box from the textual command line
+ optionally craft a boot menu to be shown in place of the login prompt or setup 86box as a debiasn service, it will start at boot
+ just make sure the pc will be accessible via ssh or some other way, autobooting 86box canĂ make difficult terminating it
+
+
+
diff --git a/bumpversion.sh b/bumpversion.sh
index 6e2536cbe..76ef07554 100644
--- a/bumpversion.sh
+++ b/bumpversion.sh
@@ -43,23 +43,33 @@ pretty_date() {
# Patch files.
patch_file() {
- # Stop if the file doesn't exist.
- [ ! -e "$1" ] && return
+ # Parse arguments.
+ desc="$1"
+ shift
+ pattern="$1"
+ shift
- # Patch file.
- if sed -i -r -e "$3" "$1"
- then
- echo "[-] Patched $2 on $1"
- else
- echo "[!] Patching $2 on $1 failed"
- fi
+ # Patch the specified files.
+ for file in "$@"
+ do
+ # Skip file if it doesn't exist.
+ [ ! -e "$file" ] && continue
+
+ # Patch file.
+ if sed -i -r -e "$pattern" "$file"
+ then
+ echo "[-] Patched $desc in $file"
+ else
+ echo "[!] Patching $desc in $file failed"
+ fi
+ done
}
-patch_file CMakeLists.txt VERSION 's/^(\s*VERSION ).+/\1'"$newversion"'/'
-patch_file vcpkg.json version-string 's/(^\s*"version-string"\s*:\s*")[^"]+/\1'"$newversion"'/'
-patch_file src/unix/assets/*.spec Version 's/(Version:\s+)[0-9].+/\1'"$newversion"'/'
-patch_file src/unix/assets/*.spec '%global romver' 's/(^%global\ romver\s+)[0-9]{8}/\1'"$romversion"'/'
-patch_file src/unix/assets/*.spec 'changelog version' 's/(^[*]\s.*>\s+)[0-9].+/\1'"$newversion"-1'/'
-patch_file src/unix/assets/*.spec 'changelog date' 's/(^[*]\s)[a-zA-Z]{3}\s[a-zA-Z]{3}\s[0-9]{2}\s[0-9]{4}/\1'"$(pretty_date)"'/'
-patch_file src/unix/assets/*.metainfo.xml release 's/( .+/> '"$(date -R)"'/'
-patch_file debian/changelog 'changelog version' 's/86box \(.+\)/86box \('"$newversion"'\)/'
+patch_file VERSION 's/^(\s*VERSION ).+/\1'"$newversion"'/' CMakeLists.txt
+patch_file version-string 's/(^\s*"version-string"\s*:\s*")[^"]+/\1'"$newversion"'/' vcpkg.json
+patch_file Version 's/(Version:\s+)[0-9].+/\1'"$newversion"'/' src/unix/assets/*.spec
+patch_file '%global romver' 's/(^%global\ romver\s+)[^\s]+/\1'"$romversion"'/' src/unix/assets/*.spec
+patch_file 'changelog version' 's/(^[*]\s.*>\s+)[0-9].+/\1'"$newversion"-1'/' src/unix/assets/*.spec
+patch_file 'changelog date' 's/(^[*]\s)[a-zA-Z]{3}\s[a-zA-Z]{3}\s[0-9]{2}\s[0-9]{4}/\1'"$(pretty_date)"'/' src/unix/assets/*.spec
+patch_file release 's/( .+/> '"$(date -R)"'/' debian/changelog
+patch_file 'changelog version' 's/86box \(.+\)/86box \('"$newversion"'\)/' debian/changelog
diff --git a/debian/changelog b/debian/changelog
index cfb4bd9d0..d2606a616 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,5 @@
-86box (5.2) UNRELEASED; urgency=medium
+86box (6.0) UNRELEASED; urgency=medium
* Bump release.
- -- Jasmine Iwanek Thu, 18 Sep 2025 04:25:57 +0200
+ -- Jasmine Iwanek Sun, 26 Oct 2025 17:41:47 +0100
diff --git a/src/86box.c b/src/86box.c
index 4baed45f5..8b2dddc7f 100644
--- a/src/86box.c
+++ b/src/86box.c
@@ -1083,7 +1083,10 @@ usage:
/* Build the global configuration file path. */
if (global == NULL) {
plat_get_global_config_dir(global_cfg_path, sizeof(global_cfg_path));
- path_append_filename(global_cfg_path, global_cfg_path, GLOBAL_CONFIG_FILE);
+ // avoid strcpy global_cfg_path over itself (valgrind says it's bad...)
+ // path_append_filename(global_cfg_path, global_cfg_path, GLOBAL_CONFIG_FILE);
+ path_slash(global_cfg_path);
+ strcat(global_cfg_path, GLOBAL_CONFIG_FILE);
} else {
strncpy(global_cfg_path, global, sizeof(global_cfg_path) - 1);
}
@@ -1737,19 +1740,19 @@ update_mouse_msg(void)
*(wcp - 1) = L'\0';
mbstowcs(wcpu, cpu_s->name, strlen(cpu_s->name) + 1);
#ifdef _WIN32
- swprintf(mouse_msg[0], sizeof_w(mouse_msg[0]), L"%%i.%%i%%%% - %ls",
+ swprintf(mouse_msg[0], sizeof_w(mouse_msg[0]), L"%%i%%%% - %ls",
plat_get_string(STRING_MOUSE_CAPTURE));
- swprintf(mouse_msg[1], sizeof_w(mouse_msg[1]), L"%%i.%%i%%%% - %ls",
+ swprintf(mouse_msg[1], sizeof_w(mouse_msg[1]), L"%%i%%%% - %ls",
(mouse_get_buttons() > 2) ? plat_get_string(STRING_MOUSE_RELEASE) : plat_get_string(STRING_MOUSE_RELEASE_MMB));
wcsncpy(mouse_msg[2], L"%i.%i%%", sizeof_w(mouse_msg[2]));
#else
- swprintf(mouse_msg[0], sizeof_w(mouse_msg[0]), L"%ls v%ls - %%i.%%i%%%% - %ls - %ls/%ls - %ls",
+ swprintf(mouse_msg[0], sizeof_w(mouse_msg[0]), L"%ls v%ls - %%i%%%% - %ls - %ls/%ls - %ls",
EMU_NAME_W, EMU_VERSION_FULL_W, wmachine, wcpufamily, wcpu,
plat_get_string(STRING_MOUSE_CAPTURE));
- swprintf(mouse_msg[1], sizeof_w(mouse_msg[1]), L"%ls v%ls - %%i.%%i%%%% - %ls - %ls/%ls - %ls",
+ swprintf(mouse_msg[1], sizeof_w(mouse_msg[1]), L"%ls v%ls - %%i%%%% - %ls - %ls/%ls - %ls",
EMU_NAME_W, EMU_VERSION_FULL_W, wmachine, wcpufamily, wcpu,
(mouse_get_buttons() > 2) ? plat_get_string(STRING_MOUSE_RELEASE) : plat_get_string(STRING_MOUSE_RELEASE_MMB));
- swprintf(mouse_msg[2], sizeof_w(mouse_msg[2]), L"%ls v%ls - %%i.%%i%%%% - %ls - %ls/%ls",
+ swprintf(mouse_msg[2], sizeof_w(mouse_msg[2]), L"%ls v%ls - %%i%%%% - %ls - %ls/%ls",
EMU_NAME_W, EMU_VERSION_FULL_W, wmachine, wcpufamily, wcpu);
#endif
}
@@ -1884,7 +1887,7 @@ pc_run(void)
else
fps = ((fps + 20) / 50) * 50;
#endif
- swprintf(temp, sizeof_w(temp), mouse_msg[mouse_msg_idx], fps / (force_10ms ? 1 : 10), force_10ms ? 0 : (fps % 10));
+ swprintf(temp, sizeof_w(temp), mouse_msg[mouse_msg_idx], fps / (force_10ms ? 1 : 10));
#ifdef __APPLE__
/* Needed due to modifying the UI on the non-main thread is a big no-no. */
dispatch_async_f(dispatch_get_main_queue(), wcsdup((const wchar_t *) temp), _ui_window_title);
diff --git a/src/cdrom/cdrom_image.c b/src/cdrom/cdrom_image.c
index 816a563d8..6452868ab 100644
--- a/src/cdrom/cdrom_image.c
+++ b/src/cdrom/cdrom_image.c
@@ -1803,6 +1803,16 @@ image_load_cue(cd_image_t *img, const char *cuefile)
lo_cmd = 0;
image_log(img->log, " [SESSION ] Initialization successful\n");
+ } else if (!strcmp(command, "TAOGAP")) {
+ ci = &(ct->idx[2]);
+
+ ci->type = INDEX_ZERO;
+ ci->file = tf;
+ success = image_cue_get_frame(&frame, &line);
+ ci->length = frame;
+
+ image_log(img->log, " [INDEX ] 02 (%8s): Initialization %s\n",
+ cit[ci->type + 2], success ? "successful" : "failed");
}
}
}
diff --git a/src/cdrom/cdrom_mke.c b/src/cdrom/cdrom_mke.c
index 98ae6c057..9632c3140 100644
--- a/src/cdrom/cdrom_mke.c
+++ b/src/cdrom/cdrom_mke.c
@@ -1041,6 +1041,7 @@ static const device_config_t mke_config[] = {
{ .description = "320H", .value = 0x320 },
{ .description = "330H", .value = 0x330 },
{ .description = "340H", .value = 0x340 },
+ { .description = "630H", .value = 0x630 },
{ NULL }
},
.bios = { { 0 } }
diff --git a/src/chipset/vl82c59x.c b/src/chipset/vl82c59x.c
index 468978718..69b6ebf1d 100644
--- a/src/chipset/vl82c59x.c
+++ b/src/chipset/vl82c59x.c
@@ -8,25 +8,23 @@
*
* Implementation of the VLSI SuperCore and Wildcat chipsets.
*
- *
- *
* Authors: Miran Grca,
* win2kgamer
*
* Copyright 2020-2025 Miran Grca.
* Copyright 2025 win2kgamer
*/
-
#ifdef ENABLE_VL82C59X_LOG
#include
#endif
-
#include
#include
#include
#include
#include
+#ifdef ENABLE_VL82C59X_LOG
#define HAVE_STDARG_H
+#endif
#include <86box/86box.h>
#include "cpu.h"
#include <86box/device.h>
@@ -138,21 +136,21 @@ vl82c59x_smram(vl82c59x_t *dev)
/* A/B region SMRAM seems to not be controlled by 591 reg 0x7C/SMRAM enable */
/* Dell Dimension BIOS breaks if A0000 region is controlled by SMRAM enable */
- if (dev->pci_conf[0x64] & 0x55) {
+ if (dev->pci_conf[0x64] & 0x55)
smram_enable(dev->smram[0], 0x000a0000, 0x000a0000, 0x10000, dev->pci_conf[0x64] & 0xAA, dev->pci_conf[0x64] & 0x55);
- }
- if (dev->pci_conf[0x65] & 0x55) {
+
+ if (dev->pci_conf[0x65] & 0x55)
smram_enable(dev->smram[1], 0x000b0000, 0x000b0000, 0x10000, dev->pci_conf[0x65] & 0xAA, dev->pci_conf[0x65] & 0x55);
- }
/* Handle E region SMRAM */
if (dev->pci_conf[0x7C] & 0x80) {
- if (dev->pci_conf[0x68] & 0x05) {
- smram_enable(dev->smram[2], 0x000e0000, 0x000e0000, 0x8000, dev->pci_conf[0x68] & 0x0A, dev->pci_conf[0x68] & 0x05);
- }
- if (dev->pci_conf[0x68] & 0x50) {
- smram_enable(dev->smram[3], 0x000e8000, 0x000e8000, 0x8000, dev->pci_conf[0x68] & 0xA0, dev->pci_conf[0x68] & 0x50);
- }
+ if (dev->pci_conf[0x68] & 0x05)
+ smram_enable(dev->smram[2], 0x000e0000, 0x000e0000, 0x8000,
+ dev->pci_conf[0x68] & 0x0a, dev->pci_conf[0x68] & 0x05);
+
+ if (dev->pci_conf[0x68] & 0x50)
+ smram_enable(dev->smram[3], 0x000e8000, 0x000e8000, 0x8000,
+ dev->pci_conf[0x68] & 0xa0, dev->pci_conf[0x68] & 0x50);
}
flushmmucache();
@@ -216,82 +214,62 @@ vl82c59x_write(int func, int addr, uint8_t val, void *priv)
vl82c59x_log(dev->log, "[%04X:%08X] VL82c591: [W] (%02X, %02X) = %02X\n", CS, cpu_state.pc, func, addr, val);
- if (func == 0x00)
- switch (addr) {
- case 0x04:
- case 0x05: /* PCI Command Register */
+ if (func == 0x00) switch (addr) {
+ case 0x04: case 0x05: /* PCI Command Register */
+ dev->pci_conf[addr] = val;
+ break;
+ case 0x54: /* Cache Control Register 1 */
+ dev->pci_conf[addr] = val;
+ cpu_cache_ext_enabled = (val & 0xc0);
+ cpu_update_waitstates();
+ break;
+ case 0x55: /* Cache Control Register 2 */
+ dev->pci_conf[addr] = val;
+ cpu_cache_int_enabled = (val & 0x40);
+ cpu_update_waitstates();
+ break;
+ case 0x58: /* RAMCFG0 */
+ case 0x59: /* RAMCFG1 */
+ dev->pci_conf[addr] = val;
+ break;
+ case 0x5a: /* Wildcat EDO RAM control */
+ if (dev->type == 0x01)
dev->pci_conf[addr] = val;
- break;
- case 0x54: /* Cache Control Register 1 */
- dev->pci_conf[addr] = val;
- cpu_cache_ext_enabled = (val & 0xc0);
- cpu_update_waitstates();
- break;
- case 0x55: /* Cache Control Register 2 */
- dev->pci_conf[addr] = val;
- cpu_cache_int_enabled = (val & 0x40);
- cpu_update_waitstates();
- break;
- case 0x58: /* RAMCFG0 */
- case 0x59: /* RAMCFG1 */
- dev->pci_conf[addr] = val;
- break;
- case 0x5A: /* Wildcat EDO RAM control */
- if (dev->type == 0x01) {
- dev->pci_conf[addr] = val;
- }
- break;
- case 0x5C: /* RAMCTL0 */
- case 0x5D: /* RAMCTL1 */
- case 0x5E: /* RAMCTL2 */
- case 0x5F:
- case 0x60:
- case 0x62:
- /* Apricot XEN-PC Ruby/Jade BIOS requires bit 2 to be set or */
- /* CMOS setup hangs on subsequent runs after NVRAM is initialized */
- dev->pci_conf[addr] = val;
- break;
- case 0x64: /* A-B SMRAM regs */
- case 0x65:
- dev->pci_conf[addr] = val;
- vl82c59x_smram(dev);
- break;
- case 0x66: /* Shadow RAM */
- case 0x67:
- case 0x68:
- case 0x69:
- dev->pci_conf[addr] = val;
- vl82c59x_recalc(dev);
- vl82c59x_smram(dev);
- break;
- case 0x6C: /* L2 Cacheability registers */
- case 0x6D:
- case 0x6E:
- case 0x6F:
- case 0x70:
- case 0x71:
- case 0x74: /* Suspected PMRA registers */
- case 0x75:
- case 0x76:
- case 0x78:
- case 0x79:
- case 0x7A:
- dev->pci_conf[addr] = val;
- break;
- case 0x7C: /* MISCSSET, bit 7 is SMRAM enable (for the E region) */
- /* io.c logging shows BIOSes setting Bit 7 here */
- dev->pci_conf[addr] = val;
- vl82c59x_smram(dev);
- break;
- case 0x7D: /* Unknown but seems Wildcat-specific, Zeos and PB600 BIOSes hang if bit 3 is writable */
- if (dev->type == 0x01) {
- dev->pci_conf[addr] = val & 0xf7;
- }
- break;
- default:
- if (addr > 0x3F)
- vl82c59x_log(dev->log, "VL82c591: Unknown reg [W] (%02X, %02X) = %02X\n", func, addr, val);
- break;
+ break;
+ case 0x5c ... 0x5e: /* RAMCTL0-RAMCTL2 */
+ case 0x5f ... 0x60:
+ case 0x62:
+ /* Apricot XEN-PC Ruby/Jade BIOS requires bit 2 to be set or */
+ /* CMOS setup hangs on subsequent runs after NVRAM is initialized */
+ dev->pci_conf[addr] = val;
+ break;
+ case 0x64 ... 0x65: /* A-B SMRAM regs */
+ dev->pci_conf[addr] = val;
+ vl82c59x_smram(dev);
+ break;
+ case 0x66 ... 0x69: /* Shadow RAM */
+ dev->pci_conf[addr] = val;
+ vl82c59x_recalc(dev);
+ vl82c59x_smram(dev);
+ break;
+ case 0x6c ... 0x71: /* L2 Cacheability registers */
+ case 0x74 ... 0x76: /* Suspected PMRA registers */
+ case 0x78 ... 0x7a:
+ dev->pci_conf[addr] = val;
+ break;
+ case 0x7c: /* MISCSSET, bit 7 is SMRAM enable (for the E region) */
+ /* io.c logging shows BIOSes setting Bit 7 here */
+ dev->pci_conf[addr] = val;
+ vl82c59x_smram(dev);
+ break;
+ case 0x7d: /* Unknown but seems Wildcat-specific, Zeos and PB600 BIOSes hang if bit 3 is writable */
+ if (dev->type == 0x01)
+ dev->pci_conf[addr] = val & 0xf7;
+ break;
+ default:
+ if (addr > 0x3f)
+ vl82c59x_log(dev->log, "VL82c591: Unknown reg [W] (%02X, %02X) = %02X\n", func, addr, val);
+ break;
}
}
@@ -302,12 +280,10 @@ vl82c59x_read(int func, int addr, void *priv)
const vl82c59x_t *dev = (vl82c59x_t *) priv;
uint8_t ret = 0xff;
- if (func == 0x00) {
- switch (addr) {
- default:
- ret = dev->pci_conf[addr];
- break;
- }
+ if (func == 0x00) switch (addr) {
+ default:
+ ret = dev->pci_conf[addr];
+ break;
}
vl82c59x_log(dev->log, "[%04X:%08X] VL82c591: [R] (%02X, %02X) = %02X\n", CS, cpu_state.pc, func, addr, ret);
@@ -324,110 +300,83 @@ vl82c59x_sb_write(int func, int addr, uint8_t val, void *priv)
vl82c59x_log(dev->log, "[%04X:%08X] VL82c593: [W] (%02X, %02X) = %02X\n", CS, cpu_state.pc, func, addr, val);
- if (func == 0x00)
- switch (addr) {
- case 0x04:
- case 0x05: /* PCI Command Register */
+ if (func == 0x00) switch (addr) {
+ case 0x04 ... 0x05: /* PCI Command Register */
dev->pci_conf_sb[addr] = val;
break;
- case 0x50: /* MISCSETC */
- case 0x51: /* MISCSETB */
- case 0x52: /* MISCSETA */
- case 0x53:
- case 0x54:
- case 0x55:
- case 0x56:
- case 0x57:
- case 0x58:
- case 0x59:
- case 0x5A:
- /* Has at least one GPIO bit. Compaq Presario 700/900 586 BIOS */
- /* uses bit 2 as an output to set the onboard ES688's base I/O */
- /* address. Bit 2 cleared = 220, bit 2 set = 240 */
- case 0x5C: /* Interrupt Assertion Level Register */
- case 0x5D:
+ case 0x50 ... 0x52: /* MISCSETC-MISCSETA */
+ case 0x53 ... 0x5a:
+ /* Has at least one GPIO bit. Compaq Presario 700/900 586 BIOS */
+ /* uses bit 2 as an output to set the onboard ES688's base I/O */
+ /* address. Bit 2 cleared = 220, bit 2 set = 240 */
+ case 0x5c ... 0x5d: /* Interrupt Assertion Level Register */
+ dev->pci_conf_sb[addr] = val;
+ break;
+ case 0x60: /* SMI Enable Register */
+ dev->pci_conf_sb[addr] = val;
+ break;
+ case 0x61: /* SMI Status Register */
+ dev->pci_conf_sb[addr] = 0x00;
+ break;
+ case 0x62: /* SMI I/O port high byte */
+ case 0x63: /* SMI I/O port low byte */
+ dev->pci_conf_sb[addr] = val;
+ vl82c59x_set_pm_io(dev);
+ break;
+ case 0x64: /* System Event Enable Register 1 */
+ case 0x66: /* System Event Enable Register 2 */
+ case 0x68: /* System Event Enable Register 3 */
+ dev->pci_conf_sb[addr] = val;
+ break;
+ case 0x65: /* System Event Status Register 1 */
+ case 0x67: /* System Event Status Register 2 */
+ case 0x69: /* System Event Status Register 3 */
+ dev->pci_conf_sb[addr] = 0x00;
+ break;
+ case 0x6a: /* PCI Activity Control Register */
+ /* Top 4 bits are Read/Clear */
+ dev->pci_conf_sb[addr] = val & 0x0f;
+ break;
+ case 0x6b: /* Programmable I/O Range Register High Byte */
+ dev->pci_conf_sb[addr] = val;
+ break;
+ case 0x6c: /* Programmable I/O Range Register Low Byte */
+ case 0x6d: /* System Event Control Register/SMI Global Enable */
dev->pci_conf_sb[addr] = val;
break;
- case 0x60: /* SMI Enable Register */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x61: /* SMI Status Register */
- dev->pci_conf_sb[addr] = 0x00;
- break;
- case 0x62: /* SMI I/O port high byte */
- case 0x63: /* SMI I/O port low byte */
- dev->pci_conf_sb[addr] = val;
- vl82c59x_set_pm_io(dev);
- break;
- case 0x64: /* System Event Enable Register 1 */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x65: /* System Event Status Register 1 */
- dev->pci_conf_sb[addr] = 0x00;
- break;
- case 0x66: /* System Event Enable Register 2 */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x67: /* System Event Status Register 2 */
- dev->pci_conf_sb[addr] = 0x00;
- break;
- case 0x68: /* System Event Enable Register 3 */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x69: /* System Event Status Register 3 */
- dev->pci_conf_sb[addr] = 0x00;
- break;
- case 0x6A: /* PCI Activity Control Register */
- dev->pci_conf_sb[addr] = val & 0x0f; /* Top 4 bits are Read/Clear */
- break;
- case 0x6B: /* Programmable I/O Range Register High Byte */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x6C: /* Programmable I/O Range Register Low Byte */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x6D: /* System Event Control Register/SMI Global Enable */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x6E:
- case 0x6F:
- case 0x70:
- case 0x71:
- case 0x72: /* GPIO */
- /* Compaq Presario and Prolinea use bits 6-4 for setting ECP DMA */
- /* 011 (0x03) = DMA 3 (Default) */
- /* 100 (0x04) = DMA 0 */
- /* 111 (0x07) = DMA disabled */
- case 0x73: /* GPIO */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x74: /* PCI Interrupt Connection Register (PCIINT0/1) */
- dev->pci_conf_sb[addr] = val;
- irq = irq_array[val & 0x07];
- pci_set_irq_routing(PCI_INTA, (irq != 0) ? irq : PCI_IRQ_DISABLED);
- irq = irq_array[(val & 0x70) >> 4];
- pci_set_irq_routing(PCI_INTB, (irq != 0) ? irq : PCI_IRQ_DISABLED);
- break;
- case 0x75: /* PCI Interrupt Connection Register (PCIINT2/3) */
- dev->pci_conf_sb[addr] = val;
- irq = irq_array[val & 0x07];
- pci_set_irq_routing(PCI_INTC, (irq != 0) ? irq : PCI_IRQ_DISABLED);
- irq = irq_array[(val & 0x70) >> 4];
- pci_set_irq_routing(PCI_INTD, (irq != 0) ? irq : PCI_IRQ_DISABLED);
- break;
- case 0x76: /* PCI Interrupt Connection Register (ISA/PCIINT) */
- dev->pci_conf_sb[addr] = val;
- break;
- case 0x77:
- case 0x78:
- dev->pci_conf_sb[addr] = val;
- break;
- default:
- if (addr > 0x3F)
- vl82c59x_log(dev->log, "VL82c593: Unknown reg [W] (%02X, %02X) = %02X\n", func, addr, val);
- break;
+ case 0x6e ... 0x72: /* GPIO */
+ /* Compaq Presario and Prolinea use bits 6-4 for setting ECP DMA */
+ /* 011 (0x03) = DMA 3 (Default) */
+ /* 100 (0x04) = DMA 0 */
+ /* 111 (0x07) = DMA disabled */
+ case 0x73: /* GPIO */
+ dev->pci_conf_sb[addr] = val;
+ break;
+ case 0x74: /* PCI Interrupt Connection Register (PCIINT0/1) */
+ dev->pci_conf_sb[addr] = val;
+ irq = irq_array[val & 0x07];
+ pci_set_irq_routing(PCI_INTA, (irq != 0) ? irq : PCI_IRQ_DISABLED);
+ irq = irq_array[(val & 0x70) >> 4];
+ pci_set_irq_routing(PCI_INTB, (irq != 0) ? irq : PCI_IRQ_DISABLED);
+ break;
+ case 0x75: /* PCI Interrupt Connection Register (PCIINT2/3) */
+ dev->pci_conf_sb[addr] = val;
+ irq = irq_array[val & 0x07];
+ pci_set_irq_routing(PCI_INTC, (irq != 0) ? irq : PCI_IRQ_DISABLED);
+ irq = irq_array[(val & 0x70) >> 4];
+ pci_set_irq_routing(PCI_INTD, (irq != 0) ? irq : PCI_IRQ_DISABLED);
+ break;
+ case 0x76: /* PCI Interrupt Connection Register (ISA/PCIINT) */
+ dev->pci_conf_sb[addr] = val;
+ break;
+ case 0x77 ... 0x78:
+ dev->pci_conf_sb[addr] = val;
+ break;
+ default:
+ if (addr > 0x3f)
+ vl82c59x_log(dev->log, "VL82c593: Unknown reg [W] (%02X, %02X) = %02X\n", func, addr, val);
+ break;
}
-
}
static uint8_t
@@ -436,30 +385,29 @@ vl82c59x_sb_read(int func, int addr, void *priv)
const vl82c59x_t *dev = (vl82c59x_t *) priv;
uint8_t ret = 0xff;
- if (func == 0x00)
- switch (addr) {
- case 0x69: /* Lower two bits are a CPU speed readout per Compaq's Prolinea E series TRG */
- /* Per the Prolinea TRG bits 5/3/1 of 593 reg 0x73 must be set to 1 to read the jumpers */
- if (dev->is_compaq && (dev->pci_conf_sb[0x73] & 0x2A)) {
- /* Set bit 2 to 1 as this is required for the Prolinea E to be properly identified
- in Compaq Computer Setup. */
- ret = (dev->pci_conf_sb[addr] | 0x04);
- if (cpu_busspeed <= 50000000)
- ret = (ret & 0xfd); /* 50MHz: Bit 1 = 0 */
- else
- ret = (ret | 0x02); /* 60MHz: Bit 1 = 1 */
+ if (func == 0x00) switch (addr) {
+ case 0x69:
+ /* Lower two bits are a CPU speed readout per Compaq's Prolinea E series TRG */
+ /* Per the Prolinea TRG bits 5/3/1 of 593 reg 0x73 must be set to 1 to read the jumpers */
+ if (dev->is_compaq && (dev->pci_conf_sb[0x73] & 0x2A)) {
+ /* Set bit 2 to 1 as this is required for the Prolinea E to be properly identified
+ in Compaq Computer Setup. */
+ ret = (dev->pci_conf_sb[addr] | 0x04);
+ if (cpu_busspeed <= 50000000)
+ ret = (ret & 0xfd); /* 50MHz: Bit 1 = 0 */
+ else
+ ret = (ret | 0x02); /* 60MHz: Bit 1 = 1 */
- if (cpu_dmulti <= 1.5)
- ret = (ret | 0x01); /* 1.5x mult: Bit 0 = 1 */
- else
- ret = (ret & 0xfe); /* 2.0x mult: Bit 0 = 0 */
- } else {
- ret = dev->pci_conf_sb[addr];
- }
- break;
- default:
+ if (cpu_dmulti <= 1.5)
+ ret = (ret | 0x01); /* 1.5x mult: Bit 0 = 1 */
+ else
+ ret = (ret & 0xfe); /* 2.0x mult: Bit 0 = 0 */
+ } else
ret = dev->pci_conf_sb[addr];
- break;
+ break;
+ default:
+ ret = dev->pci_conf_sb[addr];
+ break;
}
vl82c59x_log(dev->log, "[%04X:%08X] VL82c593: [R] (%02X, %02X) = %02X\n", CS, cpu_state.pc, func, addr, ret);
diff --git a/src/config.c b/src/config.c
index 102f9de97..a0ef1c9e7 100644
--- a/src/config.c
+++ b/src/config.c
@@ -339,6 +339,7 @@ load_machine(void)
{ .old = "infinia7200", .new = "tc430hx", .new_bios = "infinia7200" },
{ .old = "dellvenus", .new = "vs440fx", .new_bios = "dellvenus" },
{ .old = "gw2kvenus", .new = "vs440fx", .new_bios = "gw2kvenus" },
+ { .old = "lgibmx7g", .new = "ms6119", .new_bios = "lgibmx7g" },
{ 0 }
};
@@ -569,6 +570,7 @@ load_input_devices(void)
{
ini_section_t cat = ini_find_section(config, "Input devices");
char temp[512];
+ char tmp2[32];
char *p;
p = ini_section_get_string(cat, "keyboard_type", NULL);
@@ -639,25 +641,34 @@ load_input_devices(void)
} else
joystick_type[joy_insn] = JS_TYPE_NONE;
+ uint8_t gp = 0;
+
for (int js = 0; js < joystick_get_max_joysticks(joystick_type[joy_insn]); js++) {
sprintf(temp, "joystick_%i_nr", js);
- joystick_state[0][js].plat_joystick_nr = ini_section_get_int(cat, temp, 0);
+ joystick_state[gp][js].plat_joystick_nr = ini_section_get_int(cat, temp, 0);
- if (joystick_state[0][js].plat_joystick_nr) {
+ if (joystick_state[gp][js].plat_joystick_nr) {
+ // --- Load Axis Mappings ---
for (int axis_nr = 0; axis_nr < joystick_get_axis_count(joystick_type[joy_insn]); axis_nr++) {
sprintf(temp, "joystick_%i_axis_%i", js, axis_nr);
- joystick_state[0][js].axis_mapping[axis_nr] = ini_section_get_int(cat, temp, axis_nr);
+ joystick_state[gp][js].axis_mapping[axis_nr] = ini_section_get_int(cat, temp, axis_nr);
}
+
+ // --- Load Button Mappings ---
for (int button_nr = 0; button_nr < joystick_get_button_count(joystick_type[joy_insn]); button_nr++) {
sprintf(temp, "joystick_%i_button_%i", js, button_nr);
- joystick_state[0][js].button_mapping[button_nr] = ini_section_get_int(cat, temp, button_nr);
+ joystick_state[gp][js].button_mapping[button_nr] = ini_section_get_int(cat, temp, button_nr);
}
+
+ // --- Load POV (Hat Switch) Mappings ---
for (int pov_nr = 0; pov_nr < joystick_get_pov_count(joystick_type[joy_insn]); pov_nr++) {
sprintf(temp, "joystick_%i_pov_%i", js, pov_nr);
- p = ini_section_get_string(cat, temp, "0, 0");
- joystick_state[0][js].pov_mapping[pov_nr][0] = joystick_state[0][js].pov_mapping[pov_nr][1] = 0;
- sscanf(p, "%i, %i", &joystick_state[0][js].pov_mapping[pov_nr][0],
- &joystick_state[0][js].pov_mapping[pov_nr][1]);
+ sprintf(tmp2, "%i, %i", 0, 0);
+ p = ini_section_get_string(cat, temp, tmp2);
+ joystick_state[gp][js].pov_mapping[pov_nr][0] = 0;
+ joystick_state[gp][js].pov_mapping[pov_nr][1] = 0;
+ sscanf(p, "%i, %i", &joystick_state[gp][js].pov_mapping[pov_nr][0],
+ &joystick_state[gp][js].pov_mapping[pov_nr][1]);
}
}
}
@@ -1491,7 +1502,7 @@ load_floppy_and_cdrom_drives(void)
sprintf(temp, "cdrom_%02i_type", c + 1);
p = ini_section_get_string(cat, temp, cdrom[c].bus_type == CDROM_BUS_MKE ? "cr563" : "86cd");
/* TODO: Configuration migration, remove when no longer needed. */
- int cdrom_type = cdrom_get_from_internal_name(p);
+ int cdrom_type = cdrom_get_from_internal_name(!strcmp(p, "goldstar") ? "goldstar_r560b" : p);
if (cdrom_type == -1) {
cdrom_type = cdrom_get_from_name(p);
if (cdrom_type == -1)
@@ -2700,7 +2711,7 @@ save_input_devices(void)
{
ini_section_t cat = ini_find_or_create_section(config, "Input devices");
char temp[512];
- char tmp2[512];
+ char tmp2[32];
ini_section_set_string(cat, "keyboard_type", keyboard_get_internal_name(keyboard_type));
@@ -2711,53 +2722,64 @@ save_input_devices(void)
ini_section_delete_var(cat, "joystick_type");
for (int js = 0; js < MAX_PLAT_JOYSTICKS; js++) {
- sprintf(tmp2, "joystick_%i_nr", js);
- ini_section_delete_var(cat, tmp2);
+ sprintf(temp, "joystick_%i_nr", js);
+ ini_section_delete_var(cat, temp);
+ // --- Save Axis Mappings ---
for (int axis_nr = 0; axis_nr < MAX_JOY_AXES; axis_nr++) {
- sprintf(tmp2, "joystick_%i_axis_%i", js, axis_nr);
- ini_section_delete_var(cat, tmp2);
+ sprintf(temp, "joystick_%i_axis_%i", js, axis_nr);
+ ini_section_delete_var(cat, temp);
}
+
+ // --- Save Button Mappings ---
for (int button_nr = 0; button_nr < MAX_JOY_BUTTONS; button_nr++) {
- sprintf(tmp2, "joystick_%i_button_%i", js, button_nr);
- ini_section_delete_var(cat, tmp2);
+ sprintf(temp, "joystick_%i_button_%i", js, button_nr);
+ ini_section_delete_var(cat, temp);
}
+
+ // --- Save POV (Hat Switch) Mappings ---
for (int pov_nr = 0; pov_nr < MAX_JOY_POVS; pov_nr++) {
- sprintf(tmp2, "joystick_%i_pov_%i", js, pov_nr);
- ini_section_delete_var(cat, tmp2);
+ sprintf(temp, "joystick_%i_pov_%i", js, pov_nr);
+ ini_section_delete_var(cat, temp);
}
}
} else {
+ uint8_t gp = 0;
+
ini_section_set_string(cat, "joystick_type", joystick_get_internal_name(joystick_type[joy_insn]));
for (int js = 0; js < joystick_get_max_joysticks(joystick_type[joy_insn]); js++) {
- sprintf(tmp2, "joystick_%i_nr", js);
- ini_section_set_int(cat, tmp2, joystick_state[0][js].plat_joystick_nr);
+ sprintf(temp, "joystick_%i_nr", js);
+ ini_section_set_int(cat, temp, joystick_state[gp][js].plat_joystick_nr);
- if (joystick_state[0][js].plat_joystick_nr) {
+ if (joystick_state[gp][js].plat_joystick_nr) {
+ // --- Save Axis Mappings ---
for (int axis_nr = 0; axis_nr < joystick_get_axis_count(joystick_type[joy_insn]); axis_nr++) {
- sprintf(tmp2, "joystick_%i_axis_%i", js, axis_nr);
- ini_section_set_int(cat, tmp2, joystick_state[0][js].axis_mapping[axis_nr]);
+ sprintf(temp, "joystick_%i_axis_%i", js, axis_nr);
+ ini_section_set_int(cat, temp, joystick_state[gp][js].axis_mapping[axis_nr]);
}
+
+ // --- Save Button Mappings ---
for (int button_nr = 0; button_nr < joystick_get_button_count(joystick_type[joy_insn]); button_nr++) {
- sprintf(tmp2, "joystick_%i_button_%i", js, button_nr);
- ini_section_set_int(cat, tmp2, joystick_state[0][js].button_mapping[button_nr]);
+ sprintf(temp, "joystick_%i_button_%i", js, button_nr);
+ ini_section_set_int(cat, temp, joystick_state[gp][js].button_mapping[button_nr]);
}
+
+ // --- Save POV (Hat Switch) Mappings ---
for (int pov_nr = 0; pov_nr < joystick_get_pov_count(joystick_type[joy_insn]); pov_nr++) {
- sprintf(tmp2, "joystick_%i_pov_%i", js, pov_nr);
- sprintf(temp, "%i, %i", joystick_state[0][js].pov_mapping[pov_nr][0],
- joystick_state[0][js].pov_mapping[pov_nr][1]);
- ini_section_set_string(cat, tmp2, temp);
+ sprintf(temp, "joystick_%i_pov_%i", js, pov_nr);
+ sprintf(tmp2, "%i, %i", joystick_state[gp][js].pov_mapping[pov_nr][0],
+ joystick_state[gp][js].pov_mapping[pov_nr][1]);
+ ini_section_set_string(cat, temp, tmp2);
}
}
}
}
- if (tablet_tool_type != 1) {
+ if (tablet_tool_type != 1)
ini_section_set_int(cat, "tablet_tool_type", tablet_tool_type);
- } else {
+ else
ini_section_delete_var(cat, "tablet_tool_type");
- }
ini_delete_section_if_empty(config, cat);
}
diff --git a/src/cpu/386_dynarec.c b/src/cpu/386_dynarec.c
index 23f3f1e35..41a61495e 100644
--- a/src/cpu/386_dynarec.c
+++ b/src/cpu/386_dynarec.c
@@ -405,7 +405,7 @@ exec386_dynarec_dyn(void)
uint64_t mask = (uint64_t) 1 << ((phys_addr >> PAGE_MASK_SHIFT) & PAGE_MASK_MASK);
# ifdef USE_NEW_DYNAREC
int byte_offset = (phys_addr >> PAGE_BYTE_MASK_SHIFT) & PAGE_BYTE_MASK_OFFSET_MASK;
- uint64_t byte_mask = 1ULL << (PAGE_BYTE_MASK_MASK & 0x3f);
+ uint64_t byte_mask = 1ULL << (phys_addr & PAGE_BYTE_MASK_MASK);
if ((page->code_present_mask & mask) ||
((page->mem != page_ff) && (page->byte_code_present_mask[byte_offset] & byte_mask)))
diff --git a/src/cpu/cpu_table.c b/src/cpu/cpu_table.c
index 3adbc7202..cb337b405 100644
--- a/src/cpu/cpu_table.c
+++ b/src/cpu/cpu_table.c
@@ -5319,6 +5319,40 @@ const cpu_family_t cpu_families[] = {
.cache_write_cycles = 17,
.atclk_div = 66
},
+ {
+ .name = "570",
+ .cpu_type = CPU_K6_2C,
+ .fpus = fpus_internal,
+ .rspeed = 570000000,
+ .multi = 6.0,
+ .voltage = 2300,
+ .edx_reset = 0x58c,
+ .cpuid_model = 0x58c,
+ .cyrix_id = 0,
+ .cpu_flags = CPU_SUPPORTS_DYNAREC | CPU_REQUIRES_DYNAREC,
+ .mem_read_cycles = 52,
+ .mem_write_cycles = 52,
+ .cache_read_cycles = 18,
+ .cache_write_cycles = 18,
+ .atclk_div = 68
+ },
+ {
+ .name = "600 (570 OC)",
+ .cpu_type = CPU_K6_2C,
+ .fpus = fpus_internal,
+ .rspeed = 600000000,
+ .multi = 6.0,
+ .voltage = 2300,
+ .edx_reset = 0x58c,
+ .cpuid_model = 0x58c,
+ .cyrix_id = 0,
+ .cpu_flags = CPU_SUPPORTS_DYNAREC | CPU_REQUIRES_DYNAREC,
+ .mem_read_cycles = 54,
+ .mem_write_cycles = 54,
+ .cache_read_cycles = 18,
+ .cache_write_cycles = 18,
+ .atclk_div = 72
+ },
{ .name = "", 0 }
}
}, {
diff --git a/src/cpu/x86seg.c b/src/cpu/x86seg.c
index 145752237..9b8afa0e5 100644
--- a/src/cpu/x86seg.c
+++ b/src/cpu/x86seg.c
@@ -143,7 +143,7 @@ x86_doabrt(int x86_abrt)
}
}
-static void
+static inline void
set_stack32(int s)
{
stack32 = s;
@@ -154,7 +154,7 @@ set_stack32(int s)
cpu_cur_status &= ~CPU_STATUS_STACK32;
}
-static void
+static inline void
set_use32(int u)
{
use32 = u ? 0x300 : 0;
@@ -202,7 +202,7 @@ do_seg_load(x86seg *s, uint16_t *segdat)
}
#endif
-static void
+static inline void
do_seg_v86_init(x86seg *s)
{
s->access = 0xe2;
@@ -761,7 +761,7 @@ loadcsjmp(uint16_t seg, uint32_t old_pc)
}
}
-static void
+static inline void
PUSHW(uint16_t v)
{
if (stack32) {
@@ -777,7 +777,7 @@ PUSHW(uint16_t v)
}
}
-static void
+static inline void
PUSHL(uint32_t v)
{
if (cpu_16bitbus) {
@@ -798,7 +798,7 @@ PUSHL(uint32_t v)
}
}
-static void
+static inline void
PUSHL_SEL(uint32_t v)
{
if (cpu_16bitbus) {
@@ -819,7 +819,7 @@ PUSHL_SEL(uint32_t v)
}
}
-static uint16_t
+static inline uint16_t
POPW(void)
{
uint16_t tempw;
@@ -837,7 +837,7 @@ POPW(void)
return tempw;
}
-static uint32_t
+static inline uint32_t
POPL(void)
{
uint32_t templ;
diff --git a/src/device.c b/src/device.c
index cd5adfee0..98d4794cf 100644
--- a/src/device.c
+++ b/src/device.c
@@ -396,143 +396,69 @@ device_available(const device_t *dev)
return ret;
}
-uint8_t
-device_get_bios_type(const device_t *dev, const char *internal_name)
+static const device_config_bios_t *
+device_get_bios(const device_t *dev, const char *internal_name)
{
if (dev != NULL) {
const device_config_t *config = dev->config;
- if (config != NULL) {
- while (config->type != CONFIG_END) {
- if (config->type == CONFIG_BIOS) {
- const device_config_bios_t *bios = (const device_config_bios_t *) config->bios;
- while ((bios != NULL) &&
- (bios->name != NULL) &&
- (bios->internal_name != NULL) &&
- (bios->files_no != 0)) {
- if (!strcmp(internal_name, bios->internal_name))
- return bios->bios_type;
- bios++;
- }
+ while (config && (config->type != CONFIG_END)) {
+ if (config->type == CONFIG_BIOS) {
+ const device_config_bios_t *bios = (const device_config_bios_t *) config->bios;
+
+ /* Go through the ROMs in the device configuration. */
+ while ((bios != NULL) &&
+ (bios->name != NULL) &&
+ (bios->internal_name != NULL) &&
+ (bios->files_no != 0)) {
+ if (!strcmp(internal_name, bios->internal_name))
+ return bios;
+ bios++;
}
- config++;
+
+ /* Unknown value, fall back to the default ROMs. */
+ if (strcmp(internal_name, config->default_string))
+ return device_get_bios(dev, config->default_string);
}
+ config++;
}
}
- return 0;
+ return NULL;
+}
+
+uint8_t
+device_get_bios_type(const device_t *dev, const char *internal_name)
+{
+ const device_config_bios_t *bios = device_get_bios(dev, internal_name);
+ return bios ? bios->bios_type : 0;
}
uint8_t
device_get_bios_num_files(const device_t *dev, const char *internal_name)
{
- if (dev != NULL) {
- const device_config_t *config = dev->config;
- if (config != NULL) {
- while (config->type != CONFIG_END) {
- if (config->type == CONFIG_BIOS) {
- const device_config_bios_t *bios = (const device_config_bios_t *) config->bios;
- while ((bios != NULL) &&
- (bios->name != NULL) &&
- (bios->internal_name != NULL) &&
- (bios->files_no != 0)) {
- if (!strcmp(internal_name, bios->internal_name))
- return bios->files_no;
- bios++;
- }
- }
- config++;
- }
- }
- }
-
- return 0;
+ const device_config_bios_t *bios = device_get_bios(dev, internal_name);
+ return bios ? bios->files_no : 0;
}
uint32_t
device_get_bios_local(const device_t *dev, const char *internal_name)
{
- if (dev != NULL) {
- const device_config_t *config = dev->config;
- if (config != NULL) {
- while (config->type != CONFIG_END) {
- if (config->type == CONFIG_BIOS) {
- const device_config_bios_t *bios = (const device_config_bios_t *) config->bios;
- while ((bios != NULL) &&
- (bios->name != NULL) &&
- (bios->internal_name != NULL) &&
- (bios->files_no != 0)) {
- if (!strcmp(internal_name, bios->internal_name))
- return bios->local;
- bios++;
- }
- }
- config++;
- }
- }
- }
-
- return 0;
+ const device_config_bios_t *bios = device_get_bios(dev, internal_name);
+ return bios ? bios->local : 0;
}
uint32_t
device_get_bios_file_size(const device_t *dev, const char *internal_name)
{
- if (dev != NULL) {
- const device_config_t *config = dev->config;
- if (config != NULL) {
- while (config->type != CONFIG_END) {
- if (config->type == CONFIG_BIOS) {
- const device_config_bios_t *bios = (const device_config_bios_t *) config->bios;
-
- /* Go through the ROM's in the device configuration. */
- while ((bios != NULL) &&
- (bios->name != NULL) &&
- (bios->internal_name != NULL) &&
- (bios->files_no != 0)) {
- if (!strcmp(internal_name, bios->internal_name))
- return bios->size;
- bios++;
- }
- }
- config++;
- }
- }
- }
-
- return 0;
+ const device_config_bios_t *bios = device_get_bios(dev, internal_name);
+ return bios ? bios->size : 0;
}
const char *
-device_get_bios_file(const device_t *dev, const char *internal_name, int file_no)
+device_get_bios_file(const device_t *dev, const char *internal_name, unsigned int file_no)
{
- if (dev != NULL) {
- const device_config_t *config = dev->config;
- if (config != NULL) {
- while (config->type != CONFIG_END) {
- if (config->type == CONFIG_BIOS) {
- const device_config_bios_t *bios = (const device_config_bios_t *) config->bios;
-
- /* Go through the ROM's in the device configuration. */
- while ((bios != NULL) &&
- (bios->name != NULL) &&
- (bios->internal_name != NULL) &&
- (bios->files_no != 0)) {
- if (!strcmp(internal_name, bios->internal_name)) {
- if (file_no < bios->files_no)
- return bios->files[file_no];
- else
- return NULL;
- }
- bios++;
- }
- }
- config++;
- }
- }
- }
-
- /* A NULL device is never available. */
- return (NULL);
+ const device_config_bios_t *bios = device_get_bios(dev, internal_name);
+ return (bios && (file_no < bios->files_no)) ? bios->files[file_no] : NULL;
}
int
diff --git a/src/device/isartc.c b/src/device/isartc.c
index 06b7767c8..0128dff0a 100644
--- a/src/device/isartc.c
+++ b/src/device/isartc.c
@@ -82,13 +82,14 @@
#include <86box/pic.h>
#include <86box/isartc.h>
-#define ISARTC_EV170 0
-#define ISARTC_DTK 1
-#define ISARTC_P5PAK 2
-#define ISARTC_A6PAK 3
-#define ISARTC_VENDEX 4
-#define ISARTC_MPLUS2 5
-#define ISARTC_MM58167 10
+#define ISARTC_EV170 0
+#define ISARTC_DTK 1
+#define ISARTC_P5PAK 2
+#define ISARTC_A6PAK 3
+#define ISARTC_VENDEX 4
+#define ISARTC_MPLUS2 5
+#define ISARTC_RTC58167 6
+#define ISARTC_MM58167 10
#define ISARTC_ROM_MM58167_1 "roms/rtc/glatick/GLaTICK_0.8.8_NS_86B.ROM" /* Generic 58167, AST or EV-170 */
#define ISARTC_ROM_MM58167_2 "roms/rtc/glatick/GLaTICK_0.8.8_NS_86B2.ROM" /* PII-147 */
@@ -112,7 +113,8 @@ typedef struct rtcdev_t {
void (*f_wr)(uint16_t, uint8_t, void *);
uint8_t (*f_rd)(uint16_t, void *);
int8_t year; /* register for YEAR value */
- char pad[3];
+ int8_t century; /* register for CENTURY value */
+ char pad[2];
nvr_t nvr; /* RTC/NVR */
} rtcdev_t;
@@ -318,9 +320,14 @@ mm67_time_get(nvr_t *nvr, struct tm *tm)
tm->tm_year = regs[dev->year];
if (dev->flags & FLAG_YEAR80)
tm->tm_year += 80;
-#ifdef MM67_CENTURY
- tm->tm_year += (regs[MM67_CENTURY] * 100) - 1900;
-#endif
+
+ if ((dev->century != -1) && !(dev->flags & FLAG_YEAR80)) {
+ if (dev->flags & FLAG_YEARBCD)
+ tm->tm_year += (RTC_DCB(regs[dev->century]) * 100) - 1900;
+ else
+ tm->tm_year += (regs[dev->century] * 100) - 1900;
+ }
+
#if ISARTC_DEBUG > 1
isartc_log("ISARTC: get_time: year=%i [%02x]\n", tm->tm_year, regs[dev->year]);
#endif
@@ -350,9 +357,14 @@ mm67_time_set(nvr_t *nvr, struct tm *tm)
regs[dev->year] = RTC_BCD(year % 100);
else
regs[dev->year] = year % 100;
-#ifdef MM67_CENTURY
- regs[MM67_CENTURY] = (year + 1900) / 100;
-#endif
+
+ if ((dev->year != -1) && !(dev->flags & FLAG_YEAR80)) {
+ if (dev->flags & FLAG_YEARBCD)
+ regs[dev->century] = RTC_BCD((year + 1900) / 100);
+ else
+ regs[dev->century] = (year + 1900) / 100;
+ }
+
#if ISARTC_DEBUG > 1
isartc_log("ISARTC: set_time: [%02x] year=%i (%i)\n", regs[dev->year], year, tm->tm_year);
#endif
@@ -473,9 +485,13 @@ mm67_write(uint16_t port, uint8_t val, void *priv)
dev->nvr.regs[dev->year] = RTC_BCD(val);
else
dev->nvr.regs[dev->year] = val;
-#ifdef MM67_CENTURY
- dev->nvr.regs[MM67_CENTURY] = 19;
-#endif
+
+ if ((dev->century != -1) && !(dev->flags & FLAG_YEAR80)) {
+ if (dev->flags & FLAG_YEARBCD)
+ dev->nvr.regs[dev->century] = RTC_BCD(19);
+ else
+ dev->nvr.regs[dev->century] = (1900 + val) / 100;
+ }
}
}
break;
@@ -509,6 +525,73 @@ mm67_write(uint16_t port, uint8_t val, void *priv)
}
}
+/* Multitech PC-500/PC-500+ onboard RTC 58167 device disigned to use I/O port
+ * base+0 as register index and base+1 as register data read/write window,
+ * according to the official RTC utilities SDATE.EXE, STIME.EXE, and TODAY.EXE
+ *
+ * the RTC utilities check the RTC millisecond counter first to deteminate the
+ * presence of the RTC 58167 IC, so here implement the bogus_msec to fool them
+ */
+static uint8_t rtc58167_index = 0x00;
+
+static uint8_t
+rtc58167_read(uint16_t port, void *priv)
+{
+ uint8_t ret = 0xff;
+ uint16_t bogus_msec = (uint16_t)((tsc * 1000) / cpu_s->rspeed);
+
+ switch (port)
+ {
+ case 0x2c0:
+ case 0x300:
+ ret = rtc58167_index;
+ break;
+
+ case 0x2c1:
+ case 0x301:
+ switch (rtc58167_index)
+ {
+ case MM67_MSEC:
+ ret = (uint8_t)(bogus_msec % 10) << 4;
+ break;
+
+ case MM67_HUNTEN:
+ ret = RTC_BCD((uint8_t)((bogus_msec / 10) % 100));
+ break;
+
+ default:
+ ret = mm67_read(((port - 1) + rtc58167_index), priv);
+ break;
+ }
+ break;
+
+ default:
+ break;
+ }
+
+ return ret;
+}
+
+static void
+rtc58167_write(uint16_t port, uint8_t val, void *priv)
+{
+ switch (port)
+ {
+ case 0x2c0:
+ case 0x300:
+ rtc58167_index = val;
+ break;
+
+ case 0x2c1:
+ case 0x301:
+ mm67_write(((port - 1) + rtc58167_index), val, priv);
+ break;
+
+ default:
+ break;
+ }
+}
+
/************************************************************************
* *
* Generic code for all supported chips. *
@@ -529,6 +612,7 @@ isartc_init(const device_t *info)
dev->board = info->local;
dev->irq = -1;
dev->year = -1;
+ dev->century = -1;
dev->nvr.data = dev;
dev->nvr.size = 16;
@@ -594,6 +678,20 @@ isartc_init(const device_t *info)
dev->year = MM67_AL_DOM; /* year, NON STANDARD */
break;
+ case ISARTC_RTC58167: /* Multitech PC-500/PC-500+ onboard RTC */
+ dev->flags |= FLAG_YEARBCD;
+ dev->base_addr = machine_get_config_int("rtc_port");
+ dev->base_addrsz = 8;
+ dev->irq = machine_get_config_int("rtc_irq");
+ dev->f_rd = rtc58167_read;
+ dev->f_wr = rtc58167_write;
+ dev->nvr.reset = mm67_reset;
+ dev->nvr.start = mm67_start;
+ dev->nvr.tick = mm67_tick;
+ dev->year = MM67_AL_HUNTEN; /* year, NON STANDARD */
+ dev->century = MM67_AL_SEC; /* century, NON STANDARD */
+ break;
+
default:
break;
}
@@ -929,18 +1027,32 @@ const device_t vendex_xt_rtc_onboard_device = {
.config = NULL
};
+const device_t rtc58167_device = {
+ .name = "RTC 58167 IC (Multitech)",
+ .internal_name = "rtc58167_xt_rtc",
+ .flags = DEVICE_ISA,
+ .local = ISARTC_RTC58167,
+ .init = isartc_init,
+ .close = isartc_close,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = NULL
+};
+
static const struct {
const device_t *dev;
} boards[] = {
// clang-format off
- { &device_none },
- { &ev170_device },
- { &pii147_device },
- { &p5pak_device },
- { &a6pak_device },
- { &mplus2_device },
- { &mm58167_device },
- { NULL }
+ { &device_none },
+ { &ev170_device },
+ { &pii147_device },
+ { &p5pak_device },
+ { &a6pak_device },
+ { &mplus2_device },
+ { &mm58167_device },
+ { NULL }
// clang-format on
};
diff --git a/src/device/serial.c b/src/device/serial.c
index 63f20cbee..38220485f 100644
--- a/src/device/serial.c
+++ b/src/device/serial.c
@@ -141,7 +141,7 @@ serial_update_ints(serial_t *dev)
}
}
- serial_do_irq(dev, !(dev->iir & 0x01) && ((dev->mctrl & 8) || (dev->type == SERIAL_8250_PCJR)));
+ serial_do_irq(dev, !(dev->iir & 0x01) && ((dev->mctrl & 8) || ((dev->type == SERIAL_8250_PCJR_3F8) || (dev->type == SERIAL_8250_PCJR_2F8))));
}
static void
@@ -971,15 +971,20 @@ serial_init(const device_t *info)
serial_setup(dev, COM4_ADDR, COM4_IRQ);
else if (next_inst == 2)
serial_setup(dev, COM3_ADDR, COM3_IRQ);
- else if ((next_inst == 1) || (info->local == SERIAL_8250_PCJR))
+ else if ((next_inst == 1) || (info->local == SERIAL_8250_PCJR_2F8))
serial_setup(dev, COM2_ADDR, COM2_IRQ);
+ // TODO
+#if 0
+ else if ((next_inst == 1) || (info->local == SERIAL_8250_PCJR_3F8))
+ serial_setup(dev, COM1_ADDR, COM1_IRQ);
+#endif
else if (next_inst == 0)
serial_setup(dev, COM1_ADDR, COM1_IRQ);
/* Default to 1200,N,7. */
dev->dlab = 96;
dev->fcr = 0x06;
- if (info->local == SERIAL_8250_PCJR)
+ if ((info->local == SERIAL_8250_PCJR_3F8) || (info->local == SERIAL_8250_PCJR_2F8))
dev->clock_src = 1789500.0;
else
dev->clock_src = 1843200.0;
@@ -1039,11 +1044,25 @@ const device_t ns8250_device = {
.config = NULL
};
-const device_t ns8250_pcjr_device = {
- .name = "National Semiconductor 8250(-compatible) UART for PCjr",
- .internal_name = "ns8250_pcjr",
+const device_t ns8250_pcjr_3f8_device = {
+ .name = "National Semiconductor 8250(-compatible) UART for PCjr (0x3f8)",
+ .internal_name = "ns8250_pcjr_3f8",
.flags = 0,
- .local = SERIAL_8250_PCJR,
+ .local = SERIAL_8250_PCJR_3F8,
+ .init = serial_init,
+ .close = serial_close,
+ .reset = serial_reset,
+ .available = NULL,
+ .speed_changed = serial_speed_changed,
+ .force_redraw = NULL,
+ .config = NULL
+};
+
+const device_t ns8250_pcjr_2f8_device = {
+ .name = "National Semiconductor 8250(-compatible) UART for PCjr (0x2f8)",
+ .internal_name = "ns8250_pcjr_2f8",
+ .flags = 0,
+ .local = SERIAL_8250_PCJR_2F8,
.init = serial_init,
.close = serial_close,
.reset = serial_reset,
diff --git a/src/disk/hdc_esdi_mca.c b/src/disk/hdc_esdi_mca.c
index 78a2f3183..b3c33675a 100644
--- a/src/disk/hdc_esdi_mca.c
+++ b/src/disk/hdc_esdi_mca.c
@@ -1220,6 +1220,12 @@ esdi_mca_write(int port, uint8_t val, void *priv)
if (!(dev->pos_regs[3] & 8)) {
switch (dev->pos_regs[3] & 7) {
+ case 0:
+ dev->bios = 0xc0000;
+ break;
+ case 1:
+ dev->bios = 0xc4000;
+ break;
case 2:
dev->bios = 0xc8000;
break;
diff --git a/src/disk/hdc_ide.c b/src/disk/hdc_ide.c
index 566f255e9..6b116697f 100644
--- a/src/disk/hdc_ide.c
+++ b/src/disk/hdc_ide.c
@@ -552,7 +552,10 @@ ide_hd_identify(const ide_t *ide)
/* Serial Number */
ide_padstr((char *) (ide->buffer + 10), "", 20);
/* Firmware */
- ide_padstr((char *) (ide->buffer + 23), EMU_VERSION_EX, 8);
+ if (hdd[ide->hdd_num].version_ex)
+ ide_padstr((char *) (ide->buffer + 23), hdd[ide->hdd_num].version_ex, 8);
+ else
+ ide_padstr((char *) (ide->buffer + 23), EMU_VERSION_EX, 8);
/* Model */
if (hdd[ide->hdd_num].model)
ide_padstr((char *) (ide->buffer + 27), hdd[ide->hdd_num].model, 40);
diff --git a/src/disk/hdd.c b/src/disk/hdd.c
index af4411ab0..357c787b8 100644
--- a/src/disk/hdd.c
+++ b/src/disk/hdd.c
@@ -435,6 +435,7 @@ static hdd_preset_t hdd_speed_presets[] = {
{ .name = "[Generic] 1998 (5400 RPM)", .internal_name = "1998_5400rpm", .zones = 16, .avg_spt = 300, .heads = 8, .rpm = 5400, .full_stroke_ms = 20, .track_seek_ms = 2, .rcache_num_seg = 8, .rcache_seg_size = 128, .max_multiple = 32 },
{ .name = "[Generic] 2000 (7200 RPM)", .internal_name = "2000_7200rpm", .zones = 16, .avg_spt = 350, .heads = 6, .rpm = 7200, .full_stroke_ms = 15, .track_seek_ms = 2, .rcache_num_seg = 16, .rcache_seg_size = 128, .max_multiple = 32 },
{ .name = "[PIO IDE] IBM WDA-L42", .internal_name = "WDAL42", .model = "WDA-L42", .zones = 1, .avg_spt = 85, .heads = 2, .rpm = 3600, .full_stroke_ms = 33, .track_seek_ms = 2.5, .rcache_num_seg = 1, .rcache_seg_size = 32, .max_multiple = 1 },
+ { .name = "[PIO-2] IBM DSAA-3270", .internal_name = "DSAA3270", .model = "DSAA-3270", .zones = 8, .avg_spt = 268, .heads = 2, .rpm = 4500, .full_stroke_ms = 25, .track_seek_ms = 2.1, .rcache_num_seg = 3, .rcache_seg_size = 32, .max_multiple = 8, .version_ex = "25505120" },
{ .name = "[ATA-1] Conner CP3024", .internal_name = "CP3024", .model = "Conner Peripherals 20MB - CP3024", .zones = 1, .avg_spt = 33, .heads = 2, .rpm = 3500, .full_stroke_ms = 50, .track_seek_ms = 8, .rcache_num_seg = 1, .rcache_seg_size = 8, .max_multiple = 8 }, // Needed for GRiDcase 1520 to work
{ .name = "[ATA-1] Conner CP3044", .internal_name = "CP3044", .model = "Conner Peripherals 40MB - CP3044", .zones = 1, .avg_spt = 40, .heads = 2, .rpm = 3500, .full_stroke_ms = 50, .track_seek_ms = 8, .rcache_num_seg = 1, .rcache_seg_size = 8, .max_multiple = 8 }, // Needed for GRiDcase 1520 to work
{ .name = "[ATA-1] Conner CP3104", .internal_name = "CP3104", .model = "Conner Peripherals 104MB - CP3104", .zones = 1, .avg_spt = 33, .heads = 8, .rpm = 3500, .full_stroke_ms = 45, .track_seek_ms = 8, .rcache_num_seg = 4, .rcache_seg_size = 8, .max_multiple = 8 }, // Needed for GRiDcase 1520 to work
@@ -522,6 +523,8 @@ static hdd_preset_t hdd_speed_presets[] = {
{ .name = "[ATA-4] Quantum Fireball SE4.3A", .internal_name = "SE43A011", .model = "QUANTUM FIREBALL SE4.3A", .zones = 2, .avg_spt = 200, .heads = 4, .rpm = 5400, .full_stroke_ms = 20, .track_seek_ms = 2, .rcache_num_seg = 8, .rcache_seg_size = 128, .max_multiple = 16 },
{ .name = "[ATA-4] Quantum Fireball SE6.4A", .internal_name = "SE64A011", .model = "QUANTUM FIREBALL SE6.4A", .zones = 3, .avg_spt = 200, .heads = 6, .rpm = 5400, .full_stroke_ms = 20, .track_seek_ms = 2, .rcache_num_seg = 8, .rcache_seg_size = 128, .max_multiple = 16 },
{ .name = "[ATA-4] Quantum Fireball SE8.4A", .internal_name = "SE84A011", .model = "QUANTUM FIREBALL SE8.4A", .zones = 4, .avg_spt = 200, .heads = 8, .rpm = 5400, .full_stroke_ms = 20, .track_seek_ms = 2, .rcache_num_seg = 8, .rcache_seg_size = 128, .max_multiple = 16 },
+ { .name = "[ATA-4] Quantum Fireball EX12.7A", .internal_name = "EX12A012", .model = "QUANTUM FIREBALL EX12.7A", .zones = 4, .avg_spt = 200, .heads = 8, .rpm = 5400, .full_stroke_ms = 20, .track_seek_ms = 2, .rcache_num_seg = 8, .rcache_seg_size = 128, .max_multiple = 16, .version_ex = "A0A.0D00" },
+ { .name = "[ATA-4] Quantum Fireball LCT-08 (LA04A011)", .internal_name = "LA04A011", .model = "QUANTUM FIREBALLlct08 04", .zones = 8, .avg_spt = 280, .heads = 6, .rpm = 5400, .full_stroke_ms = 40, .track_seek_ms = 3, .rcache_num_seg = 8, .rcache_seg_size = 512, .max_multiple = 16, .version_ex = "A05.0X00" },
{ .name = "[ATA-4] Seagate Medalist 2122", .internal_name = "ST32122A", .model = "ST32122A", .zones = 16, .avg_spt = 215, .heads = 2, .rpm = 4500, .full_stroke_ms = 23, .track_seek_ms = 3.8, .rcache_num_seg = 16, .rcache_seg_size = 128, .max_multiple = 16 },
{ .name = "[ATA-4] Seagate Medalist 3321", .internal_name = "ST33221A", .model = "ST33221A", .zones = 16, .avg_spt = 210, .heads = 4, .rpm = 5400, .full_stroke_ms = 20, .track_seek_ms = 1.7, .rcache_num_seg = 16, .rcache_seg_size = 128, .max_multiple = 16 },
{ .name = "[ATA-4] Seagate Medalist 4321", .internal_name = "ST34321A", .model = "ST34321A", .zones = 16, .avg_spt = 210, .heads = 4, .rpm = 5400, .full_stroke_ms = 20, .track_seek_ms = 2.2, .rcache_num_seg = 16, .rcache_seg_size = 128, .max_multiple = 16 },
@@ -534,6 +537,7 @@ static hdd_preset_t hdd_speed_presets[] = {
{ .name = "[ATA-4] Western Digital Caviar 23200", .internal_name = "AC23200", .model = "WDC AC23200LB", .zones = 16, .avg_spt = 210, .heads = 4, .rpm = 5400, .full_stroke_ms = 21, .track_seek_ms = 3, .rcache_num_seg = 8, .rcache_seg_size = 256, .max_multiple = 32 },
{ .name = "[ATA-4] Western Digital Caviar 26400", .internal_name = "AC26400", .model = "WDC AC26400RN", .zones = 16, .avg_spt = 295, .heads = 5, .rpm = 5400, .full_stroke_ms = 21, .track_seek_ms = 3, .rcache_num_seg = 8, .rcache_seg_size = 512, .max_multiple = 32 },
{ .name = "[ATA-4] Western Digital Caviar 33200", .internal_name = "AC33200", .model = "WDC AC33200LA", .zones = 16, .avg_spt = 310, .heads = 5, .rpm = 5200, .full_stroke_ms = 40, .track_seek_ms = 3, .rcache_num_seg = 16, .rcache_seg_size = 256, .max_multiple = 32 },
+ { .name = "[ATA-4] Western Digital Caviar 35100", .internal_name = "AC35100", .model = "WDC AC35100L", .zones = 16, .avg_spt = 315, .heads = 5, .rpm = 5400, .full_stroke_ms = 40, .track_seek_ms = 3, .rcache_num_seg = 16, .rcache_seg_size = 256, .max_multiple = 32, .version_ex = "09.09M08" },
{ .name = "[ATA-5] IBM Travelstar 6GN", .internal_name = "DARA206000", .model = "IBM-DARA-206000", .zones = 12, .avg_spt = 292, .heads = 2, .rpm = 4200, .full_stroke_ms = 31, .track_seek_ms = 4, .rcache_num_seg = 16, .rcache_seg_size = 512, .max_multiple = 32 },
{ .name = "[ATA-5] IBM Travelstar 9GN", .internal_name = "DARA209000", .model = "IBM-DARA-209000", .zones = 12, .avg_spt = 292, .heads = 3, .rpm = 4200, .full_stroke_ms = 31, .track_seek_ms = 4, .rcache_num_seg = 16, .rcache_seg_size = 512, .max_multiple = 32 },
{ .name = "[ATA-5] IBM/Hitachi Travelstar 12GN", .internal_name = "DARA212000", .model = "IBM-DARA-212000", .zones = 12, .avg_spt = 292, .heads = 4, .rpm = 4200, .full_stroke_ms = 31, .track_seek_ms = 4, .rcache_num_seg = 16, .rcache_seg_size = 512, .max_multiple = 32 }, // Either Hitachi or IBM OEM
@@ -621,6 +625,9 @@ hdd_preset_apply(int hdd_id)
if (preset->model)
hd->model = preset->model;
+ if (preset->version_ex)
+ hd->version_ex = preset->version_ex;
+
if (!hd->speed_preset)
return;
diff --git a/src/game/gameport.c b/src/game/gameport.c
index f17e39efe..d7ecadec4 100644
--- a/src/game/gameport.c
+++ b/src/game/gameport.c
@@ -88,27 +88,52 @@ static const joystick_t joystick_none = {
static const struct {
const joystick_t *joystick;
} joysticks[] = {
- { &joystick_none },
- { &joystick_2axis_2button },
- { &joystick_2button_gamepad },
- { &joystick_2button_flight_yoke },
- { &joystick_2axis_4button },
- { &joystick_4button_gamepad },
- { &joystick_4button_flight_yoke },
- { &joystick_2axis_6button },
- { &joystick_2axis_8button },
- { &joystick_3axis_2button },
- { &joystick_2button_yoke_throttle },
- { &joystick_3axis_4button },
- { &joystick_win95_steering_wheel },
- { &joystick_4button_yoke_throttle },
- { &joystick_4axis_4button },
- { &joystick_ch_flightstick_pro },
- { &joystick_ch_flightstick_pro_ch_pedals },
- { &joystick_sw_pad },
- { &joystick_tm_fcs },
- { &joystick_tm_fcs_rcs },
- { NULL }
+ { &joystick_none },
+ { &joystick_generic_paddle },
+ { &joystick_2axis_1button },
+ { &joystick_2axis_2button },
+ { &joystick_2axis_3button },
+ { &joystick_2axis_4button },
+ { &joystick_2axis_6button },
+ { &joystick_2axis_8button },
+ { &joystick_3axis_2button },
+ { &joystick_3axis_3button },
+ { &joystick_3axis_4button },
+ { &joystick_4axis_2button },
+ { &joystick_4axis_3button },
+ { &joystick_4axis_4button },
+ { &joystick_2button_gamepad },
+ { &joystick_3button_gamepad },
+ { &joystick_4button_gamepad },
+ { &joystick_6button_gamepad },
+ { &joystick_gravis_gamepad },
+ { &joystick_2button_flight_yoke },
+ { &joystick_3button_flight_yoke },
+ { &joystick_4button_flight_yoke },
+ { &joystick_2button_yoke_throttle },
+ { &joystick_3button_yoke_throttle },
+ { &joystick_4button_yoke_throttle },
+ { &joystick_steering_wheel_2_button },
+ { &joystick_steering_wheel_3_button },
+ { &joystick_steering_wheel_4_button },
+ { &joystick_ch_flightstick },
+ { &joystick_ch_flightstick_ch_pedals },
+ { &joystick_ch_flightstick_ch_pedals_pro },
+ { &joystick_ch_flightstick_pro },
+ { &joystick_ch_flightstick_pro_ch_pedals },
+ { &joystick_ch_flightstick_pro_ch_pedals_pro },
+ { &joystick_ch_virtual_pilot },
+ { &joystick_ch_virtual_pilot_ch_pedals },
+ { &joystick_ch_virtual_pilot_ch_pedals_pro },
+ { &joystick_ch_virtual_pilot_pro },
+ { &joystick_ch_virtual_pilot_pro_ch_pedals },
+ { &joystick_ch_virtual_pilot_pro_ch_pedals_pro },
+ { &joystick_sw_pad },
+ { &joystick_tm_fcs },
+ { &joystick_tm_fcs_rcs },
+ { &joystick_tm_formula_t1t2 },
+ { &joystick_tm_formula_t1t2wa },
+ { NULL }
};
static joystick_instance_t *joystick_instance[GAMEPORT_MAX] = { NULL, NULL };
diff --git a/src/game/joystick_ch_flightstick_pro.c b/src/game/joystick_ch_flightstick_pro.c
index b3d4e0ef5..dc82feb8b 100644
--- a/src/game/joystick_ch_flightstick_pro.c
+++ b/src/game/joystick_ch_flightstick_pro.c
@@ -10,9 +10,11 @@
*
* Authors: Miran Grca,
* Sarah Walker,
+ * Jasmine Iwanek,
*
* Copyright 2016-2018 Miran Grca.
* Copyright 2008-2018 Sarah Walker.
+ * Copyright 2021-2025 Jasmine Iwanek.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -42,132 +44,316 @@
#include <86box/timer.h>
#include <86box/gameport.h>
#include <86box/plat_unused.h>
-
-static void *
-ch_flightstick_pro_init(void)
-{
- return NULL;
-}
-
-static void
-ch_flightstick_pro_close(UNUSED(void *priv))
-{
- //
-}
+#include <86box/joystick.h>
static uint8_t
ch_flightstick_pro_read(UNUSED(void *priv))
{
+ uint8_t gp = 0;
uint8_t ret = 0xf0;
- if (JOYSTICK_PRESENT(0, 0)) {
- if (joystick_state[0][0].button[0])
+ if (JOYSTICK_PRESENT(gp, 0)) {
+ if (joystick_state[gp][0].button[0])
ret &= ~0x10;
- if (joystick_state[0][0].button[1])
+ if (joystick_state[gp][0].button[1])
ret &= ~0x20;
- if (joystick_state[0][0].button[2])
+ if (joystick_state[gp][0].button[2])
ret &= ~0x40;
- if (joystick_state[0][0].button[3])
+ if (joystick_state[gp][0].button[3])
ret &= ~0x80;
- if (joystick_state[0][0].pov[0] != -1) {
- if (joystick_state[0][0].pov[0] > 315 || joystick_state[0][0].pov[0] < 45)
- ret &= ~0xf0;
- else if (joystick_state[0][0].pov[0] >= 45 && joystick_state[0][0].pov[0] < 135)
- ret &= ~0xb0;
- else if (joystick_state[0][0].pov[0] >= 135 && joystick_state[0][0].pov[0] < 225)
- ret &= ~0x70;
- else if (joystick_state[0][0].pov[0] >= 225 && joystick_state[0][0].pov[0] < 315)
- ret &= ~0x30;
+
+ // POV Hat
+ if (joystick_state[gp][0].pov[0] != -1) {
+ // POV Up
+ if ((joystick_state[gp][0].pov[0] > 315) || (joystick_state[gp][0].pov[0] < 45))
+ ret &= ~0xf0; // 1, 2, 3, 4
+ // POV Right
+ else if ((joystick_state[gp][0].pov[0] >= 45) && (joystick_state[gp][0].pov[0] < 135))
+ ret &= ~0xb0; // 1, 2, 4
+ // POV Down
+ else if ((joystick_state[gp][0].pov[0] >= 135) && (joystick_state[gp][0].pov[0] < 225))
+ ret &= ~0x70; // 1, 2, 3
+ // POV Left
+ else if ((joystick_state[gp][0].pov[0] >= 225) && (joystick_state[gp][0].pov[0] < 315))
+ ret &= ~0x30; // 1, 2
}
}
return ret;
}
-static void
-ch_flightstick_pro_write(UNUSED(void *priv))
+static uint8_t
+ch_virtual_pilot_pro_read(UNUSED(void *priv))
{
- //
-}
+ uint8_t gp = 0;
+ uint8_t ret = 0xf0;
-static int
-ch_flightstick_pro_read_axis(UNUSED(void *priv), int axis)
-{
- if (!JOYSTICK_PRESENT(0, 0))
- return AXIS_NOT_PRESENT;
+ if (JOYSTICK_PRESENT(gp, 0)) {
+ if (joystick_state[gp][0].button[0]) // 1
+ ret &= ~0x10;
+ if (joystick_state[gp][0].button[1]) // 2
+ ret &= ~0x20;
+ if (joystick_state[gp][0].button[2]) // 3
+ ret &= ~0x40;
+ if (joystick_state[gp][0].button[3]) // 4
+ ret &= ~0x80;
+ if (joystick_state[gp][0].button[4]) // 1, 3
+ ret &= ~0x50;
+ if (joystick_state[gp][0].button[5]) // 1, 4
+ ret &= ~0x90;
- switch (axis) {
- case 0:
- return joystick_state[0][0].axis[0];
- case 1:
- return joystick_state[0][0].axis[1];
- case 2:
- return 0;
- case 3:
- return joystick_state[0][0].axis[2];
- default:
- return 0;
+ // Right POV Hat
+ uint8_t pov_id = 0;
+
+ if (joystick_state[gp][0].pov[pov_id] != -1) {
+ // POV Up
+ if ((joystick_state[gp][0].pov[pov_id] > 315) || (joystick_state[gp][0].pov[pov_id] < 45))
+ ret &= ~0xf0; // 1, 2, 3, 4
+ // POV Right
+ else if ((joystick_state[gp][0].pov[pov_id] >= 45) && (joystick_state[gp][0].pov[pov_id] < 135))
+ ret &= ~0xb0; // 1, 2, 4
+ // POV Down
+ else if ((joystick_state[gp][0].pov[pov_id] >= 135) && (joystick_state[gp][0].pov[pov_id] < 225))
+ ret &= ~0x70; // 1, 2, 3
+ // POV Left
+ else if ((joystick_state[gp][0].pov[pov_id] >= 225) && (joystick_state[gp][0].pov[pov_id] < 315))
+ ret &= ~0x30; // 1, 2
+ }
+
+ // Left POV Hat
+ pov_id = 1;
+
+ if (joystick_state[gp][0].pov[pov_id] != -1) {
+ // POV Up
+ if ((joystick_state[gp][0].pov[pov_id] > 315) || (joystick_state[gp][0].pov[pov_id] < 45))
+ ret &= ~0xe0; // 2, 3, 4
+ // POV Right
+ else if ((joystick_state[gp][0].pov[pov_id] >= 45) && (joystick_state[gp][0].pov[pov_id] < 135))
+ ret &= ~0xa0; // 2, 4
+ // POV Down
+ else if ((joystick_state[gp][0].pov[pov_id] >= 135) && (joystick_state[gp][0].pov[pov_id] < 225))
+ ret &= ~0x60; // 2, 3
+ // POV Left
+ else if ((joystick_state[gp][0].pov[pov_id] >= 225) && (joystick_state[gp][0].pov[pov_id] < 315))
+ ret &= ~0xc0; // 3, 4
+ }
}
+
+ return ret;
}
-static int
-ch_flightstick_pro_ch_pedals_read_axis(UNUSED(void *priv), int axis)
-{
- if (!JOYSTICK_PRESENT(0, 0))
- return AXIS_NOT_PRESENT;
+const joystick_t joystick_ch_flightstick = {
+ .name = "CH Flightstick",
+ .internal_name = "ch_flightstick",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle" },
+ .button_names = { "Trigger", "Button 2" },
+ .pov_names = { NULL }
+};
- switch (axis) {
- case 0:
- return joystick_state[0][0].axis[0];
- case 1:
- return joystick_state[0][0].axis[1];
- case 2:
- return joystick_state[0][0].axis[3];
- case 3:
- return joystick_state[0][0].axis[2];
- default:
- return 0;
- }
-}
+const joystick_t joystick_ch_flightstick_ch_pedals = {
+ .name = "CH Flightstick + CH Pedals",
+ .internal_name = "ch_flightstick_ch_pedals",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle", "Rudder (Yaw)" },
+ .button_names = { "Trigger", "Button 2" },
+ .pov_names = { NULL }
+};
-static void
-ch_flightstick_pro_a0_over(UNUSED(void *priv))
-{
- //
-}
+const joystick_t joystick_ch_flightstick_ch_pedals_pro = {
+ .name = "CH Flightstick + CH Pedals Pro",
+ .internal_name = "ch_flightstick_ch_pedals_pro",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Left Pedal", "Right Pedal" },
+ .button_names = { "Trigger", "Button 2" },
+ .pov_names = { NULL }
+};
const joystick_t joystick_ch_flightstick_pro = {
.name = "CH Flightstick Pro",
.internal_name = "ch_flightstick_pro",
- .init = ch_flightstick_pro_init,
- .close = ch_flightstick_pro_close,
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
.read = ch_flightstick_pro_read,
- .write = ch_flightstick_pro_write,
- .read_axis = ch_flightstick_pro_read_axis,
- .a0_over = ch_flightstick_pro_a0_over,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
.axis_count = 3,
.button_count = 4,
.pov_count = 1,
.max_joysticks = 1,
- .axis_names = { "X axis", "Y axis", "Throttle" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle" },
+ .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
.pov_names = { "POV" }
};
const joystick_t joystick_ch_flightstick_pro_ch_pedals = {
.name = "CH Flightstick Pro + CH Pedals",
.internal_name = "ch_flightstick_pro_ch_pedals",
- .init = ch_flightstick_pro_init,
- .close = ch_flightstick_pro_close,
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
.read = ch_flightstick_pro_read,
- .write = ch_flightstick_pro_write,
- .read_axis = ch_flightstick_pro_ch_pedals_read_axis,
- .a0_over = ch_flightstick_pro_a0_over,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
.axis_count = 4,
.button_count = 4,
.pov_count = 1,
.max_joysticks = 1,
- .axis_names = { "X axis", "Y axis", "Throttle", "Rudder" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle", "Rudder (Yaw)" },
+ .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
.pov_names = { "POV" }
};
+
+const joystick_t joystick_ch_flightstick_pro_ch_pedals_pro = {
+ .name = "CH Flightstick Pro + CH Pedals Pro",
+ .internal_name = "ch_flightstick_pro_ch_pedals_pro",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = ch_flightstick_pro_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 4,
+ .pov_count = 1,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Left Pedal", "Right Pedal" },
+ .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
+ .pov_names = { "POV" }
+};
+
+const joystick_t joystick_ch_virtual_pilot = {
+ .name = "CH Virtual Pilot",
+ .internal_name = "ch_virtual_pilot",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle" },
+ .button_names = { "Button 1", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_ch_virtual_pilot_ch_pedals = {
+ .name = "CH Virtual Pilot + CH Pedals",
+ .internal_name = "ch_virtual_pilot_ch_pedals",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle", "Rudder (Yaw)" },
+ .button_names = { "Button 1", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_ch_virtual_pilot_ch_pedals_pro = {
+ .name = "CH Virtual Pilot + CH Pedals Pro",
+ .internal_name = "ch_virtual_pilot_ch_pedals_pro",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Left Pedal", "Right Pedal" },
+ .button_names = { "Button 1", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_ch_virtual_pilot_pro = {
+ .name = "CH Virtual Pilot Pro",
+ .internal_name = "ch_virtual_pilot_pro",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = ch_virtual_pilot_pro_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 6,
+ .pov_count = 2,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4", "Button 5", "Button 6" },
+ .pov_names = { "Right POV", "Left POV" }
+};
+
+const joystick_t joystick_ch_virtual_pilot_pro_ch_pedals = {
+ .name = "CH Virtual Pilot Pro + CH Pedals",
+ .internal_name = "ch_virtual_pilot_pro_ch_pedals",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = ch_virtual_pilot_pro_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 6,
+ .pov_count = 2,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Throttle", "Rudder (Yaw)" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4", "Button 5", "Button 6" },
+ .pov_names = { "Right POV", "Left POV" }
+};
+
+const joystick_t joystick_ch_virtual_pilot_pro_ch_pedals_pro = {
+ .name = "CH Virtual Pilot Pro + CH Pedals Pro",
+ .internal_name = "ch_virtual_pilot_pro_ch_pedals_pro",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = ch_virtual_pilot_pro_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 6,
+ .pov_count = 2,
+ .max_joysticks = 1,
+ .axis_names = { "X axis (Roll)", "Y axis (Pitch)", "Left Pedal", "Right Pedal" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4", "Button 5", "Button 6" },
+ .pov_names = { "Right POV", "Left POV" }
+};
diff --git a/src/game/joystick_standard.c b/src/game/joystick_standard.c
index fa83826da..c62611663 100644
--- a/src/game/joystick_standard.c
+++ b/src/game/joystick_standard.c
@@ -10,7 +10,6 @@
*
* Authors: Miran Grca,
* Sarah Walker,
- * Miran Grca,
* Jasmine Iwanek,
*
* Copyright 2016-2018 Miran Grca.
@@ -46,101 +45,189 @@
#include <86box/gameport.h>
#include <86box/plat_unused.h>
-static void *
+void *
joystick_standard_init(void)
{
return NULL;
}
-static void
+void
joystick_standard_close(UNUSED(void *priv))
{
//
}
static uint8_t
-joystick_standard_read(UNUSED(void *priv))
+joystick_paddle_read(UNUSED(void *priv))
{
+ uint8_t gp = 0;
uint8_t ret = 0xf0;
- if (JOYSTICK_PRESENT(0, 0)) {
- if (joystick_state[0][0].button[0])
+ if ((JOYSTICK_PRESENT(gp, 0)) && (joystick_state[gp][0].button[0]))
ret &= ~0x10;
- if (joystick_state[0][0].button[1])
+
+ if ((JOYSTICK_PRESENT(gp, 2)) && (joystick_state[gp][2].button[0]))
+ ret &= ~0x20;
+
+ if ((JOYSTICK_PRESENT(gp, 1)) && (joystick_state[gp][1].button[0]))
+ ret &= ~0x40;
+
+ if ((JOYSTICK_PRESENT(gp, 3)) && (joystick_state[gp][3].button[0]))
+ ret &= ~0x80;
+
+ return ret;
+}
+
+static uint8_t
+joystick_standard_read(UNUSED(void *priv))
+{
+ uint8_t gp = 0;
+ uint8_t ret = 0xf0;
+
+ if (JOYSTICK_PRESENT(gp, 0)) {
+ if (joystick_state[gp][0].button[0])
+ ret &= ~0x10;
+ if (joystick_state[gp][0].button[1])
ret &= ~0x20;
}
- if (JOYSTICK_PRESENT(0, 1)) {
- if (joystick_state[0][1].button[0])
+ if (JOYSTICK_PRESENT(gp, 1)) {
+ if (joystick_state[gp][1].button[0])
ret &= ~0x40;
- if (joystick_state[0][1].button[1])
+ if (joystick_state[gp][1].button[1])
ret &= ~0x80;
}
return ret;
}
+uint8_t
+joystick_standard_read_2button(UNUSED(void *priv))
+{
+ uint8_t gp = 0;
+ uint8_t ret = 0xf0;
+
+ if (JOYSTICK_PRESENT(gp, 0)) {
+ if (joystick_state[gp][0].button[0])
+ ret &= ~0x10;
+ if (joystick_state[gp][0].button[1])
+ ret &= ~0x20;
+ }
+
+ return ret;
+}
+
static uint8_t
-joystick_standard_read_4button(UNUSED(void *priv))
+joystick_standard_read_3button(UNUSED(void *priv))
{
+ uint8_t gp = 0;
uint8_t ret = 0xf0;
- if (JOYSTICK_PRESENT(0, 0)) {
- if (joystick_state[0][0].button[0])
+ if (JOYSTICK_PRESENT(gp, 0)) {
+ if (joystick_state[gp][0].button[0])
ret &= ~0x10;
- if (joystick_state[0][0].button[1])
+ if (joystick_state[gp][0].button[1])
ret &= ~0x20;
- if (joystick_state[0][0].button[2])
+ if (joystick_state[gp][0].button[2])
ret &= ~0x40;
- if (joystick_state[0][0].button[3])
+ }
+
+ return ret;
+}
+
+uint8_t
+joystick_standard_read_4button(UNUSED(void *priv))
+{
+ uint8_t gp = 0;
+ uint8_t ret = 0xf0;
+
+ if (JOYSTICK_PRESENT(gp, 0)) {
+ if (joystick_state[gp][0].button[0])
+ ret &= ~0x10;
+ if (joystick_state[gp][0].button[1])
+ ret &= ~0x20;
+ if (joystick_state[gp][0].button[2])
+ ret &= ~0x40;
+ if (joystick_state[gp][0].button[3])
ret &= ~0x80;
}
return ret;
}
-static void
+void
joystick_standard_write(UNUSED(void *priv))
{
//
}
static int
-joystick_standard_read_axis(UNUSED(void *priv), int axis)
+joystick_paddle_read_axis(UNUSED(void *priv), int axis)
{
+ uint8_t gp = 0;
+
switch (axis) {
case 0:
- if (!JOYSTICK_PRESENT(0, 0))
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- if (!JOYSTICK_PRESENT(0, 0))
+ if (!JOYSTICK_PRESENT(gp, 2))
return AXIS_NOT_PRESENT;
- return joystick_state[0][0].axis[1];
+ return joystick_state[gp][2].axis[0];
case 2:
- if (!JOYSTICK_PRESENT(0, 1))
+ if (!JOYSTICK_PRESENT(gp, 1))
return AXIS_NOT_PRESENT;
- return joystick_state[0][1].axis[0];
+ return joystick_state[gp][1].axis[0];
case 3:
- if (!JOYSTICK_PRESENT(0, 1))
+ if (!JOYSTICK_PRESENT(gp, 3))
return AXIS_NOT_PRESENT;
- return joystick_state[0][1].axis[1];
+ return joystick_state[gp][3].axis[0];
default:
return 0;
}
}
static int
-joystick_standard_read_axis_4button(UNUSED(void *priv), int axis)
+joystick_standard_read_axis(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ switch (axis) {
+ case 0:
+ if (!JOYSTICK_PRESENT(gp, 0))
+ return AXIS_NOT_PRESENT;
+ return joystick_state[gp][0].axis[0];
+ case 1:
+ if (!JOYSTICK_PRESENT(gp, 0))
+ return AXIS_NOT_PRESENT;
+ return joystick_state[gp][0].axis[1];
+ case 2:
+ if (!JOYSTICK_PRESENT(gp, 1))
+ return AXIS_NOT_PRESENT;
+ return joystick_state[gp][1].axis[0];
+ case 3:
+ if (!JOYSTICK_PRESENT(gp, 1))
+ return AXIS_NOT_PRESENT;
+ return joystick_state[gp][1].axis[1];
+ default:
+ return 0;
+ }
+}
+
+static int
+joystick_standard_read_axis_2axis(UNUSED(void *priv), int axis)
+{
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0:
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- return joystick_state[0][0].axis[1];
+ return joystick_state[gp][0].axis[1];
case 2:
case 3:
default:
@@ -148,33 +235,54 @@ joystick_standard_read_axis_4button(UNUSED(void *priv), int axis)
}
}
+static int
+joystick_standard_read_axis_2axis_t1t2wa(UNUSED(void *priv), int axis)
+{
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
+ return AXIS_NOT_PRESENT;
+
+ switch (axis) {
+ case 0:
+ return joystick_state[gp][0].axis[0];
+ case 2:
+ return joystick_state[gp][0].axis[1];
+ case 1:
+ case 3:
+ default:
+ return 0;
+ }
+}
+
#if 0
// For later use
static int
joystick_standard_read_axis_with_pov(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0: // X-axis
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1: // Y-axis
- return joystick_state[0][0].axis[1];
- case 2: // POV Hat (mapped to the 3rd logical axis, index 2)
- if (joystick_state[0][0].pov[0] == -1)
+ return joystick_state[gp][0].axis[1];
+ case 2: // POV Hat
+ if (joystick_state[gp][0].pov[0] == -1)
return 32767; // Centered/No input (as per tm_fcs_rcs_read_axis example)
- if (joystick_state[0][0].pov[0] > 315 || joystick_state[0][0].pov[0] < 45)
+ if (joystick_state[gp][0].pov[0] > 315 || joystick_state[gp][0].pov[0] < 45)
return -32768; // Up
- if (joystick_state[0][0].pov[0] >= 45 && joystick_state[0][0].pov[0] < 135)
+ if (joystick_state[gp][0].pov[0] >= 45 && joystick_state[gp][0].pov[0] < 135)
return -16384; // Up-Right (example value, matches tm_fcs_rcs_read_axis)
- if (joystick_state[0][0].pov[0] >= 135 && joystick_state[0][0].pov[0] < 225)
+ if (joystick_state[gp][0].pov[0] >= 135 && joystick_state[gp][0].pov[0] < 225)
return 0; // Right/Left (example, matches tm_fcs_rcs_read_axis)
- if (joystick_state[0][0].pov[0] >= 225 && joystick_state[0][0].pov[0] < 315)
+ if (joystick_state[gp][0].pov[0] >= 225 && joystick_state[gp][0].pov[0] < 315)
return 16384; // Down-Left (example value, matches tm_fcs_rcs_read_axis)
- return 0; // Fallback
- case 3: // This case might be used for a Z-axis if present, or can return 0 if not.
- // For gamepads with only X/Y and POV, this will likely be unused or return 0.
+ return 0;
+ case 3:
return 0;
default:
return 0;
@@ -185,37 +293,62 @@ joystick_standard_read_axis_with_pov(UNUSED(void *priv), int axis)
static int
joystick_standard_read_axis_3axis(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0:
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- return joystick_state[0][0].axis[1];
- case 2:
- return joystick_state[0][0].axis[2];
- case 3:
+ return joystick_state[gp][0].axis[1];
+ case 2: // Rudder Axis
+ return joystick_state[gp][0].axis[2];
+ case 3: // Throttle Axis
default:
return 0;
}
}
-static int
-joystick_standard_read_axis_4axis(UNUSED(void *priv), int axis)
+int
+joystick_standard_read_axis_3axis_throttle(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0:
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- return joystick_state[0][0].axis[1];
- case 2:
- return joystick_state[0][0].axis[2];
- case 3:
- return joystick_state[0][0].axis[3];
+ return joystick_state[gp][0].axis[1];
+ case 3: // Throttle Axis
+ return joystick_state[gp][0].axis[2];
+ case 2: // Rudder Axis
+ default:
+ return 0;
+ }
+}
+
+int
+joystick_standard_read_axis_4axis(UNUSED(void *priv), int axis)
+{
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
+ return AXIS_NOT_PRESENT;
+
+ switch (axis) {
+ case 0:
+ return joystick_state[gp][0].axis[0];
+ case 1:
+ return joystick_state[gp][0].axis[1];
+ case 2: // Rudder Axis
+ return joystick_state[gp][0].axis[3];
+ case 3: // Throttle Axis
+ return joystick_state[gp][0].axis[2];
default:
return 0;
}
@@ -224,18 +357,20 @@ joystick_standard_read_axis_4axis(UNUSED(void *priv), int axis)
static int
joystick_standard_read_axis_6button(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0:
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- return joystick_state[0][0].axis[1];
+ return joystick_state[gp][0].axis[1];
case 2:
- return joystick_state[0][0].button[4] ? -32767 : 32768;
+ return joystick_state[gp][0].button[4] ? -32767 : 32768;
case 3:
- return joystick_state[0][0].button[5] ? -32767 : 32768;
+ return joystick_state[gp][0].button[5] ? -32767 : 32768;
default:
return 0;
}
@@ -243,24 +378,26 @@ joystick_standard_read_axis_6button(UNUSED(void *priv), int axis)
static int
joystick_standard_read_axis_8button(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0:
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- return joystick_state[0][0].axis[1];
+ return joystick_state[gp][0].axis[1];
case 2:
- if (joystick_state[0][0].button[4])
+ if (joystick_state[gp][0].button[4])
return -32767;
- if (joystick_state[0][0].button[6])
+ if (joystick_state[gp][0].button[6])
return 32768;
return 0;
case 3:
- if (joystick_state[0][0].button[5])
+ if (joystick_state[gp][0].button[5])
return -32767;
- if (joystick_state[0][0].button[7])
+ if (joystick_state[gp][0].button[7])
return 32768;
return 0;
default:
@@ -268,12 +405,48 @@ joystick_standard_read_axis_8button(UNUSED(void *priv), int axis)
}
}
-static void
+void
joystick_standard_a0_over(UNUSED(void *priv))
{
//
}
+const joystick_t joystick_generic_paddle = {
+ .name = "Generic paddle controller(s)",
+ .internal_name = "generic_paddle",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_paddle_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_paddle_read_axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 1,
+ .button_count = 1,
+ .pov_count = 0,
+ .max_joysticks = 4,
+ .axis_names = { "X axis" },
+ .button_names = { "Button 1" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_2axis_1button = {
+ .name = "2-axis, 1-button joystick(s)",
+ .internal_name = "2axis_1button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 1,
+ .pov_count = 0,
+ .max_joysticks = 2,
+ .axis_names = { "X axis", "Y axis" },
+ .button_names = { "Button 1" },
+ .pov_names = { NULL }
+};
+
const joystick_t joystick_2axis_2button = {
.name = "2-axis, 2-button joystick(s)",
.internal_name = "2axis_2button",
@@ -292,39 +465,21 @@ const joystick_t joystick_2axis_2button = {
.pov_names = { NULL }
};
-const joystick_t joystick_2button_gamepad = {
- .name = "2-button gamepad(s)",
- .internal_name = "2button_gamepad",
+const joystick_t joystick_2axis_3button = {
+ .name = "2-axis, 3-button joystick",
+ .internal_name = "2axis_3button",
.init = joystick_standard_init,
.close = joystick_standard_close,
- .read = joystick_standard_read,
+ .read = joystick_standard_read_3button,
.write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis,
+ .read_axis = joystick_standard_read_axis_2axis,
.a0_over = joystick_standard_a0_over,
.axis_count = 2,
- .button_count = 2,
+ .button_count = 3,
.pov_count = 0,
- .max_joysticks = 2,
+ .max_joysticks = 1,
.axis_names = { "X axis", "Y axis" },
- .button_names = { "Button 1", "Button 2" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_2button_flight_yoke = {
- .name = "2-button flight yoke",
- .internal_name = "2button_flight_yoke",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 2,
- .button_count = 2,
- .pov_count = 0,
- .max_joysticks = 2,
- .axis_names = { "Roll axis", "Pitch axis" },
- .button_names = { "Trigger", "Button 2" },
+ .button_names = { "Button 1", "Button 2", "Button 3" },
.pov_names = { NULL }
};
@@ -335,7 +490,7 @@ const joystick_t joystick_2axis_4button = {
.close = joystick_standard_close,
.read = joystick_standard_read_4button,
.write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_4button,
+ .read_axis = joystick_standard_read_axis_2axis,
.a0_over = joystick_standard_a0_over,
.axis_count = 2,
.button_count = 4,
@@ -346,150 +501,6 @@ const joystick_t joystick_2axis_4button = {
.pov_names = { NULL }
};
-const joystick_t joystick_4button_gamepad = {
- .name = "4-button gamepad",
- .internal_name = "4button_gamepad",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read_4button,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_4button,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 2,
- .button_count = 4,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "X axis", "Y axis" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_4button_flight_yoke = {
- .name = "4-button flight yoke",
- .internal_name = "4button_flight_yoke",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read_4button,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_4button,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 2,
- .button_count = 4,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "Roll axis", "Pitch axis" },
- .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_3axis_2button = {
- .name = "3-axis, 2-button joystick",
- .internal_name = "3axis_2button",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_3axis,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 3,
- .button_count = 2,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "X axis", "Y axis", "Z axis" },
- .button_names = { "Button 1", "Button 2" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_2button_yoke_throttle = {
- .name = "2-button flight yoke with throttle",
- .internal_name = "2button_yoke_throttle",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_3axis,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 3,
- .button_count = 2,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "Roll axis", "Pitch axis", "Throttle axis" },
- .button_names = { "Trigger", "Button 2" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_3axis_4button = {
- .name = "3-axis, 4-button joystick",
- .internal_name = "3axis_4button",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read_4button,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_3axis,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 3,
- .button_count = 4,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "X axis", "Y axis", "Z axis" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_4button_yoke_throttle = {
- .name = "4-button flight yoke with throttle",
- .internal_name = "4button_yoke_throttle",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read_4button,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_3axis,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 3,
- .button_count = 4,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "Roll axis", "Pitch axis", "Throttle axis" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_win95_steering_wheel = {
- .name = "Win95 Steering Wheel (3-axis, 4-button)",
- .internal_name = "win95_steering_wheel",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read_4button,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_3axis,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 3,
- .button_count = 4,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "Steering axis", "Accelerator axis", "Brake axis" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
- .pov_names = { NULL }
-};
-
-const joystick_t joystick_4axis_4button = {
- .name = "4-axis, 4-button joystick",
- .internal_name = "4axis_4button",
- .init = joystick_standard_init,
- .close = joystick_standard_close,
- .read = joystick_standard_read_4button,
- .write = joystick_standard_write,
- .read_axis = joystick_standard_read_axis_4axis,
- .a0_over = joystick_standard_a0_over,
- .axis_count = 4,
- .button_count = 4,
- .pov_count = 0,
- .max_joysticks = 1,
- .axis_names = { "X axis", "Y axis", "Z axis", "zX axis" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
- .pov_names = { NULL }
-};
-
const joystick_t joystick_2axis_6button = {
.name = "2-axis, 6-button joystick",
.internal_name = "2axis_6button",
@@ -525,3 +536,401 @@ const joystick_t joystick_2axis_8button = {
.button_names = { "Button 1", "Button 2", "Button 3", "Button 4", "Button 5", "Button 6", "Button 7", "Button 8" },
.pov_names = { NULL }
};
+
+const joystick_t joystick_3axis_2button = {
+ .name = "3-axis, 2-button joystick",
+ .internal_name = "3axis_2button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis", "Z axis" },
+ .button_names = { "Button 1", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_3axis_3button = {
+ .name = "3-axis, 3-button joystick",
+ .internal_name = "3axis_3button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_3button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 3,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis", "Z axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_3axis_4button = {
+ .name = "3-axis, 4-button joystick",
+ .internal_name = "3axis_4button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis", "Z axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_4axis_2button = {
+ .name = "4-axis, 2-button joystick",
+ .internal_name = "4axis_2button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis", "Z axis", "zX axis" },
+ .button_names = { "Button 1", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_4axis_3button = {
+ .name = "4-axis, 3-button joystick",
+ .internal_name = "4axis_3button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_3button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 3,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis", "Z axis", "zX axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_4axis_4button = {
+ .name = "4-axis, 4-button joystick",
+ .internal_name = "4axis_4button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_4axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 4,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis", "Z axis", "zX axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_2button_gamepad = {
+ .name = "2-button gamepad(s)",
+ .internal_name = "2button_gamepad",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 2,
+ .axis_names = { "X axis", "Y axis" },
+ .button_names = { "Button 1", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_3button_gamepad = {
+ .name = "3-button gamepad",
+ .internal_name = "3button_gamepad",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_3button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_2axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 3,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_4button_gamepad = {
+ .name = "4-button gamepad",
+ .internal_name = "4button_gamepad",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_2axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_6button_gamepad = {
+ .name = "6-button gamepad",
+ .internal_name = "6button_gamepad",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_6button,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 6,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4", "Button 5", "Button 6" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_gravis_gamepad = {
+ .name = "Gravis PC GamePad",
+ .internal_name = "gravis_gamepad",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_2axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "X axis", "Y axis" },
+ // TODO: Check this
+ .button_names = { "Button 1 (Red)", "Button 2 (Blue)", "Button 3 (Yellow)", "Button 4 (Green)" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_2button_flight_yoke = {
+ .name = "2-button flight yoke",
+ .internal_name = "2button_flight_yoke",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 2,
+ .axis_names = { "Roll axis", "Pitch axis" },
+ .button_names = { "Trigger", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_3button_flight_yoke = {
+ .name = "3-button flight yoke",
+ .internal_name = "3button_flight_yoke",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_3button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_2axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 3,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Roll axis", "Pitch axis" },
+ .button_names = { "Trigger", "Button 2", "Button 3" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_4button_flight_yoke = {
+ .name = "4-button flight yoke",
+ .internal_name = "4button_flight_yoke",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_2axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Roll axis", "Pitch axis" },
+ .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_2button_yoke_throttle = {
+ .name = "2-button flight yoke with throttle",
+ .internal_name = "2button_yoke_throttle",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Roll axis", "Pitch axis", "Throttle axis" },
+ .button_names = { "Trigger", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_3button_yoke_throttle = {
+ .name = "3-button flight yoke with throttle",
+ .internal_name = "3button_yoke_throttle",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_3button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 3,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Roll axis", "Pitch axis", "Throttle axis" },
+ .button_names = { "Trigger", "Button 2", "Button 3" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_4button_yoke_throttle = {
+ .name = "4-button flight yoke with throttle",
+ .internal_name = "4button_yoke_throttle",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis_throttle,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Roll axis", "Pitch axis", "Throttle axis" },
+ .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_steering_wheel_2_button = {
+ .name = "Steering wheel (3-axis, 2-button)",
+ .internal_name = "steering_wheel_2_button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_2button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 2,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Steering axis", "Accelerator axis", "Brake axis" },
+ .button_names = { "Button 1", "Button 2" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_steering_wheel_3_button = {
+ .name = "Steering wheel (3-axis, 3-button)",
+ .internal_name = "steering_wheel_3_button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_3button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 3,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Steering axis", "Accelerator axis", "Brake axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_steering_wheel_4_button = {
+ .name = "Steering wheel (3-axis, 4-button)",
+ .internal_name = "steering_wheel_4_button",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_3axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 3,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Steering axis", "Accelerator axis", "Brake axis" },
+ .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .pov_names = { NULL }
+};
+
+const joystick_t joystick_tm_formula_t1t2 = {
+ .name = "Thrustmaster Formula T1/T2 with adapter",
+ .internal_name = "thrustmaster_formula_t1t2",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_2axis,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Steering axis", "Accelerator/Brake axis" },
+ .button_names = { "Shifter Up", "Shifter Down", "Top Console Switch", "Bottom Console Switch" },
+ .pov_names = { NULL }
+};
+
+// TODO Validate this
+const joystick_t joystick_tm_formula_t1t2wa = {
+ .name = "Thrustmaster Formula T1/T2 without adapter",
+ .internal_name = "thrustmaster_formula_t1t2wa",
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
+ .read_axis = joystick_standard_read_axis_2axis_t1t2wa,
+ .a0_over = joystick_standard_a0_over,
+ .axis_count = 2,
+ .button_count = 4,
+ .pov_count = 0,
+ .max_joysticks = 1,
+ .axis_names = { "Steering axis", "Accelerator/Brake axis" },
+ .button_names = { "Shifter Up", "Shifter Down", "Top Console Switch", "Bottom Console Switch" },
+ .pov_names = { NULL }
+};
diff --git a/src/game/joystick_sw_pad.c b/src/game/joystick_sw_pad.c
index 7c1d4910b..c0d280de1 100644
--- a/src/game/joystick_sw_pad.c
+++ b/src/game/joystick_sw_pad.c
@@ -31,9 +31,11 @@
*
* Authors: Miran Grca,
* Sarah Walker,
+ * Jasmine Iwanek,
*
* Copyright 2016-2018 Miran Grca.
* Copyright 2008-2018 Sarah Walker.
+ * Copyright 2021-2025 Jasmine Iwanek.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -136,10 +138,11 @@ sw_close(void *priv)
static uint8_t
sw_read(void *priv)
{
+ uint8_t gp = 0;
sw_data *sw = (sw_data *) priv;
uint8_t temp = 0;
- if (!JOYSTICK_PRESENT(0, 0))
+ if (!JOYSTICK_PRESENT(gp, 0))
return 0xff;
if (timer_is_enabled(&sw->poll_timer)) {
@@ -162,10 +165,11 @@ sw_read(void *priv)
static void
sw_write(void *priv)
{
+ uint8_t gp = 0;
sw_data *sw = (sw_data *) priv;
int64_t time_since_last = timer_get_remaining_us(&sw->trigger_timer);
- if (!JOYSTICK_PRESENT(0, 0))
+ if (!JOYSTICK_PRESENT(gp, 0))
return;
if (!sw->poll_left) {
@@ -191,20 +195,20 @@ sw_write(void *priv)
for (uint8_t js = 0; js < 4; js++) {
uint16_t data = 0x3fff;
- if (!JOYSTICK_PRESENT(0, js))
+ if (!JOYSTICK_PRESENT(gp, js))
break;
- if (joystick_state[0][js].axis[1] < -16383)
+ if (joystick_state[gp][js].axis[1] < -16383)
data &= ~1;
- if (joystick_state[0][js].axis[1] > 16383)
+ if (joystick_state[gp][js].axis[1] > 16383)
data &= ~2;
- if (joystick_state[0][js].axis[0] > 16383)
+ if (joystick_state[gp][js].axis[0] > 16383)
data &= ~4;
- if (joystick_state[0][js].axis[0] < -16383)
+ if (joystick_state[gp][js].axis[0] < -16383)
data &= ~8;
for (uint8_t button_nr = 0; button_nr < 10; button_nr++) {
- if (joystick_state[0][js].button[button_nr])
+ if (joystick_state[gp][js].button[button_nr])
data &= ~(1 << (button_nr + 4));
}
@@ -228,7 +232,9 @@ sw_write(void *priv)
static int
sw_read_axis(UNUSED(void *priv), UNUSED(int axis))
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
return 0; /*No analogue support on Sidewinder game pad*/
diff --git a/src/game/joystick_tm_fcs.c b/src/game/joystick_tm_fcs.c
index 6c1176a42..1f420ef0c 100644
--- a/src/game/joystick_tm_fcs.c
+++ b/src/game/joystick_tm_fcs.c
@@ -10,9 +10,11 @@
*
* Authors: Miran Grca,
* Sarah Walker,
+ * Jasmine Iwanek,
*
* Copyright 2016-2018 Miran Grca.
* Copyright 2008-2018 Sarah Walker.
+ * Copyright 2021-2025 Jasmine IWanek.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -42,69 +44,34 @@
#include <86box/timer.h>
#include <86box/gameport.h>
#include <86box/plat_unused.h>
-
-static void *
-tm_fcs_init(void)
-{
- return NULL;
-}
-
-static void
-tm_fcs_close(UNUSED(void *priv))
-{
- //
-}
-
-static uint8_t
-tm_fcs_read(UNUSED(void *priv))
-{
- uint8_t ret = 0xf0;
-
- if (JOYSTICK_PRESENT(0, 0)) {
- if (joystick_state[0][0].button[0])
- ret &= ~0x10;
- if (joystick_state[0][0].button[1])
- ret &= ~0x20;
- if (joystick_state[0][0].button[2])
- ret &= ~0x40;
- if (joystick_state[0][0].button[3])
- ret &= ~0x80;
- }
-
- return ret;
-}
-
-static void
-tm_fcs_write(UNUSED(void *priv))
-{
- //
-}
+#include <86box/joystick.h>
static int
tm_fcs_read_axis(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp= 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0:
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- return joystick_state[0][0].axis[1];
- case 2:
- return 0;
+ return joystick_state[gp][0].axis[1];
case 3:
- if (joystick_state[0][0].pov[0] == -1)
+ if (joystick_state[gp][0].pov[0] == -1)
return 32767;
- if (joystick_state[0][0].pov[0] > 315 || joystick_state[0][0].pov[0] < 45)
+ if (joystick_state[gp][0].pov[0] > 315 || joystick_state[gp][0].pov[0] < 45)
return -32768;
- if (joystick_state[0][0].pov[0] >= 45 && joystick_state[0][0].pov[0] < 135)
+ if (joystick_state[gp][0].pov[0] >= 45 && joystick_state[gp][0].pov[0] < 135)
return -16384;
- if (joystick_state[0][0].pov[0] >= 135 && joystick_state[0][0].pov[0] < 225)
+ if (joystick_state[gp][0].pov[0] >= 135 && joystick_state[gp][0].pov[0] < 225)
return 0;
- if (joystick_state[0][0].pov[0] >= 225 && joystick_state[0][0].pov[0] < 315)
+ if (joystick_state[gp][0].pov[0] >= 225 && joystick_state[gp][0].pov[0] < 315)
return 16384;
return 0;
+ case 2:
default:
return 0;
}
@@ -113,26 +80,28 @@ tm_fcs_read_axis(UNUSED(void *priv), int axis)
static int
tm_fcs_rcs_read_axis(UNUSED(void *priv), int axis)
{
- if (!JOYSTICK_PRESENT(0, 0))
+ uint8_t gp = 0;
+
+ if (!JOYSTICK_PRESENT(gp, 0))
return AXIS_NOT_PRESENT;
switch (axis) {
case 0:
- return joystick_state[0][0].axis[0];
+ return joystick_state[gp][0].axis[0];
case 1:
- return joystick_state[0][0].axis[1];
+ return joystick_state[gp][0].axis[1];
case 2:
- return joystick_state[0][0].axis[2];
+ return joystick_state[gp][0].axis[2];
case 3:
- if (joystick_state[0][0].pov[0] == -1)
+ if (joystick_state[gp][0].pov[0] == -1)
return 32767;
- if (joystick_state[0][0].pov[0] > 315 || joystick_state[0][0].pov[0] < 45)
+ if (joystick_state[gp][0].pov[0] > 315 || joystick_state[gp][0].pov[0] < 45)
return -32768;
- if (joystick_state[0][0].pov[0] >= 45 && joystick_state[0][0].pov[0] < 135)
+ if (joystick_state[gp][0].pov[0] >= 45 && joystick_state[gp][0].pov[0] < 135)
return -16384;
- if (joystick_state[0][0].pov[0] >= 135 && joystick_state[0][0].pov[0] < 225)
+ if (joystick_state[gp][0].pov[0] >= 135 && joystick_state[gp][0].pov[0] < 225)
return 0;
- if (joystick_state[0][0].pov[0] >= 225 && joystick_state[0][0].pov[0] < 315)
+ if (joystick_state[gp][0].pov[0] >= 225 && joystick_state[gp][0].pov[0] < 315)
return 16384;
return 0;
default:
@@ -140,44 +109,38 @@ tm_fcs_rcs_read_axis(UNUSED(void *priv), int axis)
}
}
-static void
-tm_fcs_a0_over(UNUSED(void *priv))
-{
- //
-}
-
const joystick_t joystick_tm_fcs = {
.name = "Thrustmaster Flight Control System",
.internal_name = "thrustmaster_fcs",
- .init = tm_fcs_init,
- .close = tm_fcs_close,
- .read = tm_fcs_read,
- .write = tm_fcs_write,
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
.read_axis = tm_fcs_read_axis,
- .a0_over = tm_fcs_a0_over,
+ .a0_over = joystick_standard_a0_over,
.axis_count = 2,
.button_count = 4,
.pov_count = 1,
.max_joysticks = 1,
.axis_names = { "X axis", "Y axis" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
.pov_names = { "POV" }
};
const joystick_t joystick_tm_fcs_rcs = {
.name = "Thrustmaster FCS + Rudder Control System",
.internal_name = "thrustmaster_fcs_rcs",
- .init = tm_fcs_init,
- .close = tm_fcs_close,
- .read = tm_fcs_read,
- .write = tm_fcs_write,
+ .init = joystick_standard_init,
+ .close = joystick_standard_close,
+ .read = joystick_standard_read_4button,
+ .write = joystick_standard_write,
.read_axis = tm_fcs_rcs_read_axis,
- .a0_over = tm_fcs_a0_over,
+ .a0_over = joystick_standard_a0_over,
.axis_count = 3,
.button_count = 4,
.pov_count = 1,
.max_joysticks = 1,
.axis_names = { "X axis", "Y axis", "Rudder" },
- .button_names = { "Button 1", "Button 2", "Button 3", "Button 4" },
+ .button_names = { "Trigger", "Button 2", "Button 3", "Button 4" },
.pov_names = { "POV" }
};
diff --git a/src/include/86box/acpi.h b/src/include/86box/acpi.h
index 5a3eb39ec..2287b3d56 100644
--- a/src/include/86box/acpi.h
+++ b/src/include/86box/acpi.h
@@ -8,8 +8,6 @@
*
* Definitions for the ACPI emulation.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2020 Miran Grca.
diff --git a/src/include/86box/agpgart.h b/src/include/86box/agpgart.h
index d3ed35c88..abb0a0e07 100644
--- a/src/include/86box/agpgart.h
+++ b/src/include/86box/agpgart.h
@@ -8,13 +8,10 @@
*
* AGP Graphics Address Remapping Table remapping emulation.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2021 RichardG.
*/
-
#ifndef EMU_AGPGART_H
#define EMU_AGPGART_H
diff --git a/src/include/86box/apm.h b/src/include/86box/apm.h
index 2d5f0f117..cff17fa57 100644
--- a/src/include/86box/apm.h
+++ b/src/include/86box/apm.h
@@ -8,8 +8,6 @@
*
* Definitions for the Advanced Power Management emulation.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2019 Miran Grca.
diff --git a/src/include/86box/bswap.h b/src/include/86box/bswap.h
index 0c32a7887..a2802d920 100644
--- a/src/include/86box/bswap.h
+++ b/src/include/86box/bswap.h
@@ -8,8 +8,6 @@
*
* Various definitions for portable byte-swapping.
*
- *
- *
* Authors: Fred N. van Kempen,
* neozeed,
*
@@ -34,7 +32,6 @@
* Boston, MA 02111-1307
* USA.
*/
-
#ifndef BSWAP_H
#define BSWAP_H
diff --git a/src/include/86box/bugger.h b/src/include/86box/bugger.h
index 57dabd172..99f73ac3f 100644
--- a/src/include/86box/bugger.h
+++ b/src/include/86box/bugger.h
@@ -15,8 +15,6 @@
*
* Definitions for the BUGGER card.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 1989-2018 Fred N. van Kempen.
diff --git a/src/include/86box/cartridge.h b/src/include/86box/cartridge.h
index 2b0662703..3afe1c3fc 100644
--- a/src/include/86box/cartridge.h
+++ b/src/include/86box/cartridge.h
@@ -8,8 +8,6 @@
*
* Definitions for the PCjr cartridge emulation.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2021 Miran Grca.
diff --git a/src/include/86box/cdrom.h b/src/include/86box/cdrom.h
index 85e5a0f0b..5ddb2400f 100644
--- a/src/include/86box/cdrom.h
+++ b/src/include/86box/cdrom.h
@@ -138,8 +138,9 @@ static const struct cdrom_drive_types_s {
{ "AZT", "CDA46802I", "1.15", "azt_cda", BUS_TYPE_IDE, 0, 4, 36, 0, 0, { 3, 0, 0, 0 } },
{ "BTC", "CD-ROM BCD36XH", "U1.0", "btc_36xh", BUS_TYPE_IDE, 0, 36, 36, 0, 0, { 4, 2, 2, -1 } },
{ "GOLDSTAR", "CRD-8160B", "3.14", "goldstar", BUS_TYPE_IDE, 0, 16, 36, 0, 0, { 4, 2, 2, -1 } },
+ { "GOLDSTAR", "CRD-8400B", "1.03", "goldstar_8400b", BUS_TYPE_IDE, 0, 40, 36, 0, 0, { 4, 2, 2, -1 } },
/* TODO: Find an IDENTIFY and/or INQUIRY dump. */
- { "GOLDSTAR", "GCD-R560B", "1.00", "goldstar", BUS_TYPE_IDE, 0, 6, 36, 0, 0, { 4, 2, 2, -1 } },
+ { "GOLDSTAR", "GCD-R560B", "1.00", "goldstar_r560b", BUS_TYPE_IDE, 0, 6, 36, 0, 0, { 4, 2, 2, -1 } },
{ "HITACHI", "CDR-8130", "0020", "hitachi_r8130", BUS_TYPE_IDE, 0, 16, 36, 0, 0, { 4, 2, 2, -1 } },
{ "HITACHI", "GD-7500", "A1 ", "hitachi_7500", BUS_TYPE_IDE, 0, 40, 36, 0, 0, { 4, 2, 2, 2 } }, /* DVD. */
{ "HL-DT-ST", "CD-ROM GCR-8526B", "1.01", "hldtst_8526b", BUS_TYPE_IDE, 0, 52, 36, 0, 0, { 4, 2, 2, 2 } },
@@ -174,6 +175,7 @@ static const struct cdrom_drive_types_s {
{ "PHILIPS", "CD-ROM PCA403CD", "U31P", "philips_403", BUS_TYPE_IDE, 0, 40, 36, 0, 0, { 4, 2, 2, -1 } },
{ "SONY", "CD-ROM CDU76", "1.0i", "sony_76", BUS_TYPE_IDE, 0, 4, 36, 0, 0, { 2, -1, -1, -1 } },
{ "SONY", "CD-ROM CDU311", "3.0h", "sony_311", BUS_TYPE_IDE, 0, 8, 36, 0, 0, { 3, 2, 1, -1 } },
+ { "SONY", "CD-ROM CDU611", "2.2c", "sony_611", BUS_TYPE_IDE, 0, 24, 36, 0, 0, { 3, 2, 2, -1 } },
{ "SONY", "CD-ROM CDU5225", "NYS4", "sony_5225", BUS_TYPE_IDE, 0, 52, 36, 0, 0, { 4, 2, 2, 4 } },
{ "TEAC", "CD-516E", "1.0G", "teac_516e", BUS_TYPE_IDE, 0, 16, 36, 0, 0, { 3, 2, 2, -1 } },
{ "TEAC", "CD-524EA", "3.0D", "teac_524ea", BUS_TYPE_IDE, 0, 24, 36, 0, 0, { 3, 2, 2, -1 } },
@@ -183,6 +185,7 @@ static const struct cdrom_drive_types_s {
{ "TOSHIBA", "CD-ROM XM-6202B", "1512", "toshiba_6202b", BUS_TYPE_IDE, 0, 32, 96, 0, 0, { 4, 2, 2, -1 } },
{ "TOSHIBA", "CD-ROM XM-6402B", "1008", "toshiba_6402b", BUS_TYPE_IDE, 0, 32, 96, 0, 0, { 4, 2, 2, 2 } },
{ "TOSHIBA", "CD-ROM XM-6702B", "1007", "toshiba_6720b", BUS_TYPE_IDE, 0, 48, 96, 0, 0, { 4, 2, 2, 2 } },
+ { "TOSHIBA", "DVD-ROM SD-M1202", "1020", "toshiba_m1202", BUS_TYPE_IDE, 0, 32, 96, 0, 1, { 4, 2, 2, 2 } },
{ "TOSHIBA", "DVD-ROM SD-M1802", "1051", "toshiba_m1802", BUS_TYPE_IDE, 0, 48, 96, 0, 1, { 4, 2, 2, 2 } },
{ "CHINON", "CD-ROM CDS-431", "H42 ", "chinon_431", BUS_TYPE_SCSI, 1, 1, 36, 1, 0, { -1, -1, -1, -1 } },
{ "CHINON", "CD-ROM CDX-435", "M62 ", "chinon_435", BUS_TYPE_SCSI, 1, 2, 36, 1, 0, { -1, -1, -1, -1 } },
@@ -227,6 +230,7 @@ static const struct cdrom_drive_types_s {
{ "TOSHIBA", "CD-ROM XM-5701TA", "3136", "toshiba_5701a", BUS_TYPE_SCSI, 2, 12, 96, 0, 0, { -1, -1, -1, -1 } }, /* Tray. */
{ "TOSHIBA", "DVD-ROM SD-M1401", "1008", "toshiba_m1401", BUS_TYPE_SCSI, 2, 40, 96, 0, 1, { -1, -1, -1, -1 } }, /* Tray. */
{ "MATSHITA", "CR-562", "0.75", "cr562", BUS_TYPE_MKE , 0, 2, 0, 0, 0, { -1, -1, -1, -1 } },
+ { "MATSHITA", "CR-562", "0.76", "cr562_076", BUS_TYPE_MKE , 0, 2, 0, 0, 0, { -1, -1, -1, -1 } },
{ "MATSHITA", "CR-562", "0.80", "cr562_080", BUS_TYPE_MKE , 0, 2, 0, 0, 0, { -1, -1, -1, -1 } },
{ "MATSHITA", "CR-563", "0.75", "cr563", BUS_TYPE_MKE , 0, 2, 0, 0, 0, { -1, -1, -1, -1 } },
{ "MATSHITA", "CR-563", "0.80", "cr563_080", BUS_TYPE_MKE , 0, 2, 0, 0, 0, { -1, -1, -1, -1 } },
diff --git a/src/include/86box/cdrom_interface.h b/src/include/86box/cdrom_interface.h
index ba4d0581b..2d68346ca 100644
--- a/src/include/86box/cdrom_interface.h
+++ b/src/include/86box/cdrom_interface.h
@@ -8,8 +8,6 @@
*
* Definitions for the common CD-ROM interface controller handler.
*
- *
- *
* Authors: TheCollector1995
*
* Copyright 2022 TheCollector1995.
diff --git a/src/include/86box/cdrom_mke.h b/src/include/86box/cdrom_mke.h
index 659e084e3..e47fc651a 100644
--- a/src/include/86box/cdrom_mke.h
+++ b/src/include/86box/cdrom_mke.h
@@ -14,7 +14,6 @@
* Copyright 2022-2025 Miran Grca.
* Copyright 2025 Cacodemon345.
*/
-
#ifndef CDROM_MKE_H
#define CDROM_MKE_H
diff --git a/src/include/86box/chipset.h b/src/include/86box/chipset.h
index 66ae082ef..64b5bd88f 100644
--- a/src/include/86box/chipset.h
+++ b/src/include/86box/chipset.h
@@ -8,8 +8,6 @@
*
* Handling of the emulated chipsets.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2019-2020 Miran Grca.
diff --git a/src/include/86box/clock.h b/src/include/86box/clock.h
index 10155eabc..e0d2d9c09 100644
--- a/src/include/86box/clock.h
+++ b/src/include/86box/clock.h
@@ -8,8 +8,6 @@
*
* Definitions for clock generator chips.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2020 RichardG.
diff --git a/src/include/86box/ddma.h b/src/include/86box/ddma.h
index 01c2e980d..c7c44bb17 100644
--- a/src/include/86box/ddma.h
+++ b/src/include/86box/ddma.h
@@ -8,8 +8,6 @@
*
* Definitions for the Distributed DMA emulation.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2020 Miran Grca.
diff --git a/src/include/86box/device.h b/src/include/86box/device.h
index 76f12a0c5..b6e78f41c 100644
--- a/src/include/86box/device.h
+++ b/src/include/86box/device.h
@@ -8,8 +8,6 @@
*
* Definitions for the device handler.
*
- *
- *
* Authors: Fred N. van Kempen,
* Miran Grca,
* Sarah Walker,
@@ -215,7 +213,7 @@ extern uint8_t device_get_bios_type(const device_t *dev, const char *interna
extern uint8_t device_get_bios_num_files(const device_t *dev, const char *internal_name);
extern uint32_t device_get_bios_local(const device_t *dev, const char *internal_name);
extern uint32_t device_get_bios_file_size(const device_t *dev, const char *internal_name);
-extern const char *device_get_bios_file(const device_t *dev, const char *internal_name, int file_no);
+extern const char *device_get_bios_file(const device_t *dev, const char *internal_name, unsigned int file_no);
extern int device_is_valid(const device_t *, int mch);
diff --git a/src/include/86box/discord.h b/src/include/86box/discord.h
index 358c95c9b..6f698470b 100644
--- a/src/include/86box/discord.h
+++ b/src/include/86box/discord.h
@@ -8,8 +8,6 @@
*
* Definitions for the Discord integration module.
*
- *
- *
* Authors: David HrdliÄka,
*
* Copyright 2019 David HrdliÄka.
diff --git a/src/include/86box/disksizes.h b/src/include/86box/disksizes.h
index b5cd1bc30..642d099fc 100644
--- a/src/include/86box/disksizes.h
+++ b/src/include/86box/disksizes.h
@@ -8,13 +8,10 @@
*
* Header of the emulation of the PC speaker.
*
- *
- *
* Authors: Jasmine Iwanek
*
- * Copyright 2022 Jasmine Iwanek
+ * Copyright 2022-2025 Jasmine Iwanek
*/
-
#ifndef DISK_SIZES_H
#define DISK_SIZES_H
diff --git a/src/include/86box/dma.h b/src/include/86box/dma.h
index 23ce04898..96530cf01 100644
--- a/src/include/86box/dma.h
+++ b/src/include/86box/dma.h
@@ -8,8 +8,6 @@
*
* Definitions for the Intel DMA controller.
*
- *
- *
* Authors: Fred N. van Kempen,
* Miran Grca,
* Sarah Walker,
diff --git a/src/include/86box/fdc.h b/src/include/86box/fdc.h
index 06ccafa39..ff56aa0ef 100644
--- a/src/include/86box/fdc.h
+++ b/src/include/86box/fdc.h
@@ -9,8 +9,6 @@
* Implementation of the NEC uPD-765 and compatible floppy disk
* controller.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
diff --git a/src/include/86box/fdc_ext.h b/src/include/86box/fdc_ext.h
index e6348139b..099271629 100644
--- a/src/include/86box/fdc_ext.h
+++ b/src/include/86box/fdc_ext.h
@@ -9,8 +9,6 @@
* Implementation of the NEC uPD-765 and compatible floppy disk
* controller.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
diff --git a/src/include/86box/fdd_common.h b/src/include/86box/fdd_common.h
index 7673d9684..9fa870f87 100644
--- a/src/include/86box/fdd_common.h
+++ b/src/include/86box/fdd_common.h
@@ -8,8 +8,6 @@
*
* Shared code for all the floppy modules.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2017-2018 Fred N. van Kempen.
diff --git a/src/include/86box/fdd_fdi.h b/src/include/86box/fdd_fdi.h
index 6b9461bad..5e24f17a2 100644
--- a/src/include/86box/fdd_fdi.h
+++ b/src/include/86box/fdd_fdi.h
@@ -9,8 +9,6 @@
* Implementation of the FDI floppy stream image format
* interface to the FDI2RAW module.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
diff --git a/src/include/86box/fdd_imd.h b/src/include/86box/fdd_imd.h
index f50ad865e..d129ac642 100644
--- a/src/include/86box/fdd_imd.h
+++ b/src/include/86box/fdd_imd.h
@@ -8,8 +8,6 @@
*
* Definitions for the IMD floppy image format.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
diff --git a/src/include/86box/fdd_img.h b/src/include/86box/fdd_img.h
index f0a639d88..83084c079 100644
--- a/src/include/86box/fdd_img.h
+++ b/src/include/86box/fdd_img.h
@@ -9,8 +9,6 @@
* Implementation of the raw sector-based floppy image format,
* as well as the Japanese FDI, CopyQM, and FDF formats.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
diff --git a/src/include/86box/fdd_mfm.h b/src/include/86box/fdd_mfm.h
index 3a8494a26..455a1e3d4 100644
--- a/src/include/86box/fdd_mfm.h
+++ b/src/include/86box/fdd_mfm.h
@@ -8,8 +8,6 @@
*
* Implementation of the HxC MFM image format.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2018 Miran Grca.
diff --git a/src/include/86box/fdd_pcjs.h b/src/include/86box/fdd_pcjs.h
index 30e8d28a3..4bfe4aca9 100644
--- a/src/include/86box/fdd_pcjs.h
+++ b/src/include/86box/fdd_pcjs.h
@@ -15,7 +15,6 @@
* More info: https://www.pcjs.org/tools/diskimage/
* pcjs disk module v2: https://github.com/jeffpar/pcjs/blob/master/machines/pcx86/modules/v2/disk.js
*/
-
#ifndef EMU_FLOPPY_PCJS_H
#define EMU_FLOPPY_PCJS_H
diff --git a/src/include/86box/fdd_td0.h b/src/include/86box/fdd_td0.h
index add6a07dd..cebc86c21 100644
--- a/src/include/86box/fdd_td0.h
+++ b/src/include/86box/fdd_td0.h
@@ -8,8 +8,6 @@
*
* Definitions for the Teledisk floppy image format.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
diff --git a/src/include/86box/flash.h b/src/include/86box/flash.h
index bd9b7e505..5ecf0ef60 100644
--- a/src/include/86box/flash.h
+++ b/src/include/86box/flash.h
@@ -8,15 +8,12 @@
*
* Handling of the emulated flash devices.
*
- *
- *
* Authors: Miran Grca,
* Jasmine Iwanek,
*
* Copyright 2020 Miran Grca.
* Copyright 2022-2023 Jasmine Iwanek.
*/
-
#ifndef EMU_FLASH_H
#define EMU_FLASH_H
@@ -32,6 +29,7 @@ extern const device_t sst_flash_29ee020_device;
extern const device_t winbond_flash_w29c512_device;
extern const device_t winbond_flash_w29c010_device;
+extern const device_t winbond_flash_w29c011a_device;
extern const device_t winbond_flash_w29c020_device;
extern const device_t winbond_flash_w29c040_device;
diff --git a/src/include/86box/gameport.h b/src/include/86box/gameport.h
index f9d7810e0..a1bec69fb 100644
--- a/src/include/86box/gameport.h
+++ b/src/include/86box/gameport.h
@@ -172,29 +172,73 @@ extern void gameport_update_joystick_type(uint8_t gp);
extern void gameport_remap(void *priv, uint16_t address);
extern void *gameport_add(const device_t *gameport_type);
+// Paddle Controllers
+extern const joystick_t joystick_generic_paddle;
+
+// 2 axis Generic Joysticks
+extern const joystick_t joystick_2axis_1button;
extern const joystick_t joystick_2axis_2button;
-extern const joystick_t joystick_2button_gamepad;
-extern const joystick_t joystick_2button_flight_yoke;
+extern const joystick_t joystick_2axis_3button;
extern const joystick_t joystick_2axis_4button;
-extern const joystick_t joystick_4button_gamepad;
-extern const joystick_t joystick_4button_flight_yoke;
-extern const joystick_t joystick_3axis_2button;
-extern const joystick_t joystick_2button_yoke_throttle;
-extern const joystick_t joystick_3axis_4button;
-extern const joystick_t joystick_4button_yoke_throttle;
-extern const joystick_t joystick_win95_steering_wheel;
-extern const joystick_t joystick_4axis_4button;
extern const joystick_t joystick_2axis_6button;
extern const joystick_t joystick_2axis_8button;
+// 3 axis Generic Joysticks
+extern const joystick_t joystick_3axis_2button;
+extern const joystick_t joystick_3axis_3button;
+extern const joystick_t joystick_3axis_4button;
+
+// 4 axis Generic Joysticks
+extern const joystick_t joystick_4axis_2button;
+extern const joystick_t joystick_4axis_3button;
+extern const joystick_t joystick_4axis_4button;
+
+// Generic Gamepads
+extern const joystick_t joystick_2button_gamepad;
+extern const joystick_t joystick_3button_gamepad;
+extern const joystick_t joystick_4button_gamepad;
+extern const joystick_t joystick_6button_gamepad;
+
+extern const joystick_t joystick_gravis_gamepad;
+
+// Generic Steering Wheels
+extern const joystick_t joystick_steering_wheel_2_button;
+extern const joystick_t joystick_steering_wheel_3_button;
+extern const joystick_t joystick_steering_wheel_4_button;
+
+// Generic Flight Yokes
+extern const joystick_t joystick_2button_flight_yoke;
+extern const joystick_t joystick_4button_flight_yoke;
+extern const joystick_t joystick_3button_flight_yoke;
+
+extern const joystick_t joystick_2button_yoke_throttle;
+extern const joystick_t joystick_3button_yoke_throttle;
+extern const joystick_t joystick_4button_yoke_throttle;
+
+extern const joystick_t joystick_ch_flightstick;
+extern const joystick_t joystick_ch_flightstick_ch_pedals;
+extern const joystick_t joystick_ch_flightstick_ch_pedals_pro;
+
extern const joystick_t joystick_ch_flightstick_pro;
extern const joystick_t joystick_ch_flightstick_pro_ch_pedals;
+extern const joystick_t joystick_ch_flightstick_pro_ch_pedals_pro;
+
+extern const joystick_t joystick_ch_virtual_pilot;
+extern const joystick_t joystick_ch_virtual_pilot_ch_pedals;
+extern const joystick_t joystick_ch_virtual_pilot_ch_pedals_pro;
+
+extern const joystick_t joystick_ch_virtual_pilot_pro;
+extern const joystick_t joystick_ch_virtual_pilot_pro_ch_pedals;
+extern const joystick_t joystick_ch_virtual_pilot_pro_ch_pedals_pro;
extern const joystick_t joystick_sw_pad;
extern const joystick_t joystick_tm_fcs;
extern const joystick_t joystick_tm_fcs_rcs;
+extern const joystick_t joystick_tm_formula_t1t2;
+extern const joystick_t joystick_tm_formula_t1t2wa;
+
#ifdef __cplusplus
}
#endif
diff --git a/src/include/86box/gdbstub.h b/src/include/86box/gdbstub.h
index c58a58bf5..695eb90f0 100644
--- a/src/include/86box/gdbstub.h
+++ b/src/include/86box/gdbstub.h
@@ -8,8 +8,6 @@
*
* Definitions for the GDB stub server.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2022 RichardG.
diff --git a/src/include/86box/hdc.h b/src/include/86box/hdc.h
index 91a4c68cd..70d71958b 100644
--- a/src/include/86box/hdc.h
+++ b/src/include/86box/hdc.h
@@ -8,8 +8,6 @@
*
* Definitions for the common disk controller handler.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
diff --git a/src/include/86box/hdc_ide.h b/src/include/86box/hdc_ide.h
index 3fd589f9c..99d97efd9 100644
--- a/src/include/86box/hdc_ide.h
+++ b/src/include/86box/hdc_ide.h
@@ -9,8 +9,6 @@
* Implementation of the IDE emulation for hard disks and ATAPI
* CD-ROM devices.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Copyright 2008-2019 Sarah Walker.
diff --git a/src/include/86box/hdc_ide_sff8038i.h b/src/include/86box/hdc_ide_sff8038i.h
index 901cdb325..2cf4e1f9d 100644
--- a/src/include/86box/hdc_ide_sff8038i.h
+++ b/src/include/86box/hdc_ide_sff8038i.h
@@ -8,20 +8,16 @@
*
* Emulation of the SFF-8038i IDE Bus Master.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
*
* Copyright 2008-2020 Sarah Walker.
* Copyright 2016-2020 Miran Grca.
*/
-
#ifndef EMU_HDC_IDE_SFF8038I_H
#define EMU_HDC_IDE_SFF8038I_H
-enum
-{
+enum {
IRQ_MODE_LEGACY = 0,
IRQ_MODE_PCI_IRQ_PIN,
IRQ_MODE_PCI_IRQ_LINE,
@@ -33,8 +29,7 @@ enum
IRQ_MODE_SIS_551X
};
-typedef struct sff8038i_t
-{
+typedef struct sff8038i_t {
uint8_t command;
uint8_t status;
uint8_t ptr0;
diff --git a/src/include/86box/hdd.h b/src/include/86box/hdd.h
index 597059e4f..e471cb54e 100644
--- a/src/include/86box/hdd.h
+++ b/src/include/86box/hdd.h
@@ -8,8 +8,6 @@
*
* Definitions for the hard disk image handler.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
@@ -101,6 +99,7 @@ typedef struct hdd_preset_t {
uint32_t max_multiple;
double full_stroke_ms;
double track_seek_ms;
+ const char *version_ex;
} hdd_preset_t;
typedef struct hdd_cache_seg_t {
@@ -188,6 +187,8 @@ typedef struct hard_disk_t {
const char *model;
+ const char *version_ex;
+
hdd_zone_t zones[HDD_MAX_ZONES];
hdd_cache_t cache;
diff --git a/src/include/86box/hwm.h b/src/include/86box/hwm.h
index 4ad5e6917..8dee89d74 100644
--- a/src/include/86box/hwm.h
+++ b/src/include/86box/hwm.h
@@ -8,8 +8,6 @@
*
* Definitions for hardware monitoring chips.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2020 RichardG.
diff --git a/src/include/86box/i2c.h b/src/include/86box/i2c.h
index 20e2f8b30..215e3bf52 100644
--- a/src/include/86box/i2c.h
+++ b/src/include/86box/i2c.h
@@ -8,8 +8,6 @@
*
* Definitions for the I2C handler.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2020 RichardG.
diff --git a/src/include/86box/ibm_5161.h b/src/include/86box/ibm_5161.h
index e189826a8..581f05e8b 100644
--- a/src/include/86box/ibm_5161.h
+++ b/src/include/86box/ibm_5161.h
@@ -8,13 +8,10 @@
*
* Emulation of the IBM Expansion Unit (5161).
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2016-2018 Miran Grca.
*/
-
#ifndef EMU_IBM_5161_H
#define EMU_IBM_5161_H
diff --git a/src/include/86box/ini.h b/src/include/86box/ini.h
index 4dd8387bc..8b1549e6f 100644
--- a/src/include/86box/ini.h
+++ b/src/include/86box/ini.h
@@ -8,8 +8,6 @@
*
* Configuration file handler header.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
@@ -30,8 +28,10 @@ typedef void *ini_t;
typedef void *ini_section_t;
extern ini_t ini_new(void);
+extern ini_t ini_read_ex(const char *fn, int is_rom);
extern ini_t ini_read(const char *fn);
extern void ini_strip_quotes(ini_t ini);
+extern void ini_write_ex(ini_t ini, const char *fn, int is_rom);
extern void ini_write(ini_t ini, const char *fn);
extern void ini_dump(ini_t ini);
extern void ini_close(ini_t ini);
diff --git a/src/include/86box/io.h b/src/include/86box/io.h
index b80b37a39..9b46e4db4 100644
--- a/src/include/86box/io.h
+++ b/src/include/86box/io.h
@@ -8,8 +8,6 @@
*
* Definitions for the I/O handler.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
diff --git a/src/include/86box/isamem.h b/src/include/86box/isamem.h
index 93f417e3e..bc3507d89 100644
--- a/src/include/86box/isamem.h
+++ b/src/include/86box/isamem.h
@@ -6,8 +6,6 @@
*
* Definitions for the ISAMEM cards.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2018 Fred N. van Kempen.
diff --git a/src/include/86box/isapnp.h b/src/include/86box/isapnp.h
index 9fedd656c..ce8d4864b 100644
--- a/src/include/86box/isapnp.h
+++ b/src/include/86box/isapnp.h
@@ -8,13 +8,10 @@
*
* Definitions for ISA Plug and Play.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2021 RichardG.
*/
-
#ifndef EMU_ISAPNP_H
#define EMU_ISAPNP_H
#include
diff --git a/src/include/86box/isartc.h b/src/include/86box/isartc.h
index 815daa5d6..ef2d7a921 100644
--- a/src/include/86box/isartc.h
+++ b/src/include/86box/isartc.h
@@ -6,8 +6,6 @@
*
* Definitions for the ISARTC cards.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2018 Fred N. van Kempen.
diff --git a/src/include/86box/joystick.h b/src/include/86box/joystick.h
new file mode 100644
index 000000000..c8cbf32d1
--- /dev/null
+++ b/src/include/86box/joystick.h
@@ -0,0 +1,27 @@
+/*
+ * 86Box A hypervisor and IBM PC system emulator that specializes in
+ * running old operating systems and software designed for IBM
+ * PC systems and compatibles from 1981 through fairly recent
+ * system designs based on the PCI bus.
+ *
+ * This file is part of the 86Box distribution.
+ *
+ * Definitions for the analog joystick handlers.
+ *
+ * Authors: Jasmine Iwanek,
+ *
+ * Copyright 2025 Jasmine Iwanek.
+ */
+#ifndef EMU_JOYSTICK_H
+#define EMU_JOYSTICK_H
+
+void *joystick_standard_init(void);
+void joystick_standard_close(UNUSED(void *priv));
+uint8_t joystick_standard_read_2button(UNUSED(void *priv));
+uint8_t joystick_standard_read_4button(UNUSED(void *priv));
+void joystick_standard_write(UNUSED(void *priv));
+int joystick_standard_read_axis_3axis_throttle(UNUSED(void *priv), int axis);
+int joystick_standard_read_axis_4axis(UNUSED(void *priv), int axis);
+void joystick_standard_a0_over(UNUSED(void *priv));
+
+#endif /*EMU_JOYSTICK_H*/
diff --git a/src/include/86box/keyboard.h b/src/include/86box/keyboard.h
index 231da4dd5..78714986c 100644
--- a/src/include/86box/keyboard.h
+++ b/src/include/86box/keyboard.h
@@ -8,8 +8,6 @@
*
* Definitions for the keyboard interface.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
@@ -18,7 +16,6 @@
* Copyright 2016-2025 Miran Grca.
* Copyright 2017-2019 Fred N. van Kempen.
*/
-
#ifndef EMU_KEYBOARD_H
#define EMU_KEYBOARD_H
diff --git a/src/include/86box/log.h b/src/include/86box/log.h
index e9fb70dc1..1dcc57b34 100644
--- a/src/include/86box/log.h
+++ b/src/include/86box/log.h
@@ -16,7 +16,6 @@
* Copyright 2021-25 Fred N. van Kempen.
* Copyright 2025 Connor Hyde.
*/
-
#ifndef EMU_LOG_H
#define EMU_LOG_H
diff --git a/src/include/86box/m_amstrad.h b/src/include/86box/m_amstrad.h
index ef4e8b9ea..f8567fa4a 100644
--- a/src/include/86box/m_amstrad.h
+++ b/src/include/86box/m_amstrad.h
@@ -10,13 +10,10 @@
* PC1512, PC1640 and PC200, including their keyboard, mouse and
* video devices, as well as the PC2086 and PC3086 systems.
*
- *
- *
* Authors: Sarah Walker,
*
* Copyright 2008-2019 Sarah Walker.
*/
-
#ifndef MACHINE_AMSTRAD_H
#define MACHINE_AMSTRAD_H
diff --git a/src/include/86box/m_at_t3100e.h b/src/include/86box/m_at_t3100e.h
index b9c2e24df..a2fc42761 100644
--- a/src/include/86box/m_at_t3100e.h
+++ b/src/include/86box/m_at_t3100e.h
@@ -8,8 +8,6 @@
*
* Definitions for the Toshiba T3100e system.
*
- *
- *
* Authors: Fred N. van Kempen,
* Miran Grca,
* John Elliott,
@@ -36,7 +34,6 @@
* Boston, MA 02111-1307
* USA.
*/
-
#ifndef MACHINE_T3100E_H
#define MACHINE_T3100E_H
diff --git a/src/include/86box/m_pcjr.h b/src/include/86box/m_pcjr.h
index 7bbcde3ed..f1a31954d 100644
--- a/src/include/86box/m_pcjr.h
+++ b/src/include/86box/m_pcjr.h
@@ -8,13 +8,10 @@
*
* Header files for the PCjr keyboard and video subsystems.
*
- *
- *
* Authors: Connor Hyde,
*
* Copyright 2025 starfrost
*/
-
#pragma once
#define PCJR_RGB 0
@@ -27,8 +24,7 @@
#define DOUBLE_INTERPOLATE_SRGB 2
#define DOUBLE_INTERPOLATE_LINEAR 3
-typedef struct pcjr_s
-{
+typedef struct pcjr_s {
/* Video Controller stuff. */
mem_mapping_t mapping;
uint8_t crtc[32];
@@ -46,7 +42,7 @@ typedef struct pcjr_s
int scanline;
int vc;
int dispon;
- int cursorvisible; // Is the cursor visible on the current scanline?
+ int cursorvisible; // Is the cursor visible on the current scanline?
int cursoron;
int blink;
int vsynctime;
@@ -63,13 +59,18 @@ typedef struct pcjr_s
int apply_hd;
int double_type;
- /* Keyboard Controller stuff. */
+ /* Keyboard Controller stuff. */
int latched;
int data;
int serial_data[44];
int serial_pos;
uint8_t pa;
uint8_t pb;
+
+ uint8_t option_modem;
+ uint8_t option_fdc;
+ uint8_t option_ir;
+
pc_timer_t send_delay_timer;
} pcjr_t;
@@ -77,4 +78,4 @@ typedef struct pcjr_s
void pcjr_recalc_timings(pcjr_t *pcjr);
// Note: This is a temporary solution until the pcjr video is made its own gfx card
-void pcjr_vid_init(pcjr_t *pcjr);
\ No newline at end of file
+void pcjr_vid_init(pcjr_t *pcjr);
diff --git a/src/include/86box/m_tandy.h b/src/include/86box/m_tandy.h
index 5ef509830..8856b830e 100644
--- a/src/include/86box/m_tandy.h
+++ b/src/include/86box/m_tandy.h
@@ -8,13 +8,10 @@
*
* Header files for the Tandy keyboard and video subsystems.
*
- *
- *
* Authors: Connor Hyde,
*
* Copyright 2025 starfrost
*/
-
typedef struct t1kvid_t {
mem_mapping_t mapping;
mem_mapping_t vram_mapping;
@@ -36,6 +33,13 @@ typedef struct t1kvid_t {
uint8_t planar_ctrl;
uint8_t lp_strobe;
+ uint8_t baseline_hsyncpos;
+ uint8_t baseline_vsyncpos;
+ bool baseline_ready;
+ int hsync_offset;
+ int vsync_offset;
+ int vsync_offset_pending;
+
int linepos;
int displine;
int scanline;
@@ -54,6 +58,7 @@ typedef struct t1kvid_t {
uint64_t dispontime;
uint64_t dispofftime;
pc_timer_t timer;
+ pc_timer_t calib_timer;
int firstline;
int lastline;
diff --git a/src/include/86box/m_xt_t1000.h b/src/include/86box/m_xt_t1000.h
index 90916444c..725f8e8b1 100644
--- a/src/include/86box/m_xt_t1000.h
+++ b/src/include/86box/m_xt_t1000.h
@@ -8,8 +8,6 @@
*
* Definitions for the Toshiba T1000/T1200 machines.
*
- *
- *
* Authors: Fred N. van Kempen,
* Miran Grca,
* John Elliott,
@@ -36,7 +34,6 @@
* Boston, MA 02111-1307
* USA.
*/
-
#ifndef MACHINE_T1000_H
#define MACHINE_T1000_H
diff --git a/src/include/86box/machine.h b/src/include/86box/machine.h
index 00562d455..628e388e8 100644
--- a/src/include/86box/machine.h
+++ b/src/include/86box/machine.h
@@ -18,7 +18,6 @@
* Copyright 2017-2020 Fred N. van Kempen.
* Copyright 2025 Jasmine Iwanek.
*/
-
#ifndef EMU_MACHINE_H
#define EMU_MACHINE_H
@@ -497,6 +496,9 @@ extern int machine_at_portableii_init(const machine_t *);
extern int machine_at_portableiii_init(const machine_t *);
extern int machine_at_grid1520_init(const machine_t *);
extern int machine_at_pc900_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t pc900_device;
+#endif
extern int machine_at_mr286_init(const machine_t *);
extern int machine_at_pc8_init(const machine_t *);
extern int machine_at_m290_init(const machine_t *);
@@ -633,6 +635,9 @@ extern int machine_at_tandy4000_init(const machine_t *);
extern int machine_at_ecs386v_init(const machine_t *);
/* OPTi 391 */
+#ifdef EMU_DEVICE_H
+extern const device_t dataexpert386wb_device;
+#endif
extern int machine_at_dataexpert386wb_init(const machine_t *);
/* OPTi 495SLC */
@@ -758,6 +763,7 @@ extern int machine_at_acerv10_init(const machine_t *);
/* SiS 471 */
extern int machine_at_win471_init(const machine_t *);
+extern int machine_at_win471t_init(const machine_t *);
extern int machine_at_vi15g_init(const machine_t *);
extern int machine_at_vli486sv2g_init(const machine_t *);
extern int machine_at_dvent4xx_init(const machine_t *);
@@ -863,6 +869,9 @@ extern const device_t v12p_device;
#endif
extern int machine_at_v12p_init(const machine_t *);
extern int machine_at_excaliburpci_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t p5mp3_device;
+#endif
extern int machine_at_p5mp3_init(const machine_t *);
extern int machine_at_opti560l_init(const machine_t *);
extern void machine_at_award_common_init(const machine_t *);
@@ -913,8 +922,18 @@ extern int machine_at_tek932_init(const machine_t *);
extern int machine_at_acerv30_init(const machine_t *);
extern int machine_at_apollo_init(const machine_t *);
extern int machine_at_optiplexgxl_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t pt2000_device;
+#endif
extern int machine_at_pt2000_init(const machine_t *);
+extern int machine_at_pc330_65x6_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t zappa_device;
+#endif
extern int machine_at_zappa_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t powermatev_device;
+#endif
extern int machine_at_powermatev_init(const machine_t *);
extern int machine_at_hawk_init(const machine_t *);
@@ -951,16 +970,34 @@ extern const device_t p54tp4xe_device;
#endif
extern int machine_at_p54tp4xe_init(const machine_t *);
extern int machine_at_exp8551_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t vectra52_device;
+#endif
+extern int machine_at_vectra52_init(const machine_t *);
+extern int machine_at_vectra500mt_init(const machine_t *);
extern int machine_at_vectra54_init(const machine_t *);
#ifdef EMU_DEVICE_H
extern const device_t thor_device;
#endif
extern int machine_at_thor_init(const machine_t *);
+extern uint32_t machine_at_monaco_gpio_handler(uint8_t write, uint32_t val);
+extern int machine_at_monaco_init(const machine_t *);
extern uint32_t machine_at_endeavor_gpio_handler(uint8_t write, uint32_t val);
extern int machine_at_endeavor_init(const machine_t *);
+extern int machine_at_atlantis_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t monaco_device;
+#endif
+extern int machine_at_monaco_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t ms5119_device;
+#endif
extern int machine_at_ms5119_init(const machine_t *);
extern int machine_at_pb640_init(const machine_t *);
extern int machine_at_mb500n_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t fmb_device;
+#endif
extern int machine_at_fmb_init(const machine_t *);
/* i430HX */
@@ -1025,6 +1062,9 @@ extern int machine_at_8500tvxa_init(const machine_t *);
extern int machine_at_presario2240_init(const machine_t *);
extern int machine_at_presario4500_init(const machine_t *);
extern int machine_at_dellhannibalp_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t p5vxb_device;
+#endif
extern int machine_at_p5vxb_init(const machine_t *);
extern int machine_at_p55va_init(const machine_t *);
extern int machine_at_gw2kte_init(const machine_t *);
@@ -1044,10 +1084,13 @@ extern int machine_at_tx97_init(const machine_t *);
extern void machine_at_optiplex_21152_init(void);
extern int machine_at_optiplexgn_init(const machine_t *);
extern int machine_at_tomahawk_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t an430tx_device;
+#endif
+extern int machine_at_an430tx_init(const machine_t *);
extern int machine_at_ym430tx_init(const machine_t *);
extern int machine_at_thunderbolt_init(const machine_t *);
extern int machine_at_ma23c_init(const machine_t *);
-extern int machine_at_an430tx_init(const machine_t *);
extern int machine_at_mb540n_init(const machine_t *);
extern int machine_at_56a5_init(const machine_t *);
extern int machine_at_p5mms98_init(const machine_t *);
@@ -1062,6 +1105,9 @@ extern int machine_at_via809ds_init(const machine_t *);
/* SiS 5571 */
extern int machine_at_cb52xsi_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t ms5146_device;
+#endif
extern int machine_at_ms5146_init(const machine_t *);
#ifdef EMU_DEVICE_H
extern const device_t r534f_device;
@@ -1089,14 +1135,21 @@ extern int machine_at_p5a_init(const machine_t *);
extern int machine_at_m579_init(const machine_t *);
extern int machine_at_gwlucas_init(const machine_t *);
extern int machine_at_5aa_init(const machine_t *);
-extern int machine_at_5ax_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t g5x_device;
+#endif
+extern int machine_at_g5x_init(const machine_t *);
/* VIA MVP3 */
extern int machine_at_ax59pro_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t delhi3_device;
+#endif
extern int machine_at_delhi3_init(const machine_t *);
extern int machine_at_mvp3_init(const machine_t *);
extern int machine_at_ficva503a_init(const machine_t *);
extern int machine_at_5emapro_init(const machine_t *);
+extern int machine_at_k6bv3p_a_init(const machine_t *);
/* SiS 5591 */
extern int machine_at_5sg100_init(const machine_t *);
@@ -1115,6 +1168,7 @@ extern int machine_at_acerv60n_init(const machine_t *);
extern int machine_at_p65up5_cp6nd_init(const machine_t *);
extern int machine_at_8600ttc_init(const machine_t *);
extern int machine_at_686nx_init(const machine_t *);
+extern uint32_t machine_ap440fx_vs440fx_gpio_handler(uint8_t write, uint32_t val);
extern int machine_at_ap440fx_init(const machine_t *);
#ifdef EMU_DEVICE_H
extern const device_t vs440fx_device;
@@ -1151,18 +1205,37 @@ extern int machine_at_bf6_init(const machine_t *);
extern const device_t bx6_device;
#endif
extern int machine_at_bx6_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t ax6bc_device;
+#endif
extern int machine_at_ax6bc_init(const machine_t *);
extern int machine_at_p2bls_init(const machine_t *);
extern int machine_at_p3bf_init(const machine_t *);
-extern int machine_at_686bx_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t ga686_device;
+#endif
+extern int machine_at_ga686_init(const machine_t *);
#ifdef EMU_DEVICE_H
extern const device_t ms6119_device;
#endif
extern int machine_at_ms6119_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t ms6147_device;
+#endif
+extern int machine_at_ms6147_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t p6sba_device;
+#endif
extern int machine_at_p6sba_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t s1846_device;
+#endif
extern int machine_at_s1846_init(const machine_t *);
/* i440ZX */
+#ifdef EMU_DEVICE_H
+extern const device_t vei8_device;
+#endif
extern int machine_at_vei8_init(const machine_t *);
extern int machine_at_ms6168_init(const machine_t *);
extern int machine_at_borapro_init(const machine_t *);
@@ -1190,6 +1263,9 @@ extern int machine_at_fw6400gx_init(const machine_t *);
/* m_at_slot1_socket370.c */
/* i440BX */
+#ifdef EMU_DEVICE_H
+extern const device_t prosignias31x_device;
+#endif
extern int machine_at_prosignias31x_bx_init(const machine_t *);
extern int machine_at_s1857_init(const machine_t *);
@@ -1332,6 +1408,9 @@ extern int machine_xt_ataripc3_init(const machine_t *);
extern int machine_xt_bw230_init(const machine_t *);
extern int machine_xt_mpc1600_init(const machine_t *);
extern int machine_xt_compaq_portable_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t dtk_device;
+#endif
extern int machine_xt_dtk_init(const machine_t *);
extern int machine_xt_pcspirit_init(const machine_t *);
extern int machine_genxt_init(const machine_t *);
@@ -1349,7 +1428,13 @@ extern int machine_xt_micoms_xl7turbo_init(const machine_t *);
extern const device_t pc500_device;
#endif
extern int machine_xt_pc500_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t pc500plus_device;
+#endif
extern int machine_xt_pc500plus_init(const machine_t *);
+#ifdef EMU_DEVICE_H
+extern const device_t pc700_device;
+#endif
extern int machine_xt_pc700_init(const machine_t *);
extern int machine_xt_pc4i_init(const machine_t *);
extern int machine_xt_openxt_init(const machine_t *);
diff --git a/src/include/86box/machine_status.h b/src/include/86box/machine_status.h
index c5640ac08..a3d3bdcd7 100644
--- a/src/include/86box/machine_status.h
+++ b/src/include/86box/machine_status.h
@@ -32,4 +32,4 @@ extern machine_status_t machine_status;
extern void machine_status_init(void);
-#endif /*EMU_MACHINE_STATUS_H*/
\ No newline at end of file
+#endif /*EMU_MACHINE_STATUS_H*/
diff --git a/src/include/86box/mem.h b/src/include/86box/mem.h
index f75f1175e..9051189a6 100644
--- a/src/include/86box/mem.h
+++ b/src/include/86box/mem.h
@@ -8,8 +8,6 @@
*
* Definitions for the memory interface.
*
- *
- *
* Authors: Sarah Walker,
* Fred N. van Kempen,
* Miran Grca,
@@ -18,7 +16,6 @@
* Copyright 2017-2020 Fred N. van Kempen.
* Copyright 2016-2020 Miran Grca.
*/
-
#ifndef EMU_MEM_H
#define EMU_MEM_H
diff --git a/src/include/86box/mo.h b/src/include/86box/mo.h
index 76e7cbdbe..5d48579eb 100644
--- a/src/include/86box/mo.h
+++ b/src/include/86box/mo.h
@@ -17,7 +17,6 @@
* Copyright 2020-2025 Miran Grca.
* Copyright 2020-2025 Fred N. van Kempen
*/
-
#ifndef EMU_MO_H
#define EMU_MO_H
diff --git a/src/include/86box/mouse.h b/src/include/86box/mouse.h
index 9745de444..86d2d259c 100644
--- a/src/include/86box/mouse.h
+++ b/src/include/86box/mouse.h
@@ -8,15 +8,12 @@
*
* Definitions for the mouse driver.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
* Copyright 2016-2019 Miran Grca.
* Copyright 2017-2019 Fred N. van Kempen.
*/
-
#ifndef EMU_MOUSE_H
#define EMU_MOUSE_H
diff --git a/src/include/86box/net_dp8390.h b/src/include/86box/net_dp8390.h
index 0b1cc45f5..352302f37 100644
--- a/src/include/86box/net_dp8390.h
+++ b/src/include/86box/net_dp8390.h
@@ -8,15 +8,12 @@
* Controller used by the WD family, NE1000/NE2000 family, and
* 3Com 3C503 NIC's.
*
- *
- *
* Authors: Miran Grca,
* Bochs project,
*
* Copyright 2016-2018 Miran Grca.
* Copyright 2008-2018 Bochs project.
*/
-
#ifndef NET_DP8390_H
#define NET_DP8390_H
diff --git a/src/include/86box/net_event.h b/src/include/86box/net_event.h
index 48580a359..eb787fe56 100644
--- a/src/include/86box/net_event.h
+++ b/src/include/86box/net_event.h
@@ -6,7 +6,7 @@ typedef struct net_evt_t {
HANDLE handle;
#else
int fds[2];
-#endif
+#endif /* _WIN32 */
} net_evt_t;
extern void net_event_init(net_evt_t *event);
@@ -17,6 +17,6 @@ extern void net_event_close(net_evt_t *event);
extern HANDLE net_event_get_handle(net_evt_t *event);
#else
extern int net_event_get_fd(net_evt_t *event);
-#endif
+#endif /* _WIN32 */
-#endif
\ No newline at end of file
+#endif /* EMU_NET_EVENT_H */
diff --git a/src/include/86box/net_ne2000.h b/src/include/86box/net_ne2000.h
index ecf2612b5..bb33223ad 100644
--- a/src/include/86box/net_ne2000.h
+++ b/src/include/86box/net_ne2000.h
@@ -8,8 +8,6 @@
*
* Definitions for the NE2000 ethernet controller.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2017-2018 Fred N. van Kempen.
diff --git a/src/include/86box/net_pcnet.h b/src/include/86box/net_pcnet.h
index 994d88c75..a616c5827 100644
--- a/src/include/86box/net_pcnet.h
+++ b/src/include/86box/net_pcnet.h
@@ -7,8 +7,6 @@
* Emulation of the AMD PCnet LANCE NIC controller for both the ISA
* and PCI buses.
*
- *
- *
* Authors: Miran Grca,
* TheCollector1995,
* Antony T Curtis
@@ -16,7 +14,6 @@
* Copyright 2004-2019 Antony T Curtis
* Copyright 2016-2019 Miran Grca.
*/
-
#ifndef NET_PCNET_H
#define NET_PCNET_H
diff --git a/src/include/86box/net_wd8003.h b/src/include/86box/net_wd8003.h
index 6797c7d88..21bff90ea 100644
--- a/src/include/86box/net_wd8003.h
+++ b/src/include/86box/net_wd8003.h
@@ -11,8 +11,6 @@
* - SMC/WD 8013EBT (ISA 16-bit);
* - SMC/WD 8013EP/A (MCA).
*
- *
- *
* Authors: Fred N. van Kempen,
* TheCollector1995,
* Miran Grca,
@@ -40,7 +38,6 @@
* Boston, MA 02111-1307
* USA.
*/
-
#ifndef NET_WD8003_H
#define NET_WD8003_H
diff --git a/src/include/86box/network.h b/src/include/86box/network.h
index 5a6651b5b..9c906ef1a 100644
--- a/src/include/86box/network.h
+++ b/src/include/86box/network.h
@@ -6,8 +6,6 @@
*
* Definitions for the network module.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2017-2019 Fred N. van Kempen.
@@ -42,7 +40,6 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
#ifndef EMU_NETWORK_H
#define EMU_NETWORK_H
#include
diff --git a/src/include/86box/nmc93cxx.h b/src/include/86box/nmc93cxx.h
index 7573a6116..dd02b2d06 100644
--- a/src/include/86box/nmc93cxx.h
+++ b/src/include/86box/nmc93cxx.h
@@ -2,9 +2,9 @@
typedef struct nmc93cxx_eeprom_t {
ati_eeprom_t dev;
- uint8_t addrbits;
- uint16_t size;
- char filename[1024];
+ uint8_t addrbits;
+ uint16_t size;
+ char filename[1024];
} nmc93cxx_eeprom_t;
typedef struct nmc93cxx_eeprom_params_t {
diff --git a/src/include/86box/nmi.h b/src/include/86box/nmi.h
index 79aa68346..a2ca14083 100644
--- a/src/include/86box/nmi.h
+++ b/src/include/86box/nmi.h
@@ -1,7 +1,6 @@
/* Copyright holders: Sarah Walker
see COPYING for more details
*/
-
#ifndef EMU_NMI_H
#define EMU_NMI_H
diff --git a/src/include/86box/novell_cardkey.h b/src/include/86box/novell_cardkey.h
index 8ad3eabab..7c7daa891 100644
--- a/src/include/86box/novell_cardkey.h
+++ b/src/include/86box/novell_cardkey.h
@@ -9,7 +9,6 @@
* Implementation of the Novell NetWare 2.x Key Card, which
* was used for anti-piracy protection.
*
- *
* Authors: Cacodemon345
*
* Copyright 2024 Cacodemon345.
@@ -34,4 +33,4 @@ extern const device_t novell_keycard_device;
}
#endif
-#endif /*BUGGER_H*/
\ No newline at end of file
+#endif /* NOVELL_KEYCARD_H */
diff --git a/src/include/86box/nvr.h b/src/include/86box/nvr.h
index 273fc0a37..9485c7dcb 100644
--- a/src/include/86box/nvr.h
+++ b/src/include/86box/nvr.h
@@ -6,8 +6,6 @@
*
* Definitions for the generic NVRAM/CMOS driver.
*
- *
- *
* Authors: Fred N. van Kempen, ,
* David HrdliÄka,
*
@@ -44,7 +42,6 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
#ifndef EMU_NVR_H
#define EMU_NVR_H
diff --git a/src/include/86box/nvr_ps2.h b/src/include/86box/nvr_ps2.h
index 478d1be44..2b892a4f4 100644
--- a/src/include/86box/nvr_ps2.h
+++ b/src/include/86box/nvr_ps2.h
@@ -8,8 +8,6 @@
*
* Definitions for the PS/2 cmos/nvr device.
*
- *
- *
* Authors: Fred N. van Kempen,
* Sarah Walker,
*
@@ -34,7 +32,6 @@
* Boston, MA 02111-1307
* USA.
*/
-
#ifndef EMU_NVRPS2_H
#define EMU_NVRPS2_H
diff --git a/src/include/86box/opl4_defines.h b/src/include/86box/opl4_defines.h
index 248b1f729..5280abaad 100644
--- a/src/include/86box/opl4_defines.h
+++ b/src/include/86box/opl4_defines.h
@@ -5,7 +5,6 @@
* opl4_defines.h
*
*/
-
#ifndef __OPL4_DEFINES_H
#define __OPL4_DEFINES_H
diff --git a/src/include/86box/pci.h b/src/include/86box/pci.h
index 8887f89f4..a721db005 100644
--- a/src/include/86box/pci.h
+++ b/src/include/86box/pci.h
@@ -8,8 +8,6 @@
*
* Definitions for the PCI handler module.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2023 Miran Grca.
diff --git a/src/include/86box/pic.h b/src/include/86box/pic.h
index f6dc9af64..e485fd424 100644
--- a/src/include/86box/pic.h
+++ b/src/include/86box/pic.h
@@ -15,15 +15,14 @@
* Copyright 2015-2020 Andrew Jenner.
* Copyright 2016-2020 Miran Grca.
*/
-
#ifndef EMU_PIC_H
#define EMU_PIC_H
typedef struct pic_latch {
- uint8_t d;
- uint8_t e;
- uint8_t q;
- uint8_t nq;
+ uint8_t d;
+ uint8_t e;
+ uint8_t q;
+ uint8_t nq;
} pic_latch_t;
typedef struct pic {
diff --git a/src/include/86box/pit.h b/src/include/86box/pit.h
index 3c5a9cb52..991be4424 100644
--- a/src/include/86box/pit.h
+++ b/src/include/86box/pit.h
@@ -9,13 +9,10 @@
* Header of the implementation of the Intel 8253/8254
* Programmable Interval Timer.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2019-2020 Miran Grca.
*/
-
#ifndef EMU_PIT_H
#define EMU_PIT_H
diff --git a/src/include/86box/pit_fast.h b/src/include/86box/pit_fast.h
index f824bad68..3e192315e 100644
--- a/src/include/86box/pit_fast.h
+++ b/src/include/86box/pit_fast.h
@@ -9,13 +9,10 @@
* Header of the implementation of the Intel 8253/8254
* Programmable Interval Timer.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2019-2020 Miran Grca.
*/
-
#ifndef EMU_PIT_FAST_H
#define EMU_PIT_FAST_H
@@ -55,9 +52,9 @@ typedef struct ctrf_t {
};
};
- uint32_t l;
+ uint32_t l;
- uint64_t pit_const;
+ uint64_t pit_const;
pc_timer_t timer;
diff --git a/src/include/86box/plat.h b/src/include/86box/plat.h
index b76728047..e18aa707b 100644
--- a/src/include/86box/plat.h
+++ b/src/include/86box/plat.h
@@ -8,8 +8,6 @@
*
* Define the various platform support functions.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
@@ -17,7 +15,6 @@
* Copyright 2017-2019 Fred N. van Kempen.
* Copyright 2021 Laci bĂ¡'
*/
-
#ifndef EMU_PLAT_H
#define EMU_PLAT_H
diff --git a/src/include/86box/plat_cdrom_ioctl.h b/src/include/86box/plat_cdrom_ioctl.h
index 471222134..a4b481b02 100644
--- a/src/include/86box/plat_cdrom_ioctl.h
+++ b/src/include/86box/plat_cdrom_ioctl.h
@@ -8,14 +8,12 @@
*
* Definitions for platform specific serial to host passthrough.
*
- *
* Authors: Andreas J. Reichel ,
* Jasmine Iwanek
*
* Copyright 2021 Andreas J. Reichel.
* Copyright 2021-2022 Jasmine Iwanek.
*/
-
#ifndef PLAT_CDROM_IOCTL_H
#define PLAT_CDROM_IOCTL_H
@@ -31,4 +29,4 @@ extern void * ioctl_open(cdrom_t *dev, const char *drv);
}
#endif
-#endif
+#endif /* PLAT_CDROM_IOCTL_H */
diff --git a/src/include/86box/plat_dir.h b/src/include/86box/plat_dir.h
index 965483d26..605cf25cd 100644
--- a/src/include/86box/plat_dir.h
+++ b/src/include/86box/plat_dir.h
@@ -8,13 +8,10 @@
*
* Definitions for the platform OpenDir module.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2017 Fred N. van Kempen.
*/
-
#ifndef PLAT_DIR_H
#define PLAT_DIR_H
diff --git a/src/include/86box/plat_dynld.h b/src/include/86box/plat_dynld.h
index 44891d4ac..a6469da9b 100644
--- a/src/include/86box/plat_dynld.h
+++ b/src/include/86box/plat_dynld.h
@@ -8,13 +8,10 @@
*
* Define the Dynamic Module Loader interface.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2017 Fred N. van Kempen
*/
-
#ifndef PLAT_DYNLD_H
#define PLAT_DYNLD_H
diff --git a/src/include/86box/plat_fallthrough.h b/src/include/86box/plat_fallthrough.h
index 6165b266c..2ba000848 100644
--- a/src/include/86box/plat_fallthrough.h
+++ b/src/include/86box/plat_fallthrough.h
@@ -8,13 +8,10 @@
*
* Define the various platform support functions.
*
- *
- *
* Authors: Jasmine Iwanek,
*
* Copyright 2023 Jasmine Iwanek
*/
-
#ifndef EMU_PLAT_FALLTHROUGH_H
#define EMU_PLAT_FALLTHROUGH_H
diff --git a/src/include/86box/plat_serial_passthrough.h b/src/include/86box/plat_serial_passthrough.h
index ec9a96545..6cc7180b3 100644
--- a/src/include/86box/plat_serial_passthrough.h
+++ b/src/include/86box/plat_serial_passthrough.h
@@ -13,9 +13,8 @@
* Jasmine Iwanek
*
* Copyright 2021 Andreas J. Reichel.
- * Copyright 2021-2022 Jasmine Iwanek.
+ * Copyright 2021-2025 Jasmine Iwanek.
*/
-
#ifndef PLAT_SERIAL_PASSTHROUGH_H
#define PLAT_SERIAL_PASSTHROUGH_H
@@ -36,4 +35,4 @@ extern void plat_serpt_set_line_state(void *priv);
}
#endif
-#endif
+#endif /* PLAT_SERIAL_PASSTHROUGH_H */
diff --git a/src/include/86box/plat_unused.h b/src/include/86box/plat_unused.h
index 226cf677d..4688a615b 100644
--- a/src/include/86box/plat_unused.h
+++ b/src/include/86box/plat_unused.h
@@ -8,8 +8,6 @@
*
* Define the various platform support functions.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
@@ -17,7 +15,6 @@
* Copyright 2017-2019 Fred N. van Kempen.
* Copyright 2021 Laci bĂ¡'
*/
-
#ifndef EMU_PLAT_UNUSED_H
#define EMU_PLAT_UNUSED_H
diff --git a/src/include/86box/png_struct.h b/src/include/86box/png_struct.h
index cbbcc5be8..46a0b2313 100644
--- a/src/include/86box/png_struct.h
+++ b/src/include/86box/png_struct.h
@@ -6,8 +6,6 @@
*
* Definitions for the centralized PNG image handler.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2018 Fred N. van Kempen.
@@ -42,7 +40,6 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
#ifndef EMU_PNG_STRUCT_H
#define EMU_PNG_STRUCT_H
diff --git a/src/include/86box/port_6x.h b/src/include/86box/port_6x.h
index e0c4b0508..a3ac6ac5c 100644
--- a/src/include/86box/port_6x.h
+++ b/src/include/86box/port_6x.h
@@ -9,13 +9,10 @@
* Header for the implementation of Port 6x used by various
* machines.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2021 Miran Grca.
*/
-
#ifndef EMU_PORT_6X_H
#define EMU_PORT_6X_H
diff --git a/src/include/86box/port_92.h b/src/include/86box/port_92.h
index 838b7ca28..3d05a5bf4 100644
--- a/src/include/86box/port_92.h
+++ b/src/include/86box/port_92.h
@@ -9,13 +9,10 @@
* Header for the implementation of Port 92 used by PS/2
* machines and 386+ clones.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2019 Miran Grca.
*/
-
#ifndef EMU_PORT_92_H
#define EMU_PORT_92_H
diff --git a/src/include/86box/postcard.h b/src/include/86box/postcard.h
index 5ceb64ae3..7c8f26dfd 100644
--- a/src/include/86box/postcard.h
+++ b/src/include/86box/postcard.h
@@ -8,13 +8,10 @@
*
* Implementation of a port 80h POST diagnostic card.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2020 RichardG.
*/
-
#ifndef POSTCARD_H
#define POSTCARD_H
diff --git a/src/include/86box/printer.h b/src/include/86box/printer.h
index b576fbf27..52212374e 100644
--- a/src/include/86box/printer.h
+++ b/src/include/86box/printer.h
@@ -6,8 +6,6 @@
*
* Definitions for the printers module.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2018 Fred N. van Kempen.
@@ -42,7 +40,6 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
#ifndef PRINTER_H
#define PRINTER_H
diff --git a/src/include/86box/random.h b/src/include/86box/random.h
index 021969a54..8b2399c77 100644
--- a/src/include/86box/random.h
+++ b/src/include/86box/random.h
@@ -9,13 +9,10 @@
* A better random number generation, used for floppy weak bits
* and network MAC address generation.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2016-2017 Miran Grca.
*/
-
#ifndef EMU_RANDOM_H
#define EMU_RANDOM_H
diff --git a/src/include/86box/rdisk.h b/src/include/86box/rdisk.h
index c226a2c9d..6f0255847 100644
--- a/src/include/86box/rdisk.h
+++ b/src/include/86box/rdisk.h
@@ -9,13 +9,10 @@
* Implementation of the Iomega ZIP drive with SCSI(-like)
* commands, for both ATAPI and SCSI usage.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2018-2025 Miran Grca.
*/
-
#ifndef EMU_RDISK_H
#define EMU_RDISK_H
diff --git a/src/include/86box/rom.h b/src/include/86box/rom.h
index 807649956..6865277c6 100644
--- a/src/include/86box/rom.h
+++ b/src/include/86box/rom.h
@@ -8,13 +8,10 @@
*
* Definitions for the ROM image handler.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2018-2019 Fred N. van Kempen.
*/
-
#ifndef EMU_ROM_H
#define EMU_ROM_H
diff --git a/src/include/86box/row.h b/src/include/86box/row.h
index a70c94274..baaa5833a 100644
--- a/src/include/86box/row.h
+++ b/src/include/86box/row.h
@@ -8,13 +8,10 @@
*
* Definitions for the SMRAM interface.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2016-2020 Miran Grca.
*/
-
#ifndef EMU_ROW_H
# define EMU_ROW_H
diff --git a/src/include/86box/scsi.h b/src/include/86box/scsi.h
index 84a4a608e..088248d71 100644
--- a/src/include/86box/scsi.h
+++ b/src/include/86box/scsi.h
@@ -8,8 +8,6 @@
*
* SCSI controller handler header.
*
- *
- *
* Authors: TheCollector1995,
* Miran Grca,
* Fred N. van Kempen,
diff --git a/src/include/86box/scsi_buslogic.h b/src/include/86box/scsi_buslogic.h
index 6de69e700..559e42d91 100644
--- a/src/include/86box/scsi_buslogic.h
+++ b/src/include/86box/scsi_buslogic.h
@@ -7,8 +7,6 @@
* Emulation of BusLogic BT-542B ISA and BT-958D PCI SCSI
* controllers.
*
- *
- *
* Authors: TheCollector1995,
* Miran Grca,
* Fred N. van Kempen,
@@ -16,7 +14,6 @@
* Copyright 2016-2018 Miran Grca.
* Copyright 2017-2018 Fred N. van Kempen.
*/
-
#ifndef SCSI_BUSLOGIC_H
#define SCSI_BUSLOGIC_H
diff --git a/src/include/86box/scsi_cdrom.h b/src/include/86box/scsi_cdrom.h
index 005223e27..b331ba62c 100644
--- a/src/include/86box/scsi_cdrom.h
+++ b/src/include/86box/scsi_cdrom.h
@@ -9,13 +9,10 @@
* Implementation of the CD-ROM drive with SCSI(-like)
* commands, for both ATAPI and SCSI usage.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2018-2019 Miran Grca.
*/
-
#ifndef EMU_SCSI_CDROM_H
#define EMU_SCSI_CDROM_H
diff --git a/src/include/86box/scsi_device.h b/src/include/86box/scsi_device.h
index d5d620670..f4c37e56c 100644
--- a/src/include/86box/scsi_device.h
+++ b/src/include/86box/scsi_device.h
@@ -8,15 +8,12 @@
*
* Definitions for the generic SCSI device command handler.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
* Copyright 2016-2019 Miran Grca.
* Copyright 2017-2019 Fred N. van Kempen.
*/
-
#ifndef SCSI_DEVICE_H
#define SCSI_DEVICE_H
diff --git a/src/include/86box/scsi_disk.h b/src/include/86box/scsi_disk.h
index 2d2371172..66bf24a36 100644
--- a/src/include/86box/scsi_disk.h
+++ b/src/include/86box/scsi_disk.h
@@ -6,29 +6,26 @@
*
* Emulation of SCSI fixed and removable disks.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2017-2018 Miran Grca.
*/
-
#ifndef SCSI_DISK_H
#define SCSI_DISK_H
typedef struct scsi_disk_t {
mode_sense_pages_t ms_pages_saved;
- hard_disk_t * drv;
+ hard_disk_t *drv;
#ifdef EMU_IDE_H
- ide_tf_t * tf;
+ ide_tf_t *tf;
#else
- void * tf;
+ void *tf;
#endif
- void * log;
+ void *log;
- uint8_t * temp_buffer;
+ uint8_t *temp_buffer;
size_t temp_buffer_sz;
uint8_t atapi_cdb[16];
uint8_t current_cdb[16];
diff --git a/src/include/86box/scsi_ncr5380.h b/src/include/86box/scsi_ncr5380.h
index 5a43ba76a..6453340ae 100644
--- a/src/include/86box/scsi_ncr5380.h
+++ b/src/include/86box/scsi_ncr5380.h
@@ -9,8 +9,6 @@
* Implementation of the NCR 5380 chip made by NCR
* and used in various controllers.
*
- *
- *
* Authors: Sarah Walker,
* TheCollector1995,
* Fred N. van Kempen,
@@ -19,7 +17,6 @@
* Copyright 2017-2018 Fred N. van Kempen.
* Copyright 2017-2024 TheCollector1995.
*/
-
#ifndef SCSI_NCR5380_H
#define SCSI_NCR5380_H
diff --git a/src/include/86box/scsi_ncr53c8xx.h b/src/include/86box/scsi_ncr53c8xx.h
index 5149c2203..de2d8d2a1 100644
--- a/src/include/86box/scsi_ncr53c8xx.h
+++ b/src/include/86box/scsi_ncr53c8xx.h
@@ -10,8 +10,6 @@
* Adapters made by NCR and later Symbios and LSI. These
* controllers were designed for the PCI bus.
*
- *
- *
* Authors: TheCollector1995,
* Miran Grca,
* Paul Brook (QEMU),
@@ -21,7 +19,6 @@
* Copyright 2009-2018 Artyom Tarasenko.
* Copyright 2017-2018 Miran Grca.
*/
-
#ifndef SCSI_NCR53C8XX_H
#define SCSI_NCR53C8XX_H
diff --git a/src/include/86box/scsi_pcscsi.h b/src/include/86box/scsi_pcscsi.h
index c4dbedeff..74a2cb937 100644
--- a/src/include/86box/scsi_pcscsi.h
+++ b/src/include/86box/scsi_pcscsi.h
@@ -9,9 +9,6 @@
* Implementation of the AMD PCscsi and Tekram DC-390 SCSI
* controllers using the NCR 53c9x series of chips.
*
- *
- *
- *
* Authors: Fabrice Bellard (QEMU)
* Herve Poussineau (QEMU)
* TheCollector1995,
@@ -21,7 +18,6 @@
* Copyright 2012-2018 Herve Poussineau.
* Copyright 2017-2018 Miran Grca.
*/
-
#ifndef SCSI_PCSCSI_H
#define SCSI_PCSCSI_H
@@ -30,4 +26,4 @@ extern const device_t am53c974a_pci_device;
extern const device_t dc390_pci_device;
extern const device_t ncr53c90a_mca_device;
-#endif /*SCSI_BUSLOGIC_H*/
+#endif /*SCSI_SCSI_PCSCSI_H*/
diff --git a/src/include/86box/scsi_spock.h b/src/include/86box/scsi_spock.h
index 057271772..8777f5336 100644
--- a/src/include/86box/scsi_spock.h
+++ b/src/include/86box/scsi_spock.h
@@ -9,15 +9,12 @@
* Implementation of the IBM PS/2 SCSI controller with
* cache for MCA only.
*
- *
- *
* Authors: Sarah Walker,
* TheCollector1995,
*
* Copyright 2020 Sarah Walker.
* Copyright 2020 TheCollector1995.
*/
-
#ifndef SCSI_SPOCK_H
#define SCSI_SPOCK_H
diff --git a/src/include/86box/scsi_t128.h b/src/include/86box/scsi_t128.h
index a3bc79335..0433703fb 100644
--- a/src/include/86box/scsi_t128.h
+++ b/src/include/86box/scsi_t128.h
@@ -17,29 +17,29 @@
* Copyright 2017-2018 Fred N. van Kempen.
* Copyright 2017-2024 TheCollector1995.
*/
-
#ifndef SCSI_T128_H
#define SCSI_T128_H
typedef struct t128_t {
- ncr_t ncr;
- rom_t bios_rom;
+ ncr_t ncr;
+ rom_t bios_rom;
mem_mapping_t mapping;
- uint8_t ctrl;
- uint8_t status;
- uint8_t buffer[512];
- uint8_t ext_ram[0x80];
+ uint8_t ctrl;
+ uint8_t status;
+ uint8_t buffer[512];
+ uint8_t ext_ram[0x80];
uint32_t block_count;
int block_loaded;
- int pos, host_pos;
+ int pos;
+ int host_pos;
uint32_t rom_addr;
- int bios_enabled;
+ int bios_enabled;
uint8_t pos_regs[8];
- int type;
+ int type;
pc_timer_t timer;
} t128_t;
diff --git a/src/include/86box/scsi_x54x.h b/src/include/86box/scsi_x54x.h
index 8d5964de5..2c1561b18 100644
--- a/src/include/86box/scsi_x54x.h
+++ b/src/include/86box/scsi_x54x.h
@@ -11,8 +11,6 @@
* of SCSI Host Adapters made by Mylex.
* These controllers were designed for various buses.
*
- *
- *
* Authors: TheCollector1995,
* Miran Grca,
* Fred N. van Kempen,
@@ -20,7 +18,6 @@
* Copyright 2016-2018 Miran Grca.
* Copyright 2017-2018 Fred N. van Kempen.
*/
-
#ifndef SCSI_X54X_H
#define SCSI_X54X_H
@@ -536,4 +533,4 @@ extern void *x54x_init(const device_t *info);
extern void x54x_close(void *priv);
extern void x54x_device_reset(void *priv);
-#endif
+#endif /*SCSI_X54X_H*/
diff --git a/src/include/86box/serial.h b/src/include/86box/serial.h
index c6389a262..816672825 100644
--- a/src/include/86box/serial.h
+++ b/src/include/86box/serial.h
@@ -9,8 +9,6 @@
* Definitions for the NS8250/16450/16550/16650/16750/16850/16950
* UART emulation.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
@@ -19,18 +17,18 @@
* Copyright 2016-2025 Miran Grca.
* Copyright 2017-2020 Fred N. van Kempen.
*/
-
#ifndef EMU_SERIAL_H
#define EMU_SERIAL_H
-#define SERIAL_8250 0
-#define SERIAL_8250_PCJR 1
-#define SERIAL_16450 2
-#define SERIAL_16550 3
-#define SERIAL_16650 4
-#define SERIAL_16750 5
-#define SERIAL_16850 6
-#define SERIAL_16950 7
+#define SERIAL_8250 0
+#define SERIAL_8250_PCJR_3F8 1
+#define SERIAL_8250_PCJR_2F8 2
+#define SERIAL_16450 3
+#define SERIAL_16550 4
+#define SERIAL_16650 5
+#define SERIAL_16750 6
+#define SERIAL_16850 7
+#define SERIAL_16950 8
#define SERIAL_FIFO_SIZE 16
@@ -154,7 +152,8 @@ extern int serial_get_ri(serial_t *dev);
extern uint8_t serial_get_shadow(serial_t *dev);
extern const device_t ns8250_device;
-extern const device_t ns8250_pcjr_device;
+extern const device_t ns8250_pcjr_3f8_device;
+extern const device_t ns8250_pcjr_2f8_device;
extern const device_t ns16450_device;
extern const device_t ns16550_device;
extern const device_t ns16650_device;
diff --git a/src/include/86box/serial_passthrough.h b/src/include/86box/serial_passthrough.h
index a5fa0013a..3b0afad4b 100644
--- a/src/include/86box/serial_passthrough.h
+++ b/src/include/86box/serial_passthrough.h
@@ -8,14 +8,12 @@
*
* Definition of Serial passthrough device.
*
- *
* Authors: Andreas J. Reichel ,
* Jasmine Iwanek
*
* Copyright 2021 Andreas J. Reichel.
* Copyright 2021-2025 Jasmine Iwanek.
*/
-
#ifndef SERIAL_PASSTHROUGH_H
#define SERIAL_PASSTHROUGH_H
@@ -65,4 +63,4 @@ extern const device_t serial_passthrough_device;
extern void serial_passthrough_init(void);
-#endif
+#endif /*SERIAL_PASSTHROUGH_H*/
diff --git a/src/include/86box/sio.h b/src/include/86box/sio.h
index 2bae49ae1..9a6f3ac79 100644
--- a/src/include/86box/sio.h
+++ b/src/include/86box/sio.h
@@ -12,7 +12,6 @@
*
* Copyright 2017-2020 Fred N. van Kempen.
*/
-
#ifndef EMU_SIO_H
#define EMU_SIO_H
diff --git a/src/include/86box/smbus.h b/src/include/86box/smbus.h
index 2c06c3d4e..58556b5e8 100644
--- a/src/include/86box/smbus.h
+++ b/src/include/86box/smbus.h
@@ -8,13 +8,10 @@
*
* Definitions for the SMBus host controllers.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2020 RichardG.
*/
-
#ifndef EMU_SMBUS_H
#define EMU_SMBUS_H
diff --git a/src/include/86box/smram.h b/src/include/86box/smram.h
index 707c967f5..3bcdf1ff0 100644
--- a/src/include/86box/smram.h
+++ b/src/include/86box/smram.h
@@ -8,13 +8,10 @@
*
* Definitions for the SMRAM interface.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2016-2020 Miran Grca.
*/
-
#ifndef EMU_SMRAM_H
#define EMU_SMRAM_H
diff --git a/src/include/86box/snd_ac97.h b/src/include/86box/snd_ac97.h
index a365f5afa..3af68d2c8 100644
--- a/src/include/86box/snd_ac97.h
+++ b/src/include/86box/snd_ac97.h
@@ -8,8 +8,6 @@
*
* Definitions for AC'97 audio emulation.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2021 RichardG.
diff --git a/src/include/86box/snd_ad1848.h b/src/include/86box/snd_ad1848.h
index 435b2aac4..99525807c 100644
--- a/src/include/86box/snd_ad1848.h
+++ b/src/include/86box/snd_ad1848.h
@@ -8,8 +8,6 @@
*
* Definitions for AD1848 / CS4248 / CS4231 (Windows Sound System) codec emulation.
*
- *
- *
* Authors: Sarah Walker,
* TheCollector1995,
* RichardG,
@@ -18,7 +16,6 @@
* Copyright 2018-2020 TheCollector1995.
* Copyright 2021-2025 RichardG.
*/
-
#ifndef SOUND_AD1848_H
#define SOUND_AD1848_H
diff --git a/src/include/86box/snd_akm4531.h b/src/include/86box/snd_akm4531.h
index 96f87b396..a2b980b84 100644
--- a/src/include/86box/snd_akm4531.h
+++ b/src/include/86box/snd_akm4531.h
@@ -19,4 +19,4 @@ struct akm4531_t
typedef struct akm4531_t akm4531_t;
-double akm4531_apply_master_vol(unsigned short sample);
\ No newline at end of file
+double akm4531_apply_master_vol(unsigned short sample);
diff --git a/src/include/86box/snd_mpu401.h b/src/include/86box/snd_mpu401.h
index 6dd99379e..44fb6b479 100644
--- a/src/include/86box/snd_mpu401.h
+++ b/src/include/86box/snd_mpu401.h
@@ -8,8 +8,6 @@
*
* Roland MPU-401 emulation.
*
- *
- *
* Authors: Sarah Walker,
* DOSBox Team,
* Miran Grca,
@@ -20,7 +18,6 @@
* Copyright 2016-2020 Miran Grca.
* Copyright 2016-2020 TheCollector1995.
*/
-
#ifndef SOUND_MPU401_H
#define SOUND_MPU401_H
diff --git a/src/include/86box/snd_opl_nuked.h b/src/include/86box/snd_opl_nuked.h
index 9fdbe16c4..48819e6f7 100644
--- a/src/include/86box/snd_opl_nuked.h
+++ b/src/include/86box/snd_opl_nuked.h
@@ -16,7 +16,6 @@
* Copyright 2017-2020 Fred N. van Kempen.
* Copyright 2016-2019 Miran Grca.
*/
-
#ifndef SOUND_OPL_NUKED_H
#define SOUND_OPL_NUKED_H
diff --git a/src/include/86box/snd_sb.h b/src/include/86box/snd_sb.h
index 06fbbfa3b..51822f210 100644
--- a/src/include/86box/snd_sb.h
+++ b/src/include/86box/snd_sb.h
@@ -17,7 +17,6 @@
* Copyright 2016-2018 Miran Grca.
* Copyright 2024-2025 Jasmine Iwanek.
*/
-
#ifndef SOUND_SND_SB_H
#define SOUND_SND_SB_H
diff --git a/src/include/86box/snd_speaker.h b/src/include/86box/snd_speaker.h
index fa1a6fe19..087faec32 100644
--- a/src/include/86box/snd_speaker.h
+++ b/src/include/86box/snd_speaker.h
@@ -8,15 +8,12 @@
*
* Header of the emulation of the PC speaker.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
*
* Copyright 2008-2019 Sarah Walker.
* Copyright 2016-2019 Miran Grca.
*/
-
#ifndef SOUND_SPEAKER_H
#define SOUND_SPEAKER_H
diff --git a/src/include/86box/sound.h b/src/include/86box/sound.h
index 5815d3f66..ff096e0be 100644
--- a/src/include/86box/sound.h
+++ b/src/include/86box/sound.h
@@ -8,8 +8,6 @@
*
* Sound emulation core.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Jasmine Iwanek,
@@ -18,7 +16,6 @@
* Copyright 2016-2025 Miran Grca.
* Copyright 2024-2025 Jasmine Iwanek.
*/
-
#ifndef EMU_SOUND_H
#define EMU_SOUND_H
@@ -180,6 +177,8 @@ extern const device_t sb_awe64_ide_device;
extern const device_t sb_awe64_gold_device;
/* Crystal CS423x */
+extern const device_t cs4232_device;
+extern const device_t cs4232_onboard_device;
extern const device_t cs4235_device;
extern const device_t cs4235_onboard_device;
extern const device_t cs4236_onboard_device;
diff --git a/src/include/86box/spd.h b/src/include/86box/spd.h
index 98eb4e178..887e7f3c7 100644
--- a/src/include/86box/spd.h
+++ b/src/include/86box/spd.h
@@ -8,13 +8,10 @@
*
* Emulation of SPD (Serial Presence Detect) devices.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2020 RichardG.
*/
-
#ifndef EMU_SPD_H
#define EMU_SPD_H
diff --git a/src/include/86box/thread.h b/src/include/86box/thread.h
index a71d03913..874425f6b 100644
--- a/src/include/86box/thread.h
+++ b/src/include/86box/thread.h
@@ -8,8 +8,6 @@
*
* Thread API header.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
*
diff --git a/src/include/86box/ui.h b/src/include/86box/ui.h
index 63243a666..9bfae4330 100644
--- a/src/include/86box/ui.h
+++ b/src/include/86box/ui.h
@@ -8,8 +8,6 @@
*
* Define the various UI functions.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
*
diff --git a/src/include/86box/unittester.h b/src/include/86box/unittester.h
index 00abed3ff..a68f9d7c9 100644
--- a/src/include/86box/unittester.h
+++ b/src/include/86box/unittester.h
@@ -11,13 +11,10 @@
* If modifying the protocol, you MUST modify the specification
* and increment the version number.
*
- *
- *
* Authors: GreaseMonkey,
*
* Copyright 2024 GreaseMonkey.
*/
-
#ifndef UNITTESTER_H
#define UNITTESTER_H
diff --git a/src/include/86box/unix_osd.h b/src/include/86box/unix_osd.h
new file mode 100644
index 000000000..a71b0ec74
--- /dev/null
+++ b/src/include/86box/unix_osd.h
@@ -0,0 +1,25 @@
+#ifndef _UNIX_OSD_H
+#define _UNIX_OSD_H
+
+#include
+
+// state management
+extern void osd_init(void);
+extern void osd_deinit(void);
+extern int osd_open(SDL_Event event);
+extern int osd_close(SDL_Event event);
+
+// keyboard event handler
+extern int osd_handle(SDL_Event event);
+
+// draw the osd interface, if it's open
+extern void osd_present(void);
+
+// future ui
+extern void osd_ui_sb_update_icon_state(int tag, int state);
+extern void osd_ui_sb_update_icon(int tag, int active);
+extern void osd_ui_sb_update_icon_write(int tag, int active);
+extern void osd_ui_sb_update_icon_wp(int tag, int state);
+
+#endif /*_UNIX_OSD_H*/
+
diff --git a/src/include/86box/unix_osd_font.h b/src/include/86box/unix_osd_font.h
new file mode 100644
index 000000000..412d367c7
--- /dev/null
+++ b/src/include/86box/unix_osd_font.h
@@ -0,0 +1,4109 @@
+#ifndef UNIX_OSD_FONT_H_INCLUDED
+#define UNIX_OSD_FONT_H_INCLUDED
+
+unsigned char _________font_bmp[] = {
+ 0x42, 0x4d, 0x36, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0x00,
+ 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
+ 0x00, 0x00, 0xc4, 0x0e, 0x00, 0x00, 0xc4, 0x0e, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa,
+ 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa
+};
+unsigned int _________font_bmp_len = 49206;
+
+#endif // UNIX_OSD_FONT_H_INCLUDED
diff --git a/src/include/86box/usb.h b/src/include/86box/usb.h
index 623746829..635b42c4e 100644
--- a/src/include/86box/usb.h
+++ b/src/include/86box/usb.h
@@ -1,18 +1,16 @@
/*
- * 86Box A hypervisor and IBM PC system emulator that specializes in
- * running old operating systems and software designed for IBM
- * PC systems and compatibles from 1981 through fairly recent
- * system designs based on the PCI bus.
+ * 86Box A hypervisor and IBM PC system emulator that specializes in
+ * running old operating systems and software designed for IBM
+ * PC systems and compatibles from 1981 through fairly recent
+ * system designs based on the PCI bus.
*
- * This file is part of the 86Box distribution.
+ * This file is part of the 86Box distribution.
*
- * Definitions for the Distributed DMA emulation.
+ * Definitions for the Distributed DMA emulation.
*
+ * Authors: Miran Grca,
*
- *
- * Authors: Miran Grca,
- *
- * Copyright 2020 Miran Grca.
+ * Copyright 2020 Miran Grca.
*/
#ifndef USB_H
diff --git a/src/include/86box/version.h.in b/src/include/86box/version.h.in
index 17c5b3068..096bb6516 100644
--- a/src/include/86box/version.h.in
+++ b/src/include/86box/version.h.in
@@ -8,8 +8,6 @@
*
* Definitions for project version, branding, and external links.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2020 Miran Grca.
diff --git a/src/include/86box/vfio.h b/src/include/86box/vfio.h
index 2166070a0..c01dc8ad4 100644
--- a/src/include/86box/vfio.h
+++ b/src/include/86box/vfio.h
@@ -17,4 +17,4 @@
extern void vfio_init(void);
-#endif
+#endif /*EMU_VFIO_H*/
diff --git a/src/include/86box/vid_8514a.h b/src/include/86box/vid_8514a.h
index 6e8528325..dddb216f6 100644
--- a/src/include/86box/vid_8514a.h
+++ b/src/include/86box/vid_8514a.h
@@ -9,8 +9,6 @@
* Emulation of the 8514/A card from IBM for the MCA bus and
* generic ISA bus clones without vendor extensions.
*
- *
- *
* Authors: TheCollector1995
*
* Copyright 2022 TheCollector1995.
diff --git a/src/include/86box/vid_8514a_device.h b/src/include/86box/vid_8514a_device.h
index b4102b17a..cb2a3fd14 100644
--- a/src/include/86box/vid_8514a_device.h
+++ b/src/include/86box/vid_8514a_device.h
@@ -9,8 +9,6 @@
* Emulation of the 8514/A card from IBM for the MCA bus and
* generic ISA bus clones without vendor extensions.
*
- *
- *
* Authors: TheCollector1995
*
* Copyright 2024 TheCollector1995.
diff --git a/src/include/86box/vid_ati_mach8.h b/src/include/86box/vid_ati_mach8.h
index e6fd124de..a281dfafa 100644
--- a/src/include/86box/vid_ati_mach8.h
+++ b/src/include/86box/vid_ati_mach8.h
@@ -9,8 +9,6 @@
* Emulation of the 8514/A-compatible Mach8 and Mach32 graphics
* chips from ATI for the ISA/VLB/MCA/PCI buses.
*
- *
- *
* Authors: TheCollector1995.
*
* Copyright 2022-2024 TheCollector1995.
diff --git a/src/include/86box/vid_cga.h b/src/include/86box/vid_cga.h
index 439ee36fc..8d20d2f22 100644
--- a/src/include/86box/vid_cga.h
+++ b/src/include/86box/vid_cga.h
@@ -16,7 +16,6 @@
* Copyright 2016-2018 Miran Grca.
* Copyright 2025 starfrost (refactoring).
*/
-
#ifndef VIDEO_CGA_H
#define VIDEO_CGA_H
diff --git a/src/include/86box/vid_cga_comp.h b/src/include/86box/vid_cga_comp.h
index 94051b5e5..bd6e83ee2 100644
--- a/src/include/86box/vid_cga_comp.h
+++ b/src/include/86box/vid_cga_comp.h
@@ -9,8 +9,6 @@
* IBM CGA composite filter, borrowed from reenigne's DOSBox
* patch and ported to C.
*
- *
- *
* Authors: reenigne,
* Miran Grca,
*
@@ -25,9 +23,9 @@
#define Bitu unsigned int
-void update_cga16_color(uint8_t cgamode);
-void cga_comp_init(int revision);
-void cga_comp_reload(int new_brightness, int new_saturation, int new_sharpness, int new_hue, int new_contrast);
+void update_cga16_color(uint8_t cgamode);
+void cga_comp_init(int revision);
+void cga_comp_reload(int new_brightness, int new_saturation, int new_sharpness, int new_hue, int new_contrast);
uint32_t *Composite_Process(uint8_t cgamode, uint8_t border, uint32_t blocks /*, bool doublewidth*/, uint32_t *TempLine);
#endif /*VIDEO_CGA_COMP_H*/
diff --git a/src/include/86box/vid_clockgen_icd2061.h b/src/include/86box/vid_clockgen_icd2061.h
index 78734a347..4f96e51dc 100644
--- a/src/include/86box/vid_clockgen_icd2061.h
+++ b/src/include/86box/vid_clockgen_icd2061.h
@@ -14,8 +14,6 @@
* Used by ET4000w32/p (Diamond Stealth 32) and the S3
* Vision964 family.
*
- *
- *
* Authors: Miran Grca,
*
* Copyright 2016-2018 Miran Grca.
@@ -35,4 +33,4 @@ typedef struct icd2061_t {
uint32_t ctrl;
} icd2061_t;
-#endif // VIDEO_CLOCKGEN_ICD2061_H
+#endif /*VIDEO_CLOCKGEN_ICD2061_H*/
diff --git a/src/include/86box/vid_colorplus.h b/src/include/86box/vid_colorplus.h
index 8716f72fb..7e9acf269 100644
--- a/src/include/86box/vid_colorplus.h
+++ b/src/include/86box/vid_colorplus.h
@@ -5,7 +5,7 @@ typedef struct colorplus_t {
cga_t cga;
uint8_t control;
- lpt_t * lpt;
+ lpt_t *lpt;
} colorplus_t;
void colorplus_init(colorplus_t *colorplus);
diff --git a/src/include/86box/vid_ddc.h b/src/include/86box/vid_ddc.h
index 32c8e88c5..8c1eb8787 100644
--- a/src/include/86box/vid_ddc.h
+++ b/src/include/86box/vid_ddc.h
@@ -8,15 +8,12 @@
*
* DDC monitor emulation definitions.
*
- *
- *
* Authors: Sarah Walker,
* RichardG,
*
* Copyright 2008-2020 Sarah Walker.
* Copyright 2020 RichardG.
*/
-
#ifndef EMU_VID_DDC_H
#define EMU_VID_DDC_H
diff --git a/src/include/86box/vid_ega.h b/src/include/86box/vid_ega.h
index beef6f98d..e6705400c 100644
--- a/src/include/86box/vid_ega.h
+++ b/src/include/86box/vid_ega.h
@@ -9,15 +9,12 @@
* Emulation of the EGA and Chips & Technologies SuperEGA
* graphics cards.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
*
* Copyright 2008-2020 Sarah Walker.
* Copyright 2016-2020 Miran Grca.
*/
-
#ifndef VIDEO_EGA_H
#define VIDEO_EGA_H
diff --git a/src/include/86box/vid_hercules.h b/src/include/86box/vid_hercules.h
index 05f2673a5..7c406d64c 100644
--- a/src/include/86box/vid_hercules.h
+++ b/src/include/86box/vid_hercules.h
@@ -8,8 +8,6 @@
*
* Emulation of the Hercules graphics cards.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Jasmine Iwanek,
@@ -20,7 +18,6 @@
* Copyright 2021 Jasmine Iwanek.
* Copyright 2025 starfrost
*/
-
#ifndef VIDEO_HERCULES_H
#define VIDEO_HERCULES_H
diff --git a/src/include/86box/vid_mda.h b/src/include/86box/vid_mda.h
index 2443e0ccc..17c028343 100644
--- a/src/include/86box/vid_mda.h
+++ b/src/include/86box/vid_mda.h
@@ -13,7 +13,6 @@
* Copyright 2007-2024 Sarah Walker
* Copyright 2025 Connor Hyde / starfrost,
*/
-
#ifndef VIDEO_MDA_H
#define VIDEO_MDA_H
@@ -22,8 +21,7 @@
// Enums & structures
-typedef enum mda_registers_e
-{
+typedef enum mda_registers_e {
MDA_REGISTER_START = 0x3B0,
MDA_REGISTER_CRTC_INDEX = 0x3B4,
@@ -38,8 +36,7 @@ typedef enum mda_registers_e
} mda_registers;
// Motorola MC6845 CRTC registers (without light pen for some reason)
-typedef enum mda_crtc_registers_e
-{
+typedef enum mda_crtc_registers_e {
MDA_CRTC_HTOTAL = 0x0, // Horizontal total (total number of characters incl. hsync)
MDA_CRTC_HDISP = 0x1, // Horizontal display
MDA_CRTC_HSYNC_POS = 0x2, // Horizontal position of horizontal ysnc
@@ -58,16 +55,14 @@ typedef enum mda_crtc_registers_e
MDA_CRTC_CURSOR_ADDR_LOW = 0xF, // Cursor address low 8 bits
} mda_crtc_registers;
-typedef enum mda_mode_flags_e
-{
+typedef enum mda_mode_flags_e {
MDA_MODE_HIGHRES = 1 << 0, // MUST be enabled for sane operation
MDA_MODE_BW = 1 << 1, // UNUSED in most cases. Not present on Hercules
MDA_MODE_VIDEO_ENABLE = 1 << 3,
MDA_MODE_BLINK = 1 << 5,
} mda_mode_flags;
-typedef enum mda_colors_e
-{
+typedef enum mda_colors_e {
MDA_COLOR_BLACK = 0,
MDA_COLOR_BLUE = 1,
MDA_COLOR_GREEN = 2,
diff --git a/src/include/86box/vid_nga.h b/src/include/86box/vid_nga.h
index bbb5b3c95..bad34ed31 100644
--- a/src/include/86box/vid_nga.h
+++ b/src/include/86box/vid_nga.h
@@ -9,15 +9,12 @@
* Emulation of the Olivetti OGC 8-bit ISA (GO708) and
* M21/M24/M28 16-bit bus (GO317/318/380/709) video cards.
*
- *
- *
* Authors: Miran Grca,
* EngiNerd,
*
* Copyright 2016-2019 Miran Grca.
* Copyright 2020 EngiNerd.
*/
-
#ifndef VIDEO_NGA_H
#define VIDEO_NGA_H
diff --git a/src/include/86box/vid_ogc.h b/src/include/86box/vid_ogc.h
index efafb180e..65d79c5a0 100644
--- a/src/include/86box/vid_ogc.h
+++ b/src/include/86box/vid_ogc.h
@@ -9,15 +9,12 @@
* Emulation of the Olivetti OGC 8-bit ISA (GO708) and
* M21/M24/M28 16-bit bus (GO317/318/380/709) video cards.
*
- *
- *
* Authors: Miran Grca,
* EngiNerd,
*
* Copyright 2016-2019 Miran Grca.
* Copyright 2020 EngiNerd.
*/
-
#ifndef VIDEO_OGC_H
#define VIDEO_OGC_H
diff --git a/src/include/86box/vid_pgc.h b/src/include/86box/vid_pgc.h
index dd6a45b98..daeb2c259 100644
--- a/src/include/86box/vid_pgc.h
+++ b/src/include/86box/vid_pgc.h
@@ -8,8 +8,6 @@
*
* Definitions for the PGC driver.
*
- *
- *
* Authors: Fred N. van Kempen,
* John Elliott,
*
diff --git a/src/include/86box/vid_pgc_palette.h b/src/include/86box/vid_pgc_palette.h
index a242e0cbd..c251663e8 100644
--- a/src/include/86box/vid_pgc_palette.h
+++ b/src/include/86box/vid_pgc_palette.h
@@ -8,15 +8,12 @@
*
* Palette definitions for the PGC core.
*
- *
- *
* Authors: Fred N. van Kempen,
* John Elliott,
*
* Copyright 2019 Fred N. van Kempen.
* Copyright 2019 John Elliott.
*/
-
#ifndef VID_PGC_PALETTE_H
#define VID_PGC_PALETTE_H
diff --git a/src/include/86box/vid_ps55da2.h b/src/include/86box/vid_ps55da2.h
index f029b5751..f6e481b3d 100644
--- a/src/include/86box/vid_ps55da2.h
+++ b/src/include/86box/vid_ps55da2.h
@@ -8,13 +8,10 @@
*
* IBM PS/55 Display Adapter II emulation.
*
- *
- *
* Authors: Akamaki.
*
* Copyright 2024 Akamaki.
*/
-
#ifndef VIDEO_DA2_DEVICE_H
#define VIDEO_DA2_DEVICE_H
diff --git a/src/include/86box/vid_quadcolor.h b/src/include/86box/vid_quadcolor.h
index 41b39dfb0..4e0b9f334 100644
--- a/src/include/86box/vid_quadcolor.h
+++ b/src/include/86box/vid_quadcolor.h
@@ -8,13 +8,12 @@
*
* Quadram Quadcolor I / I+II emulation
*
- * Authors: Benedikt Freisen,
- * Jasmine Iwanek,
+ * Authors: Benedikt Freisen,
+ * Jasmine Iwanek,
*
* Copyright 2024 Benedikt Freisen.
- Copyright 2025 Jasmine Iwanek.
+ * Copyright 2025 Jasmine Iwanek.
*/
-
#ifndef _VID_QUADCOLOR_H_
#define _VID_QUADCOLOR_H_
diff --git a/src/include/86box/vid_svga.h b/src/include/86box/vid_svga.h
index 66ed2affe..814a986c3 100644
--- a/src/include/86box/vid_svga.h
+++ b/src/include/86box/vid_svga.h
@@ -8,8 +8,6 @@
*
* Generic SVGA handling.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
*
@@ -451,6 +449,8 @@ extern void ibm_rgb528_hwcursor_draw(svga_t *svga, int displine);
extern float ibm_rgb528_getclock(int clock, void *priv);
extern void ibm_rgb528_ramdac_set_ref_clock(void *priv, svga_t *svga, float ref_clock);
+extern float icd2047_getclock(int clock, void *priv);
+
extern void icd2061_write(void *priv, int val);
extern float icd2061_getclock(int clock, void *priv);
extern void icd2061_set_ref_clock(void *priv, float ref_clock);
@@ -459,8 +459,13 @@ extern void icd2061_set_ref_clock(void *priv, float ref_clock);
# define ics9161_write icd2061_write
# define ics9161_getclock icd2061_getclock
+extern float ics1494_getclock(int clock, void *priv);
+
extern float ics2494_getclock(int clock, void *priv);
+extern float ics90c64a_vclk_getclock(int clock, void *priv);
+extern float ics90c64a_mclk_getclock(int clock, void *priv);
+
extern void ics2595_write(void *priv, int strobe, int dat);
extern double ics2595_getclock(void *priv);
extern void ics2595_setclock(void *priv, double clock);
@@ -476,6 +481,7 @@ extern uint8_t sc1502x_rs2_ramdac_in(uint16_t addr, int rs2, void *priv, svga_t
extern void sdac_ramdac_out(uint16_t addr, int rs2, uint8_t val, void *priv, svga_t *svga);
extern uint8_t sdac_ramdac_in(uint16_t addr, int rs2, void *priv, svga_t *svga);
extern float sdac_getclock(int clock, void *priv);
+extern void sdac_set_ref_clock(void *priv, float ref_clock);
extern void stg_ramdac_out(uint16_t addr, uint8_t val, void *priv, svga_t *svga);
extern uint8_t stg_ramdac_in(uint16_t addr, void *priv, svga_t *svga);
@@ -508,7 +514,10 @@ extern const device_t att20c505_ramdac_device;
extern const device_t bt485a_ramdac_device;
extern const device_t gendac_ramdac_device;
extern const device_t ibm_rgb528_ramdac_device;
+extern const device_t ics1494m_540_device;
+extern const device_t ics1494m_540_radius_ht209_device;
extern const device_t ics2494an_305_device;
+extern const device_t ics2494an_324_device;
extern const device_t ati18810_28800_device;
extern const device_t ati18811_0_28800_device;
extern const device_t ati18811_1_28800_device;
@@ -516,7 +525,9 @@ extern const device_t ati18810_mach32_device;
extern const device_t ati18811_0_mach32_device;
extern const device_t ati18811_1_mach32_device;
extern const device_t ics2595_device;
+extern const device_t icd2047_20_device;
extern const device_t icd2061_device;
+extern const device_t ics90c64a_903_device;
extern const device_t ics9161_device;
extern const device_t sc11483_ramdac_device;
extern const device_t sc11487_ramdac_device;
@@ -525,7 +536,8 @@ extern const device_t sc11484_nors2_ramdac_device;
extern const device_t sc1502x_ramdac_device;
extern const device_t sc1502x_rs2_ramdac_device;
extern const device_t sdac_ramdac_device;
-extern const device_t stg_ramdac_device;
+extern const device_t stg1702_ramdac_device;
+extern const device_t stg1703_ramdac_device;
extern const device_t tkd8001_ramdac_device;
extern const device_t tseng_ics5301_ramdac_device;
extern const device_t tseng_ics5341_ramdac_device;
diff --git a/src/include/86box/vid_svga_render.h b/src/include/86box/vid_svga_render.h
index 7ead95838..9efcafc2d 100644
--- a/src/include/86box/vid_svga_render.h
+++ b/src/include/86box/vid_svga_render.h
@@ -8,15 +8,12 @@
*
* SVGA renderers.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
*
* Copyright 2008-2018 Sarah Walker.
* Copyright 2016-2018 Miran Grca.
*/
-
#ifndef VIDEO_SVGA_RENDER_H
#define VIDEO_SVGA_RENDER_H
diff --git a/src/include/86box/vid_v6355.h b/src/include/86box/vid_v6355.h
index f8fd11519..c93d04060 100644
--- a/src/include/86box/vid_v6355.h
+++ b/src/include/86box/vid_v6355.h
@@ -16,7 +16,6 @@
* Copyright 2016-2018 Miran Grca.
* Copyright 2025 starfrost (refactoring).
*/
-
#ifndef VIDEO_V6355_H
#define VIDEO_V6355_H
diff --git a/src/include/86box/vid_vga.h b/src/include/86box/vid_vga.h
index 54a1d0690..9de586b13 100644
--- a/src/include/86box/vid_vga.h
+++ b/src/include/86box/vid_vga.h
@@ -8,8 +8,6 @@
*
* Emulation of the IBM MDA + VGA graphics cards.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Jasmine Iwanek,
@@ -18,7 +16,6 @@
* Copyright 2016-2018 Miran Grca.
* Copyright 2021 Jasmine Iwanek.
*/
-
#ifndef VIDEO_VGA_H
#define VIDEO_VGA_H
diff --git a/src/include/86box/vid_voodoo_banshee.h b/src/include/86box/vid_voodoo_banshee.h
index 257a549dd..571c36cda 100644
--- a/src/include/86box/vid_voodoo_banshee.h
+++ b/src/include/86box/vid_voodoo_banshee.h
@@ -8,13 +8,10 @@
*
* Voodoo Banshee and 3 specific emulation.
*
- *
- *
* Authors: Sarah Walker,
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_BANSHEE_H
#define VIDEO_VOODOO_BANSHEE_H
diff --git a/src/include/86box/vid_voodoo_banshee_blitter.h b/src/include/86box/vid_voodoo_banshee_blitter.h
index 2d36f1566..313f92a3e 100644
--- a/src/include/86box/vid_voodoo_banshee_blitter.h
+++ b/src/include/86box/vid_voodoo_banshee_blitter.h
@@ -8,13 +8,10 @@
*
* Voodoo Banshee and 3 specific emulation.
*
- *
- *
* Authors: Sarah Walker,
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_BANSHEE_BLITTER_H
#define VIDEO_VOODOO_BANSHEE_BLITTER_H
diff --git a/src/include/86box/vid_voodoo_blitter.h b/src/include/86box/vid_voodoo_blitter.h
index 261352157..e7f0f0b21 100644
--- a/src/include/86box/vid_voodoo_blitter.h
+++ b/src/include/86box/vid_voodoo_blitter.h
@@ -8,13 +8,10 @@
*
* 3DFX Voodoo emulation.
*
- *
- *
* Authors: Sarah Walker,
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_BLITTER_H
#define VIDEO_VOODOO_BLITTER_H
diff --git a/src/include/86box/vid_voodoo_common.h b/src/include/86box/vid_voodoo_common.h
index 4201562c2..26dcd5a1e 100644
--- a/src/include/86box/vid_voodoo_common.h
+++ b/src/include/86box/vid_voodoo_common.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics, 2, Banshee, 3 emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_COMMON_H
#define VIDEO_VOODOO_COMMON_H
diff --git a/src/include/86box/vid_voodoo_display.h b/src/include/86box/vid_voodoo_display.h
index f046263bf..35df4152e 100644
--- a/src/include/86box/vid_voodoo_display.h
+++ b/src/include/86box/vid_voodoo_display.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics, 2, Banshee, 3 emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_DISPLAY_H
#define VIDEO_VOODOO_DISPLAY_H
diff --git a/src/include/86box/vid_voodoo_dither.h b/src/include/86box/vid_voodoo_dither.h
index 51ec91f2e..3a7e3b320 100644
--- a/src/include/86box/vid_voodoo_dither.h
+++ b/src/include/86box/vid_voodoo_dither.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics and 2 specific emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_DITHER_H
#define VIDEO_VOODOO_DITHER_H
diff --git a/src/include/86box/vid_voodoo_fb.h b/src/include/86box/vid_voodoo_fb.h
index 8a59b30ef..1e55c33fe 100644
--- a/src/include/86box/vid_voodoo_fb.h
+++ b/src/include/86box/vid_voodoo_fb.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics, 2, Banshee, 3 emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_FB_H
#define VIDEO_VOODOO_FB_H
diff --git a/src/include/86box/vid_voodoo_fifo.h b/src/include/86box/vid_voodoo_fifo.h
index e78d0dd6b..91bb096ec 100644
--- a/src/include/86box/vid_voodoo_fifo.h
+++ b/src/include/86box/vid_voodoo_fifo.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics, 2, Banshee, 3 emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_FIFO_H
#define VIDEO_VOODOO_FIFO_H
diff --git a/src/include/86box/vid_voodoo_reg.h b/src/include/86box/vid_voodoo_reg.h
index 3dff4498c..04a6b7165 100644
--- a/src/include/86box/vid_voodoo_reg.h
+++ b/src/include/86box/vid_voodoo_reg.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics, 2, Banshee, 3 emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_REG_H
#define VIDEO_VOODOO_REG_H
diff --git a/src/include/86box/vid_voodoo_setup.h b/src/include/86box/vid_voodoo_setup.h
index d8820a7cb..f349c5f2c 100644
--- a/src/include/86box/vid_voodoo_setup.h
+++ b/src/include/86box/vid_voodoo_setup.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics, 2, Banshee, 3 emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_SETUP_H
#define VIDEO_VOODOO_SETUP_H
diff --git a/src/include/86box/vid_voodoo_texture.h b/src/include/86box/vid_voodoo_texture.h
index 6f325426a..639001ac2 100644
--- a/src/include/86box/vid_voodoo_texture.h
+++ b/src/include/86box/vid_voodoo_texture.h
@@ -8,14 +8,11 @@
*
* Voodoo Graphics, 2, Banshee, 3 emulation.
*
- *
- *
* Authors: Sarah Walker,
* leilei
*
* Copyright 2008-2020 Sarah Walker.
*/
-
#ifndef VIDEO_VOODOO_TEXTURE_H
#define VIDEO_VOODOO_TEXTURE_H
diff --git a/src/include/86box/vid_xga.h b/src/include/86box/vid_xga.h
index 9aac43b9f..b3a768e7b 100644
--- a/src/include/86box/vid_xga.h
+++ b/src/include/86box/vid_xga.h
@@ -8,8 +8,6 @@
*
* IBM XGA emulation.
*
- *
- *
* Authors: TheCollector1995.
*
* Copyright 2022 TheCollector1995.
diff --git a/src/include/86box/vid_xga_device.h b/src/include/86box/vid_xga_device.h
index 7a72e76f5..07ddf7f21 100644
--- a/src/include/86box/vid_xga_device.h
+++ b/src/include/86box/vid_xga_device.h
@@ -8,13 +8,10 @@
*
* IBM XGA emulation.
*
- *
- *
* Authors: TheCollector1995.
*
* Copyright 2022 TheCollector1995.
*/
-
#ifndef VIDEO_XGA_DEVICE_H
#define VIDEO_XGA_DEVICE_H
diff --git a/src/include/86box/video.h b/src/include/86box/video.h
index 81424dbcb..acaf7cdc4 100644
--- a/src/include/86box/video.h
+++ b/src/include/86box/video.h
@@ -8,8 +8,6 @@
*
* Definitions for the video controller module.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
@@ -18,7 +16,6 @@
* Copyright 2016-2019 Miran Grca.
* Copyright 2017-2019 Fred N. van Kempen.
*/
-
#ifndef EMU_VIDEO_H
#define EMU_VIDEO_H
@@ -30,8 +27,8 @@ using atomic_int = std::atomic_int;
# include
#endif
-#define makecol(r, g, b) ((b) | ((g) << 8) | ((r) << 16))
-#define makecol32(r, g, b) ((b) | ((g) << 8) | ((r) << 16))
+#define makecol(r, g, b) ((b) | ((g) << 8) | ((r) << 16) | 0xff000000)
+#define makecol32(r, g, b) ((b) | ((g) << 8) | ((r) << 16) | 0xff000000)
#define getcolr(color) (((color) >> 16) & 0xFF)
#define getcolg(color) (((color) >> 8) & 0xFF)
#define getcolb(color) ((color) & 0xFF)
@@ -335,6 +332,9 @@ extern void da2_device_add(void);
extern const device_t mach64gx_isa_device;
extern const device_t mach64gx_vlb_device;
extern const device_t mach64gx_pci_device;
+extern const device_t mach64ct_device;
+extern const device_t mach64ct_device_onboard;
+extern const device_t mach64vt_device;
extern const device_t mach64vt2_device;
/* ATi 18800 */
@@ -436,20 +436,20 @@ extern const device_t et4000_kasan_isa_device;
extern const device_t et4000_mca_device;
/* Tseng ET4000-W32x */
-extern const device_t et4000w32_device;
+extern const device_t et4000w32_machspeed_vga_gui_2400s_isa_device;
+extern const device_t et4000w32_machspeed_vga_gui_2400s_vlb_device;
extern const device_t et4000w32_onboard_device;
-extern const device_t et4000w32i_isa_device;
-extern const device_t et4000w32i_vlb_device;
+extern const device_t et4000w32i_axis_microdevice_isa_device;
+extern const device_t et4000w32i_hercules_dynamite_pro_vlb_device;
extern const device_t et4000w32p_videomagic_revb_vlb_device;
-extern const device_t et4000w32p_videomagic_revb_pci_device;
-extern const device_t et4000w32p_revc_vlb_device;
-extern const device_t et4000w32p_revc_pci_device;
-extern const device_t et4000w32p_vlb_device;
-extern const device_t et4000w32p_pci_device;
-extern const device_t et4000w32p_noncardex_vlb_device;
-extern const device_t et4000w32p_noncardex_pci_device;
-extern const device_t et4000w32p_cardex_vlb_device;
-extern const device_t et4000w32p_cardex_pci_device;
+extern const device_t et4000w32p_cardex_revc_vlb_device;
+extern const device_t et4000w32p_cardex_revc_pci_device;
+extern const device_t et4000w32p_cardex_revd_vlb_device;
+extern const device_t et4000w32p_cardex_revd_pci_device;
+extern const device_t et4000w32p_diamond_revd_vlb_device;
+extern const device_t et4000w32p_diamond_revd_pci_device;
+extern const device_t et4000w32p_generic_revd_vlb_device;
+extern const device_t et4000w32p_generic_revd_pci_device;
/* MDSI Genius VHR */
extern const device_t genius_device;
diff --git a/src/include/86box/vnc.h b/src/include/86box/vnc.h
index a63c53403..846f53f9a 100644
--- a/src/include/86box/vnc.h
+++ b/src/include/86box/vnc.h
@@ -8,13 +8,10 @@
*
* Definitions for the VNC renderer.
*
- *
- *
* Authors: Fred N. van Kempen,
*
* Copyright 2017 Fred N. van Kempen.
*/
-
#ifndef EMU_VNC_H
#define EMU_VNC_H
diff --git a/src/include/86box/win.h b/src/include/86box/win.h
index 5cead7cb0..183c76b59 100644
--- a/src/include/86box/win.h
+++ b/src/include/86box/win.h
@@ -8,8 +8,6 @@
*
* Platform support defintions for Win32.
*
- *
- *
* Authors: Sarah Walker,
* Miran Grca,
* Fred N. van Kempen,
@@ -19,7 +17,6 @@
* Copyright 2017-2019 Fred N. van Kempen.
* Copyright 2021 Laci bĂ¡'
*/
-
#ifndef PLAT_WIN_H
#define PLAT_WIN_H
diff --git a/src/machine/m_amstrad.c b/src/machine/m_amstrad.c
index cded8e4f9..8e52bd488 100644
--- a/src/machine/m_amstrad.c
+++ b/src/machine/m_amstrad.c
@@ -75,14 +75,14 @@
#include <86box/m_amstrad.h>
#include <86box/plat_unused.h>
-#define STAT_PARITY 0x80
-#define STAT_RTIMEOUT 0x40
-#define STAT_TTIMEOUT 0x20
-#define STAT_LOCK 0x10
-#define STAT_CD 0x08
-#define STAT_SYSFLAG 0x04
-#define STAT_IFULL 0x02
-#define STAT_OFULL 0x01
+#define STAT_PARITY 0x80
+#define STAT_RTIMEOUT 0x40
+#define STAT_TTIMEOUT 0x20
+#define STAT_LOCK 0x10
+#define STAT_CD 0x08
+#define STAT_SYSFLAG 0x04
+#define STAT_IFULL 0x02
+#define STAT_OFULL 0x01
#define DOUBLE_NONE 0
#define DOUBLE_SIMPLE 1
@@ -90,17 +90,17 @@
#define DOUBLE_INTERPOLATE_LINEAR 3
typedef struct amsvid_t {
- rom_t bios_rom; /* 1640 */
- cga_t cga; /* 1640/200 */
- mda_t mda; /* 1512/200/PPC512/640*/
- ega_t ega; /* 1640 */
- uint8_t emulation; /* Which display are we emulating? */
- uint8_t dipswitches; /* DIP switches 1-3 */
- uint8_t crtc_index; /* CRTC index readback
- * Bit 7: CGA control port written
- * Bit 6: Operation control port written
- * Bit 5: CRTC register written
- * Bits 0-4: Last CRTC register selected */
+ rom_t bios_rom; /* 1640 */
+ cga_t cga; /* 1640/200 */
+ mda_t mda; /* 1512/200/PPC512/640*/
+ ega_t ega; /* 1640 */
+ uint8_t emulation; /* Which display are we emulating? */
+ uint8_t dipswitches; /* DIP switches 1-3 */
+ uint8_t crtc_index; /* CRTC index readback
+ * Bit 7: CGA control port written
+ * Bit 6: Operation control port written
+ * Bit 5: CRTC register written
+ * Bits 0-4: Last CRTC register selected */
uint8_t operation_ctrl;
uint8_t reg_3df;
uint8_t type;
@@ -161,8 +161,8 @@ typedef struct amstrad_t {
/* Video stuff. */
amsvid_t *vid;
- fdc_t *fdc;
- lpt_t *lpt;
+ fdc_t *fdc;
+ lpt_t *lpt;
} amstrad_t;
uint32_t amstrad_latch;
@@ -345,20 +345,18 @@ vid_read_1512(uint32_t addr, void *priv)
static void
ams1512_render(amsvid_t *vid, int line)
{
- uint16_t cursoraddr = (vid->crtc[15] | (vid->crtc[14] << 8)) & 0x3fff;
- int drawcursor;
- int x;
- int c;
- uint8_t chr;
- uint8_t attr;
- uint16_t dat;
- uint16_t dat2;
- uint16_t dat3;
- uint16_t dat4;
- int cols[4];
- int col;
+ uint16_t cursoraddr = (vid->crtc[15] | (vid->crtc[14] << 8)) & 0x3fff;
+ int drawcursor;
+ uint8_t chr;
+ uint8_t attr;
+ uint16_t dat;
+ uint16_t dat2;
+ uint16_t dat3;
+ uint16_t dat4;
+ int cols[4];
+ int col;
- for (c = 0; c < 8; c++) {
+ for (uint8_t c = 0; c < 8; c++) {
if ((vid->cgamode & 0x12) == 0x12) {
buffer32->line[line][c] = buffer32->line[(line) + 1][c] = (vid->border & 15) + 16;
if (vid->cgamode & CGA_MODE_FLAG_HIGHRES) {
@@ -376,10 +374,10 @@ ams1512_render(amsvid_t *vid, int line)
}
}
if (vid->cgamode & CGA_MODE_FLAG_HIGHRES) {
- for (x = 0; x < 80; x++) {
- chr = vid->vram[(vid->memaddr<< 1) & 0x3fff];
- attr = vid->vram[((vid->memaddr<< 1) + 1) & 0x3fff];
- drawcursor = ((vid->memaddr== cursoraddr) && vid->cursorvisible && vid->cursoron);
+ for (uint8_t x = 0; x < 80; x++) {
+ chr = vid->vram[(vid->memaddr << 1) & 0x3fff];
+ attr = vid->vram[((vid->memaddr << 1) + 1) & 0x3fff];
+ drawcursor = ((vid->memaddr == cursoraddr) && vid->cursorvisible && vid->cursoron);
if (vid->cgamode & CGA_MODE_FLAG_BLINK) {
cols[1] = (attr & 15) + 16;
cols[0] = ((attr >> 4) & 7) + 16;
@@ -390,21 +388,21 @@ ams1512_render(amsvid_t *vid, int line)
cols[0] = (attr >> 4) + 16;
}
if (drawcursor)
- for (c = 0; c < 8; c++)
+ for (uint8_t c = 0; c < 8; c++)
buffer32->line[line][(x << 3) + c + 8] =
cols[(fontdat[vid->fontbase + chr][vid->scanline & 7] & (1 << (c ^ 7))) ? 1 : 0] ^ 15;
else
- for (c = 0; c < 8; c++)
+ for (uint8_t c = 0; c < 8; c++)
buffer32->line[line][(x << 3) + c + 8] =
cols[(fontdat[vid->fontbase + chr][vid->scanline & 7] & (1 << (c ^ 7))) ? 1 : 0];
vid->memaddr++;
}
} else if (!(vid->cgamode & CGA_MODE_FLAG_GRAPHICS)) {
- for (x = 0; x < 40; x++) {
- chr = vid->vram[(vid->memaddr<< 1) & 0x3fff];
- attr = vid->vram[((vid->memaddr<< 1) + 1) & 0x3fff];
- drawcursor = ((vid->memaddr == cursoraddr) && vid->cursorvisible && vid->cursoron);
-
+ for (uint8_t x = 0; x < 40; x++) {
+ chr = vid->vram[(vid->memaddr << 1) & 0x3fff];
+ attr = vid->vram[((vid->memaddr << 1) + 1) & 0x3fff];
+ drawcursor = ((vid->memaddr == cursoraddr) && vid->cursorvisible && vid->cursoron);
+
if (vid->cgamode & CGA_MODE_FLAG_BLINK) {
cols[1] = (attr & 15) + 16;
cols[0] = ((attr >> 4) & 7) + 16;
@@ -416,12 +414,12 @@ ams1512_render(amsvid_t *vid, int line)
}
vid->memaddr++;
if (drawcursor)
- for (c = 0; c < 8; c++)
+ for (uint8_t c = 0; c < 8; c++)
buffer32->line[line][(x << 4) + (c << 1) + 8] =
buffer32->line[line][(x << 4) + (c << 1) + 1 + 8] =
cols[(fontdat[vid->fontbase + chr][vid->scanline & 7] & (1 << (c ^ 7))) ? 1 : 0] ^ 15;
else
- for (c = 0; c < 8; c++)
+ for (uint8_t c = 0; c < 8; c++)
buffer32->line[line][(x << 4) + (c << 1) + 8] =
buffer32->line[line][(x << 4) + (c << 1) + 1 + 8] =
cols[(fontdat[vid->fontbase + chr][vid->scanline & 7] & (1 << (c ^ 7))) ? 1 : 0];
@@ -442,26 +440,26 @@ ams1512_render(amsvid_t *vid, int line)
cols[2] = col | 4;
cols[3] = col | 6;
}
- for (x = 0; x < 40; x++) {
+ for (uint8_t x = 0; x < 40; x++) {
dat = (vid->vram[((vid->memaddr<< 1) & 0x1fff) + ((vid->scanline & 1) * 0x2000)] << 8) |
vid->vram[((vid->memaddr<< 1) & 0x1fff) + ((vid->scanline & 1) * 0x2000) + 1];
vid->memaddr++;
- for (c = 0; c < 8; c++) {
+ for (uint8_t c = 0; c < 8; c++) {
buffer32->line[line][(x << 4) + (c << 1) + 8] =
buffer32->line[line][(x << 4) + (c << 1) + 1 + 8] = cols[dat >> 14];
dat <<= 2;
}
}
} else {
- for (x = 0; x < 40; x++) {
- cursoraddr = ((vid->memaddr<< 1) & 0x1fff) + ((vid->scanline & 1) * 0x2000);
- dat = (vid->vram[cursoraddr] << 8) | vid->vram[cursoraddr + 1];
- dat2 = (vid->vram[cursoraddr + 0x4000] << 8) | vid->vram[cursoraddr + 0x4001];
- dat3 = (vid->vram[cursoraddr + 0x8000] << 8) | vid->vram[cursoraddr + 0x8001];
- dat4 = (vid->vram[cursoraddr + 0xc000] << 8) | vid->vram[cursoraddr + 0xc001];
+ for (uint8_t x = 0; x < 40; x++) {
+ cursoraddr = ((vid->memaddr << 1) & 0x1fff) + ((vid->scanline & 1) * 0x2000);
+ dat = (vid->vram[cursoraddr] << 8) | vid->vram[cursoraddr + 1];
+ dat2 = (vid->vram[cursoraddr + 0x4000] << 8) | vid->vram[cursoraddr + 0x4001];
+ dat3 = (vid->vram[cursoraddr + 0x8000] << 8) | vid->vram[cursoraddr + 0x8001];
+ dat4 = (vid->vram[cursoraddr + 0xc000] << 8) | vid->vram[cursoraddr + 0xc001];
vid->memaddr++;
- for (c = 0; c < 16; c++) {
+ for (uint8_t c = 0; c < 16; c++) {
buffer32->line[line][(x << 4) + c + 8] = (((dat >> 15) | ((dat2 >> 15) << 1) |
((dat3 >> 15) << 2) | ((dat4 >> 15) << 3)) & (vid->cgacol & 15)) + 16;
dat <<= 1;
@@ -498,7 +496,7 @@ vid_poll_1512(void *priv)
timer_advance_u64(&vid->timer, vid->dispofftime);
vid->status |= 1;
vid->linepos = 1;
- scanline_old = vid->scanline;
+ scanline_old = vid->scanline;
if (vid->dispon) {
if (vid->displine < vid->firstline) {
vid->firstline = vid->displine;
@@ -520,18 +518,19 @@ vid_poll_1512(void *priv)
ams1512_render(vid, (vid->displine << 1) + 1);
break;
}
- } else switch (vid->double_type) {
- default:
- ams1512_render_blank(vid, vid->displine << 1);
- break;
- case DOUBLE_NONE:
- ams1512_render_blank(vid, vid->displine);
- break;
- case DOUBLE_SIMPLE:
- ams1512_render_blank(vid, vid->displine << 1);
- ams1512_render_blank(vid, (vid->displine << 1) + 1);
- break;
- }
+ } else
+ switch (vid->double_type) {
+ default:
+ ams1512_render_blank(vid, vid->displine << 1);
+ break;
+ case DOUBLE_NONE:
+ ams1512_render_blank(vid, vid->displine);
+ break;
+ case DOUBLE_SIMPLE:
+ ams1512_render_blank(vid, vid->displine << 1);
+ ams1512_render_blank(vid, (vid->displine << 1) + 1);
+ break;
+ }
if (vid->cgamode & CGA_MODE_FLAG_HIGHRES)
x = (vid->crtc[1] << 3) + 16;
@@ -567,21 +566,21 @@ vid_poll_1512(void *priv)
vid->status &= ~8;
}
if (vid->scanline == (vid->crtc[11] & 31)) {
- vid->cursorvisible = 0;
+ vid->cursorvisible = 0;
}
if (vid->vadj) {
vid->scanline++;
vid->scanline &= 31;
- vid->memaddr= vid->memaddr_backup;
+ vid->memaddr = vid->memaddr_backup;
vid->vadj--;
if (!vid->vadj) {
- vid->dispon = 1;
- vid->memaddr= vid->memaddr_backup = (vid->crtc[13] | (vid->crtc[12] << 8)) & 0x3fff;
- vid->scanline = 0;
+ vid->dispon = 1;
+ vid->memaddr = vid->memaddr_backup = (vid->crtc[13] | (vid->crtc[12] << 8)) & 0x3fff;
+ vid->scanline = 0;
}
} else if (vid->scanline == vid->crtc[9]) {
vid->memaddr_backup = vid->memaddr;
- vid->scanline = 0;
+ vid->scanline = 0;
vid->vc++;
vid->vc &= 127;
@@ -652,7 +651,7 @@ vid_poll_1512(void *priv)
} else {
vid->scanline++;
vid->scanline &= 31;
- vid->memaddr= vid->memaddr_backup;
+ vid->memaddr = vid->memaddr_backup;
}
if (vid->scanline == (vid->crtc[10] & 31))
vid->cursorvisible = 1;
@@ -662,10 +661,8 @@ vid_poll_1512(void *priv)
static void
vid_init_1512(amstrad_t *ams)
{
- amsvid_t *vid;
-
/* Allocate a video controller block. */
- vid = (amsvid_t *) calloc(1, sizeof(amsvid_t));
+ amsvid_t *vid = (amsvid_t *) calloc(1, sizeof(amsvid_t));
video_inform(VIDEO_FLAG_TYPE_CGA, &timing_pc1512);
@@ -712,20 +709,21 @@ vid_speed_change_1512(void *priv)
}
const device_config_t vid_1512_config[] = {
- // clang-format off
+ // clang-format off
{
- .name = "display_type",
- .description = "Display type",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "display_type",
+ .description = "Display type",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "PC-CM (Colour)", .value = 0 },
{ .description = "PC-MM (Monochrome)", .value = 3 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
.name = "double_type",
@@ -745,29 +743,30 @@ const device_config_t vid_1512_config[] = {
.bios = { { 0 } }
},
{
- .name = "codepage",
- .description = "Hardware font",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 3,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "codepage",
+ .description = "Hardware font",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 3,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "US English", .value = 3 },
{ .description = "Danish", .value = 1 },
{ .description = "Greek", .value = 0 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
- .name = "language",
- .description = "BIOS language",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 7,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "language",
+ .description = "BIOS language",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 7,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "English", .value = 7 },
{ .description = "German", .value = 6 },
{ .description = "French", .value = 5 },
@@ -777,10 +776,11 @@ const device_config_t vid_1512_config[] = {
{ .description = "Italian", .value = 1 },
{ .description = "Diagnostic mode", .value = 0 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t vid_1512_device = {
@@ -915,7 +915,7 @@ vid_init_1640(amstrad_t *ams)
cga_palette = 0;
cgapal_rebuild();
- vid->double_type = device_get_config_int("double_type");
+ vid->double_type = device_get_config_int("double_type");
vid->cga.double_type = device_get_config_int("double_type");
cga_interpolate_init();
@@ -941,7 +941,7 @@ vid_speed_changed_1640(void *priv)
}
const device_config_t vid_1640_config[] = {
- // clang-format off
+ // clang-format off
{
.name = "double_type",
.description = "Line doubling type",
@@ -960,14 +960,14 @@ const device_config_t vid_1640_config[] = {
.bios = { { 0 } }
},
{
- .name = "language",
- .description = "BIOS language",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 7,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "language",
+ .description = "BIOS language",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 7,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "English", .value = 7 },
{ .description = "German", .value = 6 },
{ .description = "French", .value = 5 },
@@ -977,10 +977,11 @@ const device_config_t vid_1640_config[] = {
{ .description = "Italian", .value = 1 },
{ .description = "Diagnostic mode", .value = 0 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t vid_1640_device = {
@@ -1357,8 +1358,8 @@ lcd_draw_char_40(amsvid_t *vid, uint32_t *buffer, uint8_t chr,
static void
lcdm_poll(amsvid_t *vid)
{
- mda_t *mda = &vid->mda;
- uint16_t cursoraddr = (mda->crtc[MDA_CRTC_CURSOR_ADDR_LOW] | (mda->crtc[MDA_CRTC_CURSOR_ADDR_HIGH] << 8)) & 0x3fff;
+ mda_t *mda = &vid->mda;
+ uint16_t cursoraddr = (mda->crtc[MDA_CRTC_CURSOR_ADDR_LOW] | (mda->crtc[MDA_CRTC_CURSOR_ADDR_HIGH] << 8)) & 0x3fff;
int drawcursor;
int x;
int oldvc;
@@ -1371,7 +1372,7 @@ lcdm_poll(amsvid_t *vid)
timer_advance_u64(&vid->timer, mda->dispofftime);
mda->status |= 1;
mda->linepos = 1;
- scanline_old = mda->scanline;
+ scanline_old = mda->scanline;
if ((mda->crtc[MDA_CRTC_INTERLACE] & 3) == 3)
mda->scanline = (mda->scanline << 1) & 7;
if (mda->dispon) {
@@ -1379,9 +1380,9 @@ lcdm_poll(amsvid_t *vid)
mda->firstline = mda->displine;
mda->lastline = mda->displine;
for (x = 0; x < mda->crtc[MDA_CRTC_HDISP]; x++) {
- chr = mda->vram[(mda->memaddr<< 1) & 0xfff];
- attr = mda->vram[((mda->memaddr<< 1) + 1) & 0xfff];
- drawcursor = ((mda->memaddr== cursoraddr) && mda->cursorvisible && mda->cursoron);
+ chr = mda->vram[(mda->memaddr << 1) & 0xfff];
+ attr = mda->vram[((mda->memaddr << 1) + 1) & 0xfff];
+ drawcursor = ((mda->memaddr == cursoraddr) && mda->cursorvisible && mda->cursoron);
blink = ((mda->blink & 16) && (mda->mode & MDA_MODE_BLINK) && (attr & 0x80) && !drawcursor);
lcd_draw_char_80(vid, &(buffer32->line[mda->displine])[x * 8], chr, attr, drawcursor, blink, mda->scanline, 0, mda->mode);
@@ -1405,22 +1406,22 @@ lcdm_poll(amsvid_t *vid)
mda->status &= ~8;
}
if (mda->scanline == (mda->crtc[MDA_CRTC_CURSOR_END] & 31) || ((mda->crtc[MDA_CRTC_INTERLACE] & 3) == 3 && mda->scanline == ((mda->crtc[MDA_CRTC_CURSOR_END] & 31) >> 1))) {
- mda->cursorvisible = 0;
+ mda->cursorvisible = 0;
}
if (mda->vadj) {
mda->scanline++;
mda->scanline &= 31;
- mda->memaddr= mda->memaddr_backup;
+ mda->memaddr = mda->memaddr_backup;
mda->vadj--;
if (!mda->vadj) {
- mda->dispon = 1;
- mda->memaddr= mda->memaddr_backup = (mda->crtc[MDA_CRTC_START_ADDR_LOW] | (mda->crtc[MDA_CRTC_START_ADDR_HIGH] << 8)) & 0x3fff;
- mda->scanline = 0;
+ mda->dispon = 1;
+ mda->memaddr = mda->memaddr_backup = (mda->crtc[MDA_CRTC_START_ADDR_LOW] | (mda->crtc[MDA_CRTC_START_ADDR_HIGH] << 8)) & 0x3fff;
+ mda->scanline = 0;
}
} else if (mda->scanline == mda->crtc[MDA_CRTC_MAX_SCANLINE_ADDR] || ((mda->crtc[MDA_CRTC_INTERLACE] & 3) == 3 && mda->scanline == (mda->crtc[MDA_CRTC_MAX_SCANLINE_ADDR] >> 1))) {
mda->memaddr_backup = mda->memaddr;
- mda->scanline = 0;
- oldvc = mda->vc;
+ mda->scanline = 0;
+ oldvc = mda->vc;
mda->vc++;
mda->vc &= 127;
if (mda->vc == mda->crtc[MDA_CRTC_VDISP])
@@ -1431,7 +1432,7 @@ lcdm_poll(amsvid_t *vid)
if (!mda->vadj)
mda->dispon = 1;
if (!mda->vadj)
- mda->memaddr= mda->memaddr_backup = (mda->crtc[MDA_CRTC_START_ADDR_LOW] | (mda->crtc[MDA_CRTC_START_ADDR_HIGH] << 8)) & 0x3fff;
+ mda->memaddr = mda->memaddr_backup = (mda->crtc[MDA_CRTC_START_ADDR_LOW] | (mda->crtc[MDA_CRTC_START_ADDR_HIGH] << 8)) & 0x3fff;
if ((mda->crtc[MDA_CRTC_CURSOR_START] & 0x60) == 0x20)
mda->cursoron = 0;
else
@@ -1469,7 +1470,7 @@ lcdm_poll(amsvid_t *vid)
} else {
mda->scanline++;
mda->scanline &= 31;
- mda->memaddr= mda->memaddr_backup;
+ mda->memaddr = mda->memaddr_backup;
}
if (mda->scanline == (mda->crtc[MDA_CRTC_CURSOR_START] & 31) || ((mda->crtc[MDA_CRTC_INTERLACE] & 3) == 3 && mda->scanline == ((mda->crtc[MDA_CRTC_CURSOR_START] & 31) >> 1)))
mda->cursorvisible = 1;
@@ -1498,7 +1499,7 @@ lcdc_poll(amsvid_t *vid)
timer_advance_u64(&vid->timer, cga->dispofftime);
cga->cgastat |= 1;
cga->linepos = 1;
- scanline_old = cga->scanline;
+ scanline_old = cga->scanline;
if ((cga->crtc[CGA_CRTC_INTERLACE] & 3) == 3)
cga->scanline = ((cga->scanline << 1) + cga->oddeven) & 7;
if (cga->cgadispon) {
@@ -1568,7 +1569,7 @@ lcdc_poll(amsvid_t *vid)
cga->cgastat &= ~8;
}
if (cga->scanline == (cga->crtc[CGA_CRTC_CURSOR_END] & 31) || ((cga->crtc[CGA_CRTC_INTERLACE] & 3) == 3 && cga->scanline == ((cga->crtc[CGA_CRTC_CURSOR_END] & 31) >> 1))) {
- cga->cursorvisible = 0;
+ cga->cursorvisible = 0;
}
if ((cga->crtc[CGA_CRTC_INTERLACE] & 3) == 3 && cga->scanline == (cga->crtc[CGA_CRTC_MAX_SCANLINE_ADDR] >> 1))
cga->memaddr_backup = cga->memaddr;
@@ -1580,12 +1581,12 @@ lcdc_poll(amsvid_t *vid)
if (!cga->vadj) {
cga->cgadispon = 1;
cga->memaddr = cga->memaddr_backup = (cga->crtc[CGA_CRTC_START_ADDR_LOW] | (cga->crtc[CGA_CRTC_START_ADDR_HIGH] << 8)) & 0x3fff;
- cga->scanline = 0;
+ cga->scanline = 0;
}
} else if (cga->scanline == cga->crtc[CGA_CRTC_MAX_SCANLINE_ADDR]) {
cga->memaddr_backup = cga->memaddr;
- cga->scanline = 0;
- oldvc = cga->vc;
+ cga->scanline = 0;
+ oldvc = cga->vc;
cga->vc++;
cga->vc &= 127;
@@ -1828,68 +1829,71 @@ vid_close_200(void *priv)
}
const device_config_t vid_200_config[] = {
- /* TODO: Should have options here for:
- *
- * > Display port (TTL or RF)
- */
- // clang-format off
+ /* TODO: Should have options here for:
+ *
+ * > Display port (TTL or RF)
+ */
+ // clang-format off
{
- .name = "video_emulation",
- .description = "Display type",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = PC200_CGA,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "video_emulation",
+ .description = "Display type",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = PC200_CGA,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "CGA monitor", .value = PC200_CGA },
{ .description = "MDA monitor", .value = PC200_MDA },
{ .description = "Television", .value = PC200_TV },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
- .name = "display_type",
- .description = "Monitor type",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "display_type",
+ .description = "Monitor type",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "RGB", .value = 0 },
{ .description = "RGB (no brown)", .value = 4 },
{ .description = "Green Monochrome", .value = 1 },
{ .description = "Amber Monochrome", .value = 2 },
{ .description = "White Monochrome", .value = 3 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
- .name = "codepage",
- .description = "Hardware font",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 3,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "codepage",
+ .description = "Hardware font",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 3,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "US English", .value = 3 },
{ .description = "Portugese", .value = 2 },
{ .description = "Norwegian", .value = 1 },
{ .description = "Greek", .value = 0 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
- .name = "language",
- .description = "BIOS language",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 7,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "language",
+ .description = "BIOS language",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 7,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "English", .value = 7 },
{ .description = "German", .value = 6 },
{ .description = "French", .value = 5 },
@@ -1899,10 +1903,11 @@ const device_config_t vid_200_config[] = {
{ .description = "Italian", .value = 1 },
{ .description = "Diagnostic mode", .value = 0 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t vid_200_device = {
@@ -1920,36 +1925,37 @@ const device_t vid_200_device = {
};
const device_config_t vid_ppc512_config[] = {
- /* TODO: Should have options here for:
- *
- * > Display port (TTL or RF)
- */
- // clang-format off
+ /* TODO: Should have options here for:
+ *
+ * > Display port (TTL or RF)
+ */
+ // clang-format off
{
- .name = "video_emulation",
- .description = "Display type",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = PC200_LCDC,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "video_emulation",
+ .description = "Display type",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = PC200_LCDC,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "CGA monitor", .value = PC200_CGA },
{ .description = "MDA monitor", .value = PC200_MDA },
{ .description = "LCD (CGA mode)", .value = PC200_LCDC },
{ .description = "LCD (MDA mode)", .value = PC200_LCDM },
{ .description = "" }
},
+ .bios = { { 0 } }
},
{
- .name = "display_type",
- .description = "Monitor type",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "display_type",
+ .description = "Monitor type",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "RGB", .value = 0 },
{ .description = "RGB (no brown)", .value = 4 },
{ .description = "Green Monochrome", .value = 1 },
@@ -1957,32 +1963,34 @@ const device_config_t vid_ppc512_config[] = {
{ .description = "White Monochrome", .value = 3 },
{ .description = "" }
},
+ .bios = { { 0 } }
},
{
- .name = "codepage",
- .description = "Hardware font",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 3,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "codepage",
+ .description = "Hardware font",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 3,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "US English", .value = 3 },
{ .description = "Portugese", .value = 2 },
{ .description = "Norwegian", .value = 1 },
{ .description = "Greek", .value = 0 },
{ .description = "" }
},
+ .bios = { { 0 } }
},
{
- .name = "language",
- .description = "BIOS language",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 7,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "language",
+ .description = "BIOS language",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 7,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "English", .value = 7 },
{ .description = "German", .value = 6 },
{ .description = "French", .value = 5 },
@@ -1992,17 +2000,22 @@ const device_config_t vid_ppc512_config[] = {
{ .description = "Italian", .value = 1 },
{ .description = "Diagnostic mode", .value = 0 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
- .name = "invert",
- .description = "Invert LCD colors",
- .type = CONFIG_BINARY,
- .default_string = "",
- .default_int = 0
+ .name = "invert",
+ .description = "Invert LCD colors",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t vid_ppc512_device = {
@@ -2020,23 +2033,24 @@ const device_t vid_ppc512_device = {
};
const device_config_t vid_pc2086_config[] = {
- // clang-format off
+ // clang-format off
{
- .name = "language",
- .description = "BIOS language",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 7,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "language",
+ .description = "BIOS language",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 7,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "English", .value = 7 },
{ .description = "Diagnostic mode", .value = 0 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t vid_pc2086_device = {
@@ -2054,23 +2068,24 @@ const device_t vid_pc2086_device = {
};
const device_config_t vid_pc3086_config[] = {
- // clang-format off
+ // clang-format off
{
- .name = "language",
- .description = "BIOS language",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = 7,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "language",
+ .description = "BIOS language",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 7,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "English", .value = 7 },
{ .description = "Diagnostic mode", .value = 3 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t vid_pc3086_device = {
@@ -2119,7 +2134,7 @@ static int
ms_poll(void *priv)
{
amstrad_t *ams = (amstrad_t *) priv;
- int b = mouse_get_buttons_ex();
+ int b = mouse_get_buttons_ex();
if ((b & 1) && !(ams->oldb & 1))
keyboard_send(0x7e);
@@ -2431,7 +2446,7 @@ ams_read(uint16_t port, void *priv)
}
static const scancode scancode_pc200[512] = {
- // clang-format off
+ // clang-format off
{ .mk = { 0 }, .brk = { 0 } }, /* 000 */
{ .mk = { 0x01, 0 }, .brk = { 0x81, 0 } }, /* 001 */
{ .mk = { 0x02, 0 }, .brk = { 0x82, 0 } }, /* 002 */
@@ -2944,7 +2959,7 @@ static const scancode scancode_pc200[512] = {
{ .mk = { 0 }, .brk = { 0 } }, /* 1fd */
{ .mk = {0xe0, 0xfe, 0 }, .brk = { 0 } }, /* 1fe */
{ .mk = {0xe0, 0xff, 0 }, .brk = { 0 } } /* 1ff */
- // clang-format on
+ // clang-format on
};
static void
@@ -2952,7 +2967,7 @@ machine_amstrad_init(const machine_t *model, int type)
{
amstrad_t *ams;
- ams = (amstrad_t *) calloc(1, sizeof(amstrad_t));
+ ams = (amstrad_t *) calloc(1, sizeof(amstrad_t));
ams->type = type;
amstrad_latch = 0x80000000;
diff --git a/src/machine/m_at_286.c b/src/machine/m_at_286.c
index b8e1f746a..499f0653a 100644
--- a/src/machine/m_at_286.c
+++ b/src/machine/m_at_286.c
@@ -54,8 +54,9 @@ static const device_config_t ibmat_config[] = {
.type = CONFIG_BIOS,
.default_string = "ibm5170_111585",
.default_int = 0,
- .file_filter = "",
+ .file_filter = NULL,
.spinner = { 0 },
+ .selection = { { 0 } },
.bios = {
{
.name = "62X082x (11/15/85)",
@@ -108,10 +109,15 @@ static const device_config_t ibmat_config[] = {
},
},
{
- .name = "enable_5161",
- .description = "IBM 5161 Expansion Unit",
- .type = CONFIG_BINARY,
- .default_int = 0
+ .name = "enable_5161",
+ .description = "IBM 5161 Expansion Unit",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -156,10 +162,10 @@ machine_at_ibmat_init(const machine_t *model)
return ret;
device_context(model->device);
- enable_5161 = machine_get_config_int("enable_5161");
- fn[0] = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
- fn[1] = device_get_bios_file(model->device, device_get_config_bios("bios"), 1);
- ret = bios_load_interleaved(fn[0], fn[1], 0x000f0000, 65536, 0);
+ enable_5161 = machine_get_config_int("enable_5161");
+ fn[0] = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ fn[1] = device_get_bios_file(model->device, device_get_config_bios("bios"), 1);
+ ret = bios_load_interleaved(fn[0], fn[1], 0x000f0000, 65536, 0);
device_context_restore();
if (bios_only || !ret)
@@ -176,10 +182,15 @@ machine_at_ibmat_init(const machine_t *model)
static const device_config_t ibmxt286_config[] = {
// clang-format off
{
- .name = "enable_5161",
- .description = "IBM 5161 Expansion Unit",
- .type = CONFIG_BINARY,
- .default_int = 0
+ .name = "enable_5161",
+ .description = "IBM 5161 Expansion Unit",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -206,7 +217,7 @@ machine_at_ibmxt286_init(const machine_t *model)
uint8_t enable_5161;
device_context(model->device);
- enable_5161 = machine_get_config_int("enable_5161");
+ enable_5161 = machine_get_config_int("enable_5161");
device_context_restore();
ret = bios_load_interleaved("roms/machines/ibmxt286/bios_5162_21apr86_u34_78x7460_27256.bin",
@@ -279,8 +290,7 @@ machine_at_portableiii_init(const machine_t *model)
int ret;
ret = bios_load_linearr("roms/machines/portableiii/K Combined.bin",
- 0x000f8000, 65536, 0);
-
+ 0x000f8000, 65536, 0);
if (bios_only || !ret)
return ret;
@@ -292,7 +302,7 @@ machine_at_portableiii_init(const machine_t *model)
if (hdc_current[0] == HDC_INTERNAL)
device_add(&ide_isa_device);
-
+
if (gfxcard[0] == VID_INTERNAL)
device_add(&compaq_plasma_device);
@@ -318,8 +328,8 @@ machine_at_grid1520_init(const machine_t *model)
mem_remap_top(384);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
- // for now just select CGA with amber monitor
- //device_add(&cga_device);
+ // for now just select CGA with amber monitor
+ // device_add(&cga_device);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -329,13 +339,88 @@ machine_at_grid1520_init(const machine_t *model)
return ret;
}
+static const device_config_t pc900_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "pc900",
+ .default_int = 0,
+ .file_filter = "",
+ .spinner = { 0 },
+ .bios = {
+ {
+ .name = "BIOS V2.07A",
+ .internal_name = "pc900",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 32768,
+ .files = { "roms/machines/pc900/mpf_pc900_v207a.bin", "" }
+ },
+ {
+ .name = "BIOS V2.07A.XC",
+ .internal_name = "pc900_v207a_xc",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 32768,
+ .files = { "roms/machines/pc900/cbm_pc40_v207a_xc.bin", "" }
+ },
+ {
+ .name = "BIOS V2.07B",
+ .internal_name = "pc900_v207b",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 32768,
+ .files = { "roms/machines/pc900/mpf_pc900_v207b.bin", "" }
+ },
+ {
+ .name = "BIOS V3.01B",
+ .internal_name = "pc900_v301b",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 32768,
+ .files = { "roms/machines/pc900/cbm_pc40_v301b.bin", "" }
+ },
+ { .files_no = 0 }
+ },
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t pc900_device = {
+ .name = "Multitech PC-900",
+ .internal_name = "pc900",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = pc900_config
+};
+
int
machine_at_pc900_init(const machine_t *model)
{
- int ret = 0;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/pc900/mpf_pc900_v207a.bin",
- 0x000f8000, 32768, 0);
+ /* No ROMs available. */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000f8000, 32768, 0);
+ device_context_restore();
if (bios_only || !ret)
return ret;
@@ -992,12 +1077,12 @@ machine_at_drsm35286_init(const machine_t *model)
if (bios_only || !ret)
return ret;
-
+
device_add(&ide_isa_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C651 | FDC37C6XX_IDE_PRI));
-
+
machine_at_scat_init(model, 1, 0);
-
+
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -1018,7 +1103,7 @@ machine_at_deskmaster286_init(const machine_t *model)
machine_at_scat_init(model, 0, 1);
device_add(&f82c710_device);
-
+
device_add(&ide_isa_device);
return ret;
diff --git a/src/machine/m_at_386dx.c b/src/machine/m_at_386dx.c
index 7fb045d58..3a90f801d 100644
--- a/src/machine/m_at_386dx.c
+++ b/src/machine/m_at_386dx.c
@@ -60,18 +60,33 @@ machine_compaq_p1_handler(void)
static const device_config_t deskpro386_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "deskpro386",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "September 1986", .internal_name = "deskpro386_09_1986", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/deskpro386/1986-09-04-HI.json.bin", "" } },
- { .name = "May 1988", .internal_name = "deskpro386", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/deskpro386/1988-05-10.json.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "September 1986",
+ .internal_name = "deskpro386_09_1986",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/deskpro386/1986-09-04-HI.json.bin", "" }
+ },
+ {
+ .name = "May 1988",
+ .internal_name = "deskpro386",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/deskpro386/1988-05-10.json.bin", "" }
+ },
{ .files_no = 0 }
},
},
@@ -96,15 +111,15 @@ const device_t deskpro386_device = {
int
machine_at_deskpro386_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linearr(fn, 0x000f8000, 65536, 0);
if (fdc_current[0] == FDC_INTERNAL)
@@ -127,7 +142,7 @@ machine_at_portableiii386_init(const machine_t *model)
int ret;
ret = bios_load_linearr("roms/machines/portableiii/P.2 Combined.bin",
- 0x000f0000, 131072, 0);
+ 0x000f0000, 131072, 0);
if (bios_only || !ret)
return ret;
@@ -317,17 +332,71 @@ machine_at_ecs386v_init(const machine_t *model)
}
/* OPTi 391 */
+static const device_config_t dataexpert386wb_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "dataexpert386wb",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 050591",
+ .internal_name = "dataexpert386wb_050591",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/dataexpert386wb/386-OPTI-386WB-10.BIN", "" }
+ },
+ {
+ .name = "MR BIOS V1.26",
+ .internal_name = "dataexpert386wb",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/dataexpert386wb/st0386-wb-ver2-0-618f078c738cb397184464.bin", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t dataexpert386wb_device = {
+ .name = "DataExpert 386C",
+ .internal_name = "dataexpert386wb_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = dataexpert386wb_config
+};
+
int
machine_at_dataexpert386wb_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/dataexpert386wb/st0386-wb-ver2-0-618f078c738cb397184464.bin",
- 0x000f0000, 65536, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000f0000, 65536, 0);
+
machine_at_common_init(model);
device_add(&opti391_device);
diff --git a/src/machine/m_at_386dx_486.c b/src/machine/m_at_386dx_486.c
index 2942180bb..9ac53805a 100644
--- a/src/machine/m_at_386dx_486.c
+++ b/src/machine/m_at_386dx_486.c
@@ -103,18 +103,33 @@ machine_at_c747_init(const machine_t *model)
static const device_config_t opti495_ami_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "ami495",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "AMI 060692", .internal_name = "ami495", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/ami495/opt495sx.ami", "" } },
- { .name = "MR BIOS V1.60", .internal_name = "mr495", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/ami495/opt495sx.mr", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMI 060692",
+ .internal_name = "ami495",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/ami495/opt495sx.ami", "" }
+ },
+ {
+ .name = "MR BIOS V1.60",
+ .internal_name = "mr495",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/ami495/opt495sx.mr", "" }
+ },
{ .files_no = 0 }
},
},
@@ -139,15 +154,15 @@ const device_t opti495_ami_device = {
int
machine_at_opti495_ami_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000f0000, 65536, 0);
machine_at_common_init(model);
diff --git a/src/machine/m_at_386sx.c b/src/machine/m_at_386sx.c
index 0dc9142db..ae9870c77 100644
--- a/src/machine/m_at_386sx.c
+++ b/src/machine/m_at_386sx.c
@@ -98,20 +98,35 @@ machine_at_quadt386sx_init(const machine_t *model)
static const device_config_t pbl300sx_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "pbl300sx",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Phoenix ROM BIOS PLUS 1.10 - Revision 19910723091302", .internal_name = "pbl300sx_1991", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/pbl300sx/V1.10_1113_910723.bin", "" } },
- { .name = "Phoenix ROM BIOS PLUS 1.10 - Revision 19920910", .internal_name = "pbl300sx", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/pbl300sx/pb_l300sx_1992.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Phoenix ROM BIOS PLUS 1.10 - Revision 19910723091302",
+ .internal_name = "pbl300sx_1991",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/pbl300sx/V1.10_1113_910723.bin", "" }
+ },
+ {
+ .name = "Phoenix ROM BIOS PLUS 1.10 - Revision 19920910",
+ .internal_name = "pbl300sx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/pbl300sx/pb_l300sx_1992.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -134,15 +149,15 @@ const device_t pbl300sx_device = {
int
machine_at_pbl300sx_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -234,20 +249,35 @@ machine_at_flytech386_init(const machine_t *model)
static const device_config_t c325ax_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "325ax",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
.bios = {
- { .name = "AMIBIOS 070791", .internal_name = "325ax", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/325ax/M27C512.BIN", "" } },
- { .name = "MR BIOS V1.41", .internal_name = "mr1217", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/325ax/mrbios.BIN", "" } },
+ {
+ .name = "AMIBIOS 070791",
+ .internal_name = "325ax",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/325ax/M27C512.BIN", "" }
+ },
+ {
+ .name = "MR BIOS V1.41",
+ .internal_name = "mr1217",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/325ax/mrbios.BIN", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -270,15 +300,15 @@ const device_t c325ax_device = {
int
machine_at_325ax_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000f0000, 65536, 0);
machine_at_common_init(model);
@@ -309,9 +339,9 @@ machine_at_acer100t_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(&oti077_acer100t_device);
-
+
device_add_params(&pc87310_device, (void *) (PC87310_ALI));
-
+
return ret;
}
@@ -575,20 +605,34 @@ machine_at_dataexpert386sx_init(const machine_t *model)
static const device_config_t dells333sl_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "dells333sl",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Phoenix ROM BIOS PLUS 1.10 - Revision J01 (Jostens Learning Corporation OEM)", .internal_name = "dells333sl_j01", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/dells333sl/DELL386.BIN", "" } },
- { .name = "Phoenix ROM BIOS PLUS 1.10 - Revision A02", .internal_name = "dells333sl", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/dells333sl/Dell_386SX_30807_UBIOS_B400_VLSI_VL82C311_Cirrus_Logic_GD5420.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .bios = {
+ {
+ .name = "Phoenix ROM BIOS PLUS 1.10 - Revision J01 (Jostens Learning Corporation OEM)",
+ .internal_name = "dells333sl_j01",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/dells333sl/DELL386.BIN", "" }
+ },
+ {
+ .name = "Phoenix ROM BIOS PLUS 1.10 - Revision A02",
+ .internal_name = "dells333sl",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/dells333sl/Dell_386SX_30807_UBIOS_B400_VLSI_VL82C311_Cirrus_Logic_GD5420.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -611,15 +655,15 @@ const device_t dells333sl_device = {
int
machine_at_dells333sl_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 262144, 0);
memcpy(rom, &(rom[0x00020000]), 131072);
mem_mapping_set_addr(&bios_mapping, 0x0c0000, 0x40000);
diff --git a/src/machine/m_at_486_misc.c b/src/machine/m_at_486_misc.c
index 9eb8f8d4c..6c492ada5 100644
--- a/src/machine/m_at_486_misc.c
+++ b/src/machine/m_at_486_misc.c
@@ -66,6 +66,7 @@ machine_at_itoxstar_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x0C, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x1F, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add_params(&w83977_device, (void *) (W83977F | W83977_AMI));
device_add(&stpc_client_device);
device_add(&sst_flash_29ee020_device);
@@ -97,6 +98,7 @@ machine_at_arb1423c_init(const machine_t *model)
pci_register_slot(0x1F, PCI_CARD_NORMAL, 1, 0, 0, 0);
pci_register_slot(0x1E, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x1D, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
device_add_params(&w83977_device, (void *) (W83977F | W83977_AMI));
device_add(&stpc_consumer2_device);
device_add(&winbond_flash_w29c020_device);
@@ -123,6 +125,7 @@ machine_at_arb1479_init(const machine_t *model)
pci_register_slot(0x1F, PCI_CARD_NORMAL, 1, 0, 0, 0);
pci_register_slot(0x1E, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x1D, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
device_add_params(&w83977_device, (void *) (W83977F | W83977_AMI));
device_add(&stpc_consumer2_device);
device_add(&winbond_flash_w29c020_device);
@@ -146,6 +149,7 @@ machine_at_iach488_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x0C, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(&w83977_device, (void *) (W83977F | W83977_AMI));
device_add(&stpc_consumer2_device);
device_add(&sst_flash_29ee020_device);
@@ -173,6 +177,7 @@ machine_at_pcm9340_init(const machine_t *model)
pci_register_slot(0x1D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x1E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x1F, PCI_CARD_NORMAL, 2, 3, 4, 1);
+
device_add_inst_params(&w83977_device, 1, (void *) (W83977F | W83977_AMI));
device_add_inst_params(&w83977_device, 2, (void *) W83977F);
device_add(&stpc_elite_device);
@@ -201,6 +206,7 @@ machine_at_pcm5330_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_SOUTHBRIDGE_IDE, 0, 0, 0, 0);
pci_register_slot(0x0E, PCI_CARD_SOUTHBRIDGE_USB, 1, 2, 3, 4);
pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&stpc_serial_device);
device_add_params(&w83977_device, (void *) (W83977F | W83977_370 | W83977_AMI));
device_add(&stpc_atlas_device);
diff --git a/src/machine/m_at_common.c b/src/machine/m_at_common.c
index 9526c7749..383c8dba5 100644
--- a/src/machine/m_at_common.c
+++ b/src/machine/m_at_common.c
@@ -7,7 +7,7 @@
* This file is part of the 86Box distribution.
*
* Implementation of the common initialization functions for
- * the PC/AT and copatible machines.
+ * the PC/AT and copatible machines.
*
* Authors: Miran Grca,
* Sarah Walker,
@@ -135,5 +135,3 @@ machine_at_ps2_ide_init(const machine_t *model)
device_add(&ide_isa_device);
}
-
-
diff --git a/src/machine/m_at_misc.c b/src/machine/m_at_misc.c
index 268cf7f7d..eb93688a7 100644
--- a/src/machine/m_at_misc.c
+++ b/src/machine/m_at_misc.c
@@ -53,15 +53,16 @@ machine_at_vpc2007_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 4);
- pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0A, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0E, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0F, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0E, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0F, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add(&i440bx_no_agp_device);
+
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977F | W83977_370 | W83977_AMI | W83977_NO_NVR));
device_add(&intel_flash_bxt_device);
diff --git a/src/machine/m_at_slot1.c b/src/machine/m_at_slot1.c
index 22d6baac8..eb5c0e90b 100644
--- a/src/machine/m_at_slot1.c
+++ b/src/machine/m_at_slot1.c
@@ -53,15 +53,16 @@ machine_at_m729_init(const machine_t *model)
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
- pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
- pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE_IDE, 1, 2, 3, 4);
pci_register_slot(0x03, PCI_CARD_SOUTHBRIDGE_PMU, 1, 2, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE_USB, 1, 2, 3, 4);
- pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x10, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x10, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
device_add(&ali1621_device);
device_add(&ali1543c_device); /* +0 */
device_add(&winbond_flash_w29c010_device);
@@ -92,6 +93,7 @@ machine_at_acerv62x_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_APM));
@@ -138,6 +140,7 @@ machine_at_kn97_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -154,18 +157,33 @@ machine_at_kn97_init(const machine_t *model)
static const device_config_t lx6_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "lx6",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Award Modular BIOS v4.51PG - Revision LY", .internal_name = "lx6", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/lx6/LX6C_LY.BIN", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision PZ Beta", .internal_name = "lx6_beta", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/lx6/LX6C_PZ.B00", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision LY",
+ .internal_name = "lx6",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/lx6/LX6C_LY.bin", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision PZ (Beta)",
+ .internal_name = "lx6_pz",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/lx6/LX6C_PZ.B00", "" }
+ },
{ .files_no = 0 }
},
},
@@ -190,15 +208,15 @@ const device_t lx6_device = {
int
machine_at_lx6_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -212,6 +230,7 @@ machine_at_lx6_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440lx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
@@ -277,6 +296,7 @@ machine_at_spitfire_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440lx_device);
device_add(&piix4e_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL | FDC37C93X_NO_NVR));
@@ -312,6 +332,7 @@ machine_at_ma30d_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 3, 0, 0, 0);
+
device_add(&i440lx_device);
device_add(&piix4e_device);
device_add(&nec_mate_unk_device);
@@ -339,9 +360,10 @@ machine_at_p6i440e2_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0A, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440ex_device);
device_add(&piix4_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
@@ -379,6 +401,7 @@ machine_at_bf6_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 3, 1, 2);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -391,20 +414,35 @@ machine_at_bf6_init(const machine_t *model)
static const device_config_t bx6_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "bx6",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Award Modular BIOS v4.51PG - Revision EG", .internal_name = "bx6_eg", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/bx6/BX6_EG.BIN", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision QS", .internal_name = "bx6", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/bx6/BX6_QS.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision EG",
+ .internal_name = "bx6_eg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/bx6/BX6_EG.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision QS",
+ .internal_name = "bx6",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/bx6/BX6_QS.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -427,15 +465,15 @@ const device_t bx6_device = {
int
machine_at_bx6_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -449,6 +487,7 @@ machine_at_bx6_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
@@ -481,6 +520,7 @@ machine_at_p2bls_init(const machine_t *model)
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -519,6 +559,7 @@ machine_at_p3bf_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -531,17 +572,72 @@ machine_at_p3bf_init(const machine_t *model)
return ret;
}
+static const device_config_t ax6bc_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "ax6bc",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PGM - Revision R1.10",
+ .internal_name = "ax6bc_451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ax6bc/ax6bc110.bin", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.60PGM - Revision R2.59",
+ .internal_name = "ax6bc",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ax6bc/AX6BC_R2.59.bin", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t ax6bc_device = {
+ .name = "AOpen AX6BC",
+ .internal_name = "ax6bc_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = ax6bc_config
+};
+
int
machine_at_ax6bc_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/ax6bc/AX6BC_R2.59.bin",
- 0x000c0000, 262144, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
@@ -553,6 +649,7 @@ machine_at_ax6bc_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
@@ -563,17 +660,72 @@ machine_at_ax6bc_init(const machine_t *model)
return ret;
}
+static const device_config_t ga686_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "686bx",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 5/11/1998 (Amptron PII-3100)",
+ .internal_name = "pii3100",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/686bx/31nologo.bin", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision F2a",
+ .internal_name = "686bx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/686bx/6BX.F2a", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t ga686_device = {
+ .name = "Gigabyte GA-686BX",
+ .internal_name = "ga686_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = ga686_config
+};
+
int
-machine_at_686bx_init(const machine_t *model)
+machine_at_ga686_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/686bx/6BX.F2a",
- 0x000c0000, 262144, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
@@ -584,6 +736,7 @@ machine_at_686bx_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
@@ -602,24 +755,62 @@ machine_at_686bx_init(const machine_t *model)
static const device_config_t ms6119_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "ms6119",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "AMIBIOS 6 (071595) - Revision 1.90 (Packard Bell Tacoma)", .internal_name = "tacoma", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 262144, .files = { "roms/machines/ms6119/A19P2190.ROM", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision 2.10", .internal_name = "ms6119", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 262144, .files = { "roms/machines/ms6119/w6119ims.2a0", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision 2.12 (Viglen Vig69M)", .internal_name = "vig69m", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 262144, .files = { "roms/machines/ms6119/vig69m.212", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision 3.30b1 (LG IBM Multinet i x7G)", .internal_name = "lgibmx7g", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 262144, .files = { "roms/machines/ms6119/ms6119.331", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 1.72 (Packard Bell Tacoma with logo)",
+ .internal_name = "tacoma_172",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ms6119/A19P2172.ROM", "" }
+ },
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 1.90 (Packard Bell Tacoma)",
+ .internal_name = "tacoma",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ms6119/A19P2190.ROM", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 2.10",
+ .internal_name = "ms6119",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ms6119/w6119ims.2a0", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 2.12 (Viglen Vig69M)",
+ .internal_name = "vig69m",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ms6119/vig69m.212", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 3.30b1 (LG IBM Multinet i x7G)",
+ .internal_name = "lgibmx7g",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ms6119/ms6119.331", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -642,15 +833,15 @@ const device_t ms6119_device = {
int
machine_at_ms6119_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
device_context_restore();
@@ -664,26 +855,172 @@ machine_at_ms6119_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
device_add(&winbond_flash_w29c020_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
-
+
return ret;
}
+static const device_config_t ms6147_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "ms6147",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 1.8",
+ .internal_name = "ms6147",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ms6147/W647MS18.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 2.1 (Packard Bell Tempest)",
+ .internal_name = "pbtempest",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ms6147/w647p221.pbc", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t ms6147_device = {
+ .name = "MSI MS-6147",
+ .internal_name = "ms6147_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = ms6147_config
+};
+
+int
+machine_at_ms6147_init(const machine_t *model)
+{
+ int ret = 0;
+ const char *fn;
+
+ /* No ROMs available */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
+ machine_at_common_init_ex(model, 2);
+
+ pci_init(PCI_CONFIG_TYPE_1);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x14, PCI_CARD_SOUND, 3, 4, 1, 2);
+ pci_register_slot(0x0E, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x10, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+ device_add(&i440bx_device);
+ device_add(&piix4e_device);
+ device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
+ device_add(&winbond_flash_w29c020_device);
+ spd_register(SPD_TYPE_SDRAM, 0x7, 256);
+
+ if (sound_card_current[0] == SOUND_INTERNAL) {
+ device_add(machine_get_snd_device(machine));
+ device_add(&ct1297_device);
+ }
+
+ return ret;
+}
+
+static const device_config_t p6sba_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "p6sba",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 6 (071595) - Revision R3.1",
+ .internal_name = "p6sba",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/p6sba/SBAB21.ROM", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.60PGA - Revision 05/07/1999 (Leadtek WinFast 8000BX)",
+ .internal_name = "8000bx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/p6sba/leadtek-8000bx-80000507.bin", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t p6sba_device = {
+ .name = "Supermicro P6SBA",
+ .internal_name = "p6sba_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = p6sba_config
+};
+
int
machine_at_p6sba_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/p6sba/SBAB21.ROM",
- 0x000c0000, 262144, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
@@ -696,31 +1033,84 @@ machine_at_p6sba_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 0, 0);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 3, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
- device_add(&w83781d_device); /* fans: CPU1, CPU2, Thermal Control; temperatures: unused, CPU1, CPU2? */
- hwm_values.fans[1] = 0; /* no CPU2 fan */
- hwm_values.temperatures[0] = 0; /* unused */
- hwm_values.temperatures[2] = 0; /* CPU2? */
- /* no CPU2 voltage */
+ device_add(&w83781d_device); /* fans: CPU1, CPU2, Thermal Control; temperatures: unused, CPU1, CPU2 */
+ hwm_values.voltages[1] = 3300; /* Seems to be the I/O voltage, reported as "CPUi/o" in the Leadtek BIOS and "CPU2" in the SuperMicro BIOS */
return ret;
}
+static const device_config_t s1846_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "s1846",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 2.00.04",
+ .internal_name = "s1846",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/s1846/bx46200f.rom", "" }
+ },
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 2.00.0x (Tulip Vision Line TP90)",
+ .internal_name = "tp90",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/s1846/1846TP90.BIN", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t s1846_device = {
+ .name = "Tyan Tsunami ATX",
+ .internal_name = "s1846_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = s1846_config
+};
+
int
machine_at_s1846_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/s1846/bx46200f.rom",
- 0x000c0000, 262144, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
@@ -733,6 +1123,7 @@ machine_at_s1846_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&pc87309_device, (void *) (PCX730X_AMI | PC87309_PC87309));
@@ -747,18 +1138,73 @@ machine_at_s1846_init(const machine_t *model)
return ret;
}
+static const device_config_t vei8_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "vei8",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v6.00PG - Revision QHW.10.01 (HP Sherwood-B)",
+ .internal_name = "vei8",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/vei8/QHW1001.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v6.00PG - Revision R804",
+ .internal_name = "6110zu",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/vei8/r804.bin", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t vei8_device = {
+ .name = "MiTAC/Trigon 6110Zu",
+ .internal_name = "vei8_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = vei8_config
+};
+
/* i440ZX */
int
machine_at_vei8_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/vei8/QHW1001.BIN",
- 0x000c0000, 262144, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
@@ -768,6 +1214,7 @@ machine_at_vei8_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440zx_device);
device_add(&piix4e_device);
device_add_params(&fdc37m60x_device, (void *) (FDC37XXX2 | FDC37XXXX_370));
@@ -792,6 +1239,7 @@ machine_at_ms6168_common_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440zx_device);
device_add(&piix4e_device);
@@ -862,6 +1310,7 @@ machine_at_atc6310bxii_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&slc90e66_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -893,6 +1342,7 @@ machine_at_ficka6130_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro_device);
device_add(&via_vt82c596a_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
@@ -926,6 +1376,7 @@ machine_at_p3v133_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro133_device);
device_add(&via_vt82c596b_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -963,6 +1414,7 @@ machine_at_p3v4x_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro133a_device);
device_add(&via_vt82c596b_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -995,6 +1447,7 @@ machine_at_gt694va_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro133a_device);
device_add(&via_vt82c596b_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -1038,6 +1491,7 @@ machine_at_p6f99_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x02, PCI_CARD_AGPBRIDGE, 0, 0, 0, 0);
+
device_add(&sis_5600_device);
device_add(&it8661f_device);
device_add(&winbond_flash_w29c020_device);
@@ -1070,6 +1524,7 @@ machine_at_m747_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x02, PCI_CARD_AGPBRIDGE, 0, 0, 0, 0);
+
device_add(&sis_5600_device);
device_add(&it8661f_device);
device_add(&winbond_flash_w29c020_device);
diff --git a/src/machine/m_at_slot1_socket370.c b/src/machine/m_at_slot1_socket370.c
index c52885965..a9006c5e7 100644
--- a/src/machine/m_at_slot1_socket370.c
+++ b/src/machine/m_at_slot1_socket370.c
@@ -39,28 +39,93 @@
#include <86box/snd_ac97.h>
/* i440BX */
+static const device_config_t prosignias31x_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "prosignias31x_bx",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 5.3",
+ .internal_name = "p6bxt",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/prosignias31x_bx/bxt53s.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 5.5 (Compaq ProSignia/Deskpro 440BX)",
+ .internal_name = "prosignias31x_bx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/prosignias31x_bx/p6bxt-ap-092600.bin", "" }
+ },
+ {
+ .name = "Phoenix - AwardBIOS v6.00PG - Unofficial Version 6.0 (by rushieda)",
+ .internal_name = "p6bxt_600pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/prosignias31x_bx/p6bxtap-600-67b8bfdce5de3470118202.bin", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t prosignias31x_device = {
+ .name = "ECS P6BXT-A+",
+ .internal_name = "prosignias31x_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = prosignias31x_config
+};
+
int
machine_at_prosignias31x_bx_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/prosignias31x_bx/p6bxt-ap-092600.bin",
- 0x000c0000, 262144, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0a, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0b, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x0c, PCI_CARD_NORMAL, 4, 1, 2, 3);
- pci_register_slot(0x0d, PCI_CARD_SOUND, 4, 3, 2, 1); /* assumed */
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0a, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0b, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x0c, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0d, PCI_CARD_SOUND, 4, 3, 2, 1); /* assumed */
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -101,6 +166,7 @@ machine_at_s1857_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -132,12 +198,13 @@ machine_at_p6bat_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 3, 4);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0a, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0b, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x0c, PCI_CARD_NORMAL, 4, 1, 2, 3);
- pci_register_slot(0x0d, PCI_CARD_NORMAL, 4, 3, 2, 1);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0a, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0b, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x0c, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0d, PCI_CARD_NORMAL, 4, 3, 2, 1);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro133_device);
device_add(&via_vt82c596b_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
diff --git a/src/machine/m_at_socket1.c b/src/machine/m_at_socket1.c
index ab0fadb1a..7d16e1381 100644
--- a/src/machine/m_at_socket1.c
+++ b/src/machine/m_at_socket1.c
@@ -341,7 +341,7 @@ machine_at_d824_init(const machine_t *model)
device_add(&ide_isa_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C651);
-
+
return ret;
}
@@ -364,14 +364,14 @@ machine_at_pcs44c_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(&oti077_pcs44c_device);
-
+
device_add(&vl82c113_device);
device_add(&ide_isa_device);
device_add_params(&pc873xx_device, (void *) (PCX73XX_IDE_PRI | PCX730X_398));
device_add(&intel_flash_bxt_device);
-
+
return ret;
}
@@ -401,8 +401,9 @@ machine_at_tuliptc38_init(const machine_t *model)
0x000c0000, 32768, 0);
device_add(machine_get_vid_device(machine));
- } else for (uint16_t i = 0; i < 32768; i++)
- rom[i] = mem_readb_phys(0x000c0000 + i);
+ } else
+ for (uint16_t i = 0; i < 32768; i++)
+ rom[i] = mem_readb_phys(0x000c0000 + i);
mem_mapping_set_addr(&bios_mapping, 0x0c0000, 0x40000);
mem_mapping_set_exec(&bios_mapping, rom);
diff --git a/src/machine/m_at_socket2.c b/src/machine/m_at_socket2.c
index 6c24070ba..b7cf93d92 100644
--- a/src/machine/m_at_socket2.c
+++ b/src/machine/m_at_socket2.c
@@ -228,16 +228,16 @@ machine_at_cobalt_init(const machine_t *model)
if (bios_only || !ret)
return ret;
-
+
machine_at_common_init(model);
device_add(&opti499_device);
device_add(&ide_opti611_vlb_device);
device_add(&ide_isa_sec_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
-
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
-
+
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -374,6 +374,6 @@ machine_at_martin_init(const machine_t *model)
device_add_params(&fdc37c6xx_device, (void *) (FDC37C651 | FDC37C6XX_IDE_PRI));
device_add(&intel_flash_bxt_device);
-
+
return ret;
}
diff --git a/src/machine/m_at_socket3.c b/src/machine/m_at_socket3.c
index d882dbd4d..008394505 100644
--- a/src/machine/m_at_socket3.c
+++ b/src/machine/m_at_socket3.c
@@ -170,22 +170,44 @@ machine_at_greenb_init(const machine_t *model)
static const device_config_t j403tg_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "403tg",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "AMI WinBIOS (121593)", .internal_name = "403tg", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/403tg/J403TGRevD.BIN", "" } },
- { .name = "Award Modular BIOS v4.50G", .internal_name = "403tg_award", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/403tg/403TG.BIN", "" } },
- { .name = "MR BIOS V2.02", .internal_name = "403tg_mr", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 65536, .files = { "roms/machines/403tg/MRBiosOPT895.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMI WinBIOS (121593)",
+ .internal_name = "403tg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/403tg/J403TGRevD.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.50G",
+ .internal_name = "403tg_award",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/403tg/403TG.BIN", "" }
+ },
+ {
+ .name = "MR BIOS V2.02",
+ .internal_name = "403tg_mr",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 65536,
+ .files = { "roms/machines/403tg/MRBiosOPT895.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -208,8 +230,8 @@ const device_t j403tg_device = {
int
machine_at_403tg_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
@@ -217,8 +239,8 @@ machine_at_403tg_init(const machine_t *model)
device_context(model->device);
int nvr_hack = !strcmp(device_get_config_bios("bios"), "403tg");
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
- ret = bios_load_linear(fn, 0x000f0000, 65536, 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000f0000, 65536, 0);
if (nvr_hack) {
machine_at_common_init_ex(model, 2);
@@ -292,6 +314,24 @@ machine_at_win471_init(const machine_t *model)
return ret;
}
+int
+machine_at_win471t_init(const machine_t *model)
+{
+ int ret;
+
+ ret = bios_load_linear("roms/machines/win471t/486-SiS_AB6680759.BIN",
+ 0x000f0000, 65536, 0);
+
+ if (bios_only || !ret)
+ return ret;
+
+ machine_at_sis_85c471_common_init(model);
+
+ device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
+
+ return ret;
+}
+
int
machine_at_vi15g_init(const machine_t *model)
{
diff --git a/src/machine/m_at_socket370.c b/src/machine/m_at_socket370.c
index 1094e59f5..f902a7fa9 100644
--- a/src/machine/m_at_socket370.c
+++ b/src/machine/m_at_socket370.c
@@ -60,6 +60,7 @@ machine_at_s370slm_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440lx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
@@ -95,6 +96,7 @@ machine_at_awo671r_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0D, PCI_CARD_VIDEO, 2, 3, 4, 1);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_inst_params(&w83977_device, 1, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -129,6 +131,7 @@ machine_at_ambx133_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -166,6 +169,7 @@ machine_at_cubx_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -201,6 +205,7 @@ machine_at_63a1_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4); /* Integrated Sound? */
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440zx_device);
device_add(&piix4e_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -233,6 +238,7 @@ machine_at_atc7020bxii_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0E, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&slc90e66_device);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -264,6 +270,7 @@ machine_at_m773_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&i440bx_device);
device_add(&slc90e66_device);
device_add(&it8671f_device);
@@ -303,6 +310,7 @@ machine_at_apas3_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro_device);
device_add(&via_vt82c586b_device);
device_add_params(&fdc37c669_device, (void *) 0);
@@ -335,6 +343,7 @@ machine_at_p6bap_init(const machine_t *model)
pci_register_slot(0x0c, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0d, PCI_CARD_NORMAL, 4, 3, 2, 1);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro133a_device); /* Rebranded as ET82C693A */
device_add(&via_vt82c596b_device); /* Rebranded as ET82C696B */
device_add_params(&w83977_device, (void *) (W83977EF | W83977_AMI | W83977_NO_NVR));
@@ -370,6 +379,7 @@ machine_at_6via90ap_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro133a_device);
device_add(&via_vt82c686b_device); /* fans: CPU1, CPU2; temperatures: CPU, System, unused */
device_add(ics9xxx_get(ICS9250_18));
@@ -410,6 +420,7 @@ machine_at_cuv4xls_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&via_apro133a_device);
device_add(&via_vt82c686b_device);
device_add(ics9xxx_get(ICS9250_18));
@@ -444,6 +455,7 @@ machine_at_7sbb_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x11, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x02, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
+
device_add(&sis_5600_device);
device_add(&it8661f_device);
device_add(&sst_flash_29ee020_device); /* assumed */
diff --git a/src/machine/m_at_socket3_pci.c b/src/machine/m_at_socket3_pci.c
index c122caa2d..a8b0f8eea 100644
--- a/src/machine/m_at_socket3_pci.c
+++ b/src/machine/m_at_socket3_pci.c
@@ -68,12 +68,11 @@ machine_at_ms4134_init(const machine_t *model)
pci_init(FLAG_MECHANISM_1 | FLAG_MECHANISM_2 | PCI_ALWAYS_EXPOSE_DEV0);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
-
- pci_register_slot(0x0B, PCI_CARD_SCSI, 4, 1, 2, 3);
- pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x10, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0B, PCI_CARD_SCSI, 4, 1, 2, 3);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x10, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add(&ali1435_device);
device_add(&sst_flash_29ee010_device);
@@ -102,11 +101,10 @@ machine_at_tg486gp_init(const machine_t *model)
pci_init(FLAG_MECHANISM_1 | FLAG_MECHANISM_2 | PCI_ALWAYS_EXPOSE_DEV0);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
-
- pci_register_slot(0x0F, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x10, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0F, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x10, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add(&ali1435_device);
device_add(&sst_flash_29ee010_device);
@@ -290,20 +288,34 @@ machine_at_ms4145_init(const machine_t *model)
static const device_config_t pc330_6573_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Language",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Language",
+ .type = CONFIG_BIOS,
.default_string = "pc330_6573",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "English (PC 330, type 6573)", .internal_name = "pc330_6573", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/pc330_6573/$IMAGES.USF", "" } },
- { .name = "Japanese (Aptiva 510/710/Vision)", .internal_name = "aptiva510", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/pc330_6573/aptiva510_$IMAGES.USF", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "English (PC 330, type 6573)",
+ .internal_name = "pc330_6573", .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/pc330_6573/$IMAGES.USF", "" }
+ },
+ {
+ .name = "Japanese (Aptiva 510/710/Vision)",
+ .internal_name = "aptiva510",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/pc330_6573/aptiva510_$IMAGES.USF", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -326,15 +338,15 @@ const device_t pc330_6573_device = {
int
machine_at_pc330_6573_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -371,22 +383,44 @@ machine_at_pc330_6573_init(const machine_t *model)
static const device_config_t pb450_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "pb450a",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "PhoenixBIOS 4.03 - Revision PCI 1.0A", .internal_name = "pb450a_pci10a" /*"pci10a"*/, .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/pb450/OPTI802.bin", "" } },
- { .name = "PhoenixBIOS 4.03 - Revision PNP 1.1A", .internal_name = "pb450a", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/pb450/PNP11A.bin", "" } },
- { .name = "PhoenixBIOS 4.05 - Revision P4HS20 (by Micro Firmware)", .internal_name = "pb450a_p4hs20", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/pb450/p4hs20.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS 4.03 - Revision PCI 1.0A",
+ .internal_name = "pb450a_pci10a" /*"pci10a"*/,
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/pb450/OPTI802.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.03 - Revision PNP 1.1A",
+ .internal_name = "pb450a",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/pb450/PNP11A.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.05 - Revision P4HS20 (by Micro Firmware)",
+ .internal_name = "pb450a_p4hs20",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/pb450/p4hs20.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -409,18 +443,18 @@ const device_t pb450_device = {
int
machine_at_pb450_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
-
+
if (bios_only || !ret)
return ret;
@@ -735,22 +769,44 @@ machine_at_486sp3g_init(const machine_t *model)
static const device_config_t sb486pv_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "sb486pv",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "AMI WinBIOS (062594) - Revision 0108", .internal_name = "sb486pv_0108", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/sb486pv/41-0108-062594-SATURN2.rom", "" } },
- { .name = "AMI WinBIOS (062594) - Revision 0301", .internal_name = "sb486pv_0301", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/sb486pv/0301-062594-SATURN2.rom", "" } },
- { .name = "AMIBIOS 6 (071595) - Revision 1301", .internal_name = "sb486pv", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/sb486pv/amiboot.rom", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMI WinBIOS (062594) - Revision 0108",
+ .internal_name = "sb486pv_0108",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/sb486pv/41-0108-062594-SATURN2.rom", "" }
+ },
+ {
+ .name = "AMI WinBIOS (062594) - Revision 0301",
+ .internal_name = "sb486pv_0301",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/sb486pv/0301-062594-SATURN2.rom", "" }
+ },
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 1301",
+ .internal_name = "sb486pv",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/sb486pv/amiboot.rom", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -773,8 +829,8 @@ const device_t sb486pv_device = {
int
machine_at_sb486pv_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
@@ -877,11 +933,12 @@ machine_at_acerp3_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_device);
+
pci_register_slot(0x09, PCI_CARD_VIDEO, 0, 0, 0, 0);
- pci_register_slot(0x0A, PCI_CARD_IDE, 0, 0, 0, 0);
+ pci_register_slot(0x0A, PCI_CARD_IDE, 0, 0, 0, 0);
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_PRI));
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -910,6 +967,7 @@ machine_at_486sp3c_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_device);
+
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
@@ -937,6 +995,7 @@ machine_at_ls486e_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_ls486e_device);
+
pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
@@ -963,6 +1022,7 @@ machine_at_m4li_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_device);
+
pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x07, PCI_CARD_NORMAL, 4, 1, 2, 3);
@@ -989,6 +1049,7 @@ machine_at_ms4144_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_ls486e_device);
+
pci_register_slot(0x03, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
@@ -1016,6 +1077,7 @@ machine_at_r418_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_device);
+
pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
@@ -1042,6 +1104,7 @@ machine_at_4saw2_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_device);
+
pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
@@ -1070,6 +1133,7 @@ machine_at_4dps_init(const machine_t *model)
machine_at_sis_85c496_common_init(model);
device_add(&sis_85c496_device);
+
pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
@@ -1161,8 +1225,7 @@ machine_at_pl4600c_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3); /* Slot 02 */
pci_register_slot(0x10, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x12, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0); /* Onboard */
- pci_register_slot(0x13, PCI_CARD_VIDEO, 0, 0, 0, 0); /* Onboard */
-
+ pci_register_slot(0x13, PCI_CARD_VIDEO, 0, 0, 0, 0); /* Onboard */
device_add(&umc_hb4_device);
device_add(&umc_8886af_device);
@@ -1176,7 +1239,7 @@ machine_at_pl4600c_init(const machine_t *model)
if (sound_card_current[0] == SOUND_INTERNAL)
device_add(&ess_1688_device);
- if (fdc_current[0] == FDC_INTERNAL){
+ if (fdc_current[0] == FDC_INTERNAL) {
fdd_set_turbo(0, 1);
fdd_set_turbo(1, 1);
}
@@ -1305,7 +1368,7 @@ machine_at_m919_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
device_add(&umc_hb4_device);
- device_add(&umc_8886af_device); /* AF is correct - the BIOS does IDE writes to ports 108h and 109h. */
+ device_add(&umc_8886af_device); /* AF is correct - the BIOS does IDE writes to ports 108h and 109h. */
device_add_params(&um866x_device, (void *) UM8663BF);
device_add(&sst_flash_29ee010_device);
@@ -1344,20 +1407,35 @@ machine_at_spc7700plw_init(const machine_t *model)
static const device_config_t hot433a_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "hot433a",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "AMIBIOS 5 (101094) - Revision 433AUS33", .internal_name = "hot433a", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/hot433/433AUS33.ROM", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision 2.5 (by eSupport)", .internal_name = "hot433a_v451pg", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/hot433/2A4X5H21.BIN", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 5 (101094) - Revision 433AUS33",
+ .internal_name = "hot433a",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/hot433/433AUS33.ROM", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 2.5 (by eSupport)",
+ .internal_name = "hot433a_v451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/hot433/2A4X5H21.BIN", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -1380,8 +1458,8 @@ const device_t hot433a_device = {
int
machine_at_hot433a_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
@@ -1389,8 +1467,8 @@ machine_at_hot433a_init(const machine_t *model)
device_context(model->device);
int is_award = !strcmp(device_get_config_bios("bios"), "hot433a_v451pg");
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
- ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
machine_at_common_init_ex(model, 2);
diff --git a/src/machine/m_at_socket4.c b/src/machine/m_at_socket4.c
index 5e1bf533f..991ff9cab 100644
--- a/src/machine/m_at_socket4.c
+++ b/src/machine/m_at_socket4.c
@@ -43,20 +43,35 @@
static const device_config_t v12p_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "v12p",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 }, /*W1*/
- .bios = {
- { .name = "Acer BIOS V1.2 - Revision R1.4", .internal_name = "v12p_r14", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/v12p/v12p_14.bin", "" } },
- { .name = "Acer BIOS V1.2 - Revision R1.6", .internal_name = "v12p", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/v12p/v12p_16.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Acer BIOS V1.2 - Revision R1.4",
+ .internal_name = "v12p_r14",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/v12p/v12p_14.bin", "" }
+ },
+ {
+ .name = "Acer BIOS V1.2 - Revision R1.6",
+ .internal_name = "v12p",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/v12p/v12p_16.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -70,7 +85,7 @@ const device_t v12p_device = {
.init = NULL,
.close = NULL,
.reset = NULL,
- .available = NULL,
+ .available = NULL,
.speed_changed = NULL,
.force_redraw = NULL,
.config = v12p_config
@@ -79,18 +94,18 @@ const device_t v12p_device = {
int
machine_at_v12p_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
-
+
machine_at_common_init(model);
device_add(&ide_isa_device);
@@ -101,6 +116,7 @@ machine_at_v12p_init(const machine_t *model)
pci_register_slot(0x03, PCI_CARD_NORMAL, 3, 2, 1, 4);
pci_register_slot(0x04, PCI_CARD_NORMAL, 4, 0, 0, 0);
pci_register_slot(0x05, PCI_CARD_NORMAL, 0, 0, 0, 0);
+
device_add(&i430lx_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
@@ -130,6 +146,7 @@ machine_at_excaliburpci_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_cmd640_pci_legacy_only_device);
@@ -141,17 +158,72 @@ machine_at_excaliburpci_init(const machine_t *model)
return ret;
}
+static const device_config_t p5mp3_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "p5mp3",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.50 - Revision 0205",
+ .internal_name = "p5mp3",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/p5mp3/0205.bin", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51G - Revision 0402 (Beta)",
+ .internal_name = "p5mp3_0402",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/p5mp3/0402.001", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t p5mp3_device = {
+ .name = "ASUS P/I-P5MP3",
+ .internal_name = "p5mp3_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = p5mp3_config
+};
+
int
machine_at_p5mp3_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/p5mp3/0205.bin",
- 0x000e0000, 131072, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init(model);
pci_init(PCI_CONFIG_TYPE_2 | PCI_NO_IRQ_STEERING);
@@ -160,6 +232,7 @@ machine_at_p5mp3_init(const machine_t *model)
pci_register_slot(0x04, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 04 = Slot 2 */
pci_register_slot(0x03, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 03 = Slot 3 */
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&fdc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -192,6 +265,7 @@ machine_at_opti560l_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_NORMAL, 1, 4, 3, 2);
pci_register_slot(0x08, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430lx_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
@@ -264,6 +338,7 @@ machine_at_valuepointp60_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 3, 2, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_PRI));
@@ -280,22 +355,44 @@ machine_at_valuepointp60_init(const machine_t *model)
static const device_config_t batman_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "batman",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "AMIBIOS 111192 - Revision A08 (Dell Dimension XPS P60)", .internal_name = "dellxp60", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/batman/XP60-A08.ROM", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.04.AF1P (AMBRA DP60 PCI)", .internal_name = "ambradp60", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/batman/1004AF1P.BIO", "roms/machines/batman/1004AF1P.BI1", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.08.AF1", .internal_name = "batman", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/batman/1008AF1_.BIO", "roms/machines/batman/1008AF1_.BI1", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 111192 - Revision A08 (Dell Dimension XPS P60)",
+ .internal_name = "dellxp60",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/batman/XP60-A08.ROM", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.04.AF1P (AMBRA DP60 PCI)",
+ .internal_name = "ambradp60",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/batman/1004AF1P.BIO", "roms/machines/batman/1004AF1P.BI1", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.08.AF1",
+ .internal_name = "batman",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/batman/1008AF1_.BIO", "roms/machines/batman/1008AF1_.BI1", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -318,9 +415,9 @@ const device_t batman_device = {
int
machine_at_batman_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
- const char* fn2;
+ int ret = 0;
+ const char *fn;
+ const char *fn2;
/* No ROMs available */
if (!device_available(model->device))
@@ -328,7 +425,7 @@ machine_at_batman_init(const machine_t *model)
device_context(model->device);
int is_dell = !strcmp(device_get_config_bios("bios"), "dellxp60");
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
if (is_dell)
ret = bios_load_linear_inverted(fn, 0x000e0000, 131072, 0);
else {
@@ -346,15 +443,16 @@ machine_at_batman_init(const machine_t *model)
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_IDE, 0, 0, 0, 0);
if (is_dell) {
- pci_register_slot(0x04, PCI_CARD_NORMAL, 4, 4, 3, 3);
- pci_register_slot(0x05, PCI_CARD_NORMAL, 1, 4, 3, 2);
- pci_register_slot(0x06, PCI_CARD_NORMAL, 2, 1, 3, 4);
+ pci_register_slot(0x04, PCI_CARD_NORMAL, 4, 4, 3, 3);
+ pci_register_slot(0x05, PCI_CARD_NORMAL, 1, 4, 3, 2);
+ pci_register_slot(0x06, PCI_CARD_NORMAL, 2, 1, 3, 4);
} else {
- pci_register_slot(0x06, PCI_CARD_NORMAL, 3, 2, 1, 4);
- pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 1, 3, 4);
- pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 3, 2, 4);
+ pci_register_slot(0x06, PCI_CARD_NORMAL, 3, 2, 1, 4);
+ pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 1, 3, 4);
+ pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 3, 2, 4);
}
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_PRI));
@@ -380,6 +478,7 @@ machine_at_premiere_common_init(const machine_t *model, int pci_switch)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 3, 2, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add(&ide_rz1000_pci_single_channel_device);
@@ -412,7 +511,7 @@ machine_at_m5pi_init(const machine_t *model)
int ret;
ret = bios_load_linear_inverted("roms/machines/m5pi/M5PI10R.BIN",
- 0x000e0000, 131072, 0);
+ 0x000e0000, 131072, 0);
if (bios_only || !ret)
return ret;
@@ -426,10 +525,11 @@ machine_at_m5pi_init(const machine_t *model)
pci_register_slot(0x0c, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0b, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
- device_add(&i430lx_device);
- device_add(&sio_zb_device);
+
+ device_add(&i430lx_device);
+ device_add(&sio_zb_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
- device_add(&ide_w83769f_pci_single_channel_device);
+ device_add(&ide_w83769f_pci_single_channel_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_SEC));
device_add(&intel_flash_bxt_ami_device);
@@ -458,6 +558,7 @@ machine_at_pb520r_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 3, 2, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430lx_device);
device_add(&ide_cmd640_pci_single_channel_device);
@@ -579,6 +680,7 @@ machine_at_excaliburpci2_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_cmd640_pci_legacy_only_device);
@@ -605,6 +707,7 @@ machine_at_sp4_common_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&sis_85c50x_device);
device_add(&ide_cmd640_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -649,6 +752,7 @@ machine_at_ecs50x_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&sis_85c50x_device);
device_add_params(&ide_cmd640_pci_device, (void *) 0x100000);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
diff --git a/src/machine/m_at_socket4_5.c b/src/machine/m_at_socket4_5.c
index f5b7ae87c..573f8bb71 100644
--- a/src/machine/m_at_socket4_5.c
+++ b/src/machine/m_at_socket4_5.c
@@ -98,6 +98,7 @@ machine_at_celebris5xx_init(const machine_t *model)
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&ide_cmd640_pci_device);
+
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
diff --git a/src/machine/m_at_socket5.c b/src/machine/m_at_socket5.c
index c61f4c8bb..50a28a9c8 100644
--- a/src/machine/m_at_socket5.c
+++ b/src/machine/m_at_socket5.c
@@ -62,6 +62,7 @@ machine_at_p54np4_init(const machine_t *model)
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 05 = Slot 3 */
pci_register_slot(0x04, PCI_CARD_NORMAL, 4, 1, 2, 3); /* 04 = Slot 4 */
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430nx_device);
device_add(&sio_zb_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -92,22 +93,44 @@ machine_at_586ip_init(const machine_t *model)
static const device_config_t plato_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "plato",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Intel AMIBIOS - Revision 1.00.02.AX1P (AMBRA DP90 PCI)", .internal_name = "ambradp90", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/plato/1002AX1P.BIO", "roms/machines/plato/1002AX1P.BI1", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.16.AX1", .internal_name = "plato", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/plato/1016ax1_.bio", "roms/machines/plato/1016ax1_.bi1", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.16.AX1J (Dell Dimension XPS P___)", .internal_name = "dellplato", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/plato/1016AX1J.BIO", "roms/machines/plato/1016AX1J.BI1", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.02.AX1P (AMBRA DP90 PCI)",
+ .internal_name = "ambradp90",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/plato/1002AX1P.BIO", "roms/machines/plato/1002AX1P.BI1", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.16.AX1",
+ .internal_name = "plato",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/plato/1016ax1_.bio", "roms/machines/plato/1016ax1_.bi1", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.16.AX1J (Dell Dimension XPS P___)",
+ .internal_name = "dellplato",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/plato/1016AX1J.BIO", "roms/machines/plato/1016AX1J.BI1", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -130,16 +153,16 @@ const device_t plato_device = {
int
machine_at_plato_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
- const char* fn2;
+ int ret = 0;
+ const char *fn;
+ const char *fn2;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
fn2 = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 1);
ret = bios_load_linear_combined(fn, fn2, 0x1d000, 128);
device_context_restore();
@@ -154,28 +177,71 @@ machine_at_plato_init(const machine_t *model)
static const device_config_t d842_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "d842",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 }, /*W1*/
- .bios = {
- { .name = "PhoenixBIOS Pentium 1.03 - Revision 1.03.842", .internal_name = "d842_103", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d842/d842.BIN", "" } },
- { .name = "PhoenixBIOS Pentium 1.03 - Revision 1.09.842", .internal_name = "d842_109", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d842/d842_jul96.bin", "" } },
- { .name = "PhoenixBIOS Pentium 1.03 - Revision 1.10.842", .internal_name = "d842", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d842/d842_jun98_1.bin", "" } },
- { .name = "PhoenixBIOS 4.04 - Revision 1.05.842", .internal_name = "d842_105", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d842/d842_mar96.bin", "" } },
- { .name = "PhoenixBIOS 4.04 - Revision 1.06.842", .internal_name = "d842_106", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d842/d842_apr98.bin", "" } },
- { .name = "PhoenixBIOS 4.04 - Revision 1.07.842", .internal_name = "d842_107", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d842/d842_jun98.BIN", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS Pentium 1.03 - Revision 1.03.842",
+ .internal_name = "d842_103",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d842/d842.BIN", "" }
+ },
+ {
+ .name = "PhoenixBIOS Pentium 1.03 - Revision 1.09.842",
+ .internal_name = "d842_109",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d842/d842_jul96.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS Pentium 1.03 - Revision 1.10.842",
+ .internal_name = "d842",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d842/d842_jun98_1.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.04 - Revision 1.05.842",
+ .internal_name = "d842_105",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d842/d842_mar96.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.04 - Revision 1.06.842",
+ .internal_name = "d842_106",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d842/d842_apr98.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.04 - Revision 1.07.842",
+ .internal_name = "d842_107",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d842/d842_jun98.BIN", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -198,15 +264,15 @@ const device_t d842_device = {
int
machine_at_d842_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -249,7 +315,9 @@ machine_at_tek932_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 3, 2, 4);
+
machine_force_ps2(1);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430nx_device);
device_add(&sio_zb_device);
@@ -281,6 +349,7 @@ machine_at_acerv30_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x14, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -312,6 +381,7 @@ machine_at_apollo_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
@@ -357,6 +427,97 @@ machine_at_optiplexgxl_init(const machine_t *model)
return ret;
}
+/* Some stuff taken from Monaco */
+static void
+machine_at_morrison64_gpio_init(void)
+{
+ uint32_t gpio = 0xffffe0cf;
+
+ /* Return to this after CS4232 PnP is working. */
+ /* Register 0x0078 (Undocumented): */
+ /* Bit 5,4: Vibra 16S base address: 0 = 220h, 1 = 260h, 2 = 240h, 3 = 280h. */
+ /*device_context(machine_get_snd_device(machine));
+ addr = device_get_config_hex16("base");
+ switch (addr) {
+ case 0x0220:
+ gpio |= 0xffff00cf;
+ break;
+ case 0x0240:
+ gpio |= 0xffff00ef;
+ break;
+ case 0x0260:
+ gpio |= 0xffff00df;
+ break;
+ case 0x0280:
+ gpio |= 0xffff00ff;
+ break;
+ }
+ device_context_restore();*/
+
+ /* Register 0x0079: */
+ /* Bit 7: 0 = Clear password, 1 = Keep password. */
+ /* Bit 6: 0 = NVRAM cleared by jumper, 1 = NVRAM normal. */
+ /* Bit 5: 0 = CMOS Setup disabled, 1 = CMOS Setup enabled. */
+ /* Bit 4: External CPU clock (Switch 8). */
+ /* Bit 3: External CPU clock (Switch 7). */
+ /* 50 MHz: Switch 7 = Off, Switch 8 = Off. */
+ /* 60 MHz: Switch 7 = On, Switch 8 = Off. */
+ /* 66 MHz: Switch 7 = Off, Switch 8 = On. */
+ /* Bit 2: 0 = On-board audio absent, 1 = On-board audio present. */
+ /* Bit 1: 0 = Soft-off capable power supply present, 1 = Soft-off capable power supply absent. */
+ /* Bit 0: 0 = 2x multiplier, 1 = 1.5x multiplier (Switch 6). */
+ /* NOTE: A bit is read as 1 if switch is off, and as 0 if switch is on. */
+ if (cpu_busspeed <= 50000000)
+ gpio |= 0xffff0000;
+ else if ((cpu_busspeed > 50000000) && (cpu_busspeed <= 60000000))
+ gpio |= 0xffff0800;
+ else if (cpu_busspeed > 60000000)
+ gpio |= 0xffff1000;
+
+ if (sound_card_current[0] == SOUND_INTERNAL)
+ gpio |= 0xffff0400;
+
+ if (cpu_dmulti <= 1.5)
+ gpio |= 0xffff01af;
+ else if (cpu_dmulti <= 2.0)
+ gpio |= 0xffffe2af;
+ else if ((cpu_dmulti > 2.0) && (cpu_dmulti <= 2.5))
+ gpio |= 0xffffe5cf;
+
+ machine_set_gpio_default(gpio);
+}
+
+int
+machine_at_pc330_65x6_init(const machine_t *model)
+{
+ int ret;
+
+ ret = bios_load_linear("roms/machines/pc330_65x6/intel.bin",
+ 0x000c0000, 262144, 0);
+
+ if (bios_only || !ret)
+ return ret;
+
+ machine_at_common_init_ex(model, 2);
+ machine_at_morrison64_gpio_init();
+
+ pci_init(PCI_CONFIG_TYPE_1);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x08, PCI_CARD_VIDEO, 4, 0, 0, 0);
+ pci_register_slot(0x0B, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 3, 2, 4);
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 3, 4);
+ device_add(&i430fx_device);
+ device_add(&piix_device);
+ device_add_params(&pc87306_device, (void *) PCX730X_AMI);
+ device_add(&intel_flash_bxt_ami_device);
+
+ if (gfxcard[0] == VID_INTERNAL)
+ device_add(machine_get_vid_device(machine));
+
+ return ret;
+}
static void
machine_at_zappa_gpio_init(void)
@@ -391,17 +552,72 @@ machine_at_zappa_gpio_init(void)
machine_set_gpio_default(gpio);
}
+static const device_config_t pt2000_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "pt2000",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.50GP - Revision T1.01",
+ .internal_name = "pt2000",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ficpt2000/PT2000_v1.01.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 3.072C806",
+ .internal_name = "pt2000_451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ficpt2000/3072c806.bin", "" }
+ },
+ { .files_no = 0 }
+ },
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t pt2000_device = {
+ .name = "FIC PT-2000",
+ .internal_name = "pt2000_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = pt2000_config
+};
+
int
machine_at_pt2000_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/ficpt2000/PT2000_v1.01.BIN",
- 0x000e0000, 131072, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init(model);
pci_init(PCI_CONFIG_TYPE_1);
@@ -411,6 +627,7 @@ machine_at_pt2000_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
@@ -420,18 +637,74 @@ machine_at_pt2000_init(const machine_t *model)
return ret;
}
+static const device_config_t zappa_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "zappa",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.06.BS0",
+ .internal_name = "zappa",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/zappa/1006bs0_.bio", "roms/machines/zappa/1006bs0_.bi1", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.11.BS0T (Gateway 2000)",
+ .internal_name = "zappa_gw2k",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/zappa/1011BS0T.BIO", "roms/machines/zappa/1011BS0T.BI1", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t zappa_device = {
+ .name = "Intel Advanced/ZP (Zappa)",
+ .internal_name = "zappa_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = zappa_config
+};
+
int
machine_at_zappa_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
+ const char *fn2;
- ret = bios_load_linear_combined("roms/machines/zappa/1006bs0_.bio",
- "roms/machines/zappa/1006bs0_.bi1",
- 0x20000, 128);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn2 = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 1);
+ ret = bios_load_linear_combined(fn, fn2, 0x20000, 128);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
machine_at_zappa_gpio_init();
@@ -441,6 +714,7 @@ machine_at_zappa_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&pc87306_device, (void *) PCX730X_AMI);
@@ -449,17 +723,72 @@ machine_at_zappa_init(const machine_t *model)
return ret;
}
+static const device_config_t powermatev_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "powermatev",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS Version 4.05.M - Revision 00.04.08",
+ .internal_name = "powermatev_122195",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/powermatev/B50NM00M.ROM", "" }
+ },
+ {
+ .name = "PhoenixBIOS Version 4.05.V - Revision 00.04.15",
+ .internal_name = "powermatev",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/powermatev/B50NM00V.ROM", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t powermatev_device = {
+ .name = "NEC PowerMate Vxxx",
+ .internal_name = "powermatev_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = powermatev_config
+};
+
int
machine_at_powermatev_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/powermatev/BIOS.ROM",
- 0x000e0000, 131072, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init(model);
pci_init(PCI_CONFIG_TYPE_1);
@@ -468,6 +797,7 @@ machine_at_powermatev_init(const machine_t *model)
pci_register_slot(0x08, PCI_CARD_NORMAL, 0, 0, 0, 0);
pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
@@ -497,6 +827,7 @@ machine_at_hawk_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
@@ -630,6 +961,7 @@ machine_at_sq588_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x11, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&sis_85c50x_device);
device_add(&ide_cmd640_pci_single_channel_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -655,10 +987,11 @@ machine_at_p54sps_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x06, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x07, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x06, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x07, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&sis_85c50x_device);
device_add(&ide_pci_2ch_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -685,11 +1018,12 @@ machine_at_ms5109_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x07, PCI_CARD_IDE, 0, 0, 0, 0);
- pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 3, 2, 4);
- pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 1, 3, 4);
- pci_register_slot(0x11, PCI_CARD_NORMAL, 3, 3, 2, 4);
- pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x07, PCI_CARD_IDE, 0, 0, 0, 0);
+ pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 3, 2, 4);
+ pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 1, 3, 4);
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 3, 3, 2, 4);
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&sis_550x_85c503_device);
device_add(&ide_w83769f_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -717,10 +1051,10 @@ machine_at_torino_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x08, PCI_CARD_VIDEO, 0, 0, 0, 0);
- pci_register_slot(0x03, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0A, PCI_CARD_NORMAL, 4, 1, 2, 3);
- pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x08, PCI_CARD_VIDEO, 0, 0, 0, 0);
+ pci_register_slot(0x03, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -744,19 +1078,20 @@ machine_at_hot539_init(const machine_t *model)
0x000e0000, 131072, 0);
if (bios_only || !ret)
- return ret;
+ return ret;
machine_at_common_init(model);
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x12, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x15, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x16, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x15, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x16, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&umc_8890_device);
device_add(&umc_8886af_device);
device_add(&sst_flash_29ee010_device);
@@ -795,10 +1130,12 @@ machine_at_bravoms586_init(const machine_t *model)
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_SEC));
device_add(&ide_cmd640_pci_single_channel_device);
+
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
+
device_add(&ast_readout_device); /* AST custom jumper readout */
- device_add(&ast_nvr_device); /* AST custom secondary NVR device */
+ device_add(&ast_nvr_device); /* AST custom secondary NVR device */
return ret;
}
@@ -824,6 +1161,7 @@ machine_at_g586vpmc_init(const machine_t *model)
pci_register_slot(0x06, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x08, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0A, PCI_CARD_IDE, 0, 0, 0, 0);
+
device_add(&vl82c59x_device);
device_add(&sst_flash_29ee010_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -852,6 +1190,7 @@ machine_at_m54si_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x11, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
/* Slots are a guess since this BIOS won't work with pcireg */
device_add(&vl82c59x_device);
device_add(&intel_flash_bxt_device);
@@ -883,12 +1222,14 @@ machine_at_pb600_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
+
device_add(&vl82c59x_device);
device_add(&intel_flash_bxt_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&phoenix_486_jumper_pci_pb600_device);
device_add(&ide_cmd640_pci_device);
+
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -917,11 +1258,13 @@ machine_at_globalyst620_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 3, 4); /* Slot 04 */
pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1); /* Slot 05 */
pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2); /* Slot 06 */
+
device_add(&vl82c59x_wildcat_device);
device_add(&intel_flash_bxt_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_cmd640_pci_single_channel_legacy_only_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_SEC));
+
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
diff --git a/src/machine/m_at_socket7.c b/src/machine/m_at_socket7.c
index b3d504148..e185632af 100644
--- a/src/machine/m_at_socket7.c
+++ b/src/machine/m_at_socket7.c
@@ -65,6 +65,7 @@ machine_at_acerm3a_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x10, PCI_CARD_VIDEO, 4, 0, 0, 0);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
@@ -94,6 +95,7 @@ machine_at_p55t2p4_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -116,6 +118,7 @@ machine_at_p65up5_common_init(const machine_t *model, const device_t *northbridg
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(northbridge);
device_add(&piix3_ioapic_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -143,28 +146,49 @@ machine_at_p65up5_cp55t2d_init(const machine_t *model)
static const device_config_t cu430hx_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "cu430hx",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Intel AMIBIOS - Revision 1.00.03.DK08 (Toshiba Equium 5xx0D)", .internal_name = "equium5200", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/cu430hx/1003DK08.BIO", "roms/machines/cu430hx/1003DK08.BI1",
- "roms/machines/cu430hx/1003DK08.BI2", "roms/machines/cu430hx/1003DK08.BI3",
- "roms/machines/cu430hx/1003DK08.RCV", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.04.DK0K (NEC PowerMate V2xxx/P2xxx)", .internal_name = "powermatev2p2", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/cu430hx/1004DK0K.BIO", "roms/machines/cu430hx/1004DK0K.BI1",
- "roms/machines/cu430hx/1004DK0K.BI2", "roms/machines/cu430hx/1004DK0K.BI3",
- "roms/machines/cu430hx/1004DK0K.RCV", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.06.DK0", .internal_name = "cu430hx", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/cu430hx/1006DK0_.BIO", "roms/machines/cu430hx/1006DK0_.BI1",
- "roms/machines/cu430hx/1006DK0_.BI2", "roms/machines/cu430hx/1006DK0_.BI3",
- "roms/machines/cu430hx/1006DK0_.RCV", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.03.DK08 (Toshiba Equium 5xx0D)",
+ .internal_name = "equium5200",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/cu430hx/1003DK08.BIO", "roms/machines/cu430hx/1003DK08.BI1",
+ "roms/machines/cu430hx/1003DK08.BI2", "roms/machines/cu430hx/1003DK08.BI3",
+ "roms/machines/cu430hx/1003DK08.RCV", "" } },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.04.DK0K (NEC PowerMate V2xxx/P2xxx)",
+ .internal_name = "powermatev2p2",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/cu430hx/1004DK0K.BIO", "roms/machines/cu430hx/1004DK0K.BI1",
+ "roms/machines/cu430hx/1004DK0K.BI2", "roms/machines/cu430hx/1004DK0K.BI3",
+ "roms/machines/cu430hx/1004DK0K.RCV", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.06.DK0",
+ .internal_name = "cu430hx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/cu430hx/1006DK0_.BIO", "roms/machines/cu430hx/1006DK0_.BI1",
+ "roms/machines/cu430hx/1006DK0_.BI2", "roms/machines/cu430hx/1006DK0_.BI3",
+ "roms/machines/cu430hx/1006DK0_.RCV", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -218,8 +242,8 @@ machine_at_cu430hx_gpio_init(void)
int
machine_at_cu430hx_init(const machine_t *model)
{
- int ret = 0;
- const char* fn[5];
+ int ret = 0;
+ const char *fn[5];
/* No ROMs available */
if (!device_available(model->device))
@@ -258,24 +282,39 @@ machine_at_cu430hx_init(const machine_t *model)
static const device_config_t tc430hx_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "tc430hx",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Intel AMIBIOS - Revision 1.00.07.DH0", .internal_name = "tc430hx", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/tc430hx/1007DH0_.BIO", "roms/machines/tc430hx/1007DH0_.BI1",
- "roms/machines/tc430hx/1007DH0_.BI2", "roms/machines/tc430hx/1007DH0_.BI3",
- "roms/machines/tc430hx/1007DH0_.RCV", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.08.DH08 (Toshiba Infinia 7xx1)", .internal_name = "infinia7200", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/tc430hx/1008DH08.BIO", "roms/machines/tc430hx/1008DH08.BI1",
- "roms/machines/tc430hx/1008DH08.BI2", "roms/machines/tc430hx/1008DH08.BI3",
- "roms/machines/tc430hx/1008DH08.RCV", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.07.DH0",
+ .internal_name = "tc430hx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/tc430hx/1007DH0_.BIO", "roms/machines/tc430hx/1007DH0_.BI1",
+ "roms/machines/tc430hx/1007DH0_.BI2", "roms/machines/tc430hx/1007DH0_.BI3",
+ "roms/machines/tc430hx/1007DH0_.RCV", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.08.DH08 (Toshiba Infinia 7xx1)",
+ .internal_name = "infinia7200",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/tc430hx/1008DH08.BIO", "roms/machines/tc430hx/1008DH08.BI1",
+ "roms/machines/tc430hx/1008DH08.BI2", "roms/machines/tc430hx/1008DH08.BI3",
+ "roms/machines/tc430hx/1008DH08.RCV", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -329,8 +368,8 @@ machine_at_tc430hx_gpio_init(void)
int
machine_at_tc430hx_init(const machine_t *model)
{
- int ret = 0;
- const char* fn[5];
+ int ret = 0;
+ const char *fn[5];
/* No ROMs available */
if (!device_available(model->device))
@@ -371,20 +410,35 @@ machine_at_tc430hx_init(const machine_t *model)
static const device_config_t m7shi_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "m7shi",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "PhoenixBIOS 4.0 Release 6.0 - Revision 05/20/97", .internal_name = "m7shi", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 262144, .files = { "roms/machines/m7shi/m7shi2n.rom", "" } },
- { .name = "PhoenixBIOS 4.0 Release 6.0 - Revision 01/21/98", .internal_name = "m7shi_4", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 262144, .files = { "roms/machines/m7shi/M7ns04.rom", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS 4.0 Release 6.0 - Revision 05/20/97",
+ .internal_name = "m7shi_97",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/m7shi/m7shi2n.rom", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.0 Release 6.0 - Revision 01/21/98",
+ .internal_name = "m7shi",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/m7shi/M7ns04.rom", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -407,15 +461,15 @@ const device_t m7shi_device = {
int
machine_at_m7shi_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
device_context_restore();
@@ -428,6 +482,7 @@ machine_at_m7shi_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
@@ -457,6 +512,7 @@ machine_at_epc2102_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x10, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -497,6 +553,7 @@ machine_at_pcv90_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(&pc87306_device, (void *) PCX730X_AMI);
@@ -528,6 +585,7 @@ machine_at_p55t2s_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x11, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(&pc87306_device, (void *) PCX730X_AMI);
@@ -561,6 +619,7 @@ machine_at_ap5vm_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -591,6 +650,7 @@ machine_at_p55tvp4_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -619,6 +679,7 @@ machine_at_5ivg_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -648,6 +709,7 @@ machine_at_8500tvxa_init(const machine_t *model)
pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 2, 1);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 3, 2, 1);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -742,6 +804,7 @@ machine_at_dellhannibalp_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 4);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_FR));
@@ -750,17 +813,72 @@ machine_at_dellhannibalp_init(const machine_t *model)
return ret;
}
+static const device_config_t p5vxb_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "p5vxb",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.50PG - Revision 1.0",
+ .internal_name = "p5vxb",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/p5vxb/P5VXB10.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 1.5c",
+ .internal_name = "p5vxb_451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/p5vxb/P5VXB15C.BIN", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t p5vxb_device = {
+ .name = "ECS P5VX-B",
+ .internal_name = "p5vxb_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = p5vxb_config
+};
+
int
machine_at_p5vxb_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/p5vxb/P5VXB10.BIN",
- 0x000e0000, 131072, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init(model);
pci_init(PCI_CONFIG_TYPE_1);
@@ -770,6 +888,7 @@ machine_at_p5vxb_init(const machine_t *model)
pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 4);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -799,6 +918,7 @@ machine_at_p55va_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_FR));
@@ -864,6 +984,7 @@ machine_at_brio80xx_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x11, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL | FDC37XXXX_370));
@@ -875,20 +996,35 @@ machine_at_brio80xx_init(const machine_t *model)
static const device_config_t lgibmx52_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "lgibmx52",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "PhoenixBIOS 4.05 - Revision 08/21/97", .internal_name = "lgibmx52_082197", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/lgibmx52/BIOS.ROM", "" } },
- { .name = "PhoenixBIOS 4.05 - Revision 03/26/99", .internal_name = "lgibmx52", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/lgibmx52/MS5136 LG IBM OEM.ROM", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 08/21/97",
+ .internal_name = "lgibmx52_082197",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/lgibmx52/BIOS.ROM", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 03/26/99",
+ .internal_name = "lgibmx52",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/lgibmx52/MS5136 LG IBM OEM.ROM", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -911,15 +1047,15 @@ const device_t lgibmx52_device = {
int
machine_at_lgibmx52_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -932,6 +1068,7 @@ machine_at_lgibmx52_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -997,9 +1134,9 @@ machine_at_pb810_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 3, 4);
- pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 3, 2, 4);
- pci_register_slot(0x0b, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 3, 4);
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 3, 2, 4);
+ pci_register_slot(0x0b, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
if (sound_card_current[0] == SOUND_INTERNAL)
@@ -1033,6 +1170,7 @@ machine_at_mb520n_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x11, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -1062,6 +1200,7 @@ machine_at_i430vx_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430vx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -1134,6 +1273,7 @@ machine_at_tx97_init(const machine_t *model)
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4); /* PIIX4 */
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -1155,6 +1295,7 @@ void
machine_at_optiplex_21152_init(void)
{
uint8_t bus_index = pci_bridge_get_bus_index(device_add(&dec21152_device));
+
pci_register_bus_slot(bus_index, 0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_bus_slot(bus_index, 0x0a, PCI_CARD_NORMAL, 4, 2, 1, 3);
pci_register_bus_slot(bus_index, 0x0b, PCI_CARD_NORMAL, 1, 3, 4, 2);
@@ -1219,6 +1360,7 @@ machine_at_tomahawk_init(const machine_t *model)
pci_register_slot(0x06, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x07, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(&fdc37c67x_device, (void *) (FDC37XXX2 | FDC37XXXX_370));
@@ -1261,6 +1403,7 @@ machine_at_ym430tx_init(const machine_t *model)
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4); /* PIIX4 */
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(&w83977_device, (void *) (W83977TF | W83977_AMI | W83977_NO_NVR));
@@ -1290,6 +1433,7 @@ machine_at_thunderbolt_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 1, 2, 3, 0);
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 0, 1);
pci_register_slot(0x14, PCI_CARD_NORMAL, 3, 0, 1, 2);
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL | FDC37C93X_NO_NVR));
@@ -1319,6 +1463,7 @@ machine_at_ma23c_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x0B, PCI_CARD_VIDEO, 3, 4, 1, 2);
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add(&nec_mate_unk_device);
@@ -1329,21 +1474,77 @@ machine_at_ma23c_init(const machine_t *model)
return ret;
}
+static const device_config_t an430tx_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "an430tx",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS 4.0 Release 6.0 - Revision P02-0011 (Sony Vaio PCV-130/150)",
+ .internal_name = "pcv150",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/an430tx/P02-0011.BIO", "roms/machines/an430tx/P02-0011.BI1",
+ "roms/machines/an430tx/P02-0011.BI2", "roms/machines/an430tx/P02-0011.BI3",
+ "roms/machines/an430tx/P02-0011.RCV", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.0 Release 6.0 - Revision P09-0006 (Packard Bell PB79x)",
+ .internal_name = "an430tx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/an430tx/ANP0911A.BIO", "roms/machines/an430tx/ANP0911A.BI1",
+ "roms/machines/an430tx/ANP0911A.BI2", "roms/machines/an430tx/ANP0911A.BI3",
+ "roms/machines/an430tx/ANP0911A.RCV", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t an430tx_device = {
+ .name = "Intel AN430TX (Anchorage)",
+ .internal_name = "an430tx_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = an430tx_config
+};
+
int
machine_at_an430tx_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char* fn[5];
- ret = bios_load_linear_combined2("roms/machines/an430tx/ANP0911A.BIO",
- "roms/machines/an430tx/ANP0911A.BI1",
- "roms/machines/an430tx/ANP0911A.BI2",
- "roms/machines/an430tx/ANP0911A.BI3",
- "roms/machines/an430tx/ANP0911A.RCV",
- 0x3a000, 160);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ for (int i = 0; i < 5; i++)
+ fn[i] = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), i);
+ ret = bios_load_linear_combined2(fn[0], fn[1], fn[2], fn[3], fn[4], 0x3a000, 160);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
@@ -1354,6 +1555,7 @@ machine_at_an430tx_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x08, PCI_CARD_VIDEO, 4, 0, 0, 0);
+
device_add(&i430tx_device);
device_add(&piix4_device);
#ifdef FOLLOW_THE_SPECIFICATION
@@ -1391,6 +1593,7 @@ machine_at_mb540n_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4); /* PIIX4 */
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -1422,6 +1625,7 @@ machine_at_56a5_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4); /* PIIX4 */
pci_register_slot(0x10, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -1452,6 +1656,7 @@ machine_at_p5mms98_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i430tx_device);
device_add(&piix4_device);
/* This actually has the Winbond W83967AF, for which I can not find any datasheet at all. */
@@ -1484,6 +1689,7 @@ machine_at_richmond_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i430tx_device);
device_add(&piix4_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -1517,6 +1723,7 @@ machine_at_ficva502_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+
device_add(&via_vpx_device);
device_add(&via_vt82c586b_device);
device_add_params(&fdc37c669_device, (void *) FDC37C6XX_370);
@@ -1618,17 +1825,72 @@ machine_at_cb52xsi_init(const machine_t *model)
return ret;
}
+static const device_config_t ms5146_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "ms5146",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 1.1",
+ .internal_name = "ms5146",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ms5146/A546MS11.ROM", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 2.1",
+ .internal_name = "ms5146_451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ms5146/W546MS21.BIN", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t ms5146_device = {
+ .name = "MSI MS-5146",
+ .internal_name = "ms5146_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = ms5146_config
+};
+
int
machine_at_ms5146_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/ms5146/A546MS11.ROM",
- 0x000e0000, 131072, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
@@ -1649,20 +1911,35 @@ machine_at_ms5146_init(const machine_t *model)
static const device_config_t r534f_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "r534f_1998",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Award Modular BIOS v4.51PG - Revision 06/12/1998", .internal_name = "r534f_1998", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/r534f/r534f008-1998.bin", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision 03/13/2000 (by Unicore Software)", .internal_name = "r534f", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/r534f/r534f008.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 06/12/1998",
+ .internal_name = "r534f_1998",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/r534f/r534f008-1998.bin", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 03/13/2000 (by Unicore Software)",
+ .internal_name = "r534f",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/r534f/r534f008.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -1685,15 +1962,15 @@ const device_t r534f_device = {
int
machine_at_r534f_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -1736,6 +2013,7 @@ machine_at_sp97xv_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x13, PCI_CARD_VIDEO, 1, 2, 3, 4); /* On-chip SiS graphics, absent here. */
+
device_add(&sis_5581_device);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -1762,6 +2040,7 @@ machine_at_sq578_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&sis_5581_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -1790,6 +2069,7 @@ machine_at_ms5172_init(const machine_t *model)
pci_register_slot(0x09, PCI_CARD_NORMAL, 1, 2, 3, 4);
pci_register_slot(0x0A, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
device_add(&sis_5591_1997_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -1801,20 +2081,35 @@ machine_at_ms5172_init(const machine_t *model)
static const device_config_t m5ata_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "m5ata",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Award Modular BIOS v4.51PG - Revision 12/23/97", .internal_name = "m5ata_1223", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/m5ata/ATA1223.BIN", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision 05/27/98", .internal_name = "m5ata", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/m5ata/ATA0527B.BIN", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 12/23/97",
+ .internal_name = "m5ata_1223",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/m5ata/ATA1223.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 05/27/98",
+ .internal_name = "m5ata",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/m5ata/ATA0527B.BIN", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -1837,15 +2132,15 @@ const device_t m5ata_device = {
int
machine_at_m5ata_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -1923,6 +2218,7 @@ machine_at_m560_init(const machine_t *model)
pci_register_slot(0x04, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&ali1531_device);
device_add(&ali1543_device); /* -5 */
device_add(&sst_flash_29ee010_device);
diff --git a/src/machine/m_at_socket7_3v.c b/src/machine/m_at_socket7_3v.c
index 068782db7..7336c36d0 100644
--- a/src/machine/m_at_socket7_3v.c
+++ b/src/machine/m_at_socket7_3v.c
@@ -45,18 +45,33 @@
static const device_config_t p54tp4xe_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "p54tp4xe",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Award Modular BIOS v4.51PG - Revision 0302", .internal_name = "p54tp4xe", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/p54tp4xe/t15i0302.awd", "" } },
- { .name = "MR BIOS V3.30", .internal_name = "p54tp4xe_mr", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/p54tp4xe/TRITON.BIO", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 0302",
+ .internal_name = "p54tp4xe",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/p54tp4xe/t15i0302.awd", "" }
+ },
+ {
+ .name = "MR BIOS V3.30",
+ .internal_name = "p54tp4xe_mr",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/p54tp4xe/TRITON.BIO", "" }
+ },
{ .files_no = 0 }
},
},
@@ -81,15 +96,15 @@ const device_t p54tp4xe_device = {
int
machine_at_p54tp4xe_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -102,6 +117,7 @@ machine_at_p54tp4xe_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
@@ -126,11 +142,12 @@ machine_at_exp8551_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x11, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
@@ -140,6 +157,150 @@ machine_at_exp8551_init(const machine_t *model)
return ret;
}
+static void
+machine_at_vectra52_gpio_init(void)
+{
+ uint32_t gpio = 0x40;
+
+ if (cpu_busspeed <= 40000000)
+ gpio |= 0x30;
+ else if ((cpu_busspeed > 40000000) && (cpu_busspeed <= 50000000))
+ gpio |= 0x00;
+ else if ((cpu_busspeed > 50000000) && (cpu_busspeed <= 60000000))
+ gpio |= 0x20;
+ else if (cpu_busspeed > 60000000)
+ gpio |= 0x10;
+
+ if (cpu_dmulti <= 1.5)
+ gpio |= 0x82;
+ else if ((cpu_dmulti > 1.5) && (cpu_dmulti <= 2.0))
+ gpio |= 0x02;
+ else if ((cpu_dmulti > 2.0) && (cpu_dmulti <= 2.5))
+ gpio |= 0x00;
+ else if (cpu_dmulti > 2.5)
+ gpio |= 0x80;
+
+ machine_set_gpio_default(gpio);
+}
+
+static const device_config_t vectra52_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "vectra52_0705",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "GU.07.02 (01/25/96)",
+ .internal_name = "vectra52_0702",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/vectra52/d3653.bin", "" }
+ },
+ {
+ .name = "GU.07.05 (08/06/96)",
+ .internal_name = "vectra52_0705",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/vectra52/GU0705US.FUL", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t vectra52_device = {
+ .name = "HP Vectra VE 5/xxx Series 2",
+ .internal_name = "vectra52",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = vectra52_config
+};
+
+int
+machine_at_vectra52_init(const machine_t *model)
+{
+ int ret = 0;
+ const char *fn;
+
+ /* No ROMs available */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
+ machine_at_common_init_ex(model, 2);
+ machine_at_vectra52_gpio_init();
+
+ pci_init(PCI_CONFIG_TYPE_1);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x0D, PCI_CARD_VIDEO, 0, 0, 0, 0);
+ pci_register_slot(0x06, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x07, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ device_add(&i430fx_device);
+ device_add(&piix_device);
+ device_add_params(&pc87306_device, (void *) PCX730X_PHOENIX_42);
+ device_add(&intel_flash_bxt_device);
+
+ if (gfxcard[0] == VID_INTERNAL)
+ device_add(machine_get_vid_device(machine));
+
+ return ret;
+}
+int
+machine_at_vectra500mt_init(const machine_t *model)
+{
+ int ret;
+
+ ret = bios_load_linear("roms/machines/vectra500mt/GJ0718.FUL",
+ 0x000e0000, 131072, 0);
+
+ if (bios_only || !ret)
+ return ret;
+
+ machine_at_common_init_ex(model, 2);
+
+ pci_init(PCI_CONFIG_TYPE_1);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x0D, PCI_CARD_VIDEO, 0, 0, 0, 0);
+ pci_register_slot(0x06, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x07, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
+ if (gfxcard[0] == VID_INTERNAL)
+ device_add(machine_get_vid_device(machine));
+
+ device_add(&i430fx_device);
+ device_add(&piix_device);
+ device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_NORMAL));
+ device_add(&sst_flash_29ee010_device);
+
+ return ret;
+}
+
int
machine_at_vectra54_init(const machine_t *model)
{
@@ -175,22 +336,44 @@ machine_at_vectra54_init(const machine_t *model)
static const device_config_t thor_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "thor",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Intel AMIBIOS - Revision 1.00.03.CN0T (Gateway 2000)", .internal_name = "gw2katx", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/thor/1003CN0T.BIO", "roms/machines/thor/1003CN0T.BI1", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.06.CN0", .internal_name = "thor", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/thor/1006cn0_.bio", "roms/machines/thor/1006cn0_.bi1", "" } },
- { .name = "MR BIOS V3.28", .internal_name = "mrthor", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/thor/mr_atx.bio", "" } },
+ .default_int = 0,
+ .file_filter = "",
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.03.CN0T (Gateway 2000)",
+ .internal_name = "gw2katx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/thor/1003CN0T.BIO", "roms/machines/thor/1003CN0T.BI1", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.06.CN0",
+ .internal_name = "thor",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/thor/1006cn0_.bio", "roms/machines/thor/1006cn0_.bi1", "" }
+ },
+ {
+ .name = "MR BIOS V3.28",
+ .internal_name = "mrthor",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/thor/mr_atx.bio", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -252,15 +435,18 @@ machine_at_thor_gpio_init(void)
else if (cpu_busspeed > 60000000)
gpio |= 0xffff1000;
+ if (sound_card_current[0] == SOUND_INTERNAL)
+ gpio |= 0xffff0400;
+
machine_set_gpio_default(gpio);
}
int
machine_at_thor_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
- const char* fn2;
+ int ret = 0;
+ const char *fn;
+ const char *fn2;
/* No ROMs available */
if (!device_available(model->device))
@@ -269,7 +455,7 @@ machine_at_thor_init(const machine_t *model)
device_context(model->device);
int is_mr = !strcmp(device_get_config_bios("bios"), "mrthor");
int has_video = !strcmp(device_get_config_bios("bios"), "thor");
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
if (is_mr)
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
else {
@@ -293,6 +479,9 @@ machine_at_thor_init(const machine_t *model)
if (has_video && (gfxcard[0] == VID_INTERNAL))
device_add(machine_get_vid_device(machine));
+ if (has_video && (sound_card_current[0] == SOUND_INTERNAL))
+ machine_snd = device_add(machine_get_snd_device(machine));
+
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&pc87306_device, (void *) PCX730X_AMI);
@@ -366,20 +555,73 @@ machine_at_endeavor_gpio_handler(uint8_t write, uint32_t val)
if (write) {
ret &= ((val & 0xffffffcf) | 0xffff0000);
ret |= (val & 0x00000030);
- if (machine_snd != NULL) switch ((val >> 4) & 0x03) {
- case 0x00:
- sb_vibra16s_onboard_relocate_base(0x0220, machine_snd);
- break;
- case 0x01:
- sb_vibra16s_onboard_relocate_base(0x0260, machine_snd);
- break;
- case 0x02:
- sb_vibra16s_onboard_relocate_base(0x0240, machine_snd);
- break;
- case 0x03:
- sb_vibra16s_onboard_relocate_base(0x0280, machine_snd);
- break;
- }
+ if (machine_snd != NULL)
+ switch ((val >> 4) & 0x03) {
+ case 0x00:
+ sb_vibra16s_onboard_relocate_base(0x0220, machine_snd);
+ break;
+ case 0x01:
+ sb_vibra16s_onboard_relocate_base(0x0260, machine_snd);
+ break;
+ case 0x02:
+ sb_vibra16s_onboard_relocate_base(0x0240, machine_snd);
+ break;
+ case 0x03:
+ sb_vibra16s_onboard_relocate_base(0x0280, machine_snd);
+ break;
+ }
+ machine_set_gpio(ret);
+ } else
+ ret = machine_get_gpio();
+
+ return ret;
+}
+
+static void
+machine_at_monaco_gpio_init(void)
+{
+ uint32_t gpio = 0xffffe0cf;
+
+ /* Register 0x0079: */
+ /* Bit 7: 0 = Clear password, 1 = Keep password. */
+ /* Bit 6: 0 = NVRAM cleared by jumper, 1 = NVRAM normal. */
+ /* Bit 5: 0 = CMOS Setup disabled, 1 = CMOS Setup enabled. */
+ /* Bit 4: External CPU clock (Switch 8). */
+ /* Bit 3: External CPU clock (Switch 7). */
+ /* 50 MHz: Switch 7 = Off, Switch 8 = Off. */
+ /* 60 MHz: Switch 7 = On, Switch 8 = Off. */
+ /* 66 MHz: Switch 7 = Off, Switch 8 = On. */
+ /* Bit 2: 0 = On-board audio absent, 1 = On-board audio present. */
+ /* Bit 1: 0 = Soft-off capable power supply present, 1 = Soft-off capable power supply absent. */
+ /* Bit 0: 0 = 2x multiplier, 1 = 1.5x multiplier (Switch 6). */
+ /* NOTE: A bit is read as 1 if switch is off, and as 0 if switch is on. */
+ if (cpu_busspeed <= 50000000)
+ gpio |= 0xffff0000;
+ else if ((cpu_busspeed > 50000000) && (cpu_busspeed <= 60000000))
+ gpio |= 0xffff0800;
+ else if (cpu_busspeed > 60000000)
+ gpio |= 0xffff1000;
+
+ if (sound_card_current[0] == SOUND_INTERNAL)
+ gpio |= 0xffff0400;
+
+ if (cpu_dmulti <= 1.5)
+ gpio |= 0xffff0100;
+ else
+ gpio |= 0xffff0000;
+
+ machine_set_gpio_default(gpio);
+}
+
+uint32_t
+machine_at_monaco_gpio_handler(uint8_t write, uint32_t val)
+{
+ uint32_t ret = machine_get_gpio_default();
+
+ if (write) {
+ ret &= ((val & 0xffffffcf) | 0xffff0000);
+ ret |= (val & 0x00000030);
+
machine_set_gpio(ret);
} else
ret = machine_get_gpio();
@@ -425,17 +667,205 @@ machine_at_endeavor_init(const machine_t *model)
return ret;
}
+/* The Monaco and Atlantis share the same GPIO config */
+#define machine_at_atlantis_gpio_init machine_at_monaco_gpio_init
+
int
-machine_at_ms5119_init(const machine_t *model)
+machine_at_atlantis_init(const machine_t *model)
{
int ret;
- ret = bios_load_linear("roms/machines/ms5119/A37EB.ROM",
- 0x000e0000, 131072, 0);
+ ret = bios_load_linear_combined("roms/machines/atlantis/1007CL0_.BIO",
+ "roms/machines/atlantis/1007CL0_.BI1",
+ 0x20000, 128);
if (bios_only || !ret)
return ret;
+ machine_at_common_init_ex(model, 2);
+ machine_at_atlantis_gpio_init();
+
+ pci_init(PCI_CONFIG_TYPE_1);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x08, PCI_CARD_VIDEO, 4, 0, 0, 0);
+ pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
+ if (gfxcard[0] == VID_INTERNAL)
+ device_add(machine_get_vid_device(machine));
+
+ if (sound_card_current[0] == SOUND_INTERNAL)
+ machine_snd = device_add(machine_get_snd_device(machine));
+
+ device_add(&i430fx_device);
+ device_add(&piix_device);
+ device_add_params(&pc87306_device, (void *) PCX730X_AMI);
+ device_add(&intel_flash_bxt_ami_device);
+
+ return ret;
+}
+
+static const device_config_t monaco_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "monaco",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.07.BU0",
+ .internal_name = "monaco",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/monaco/1007BU0_.BIO", "roms/machines/monaco/1007BU0_.BI1", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.12.BU0Q (AST Bravo MS-T)",
+ .internal_name = "bravomst",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/monaco/1012BU0Q.BIO", "roms/machines/monaco/1012BU0Q.BI1", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t monaco_device = {
+ .name = "Intel Advanced/MA (Monaco)",
+ .internal_name = "monaco_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = monaco_config
+};
+
+int
+machine_at_monaco_init(const machine_t *model)
+{
+ int ret = 0;
+ const char *fn;
+ const char *fn2;
+
+ /* No ROMs available */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn2 = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 1);
+ ret = bios_load_linear_combined(fn, fn2, 0x20000, 128);
+ device_context_restore();
+
+ machine_at_common_init_ex(model, 2);
+ machine_at_monaco_gpio_init();
+
+ pci_init(PCI_CONFIG_TYPE_1);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x0B, PCI_CARD_VIDEO, 1, 2, 3, 4);
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 3, 2, 4);
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 3, 4);
+
+ if (gfxcard[0] == VID_INTERNAL)
+ device_add(machine_get_vid_device(machine));
+
+ if (sound_card_current[0] == SOUND_INTERNAL)
+ machine_snd = device_add(machine_get_snd_device(machine));
+
+ device_add(&i430fx_device);
+ device_add(&piix_device);
+ device_add_params(&pc87306_device, (void *) PCX730X_AMI);
+ device_add(&intel_flash_bxt_ami_device);
+
+ return ret;
+}
+
+static const device_config_t ms5119_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "ms5119",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 6 (071595) - Revision A37EB",
+ .internal_name = "ms5119",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ms5119/A37EB.ROM", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Release 2.3 (by Rainbow)",
+ .internal_name = "ms5119_451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ms5119/MS-5120.BIN", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t ms5119_device = {
+ .name = "MSI MS-5119",
+ .internal_name = "ms5119_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = ms5119_config
+};
+
+int
+machine_at_ms5119_init(const machine_t *model)
+{
+ int ret = 0;
+ const char *fn;
+
+ /* No ROMs available */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init(model);
pci_init(PCI_CONFIG_TYPE_1);
@@ -508,6 +938,7 @@ machine_at_pb640_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 2, 1, 4);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i430fx_rev02_device);
device_add(&piix_rev02_device);
@@ -535,11 +966,12 @@ machine_at_mb500n_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x11, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_no_mirq_device);
@@ -549,17 +981,72 @@ machine_at_mb500n_init(const machine_t *model)
return ret;
}
+static const device_config_t fmb_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "fmb",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 1.83",
+ .internal_name = "fmb",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/fmb/P5IV183.ROM", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - 2001 Release (by Rainbow)",
+ .internal_name = "fmb_451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/fmb/P5I437FM.BIN", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t fmb_device = {
+ .name = "QDI FMB",
+ .internal_name = "fmb_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = fmb_config
+};
+
int
machine_at_fmb_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/fmb/P5IV183.ROM",
- 0x000e0000, 131072, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init(model);
pci_init(PCI_CONFIG_TYPE_1);
@@ -595,11 +1082,12 @@ machine_at_acerv35n_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
- pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&i430hx_device);
device_add(&piix3_device);
/* The chip is not marked FR but the BIOS accesses register 06h of GPIO. */
@@ -630,6 +1118,7 @@ machine_at_ap53_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x06, PCI_CARD_VIDEO, 1, 2, 3, 4);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -659,6 +1148,7 @@ machine_at_8500tuc_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -671,24 +1161,53 @@ machine_at_8500tuc_init(const machine_t *model)
static const device_config_t d943_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "d943",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 }, /*W1*/
- .bios = {
- { .name = "PhoenixBIOS 4.05 - Revision 1.02.943", .internal_name = "d943_oct96", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d943/d943_oct96.bin", "" } },
- { .name = "PhoenixBIOS 4.05 - Revision 1.03.943", .internal_name = "d943_dec96", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d943/d943_dec96.bin", "" } },
- { .name = "PhoenixBIOS 4.05 - Revision 1.05.943", .internal_name = "d943_sept97", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d943/d943_sept97.bin", "" } },
- { .name = "PhoenixBIOS 4.05 - Revision 1.06.943", .internal_name = "d943", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/d943/d943_oct97.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 1.02.943",
+ .internal_name = "d943_oct96",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d943/d943_oct96.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 1.03.943",
+ .internal_name = "d943_dec96",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d943/d943_dec96.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 1.05.943",
+ .internal_name = "d943_sept97",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d943/d943_sept97.bin", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 1.06.943",
+ .internal_name = "d943",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/d943/d943_oct97.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -711,18 +1230,18 @@ const device_t d943_device = {
int
machine_at_d943_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
-
+
machine_at_common_init_ex(model, 2);
device_add(&amstrad_megapc_nvr_device);
@@ -731,8 +1250,9 @@ machine_at_d943_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x08, PCI_CARD_VIDEO, 4, 0, 0, 0);
pci_register_slot(0x11, PCI_CARD_NORMAL, 3, 2, 4, 1);
- pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 1, 3, 4);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 3, 2, 4);
+
device_add(&i430hx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -790,22 +1310,44 @@ machine_at_gw2kma_init(const machine_t *model)
static const device_config_t c5sbm2_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "5sbm2",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Award Modular BIOS v4.50GP - Revision 07/17/1995", .internal_name = "5sbm2_v450gp", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/5sbm2/5SBM0717.BIN", "" } },
- { .name = "Award Modular BIOS v4.50PG - Revision 03/26/1996", .internal_name = "5sbm2", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/5sbm2/5SBM0326.BIN", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision 2.2 (by Unicore Software)", .internal_name = "5sbm2_451pg", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/5sbm2/2A5ICC3A.BIN", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.50GP - Revision 07/17/1995",
+ .internal_name = "5sbm2_v450gp",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/5sbm2/5SBM0717.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.50PG - Revision 03/26/1996",
+ .internal_name = "5sbm2",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/5sbm2/5SBM0326.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision 2.2 (by Unicore Software)",
+ .internal_name = "5sbm2_451pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/5sbm2/2A5ICC3A.BIN", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -828,15 +1370,15 @@ const device_t c5sbm2_device = {
int
machine_at_5sbm2_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -893,22 +1435,44 @@ machine_at_amis727_init(const machine_t *model)
static const device_config_t ap5s_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "ap5s",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Award Modular BIOS v4.50PG - Revision R1.20", .internal_name = "ap5s_450pg", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/ap5s/ap5s120.bin", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision R1.50", .internal_name = "ap5s_r150", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/ap5s/AP5S150.BIN", "" } },
- { .name = "Award Modular BIOS v4.51PG - Revision R1.60", .internal_name = "ap5s", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/ap5s/ap5s160.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.50PG - Revision R1.20",
+ .internal_name = "ap5s_450pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ap5s/ap5s120.bin", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision R1.50",
+ .internal_name = "ap5s_r150",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ap5s/AP5S150.BIN", "" }
+ },
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision R1.60",
+ .internal_name = "ap5s",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ap5s/ap5s160.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -931,15 +1495,15 @@ const device_t ap5s_device = {
int
machine_at_ap5s_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -1038,12 +1602,13 @@ machine_at_zeoswildcat_init(const machine_t *model)
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x0D, PCI_CARD_IDE, 1, 2, 0, 0); /* Onboard device */
- pci_register_slot(0x0E, PCI_CARD_SCSI, 1, 0, 0, 0); /* Onboard device */
- pci_register_slot(0x0F, PCI_CARD_NETWORK, 1, 0, 0, 0); /* Onboard device */
- pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 3, 4); /* Slot 03 */
- pci_register_slot(0x12, PCI_CARD_NORMAL, 4, 2, 3, 1); /* Slot 04 */
- pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2); /* Slot 05 */
+ pci_register_slot(0x0D, PCI_CARD_IDE, 1, 2, 0, 0); /* Onboard device */
+ pci_register_slot(0x0E, PCI_CARD_SCSI, 1, 0, 0, 0); /* Onboard device */
+ pci_register_slot(0x0F, PCI_CARD_NETWORK, 1, 0, 0, 0); /* Onboard device */
+ pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 3, 4); /* Slot 03 */
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 4, 2, 3, 1); /* Slot 04 */
+ pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2); /* Slot 05 */
+
/* Per the machine's manual there was an option for AMD SCSI and/or LAN controllers */
device_add(&vl82c59x_wildcat_device);
device_add(&intel_flash_bxt_device);
diff --git a/src/machine/m_at_socket8.c b/src/machine/m_at_socket8.c
index 11262ef4a..11fbcd694 100644
--- a/src/machine/m_at_socket8.c
+++ b/src/machine/m_at_socket8.c
@@ -61,6 +61,7 @@ machine_at_ap61_init(const machine_t *model)
pci_register_slot(0x04, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i450kx_device);
device_add(&sio_zb_device);
device_add(&ide_cmd646_device);
@@ -94,6 +95,7 @@ machine_at_p6rp4_init(const machine_t *model)
pci_register_slot(0x06, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x04, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i450kx_device);
device_add(&sio_zb_device);
device_add(&ide_cmd646_device);
@@ -108,20 +110,35 @@ machine_at_p6rp4_init(const machine_t *model)
static const device_config_t ficpo6000_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "405F05C",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 }, /*W1*/
- .bios = {
- { .name = "PhoenixBIOS 4.05 - Revision 405F03C (CD-ROM Boot support)", .internal_name = "405F03C", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/ficpo6000/405F03C.ROM", "" } },
- { .name = "PhoenixBIOS 4.05 - Revision 405F05C (No CD-ROM Boot support)", .internal_name = "405F05C", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 131072, .files = { "roms/machines/ficpo6000/405F05C.ROM", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 405F03C (CD-ROM Boot support)",
+ .internal_name = "405F03C",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ficpo6000/405F03C.ROM", "" }
+ },
+ {
+ .name = "PhoenixBIOS 4.05 - Revision 405F05C (No CD-ROM Boot support)",
+ .internal_name = "405F05C",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ficpo6000/405F05C.ROM", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -135,7 +152,7 @@ const device_t ficpo6000_device = {
.init = NULL,
.close = NULL,
.reset = NULL,
- .available = NULL,
+ .available = NULL,
.speed_changed = NULL,
.force_redraw = NULL,
.config = ficpo6000_config
@@ -144,15 +161,15 @@ const device_t ficpo6000_device = {
int
machine_at_ficpo6000_init(const machine_t *model)
{
- int ret = 0;
- const char* fn;
+ int ret = 0;
+ const char *fn;
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
device_context_restore();
@@ -167,6 +184,7 @@ machine_at_ficpo6000_init(const machine_t *model)
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0c, PCI_CARD_IDE, 0, 0, 0, 0);
+
device_add(&i450kx_device);
device_add(&sio_zb_device);
device_add(&ide_cmd646_device);
@@ -189,7 +207,7 @@ machine_at_acerv60n_init(const machine_t *model)
if (bios_only || !ret)
return ret;
- machine_at_common_init_ex(model,2 );
+ machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
@@ -199,6 +217,7 @@ machine_at_acerv60n_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x12, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x0C, PCI_CARD_NORMAL, 2, 3, 4, 1);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
@@ -244,6 +263,7 @@ machine_at_8600ttc_init(const machine_t *model)
pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -273,6 +293,7 @@ machine_at_686nx_init(const machine_t *model)
pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -282,6 +303,15 @@ machine_at_686nx_init(const machine_t *model)
return ret;
}
+uint32_t
+machine_ap440fx_vs440fx_gpio_handler(uint8_t write, uint32_t val)
+{
+ if (!write)
+ return 0xff7f;
+
+ return val; /* Writes are ignored. */
+}
+
int
machine_at_ap440fx_init(const machine_t *model)
{
@@ -306,6 +336,7 @@ machine_at_ap440fx_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 2, 1, 4);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 4);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&pc87307_device, (void *) (PCX730X_AMI | PCX7307_PC87307));
@@ -323,28 +354,50 @@ machine_at_ap440fx_init(const machine_t *model)
static const device_config_t vs440fx_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "vs440fx",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Intel AMIBIOS - Revision 1.00.06.CS1J (Dell Dimension XPS Pro___n)", .internal_name = "dellvenus", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/vs440fx/1006CS1J.BIO", "roms/machines/vs440fx/1006CS1J.BI1",
- "roms/machines/vs440fx/1006CS1J.BI2", "roms/machines/vs440fx/1006CS1J.BI3",
- "roms/machines/vs440fx/1006CS1J.RCV", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.11.CS1T (Gateway 2000)", .internal_name = "gw2kvenus", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/vs440fx/1011CS1T.BIO", "roms/machines/vs440fx/1011CS1T.BI1",
- "roms/machines/vs440fx/1011CS1T.BI2", "roms/machines/vs440fx/1011CS1T.BI3",
- "roms/machines/vs440fx/1011CS1T.RCV", "" } },
- { .name = "Intel AMIBIOS - Revision 1.00.18.CS1", .internal_name = "vs440fx", .bios_type = BIOS_NORMAL,
- .files_no = 5, .local = 0, .size = 262144, .files = { "roms/machines/vs440fx/1018CS1_.BIO", "roms/machines/vs440fx/1018CS1_.BI1",
- "roms/machines/vs440fx/1018CS1_.BI2", "roms/machines/vs440fx/1018CS1_.BI3",
- "roms/machines/vs440fx/1018CS1_.RCV", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.06.CS1J (Dell Dimension XPS Pro___n)",
+ .internal_name = "dellvenus",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/vs440fx/1006CS1J.BIO", "roms/machines/vs440fx/1006CS1J.BI1",
+ "roms/machines/vs440fx/1006CS1J.BI2", "roms/machines/vs440fx/1006CS1J.BI3",
+ "roms/machines/vs440fx/1006CS1J.RCV", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.11.CS1T (Gateway 2000)",
+ .internal_name = "gw2kvenus",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/vs440fx/1011CS1T.BIO", "roms/machines/vs440fx/1011CS1T.BI1",
+ "roms/machines/vs440fx/1011CS1T.BI2", "roms/machines/vs440fx/1011CS1T.BI3",
+ "roms/machines/vs440fx/1011CS1T.RCV", "" }
+ },
+ {
+ .name = "Intel AMIBIOS - Revision 1.00.18.CS1",
+ .internal_name = "vs440fx",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 5,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/vs440fx/1018CS1_.BIO", "roms/machines/vs440fx/1018CS1_.BI1",
+ "roms/machines/vs440fx/1018CS1_.BI2", "roms/machines/vs440fx/1018CS1_.BI3",
+ "roms/machines/vs440fx/1018CS1_.RCV", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -367,15 +420,15 @@ const device_t vs440fx_device = {
int
machine_at_vs440fx_init(const machine_t *model)
{
- int ret = 0;
- const char* fn[5];
+ int ret = 0;
+ const char *fn[5];
/* No ROMs available */
if (!device_available(model->device))
return ret;
device_context(model->device);
- for (int i = 0; i < 5; i++)
+ for (uint8_t i = 0; i < 5; i++)
fn[i] = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), i);
ret = bios_load_linear_combined2(fn[0], fn[1], fn[2], fn[3], fn[4], 0x3a000, 128);
device_context_restore();
@@ -389,6 +442,7 @@ machine_at_vs440fx_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&pc87307_device, (void *) (PCX730X_AMI | PCX7307_PC87307));
@@ -421,6 +475,7 @@ machine_at_lgibmx61_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
@@ -450,6 +505,7 @@ machine_at_m6mi_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x10, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX5 | FDC37C93X_NORMAL));
@@ -478,6 +534,7 @@ machine_at_mb600n_init(const machine_t *model)
pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
pci_register_slot(0x13, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&i440fx_device);
device_add(&piix3_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
diff --git a/src/machine/m_at_sockets7.c b/src/machine/m_at_sockets7.c
index a39b2cef4..550da59b9 100644
--- a/src/machine/m_at_sockets7.c
+++ b/src/machine/m_at_sockets7.c
@@ -53,18 +53,19 @@ machine_at_p5a_init(const machine_t *model)
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
- pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
- pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE_IDE, 1, 2, 3, 4);
pci_register_slot(0x03, PCI_CARD_SOUTHBRIDGE_PMU, 1, 2, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE_USB, 1, 2, 3, 4);
- pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
- pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
- pci_register_slot(0x06, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x06, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
device_add(&ali1541_device);
device_add(&ali1543c_device); /* +0 */
device_add(&sst_flash_39sf020_device);
@@ -88,15 +89,16 @@ machine_at_m579_init(const machine_t *model)
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
- pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
- pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE_IDE, 1, 2, 3, 4);
pci_register_slot(0x03, PCI_CARD_SOUTHBRIDGE_PMU, 1, 2, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE_USB, 1, 2, 3, 4);
- pci_register_slot(0x10, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x10, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&ali1541_device);
device_add(&ali1543c_device); /* +0 */
device_add(&sst_flash_29ee010_device);
@@ -119,16 +121,17 @@ machine_at_gwlucas_init(const machine_t *model)
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
- pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
- pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x0E, PCI_CARD_SOUTHBRIDGE_IDE, 1, 2, 3, 4);
pci_register_slot(0x03, PCI_CARD_SOUTHBRIDGE_PMU, 1, 2, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE_USB, 1, 2, 3, 4);
- pci_register_slot(0x0F, PCI_CARD_SOUND, 1, 2, 3, 4); // ES1373
- pci_register_slot(0x14, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0F, PCI_CARD_SOUND, 1, 2, 3, 4); // ES1373
+ pci_register_slot(0x14, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x12, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
+
device_add(&ali1541_device);
device_add(&ali1543c_device); /* +0 */
device_add(&sst_flash_39sf020_device);
@@ -156,15 +159,16 @@ machine_at_5aa_init(const machine_t *model)
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
- pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
- pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE_IDE, 1, 2, 3, 4);
pci_register_slot(0x03, PCI_CARD_SOUTHBRIDGE_PMU, 1, 2, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE_USB, 1, 2, 3, 4);
- pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
+
device_add(&ali1541_device);
device_add(&ali1543c_device); /* +0 */
device_add(&sst_flash_29ee010_device);
@@ -173,31 +177,87 @@ machine_at_5aa_init(const machine_t *model)
return ret;
}
+static const device_config_t g5x_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "5ax",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Award Modular BIOS v4.51PG - Revision F4",
+ .internal_name = "5ax",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/5ax/5AX.F4", "" }
+ },
+ {
+ .name = "Phoenix - AwardBIOS v6.00PG - Release 4.1 (by eSupport)",
+ .internal_name = "5ax_600pg",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/5ax/6Z5KKG09.bin", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t g5x_device = {
+ .name = "Gigabyte GA-5AX",
+ .internal_name = "g5x_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = g5x_config
+};
+
int
-machine_at_5ax_init(const machine_t *model)
+machine_at_g5x_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/5ax/5AX.F4",
- 0x000e0000, 131072, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
- pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
- pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
- pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 0, 0);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE_IDE, 1, 2, 3, 4);
pci_register_slot(0x03, PCI_CARD_SOUTHBRIDGE_PMU, 1, 2, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE_USB, 1, 2, 3, 4);
- pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
- pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
- pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
- pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
- pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
+ pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
+ pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
+
device_add(&ali1541_device);
device_add(&ali1543c_device); /* +0 */
device_add(&sst_flash_29ee010_device);
@@ -238,17 +298,72 @@ machine_at_ax59pro_init(const machine_t *model)
return ret;
}
+static const device_config_t delhi3_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "delhi3",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 1.01",
+ .internal_name = "delhi3_nonoem",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/delhi3/DELHI3_nonoem.ROM", "" }
+ },
+ {
+ .name = "AMIBIOS 6 (071595) - Revision 1.20 (eMachines eTower 3__k)",
+ .internal_name = "delhi3",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/delhi3/DELHI3.ROM", "" }
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t delhi3_device = {
+ .name = "TriGem Delhi-III",
+ .internal_name = "delhi3_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = delhi3_config
+};
+
int
machine_at_delhi3_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/delhi3/DELHI3.ROM",
- 0x000c0000, 262144, 0);
-
- if (bios_only || !ret)
+ /* No ROMs available */
+ if (!device_available(model->device))
return ret;
+ device_context(model->device);
+ fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
+ device_context_restore();
+
machine_at_common_init_ex(model, 2);
pci_init(PCI_CONFIG_TYPE_1);
@@ -370,6 +485,37 @@ machine_at_5emapro_init(const machine_t *model)
return ret;
}
+int
+machine_at_k6bv3p_a_init(const machine_t *model)
+{
+ int ret;
+
+ ret = bios_load_linear("roms/machines/k6bv3p_a/KB3A0805.BIN",
+ 0x000e0000, 131072, 0);
+
+ if (bios_only || !ret)
+ return ret;
+
+ machine_at_common_init_ex(model, 2);
+
+ pci_init(PCI_CONFIG_TYPE_1);
+ pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 5);
+ pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 5);
+ pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 5);
+ pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 5, 1);
+ pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 5, 1, 2);
+ pci_register_slot(0x0B, PCI_CARD_NORMAL, 5, 1, 2, 3);
+ pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 5);
+
+ device_add(&via_mvp3_device);
+ device_add(&via_vt82c586b_device);
+ device_add_params(&fdc37c669_device, (void *) 0); /* jmi2k: what's that param? */
+ device_add(&winbond_flash_w29c011a_device);
+ spd_register(SPD_TYPE_SDRAM, 0x7, 256);
+
+ return ret;
+}
+
/* SiS 5591 */
int
machine_at_5sg100_init(const machine_t *model)
@@ -392,6 +538,7 @@ machine_at_5sg100_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x02, PCI_CARD_AGPBRIDGE, 0, 0, 0, 0);
+
device_add(&sis_5591_1997_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&sst_flash_29ee010_device);
diff --git a/src/machine/m_elt.c b/src/machine/m_elt.c
index 17775d430..b965486d1 100644
--- a/src/machine/m_elt.c
+++ b/src/machine/m_elt.c
@@ -92,8 +92,8 @@ sysstat_out(UNUSED(uint16_t port), uint8_t val, void *priv)
static uint8_t
sysstat_in(UNUSED(uint16_t port), void *priv)
{
- const cga_t *cga = priv;
- uint8_t ret = 0x0a; /* No idea what these bits are */
+ const cga_t *cga = priv;
+ uint8_t ret = 0x0a; /* No idea what these bits are */
/* External CRT. We don't emulate the LCD/CRT switching, let's just
* frivolously use this bit to indicate we're using the LCD if the
diff --git a/src/machine/m_europc.c b/src/machine/m_europc.c
index c388e64e3..c9f03295f 100644
--- a/src/machine/m_europc.c
+++ b/src/machine/m_europc.c
@@ -675,23 +675,24 @@ europc_close(UNUSED(void *priv))
}
static const device_config_t europc_config[] = {
- // clang-format off
+ // clang-format off
{
- .name = "js9",
- .description = "JS9 Jumper (JIM)",
- .type = CONFIG_HEX16,
- .default_string = "",
- .default_int = 0x0250,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "js9",
+ .description = "JS9 Jumper (JIM)",
+ .type = CONFIG_HEX16,
+ .default_string = NULL,
+ .default_int = 0x0250,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "Disabled (250h)", .value = 0x0250 },
{ .description = "Enabled (350h)", .value = 0x0350 },
- { .description = "" }
+ { .description = "" }
},
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t europc_device = {
diff --git a/src/machine/m_pcjr.c b/src/machine/m_pcjr.c
index 9d4df7528..78f7ba710 100644
--- a/src/machine/m_pcjr.c
+++ b/src/machine/m_pcjr.c
@@ -41,6 +41,7 @@
#include <86box/rom.h>
#include <86box/fdd.h>
#include <86box/fdc.h>
+#include <86box/fdc_ext.h>
#include <86box/sound.h>
#include <86box/snd_speaker.h>
#include <86box/snd_sn76489.h>
@@ -50,16 +51,14 @@
#include <86box/machine.h>
#include <86box/plat_unused.h>
-
-#define STAT_PARITY 0x80
-#define STAT_RTIMEOUT 0x40
-#define STAT_TTIMEOUT 0x20
-#define STAT_LOCK 0x10
-#define STAT_CD 0x08
-#define STAT_SYSFLAG 0x04
-#define STAT_IFULL 0x02
-#define STAT_OFULL 0x01
-
+#define STAT_PARITY 0x80
+#define STAT_RTIMEOUT 0x40
+#define STAT_TTIMEOUT 0x20
+#define STAT_LOCK 0x10
+#define STAT_CD 0x08
+#define STAT_SYSFLAG 0x04
+#define STAT_IFULL 0x02
+#define STAT_OFULL 0x01
static uint8_t key_queue[16];
static int key_queue_start = 0;
@@ -68,7 +67,7 @@ static int key_queue_end = 0;
/*PCjr keyboard has no escape scancodes, and no scancodes beyond 54
Map right alt to 54h (FN) */
const scancode scancode_pcjr[512] = {
- // clang-format off
+ // clang-format off
{ .mk = { 0 }, .brk = { 0 } }, /* 000 */
{ .mk = { 0x01, 0 }, .brk = { 0x81, 0 } }, /* 001 */
{ .mk = { 0x02, 0 }, .brk = { 0x82, 0 } }, /* 002 */
@@ -581,10 +580,9 @@ const scancode scancode_pcjr[512] = {
{ .mk = { 0 }, .brk = { 0 } }, /* 1fd */
{ .mk = { 0 }, .brk = { 0 } }, /* 1fe */
{ .mk = { 0 }, .brk = { 0 } } /* 1ff */
- // clang-format on
+ // clang-format on
};
-
static void
kbd_write(uint16_t port, uint8_t val, void *priv)
{
@@ -655,7 +653,10 @@ kbd_read(uint16_t port, void *priv)
case 0x62:
ret = (pcjr->latched ? 1 : 0);
- ret |= 0x02; /* Modem card not installed */
+ if (!pcjr->option_modem)
+ ret |= 0x02; /* Modem card not installed */
+ if (!pcjr->option_fdc)
+ ret |= 0x04; /* Diskette card not installed */
if (mem_size < 128)
ret |= 0x08; /* 64k expansion card not installed */
if ((pcjr->pb & 0x08) || (cassette == NULL))
@@ -667,6 +668,8 @@ kbd_read(uint16_t port, void *priv)
ret |= (pcjr->data ? 0x40 : 0);
if (pcjr->data)
ret |= 0x40;
+ if (pcjr->option_ir)
+ ret |= 0x80; /* Keyboard cable not connected */
break;
case 0xa0:
@@ -770,7 +773,7 @@ pit_irq0_timer_pcjr(int new_out, int old_out, UNUSED(void *priv))
}
static const device_config_t pcjr_config[] = {
- // clang-format off
+ // clang-format off
{
.name = "display_type",
.description = "Display type",
@@ -785,7 +788,8 @@ static const device_config_t pcjr_config[] = {
{ .description = "RGB (no brown)", .value = PCJR_RGB_NO_BROWN },
{ .description = "RGB (IBM 5153)", .value = PCJR_RGB_IBM_5153 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
.name = "double_type",
@@ -809,10 +813,38 @@ static const device_config_t pcjr_config[] = {
.description = "Apply overscan deltas",
.type = CONFIG_BINARY,
.default_string = NULL,
- .default_int = 1
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
+#if 0
+ {
+ .name = "modem_slot",
+ .description = "Enable Serial Port in Modem Slot",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
+ },
+ {
+ .name = "ir_receiver",
+ .description = "Enable IR Receiver",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
+ },
+#endif
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t pcjr_device = {
@@ -844,6 +876,18 @@ machine_pcjr_init(UNUSED(const machine_t *model))
pcjr = calloc(1, sizeof(pcjr_t));
+#if 0
+ pcjr->option_modem = device_get_config_int("modem_slot");
+#else
+ pcjr->option_modem = 0;
+#endif
+ pcjr->option_fdc = 0;
+#if 0
+ pcjr->option_ir = device_get_config_int("ir_receiver");
+#else
+ pcjr->option_ir = 0;
+#endif
+
is_pcjr = 1;
pic_init_pcjr();
@@ -863,9 +907,13 @@ machine_pcjr_init(UNUSED(const machine_t *model))
keyboard_scan = 1;
key_queue_start = key_queue_end = 0;
io_sethandler(0x0060, 4,
- kbd_read, NULL, NULL, kbd_write, NULL, NULL, pcjr);
+ kbd_read, NULL, NULL,
+ kbd_write, NULL, NULL,
+ pcjr);
io_sethandler(0x00a0, 8,
- kbd_read, NULL, NULL, kbd_write, NULL, NULL, pcjr);
+ kbd_read, NULL, NULL,
+ kbd_write, NULL, NULL,
+ pcjr);
timer_add(&pcjr->send_delay_timer, kbd_poll, pcjr, 1);
keyboard_set_table(scancode_pcjr);
keyboard_send = kbd_adddata_ex;
@@ -875,9 +923,18 @@ machine_pcjr_init(UNUSED(const machine_t *model))
nmi_mask = 0x80;
- device_add(&fdc_pcjr_device);
+ if (fdc_current[0] == FDC_INTERNAL) {
+ device_add(&fdc_pcjr_device);
+ pcjr->option_fdc = 1;
+ }
+
+ if (!pcjr->option_modem)
+ device_add(&ns8250_pcjr_2f8_device);
+ else {
+ device_add(&ns8250_pcjr_3f8_device);
+ device_add(&ns8250_pcjr_2f8_device);
+ }
- device_add(&ns8250_pcjr_device);
/* So that serial_standalone_init() won't do anything. */
serial_set_next_inst(SERIAL_MAX - 1);
diff --git a/src/machine/m_ps1.c b/src/machine/m_ps1.c
index 534424609..b37abdaa8 100644
--- a/src/machine/m_ps1.c
+++ b/src/machine/m_ps1.c
@@ -245,34 +245,98 @@ ps1_read(uint16_t port, void *priv)
static const device_config_t ps1_2011_config[] = {
// clang-format off
{
- .name = "bios_language",
- .description = "BIOS Language",
- .type = CONFIG_BIOS,
+ .name = "bios_language",
+ .description = "BIOS Language",
+ .type = CONFIG_BIOS,
.default_string = "english_us",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
.bios = {
- { .name = "English (US)", .internal_name = "english_us", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 262144, .files = { "roms/machines/ibmps1es/FC0000_US.BIN", "" } },
- { .name = "English (UK)", .internal_name = "english_uk", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 262144, .files = { "roms/machines/ibmps1es/F80000_UK.BIN", "roms/machines/ibmps1es/FC0000_UK.BIN", "" } },
- { .name = "English (Canada)", .internal_name = "english_ca", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 262144, .files = { "roms/machines/ibmps1es/F80000_CA.BIN", "roms/machines/ibmps1es/FC0000_CA.BIN", "" } },
- { .name = "Portuguese", .internal_name = "portuguese", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 262144, .files = { "roms/machines/ibmps1es/F80000_PT.BIN", "roms/machines/ibmps1es/FC0000_PT.BIN", "" } },
- { .name = "German", .internal_name = "german", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 262144, .files = { "roms/machines/ibmps1es/F80000_DE.BIN", "roms/machines/ibmps1es/FC0000_DE.BIN", "" } },
- { .name = "Swedish", .internal_name = "swedish", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 262144, .files = { "roms/machines/ibmps1es/F80000_SE.BIN", "roms/machines/ibmps1es/FC0000_SE.BIN", "" } },
- { .name = "French", .internal_name = "french", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 262144, .files = { "roms/machines/ibmps1es/F80000_FR.BIN", "roms/machines/ibmps1es/FC0000_FR.BIN", "" } },
- { .name = "Italian", .internal_name = "italian", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 524288, .files = { "roms/machines/ibmps1es/f80000.bin", "" } },
- { .name = "Spanish", .internal_name = "spanish", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 524288, .files = { "roms/machines/ibmps1es/F80000_ES.bin", "" } },
+ {
+ .name = "English (US)",
+ .internal_name = "english_us",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ibmps1es/FC0000_US.BIN", "" }
+ },
+ {
+ .name = "English (UK)",
+ .internal_name = "english_uk",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ibmps1es/F80000_UK.BIN", "roms/machines/ibmps1es/FC0000_UK.BIN", "" }
+ },
+ {
+ .name = "English (Canada)",
+ .internal_name = "english_ca",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ibmps1es/F80000_CA.BIN", "roms/machines/ibmps1es/FC0000_CA.BIN", "" }
+ },
+ {
+ .name = "Portuguese",
+ .internal_name = "portuguese",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ibmps1es/F80000_PT.BIN", "roms/machines/ibmps1es/FC0000_PT.BIN", "" }
+ },
+ {
+ .name = "German",
+ .internal_name = "german",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ibmps1es/F80000_DE.BIN", "roms/machines/ibmps1es/FC0000_DE.BIN", "" }
+ },
+ {
+ .name = "Swedish",
+ .internal_name = "swedish",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ibmps1es/F80000_SE.BIN", "roms/machines/ibmps1es/FC0000_SE.BIN", "" }
+ },
+ {
+ .name = "French",
+ .internal_name = "french",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 262144,
+ .files = { "roms/machines/ibmps1es/F80000_FR.BIN", "roms/machines/ibmps1es/FC0000_FR.BIN", "" }
+ },
+ {
+ .name = "Italian",
+ .internal_name = "italian",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 524288,
+ .files = { "roms/machines/ibmps1es/f80000.bin", "" }
+ },
+ {
+ .name = "Spanish",
+ .internal_name = "spanish",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 524288,
+ .files = { "roms/machines/ibmps1es/F80000_ES.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -298,7 +362,7 @@ ps1_setup(int model)
ps1_t *ps;
void *priv;
- ps = (ps1_t *) calloc(1, sizeof(ps1_t));
+ ps = (ps1_t *) calloc(1, sizeof(ps1_t));
ps->model = model;
io_sethandler(0x0091, 1,
@@ -323,25 +387,25 @@ ps1_setup(int model)
if (model == 2011) {
const device_t *d = device_context_get_device();
- const char * bios = device_get_config_bios("bios_language");
- const char * first = device_get_bios_file(d, bios, 0);
- const char * second = device_get_bios_file(d, bios, 1);
+ const char *bios = device_get_config_bios("bios_language");
+ const char *first = device_get_bios_file(d, bios, 0);
+ const char *second = device_get_bios_file(d, bios, 1);
if (!strcmp(bios, "english_us")) {
/* US English */
rom_init(&ps->high_rom, first,
- 0xfc0000, 0x40000, 0x3ffff, 0, MEM_MAPPING_EXTERNAL);
+ 0xfc0000, 0x40000, 0x3ffff, 0, MEM_MAPPING_EXTERNAL);
} else if (second == NULL) {
/* Combined ROM. */
rom_init(&ps->high_rom, first,
- 0xf80000, 0x80000, 0x7ffff, 0, MEM_MAPPING_EXTERNAL);
+ 0xf80000, 0x80000, 0x7ffff, 0, MEM_MAPPING_EXTERNAL);
} else {
/* Split ROM. */
rom_init(&ps->mid_rom, first,
- 0xf80000, 0x40000, 0x3ffff, 0, MEM_MAPPING_EXTERNAL);
+ 0xf80000, 0x40000, 0x3ffff, 0, MEM_MAPPING_EXTERNAL);
rom_init(&ps->high_rom, second,
- 0xfc0000, 0x40000, 0x3ffff, 0, MEM_MAPPING_EXTERNAL);
+ 0xfc0000, 0x40000, 0x3ffff, 0, MEM_MAPPING_EXTERNAL);
}
lpt_set_next_inst(255);
@@ -359,7 +423,9 @@ ps1_setup(int model)
device_add(&ps1vga_device);
} else if (model == 2121) {
io_sethandler(0x00e0, 2,
- ps1_read, NULL, NULL, ps1_write, NULL, NULL, ps);
+ ps1_read, NULL, NULL,
+ ps1_write, NULL, NULL,
+ ps);
if (rom_present("roms/machines/ibmps1_2121/F80000.BIN")) {
rom_init(&ps->mid_rom,
@@ -412,9 +478,9 @@ machine_ps1_p1_handler(void)
int
machine_ps1_m2011_init(const machine_t *model)
{
- int ret;
- const char* fn;
- uint32_t offset;
+ int ret;
+ const char *fn;
+ uint32_t offset;
if (!device_available(model->device)) {
/* No ROMs available. */
@@ -424,7 +490,7 @@ machine_ps1_m2011_init(const machine_t *model)
device_context(model->device);
if ((fn = device_get_bios_file(model->device, device_get_config_bios("bios_language"), 1)) == NULL) {
/* Combined ROM or US English. */
- fn = device_get_bios_file(model->device, device_get_config_bios("bios_language"), 0);
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios_language"), 0);
offset = (!strcmp("english_us", device_get_config_bios("bios_language"))) ? 0x20000 : 0x60000;
} else {
/* Separated ROM. */
@@ -432,7 +498,7 @@ machine_ps1_m2011_init(const machine_t *model)
}
if (!fn) {
- fn = device_get_bios_file(model->device, "us_english", 0);
+ fn = device_get_bios_file(model->device, "us_english", 0);
offset = 0x20000;
}
@@ -447,7 +513,7 @@ machine_ps1_m2011_init(const machine_t *model)
device_context(model->device);
- ps1_setup(2011);
+ ps1_setup(2011);
device_context_restore();
diff --git a/src/machine/m_ps2_isa.c b/src/machine/m_ps2_isa.c
index d768975d5..5754eee11 100644
--- a/src/machine/m_ps2_isa.c
+++ b/src/machine/m_ps2_isa.c
@@ -152,7 +152,7 @@ ps2_isa_setup(int model, int cpu_type)
ps2_isa_t *ps2;
void *priv;
- ps2 = (ps2_isa_t *) calloc(1, sizeof(ps2_isa_t));
+ ps2 = (ps2_isa_t *) calloc(1, sizeof(ps2_isa_t));
ps2->model = model;
ps2->cpu_type = cpu_type;
@@ -167,7 +167,7 @@ ps2_isa_setup(int model, int cpu_type)
ps2->uart = device_add_inst(&ns16450_device, 1);
- ps2->lpt = device_add_inst(&lpt_port_device, 1);
+ ps2->lpt = device_add_inst(&lpt_port_device, 1);
lpt_set_ext(ps2->lpt, 1);
lpt_port_remove(ps2->lpt);
diff --git a/src/machine/m_ps2_mca.c b/src/machine/m_ps2_mca.c
index d35a31451..f02dd265a 100644
--- a/src/machine/m_ps2_mca.c
+++ b/src/machine/m_ps2_mca.c
@@ -105,8 +105,8 @@ static struct ps2_t {
serial_t *uart;
lpt_t *lpt;
- vga_t* mb_vga;
- int has_e0000_hole;
+ vga_t *mb_vga;
+ int has_e0000_hole;
} ps2;
/*The model 70 type 3/4 BIOS performs cache testing. Since 86Box doesn't have any
@@ -144,7 +144,7 @@ static struct ps2_t {
static uint8_t ps2_cache[65536];
static int ps2_cache_valid[65536 / 8];
-static void mem_encoding_update(void);
+static void mem_encoding_update(void);
// #define ENABLE_PS2_MCA_LOG 1
#ifdef ENABLE_PS2_MCA_LOG
int ps2_mca_do_log = ENABLE_PS2_MCA_LOG;
@@ -374,45 +374,47 @@ ps55_model_50t_read(uint16_t port)
return ps2.planar_id >> 8;
case 0x102:
return ps2.option[0];
- case 0x103: {
- uint8_t val = 0xff;
- /*
- I/O 103h - Bit 7-4: Memory Card ID (Connector 1 or 3)
- Bit 3-0: Memory Card ID (Connector 2)
+ case 0x103:
+ {
+ uint8_t val = 0xff;
+ /*
+ I/O 103h - Bit 7-4: Memory Card ID (Connector 1 or 3)
+ Bit 3-0: Memory Card ID (Connector 2)
- Memory Card ID: 7h = 2 MB Memory Card 2 or 3 Installed
- 5h = 4 MB Memory Card 2 Installed
- */
- switch (mem_size / 1024) {
- case 2:
- if (ps2.option[1] & 0x04)
- val = 0xff;
- else
- val = 0x7f;
- break;
- case 4:
- if (ps2.option[1] & 0x04)
- val = 0xff;
- else
- val = 0x77;
- break;
- case 6:
- if (ps2.option[1] & 0x04)
- val = 0x7f;
- else
- val = 0x77;
- break;
- case 8:
- default:
- if (ps2.option[1] & 0x04)
- val = 0x5f;
- else
- val = 0x77;
- break;
+ Memory Card ID: 7h = 2 MB Memory Card 2 or 3 Installed
+ 5h = 4 MB Memory Card 2 Installed
+ */
+ switch (mem_size / 1024) {
+ case 2:
+ if (ps2.option[1] & 0x04)
+ val = 0xff;
+ else
+ val = 0x7f;
+ break;
+ case 4:
+ if (ps2.option[1] & 0x04)
+ val = 0xff;
+ else
+ val = 0x77;
+ break;
+ case 6:
+ if (ps2.option[1] & 0x04)
+ val = 0x7f;
+ else
+ val = 0x77;
+ break;
+ case 8:
+ default:
+ if (ps2.option[1] & 0x04)
+ val = 0x5f;
+ else
+ val = 0x77;
+ break;
+ }
+ ps2_mca_log(" Read MCA %04X %02X %04X:%04X mem_size = %d, ps2option1 = %2X\n", port, val, cs >> 4, cpu_state.pc, mem_size, ps2.option[1]);
+ return val;
}
- ps2_mca_log(" Read MCA %04X %02X %04X:%04X mem_size = %d, ps2option1 = %2X\n", port, val, cs >> 4, cpu_state.pc, mem_size, ps2.option[1]);
- return val;
- } case 0x104:
+ case 0x104:
return ps2.option[2];
case 0x105:
return ps2.option[3];
@@ -434,32 +436,34 @@ ps55_model_50v_read(uint16_t port)
return ps2.planar_id >> 8;
case 0x102:
return ps2.option[0];
- case 0x103: {
- uint8_t val = 0xff;
- /*
- I/O 103h - Bit 7-4: Reserved
- Bit 3-0: Memory Card ID (Connector 3 or 1)
+ case 0x103:
+ {
+ uint8_t val = 0xff;
+ /*
+ I/O 103h - Bit 7-4: Reserved
+ Bit 3-0: Memory Card ID (Connector 3 or 1)
- Memory Card ID: 8h = 4 MB Memory Card IV Installed
- Fh = No Card Installed
- */
- switch (mem_size / 1024) {
- case 4:
- if (ps2.option[1] & 0x04)
- val = 0xff;
- else
- val = 0xf8;
- break;
- case 8:
- default:
- if (ps2.option[1] & 0x04)
- val = 0xf8;
- else
- val = 0xf8;
- break;
+ Memory Card ID: 8h = 4 MB Memory Card IV Installed
+ Fh = No Card Installed
+ */
+ switch (mem_size / 1024) {
+ case 4:
+ if (ps2.option[1] & 0x04)
+ val = 0xff;
+ else
+ val = 0xf8;
+ break;
+ case 8:
+ default:
+ if (ps2.option[1] & 0x04)
+ val = 0xf8;
+ else
+ val = 0xf8;
+ break;
+ }
+ return val;
}
- return val;
- } case 0x104:
+ case 0x104:
/* Reading cache ID (bit 3-2) always returns zero */
return ps2.option[2] & 0xf3;
case 0x105:
@@ -503,7 +507,7 @@ model_50_write(uint16_t port, uint8_t val)
ps2.option[0] = val;
break;
case 0x103:
- ps2.option[1] = val;
+ ps2.option[1] = (ps2.option[1] & 0xfe) | (val & 0x01);
break;
case 0x104:
ps2.option[2] = val;
@@ -530,10 +534,10 @@ model_55sx_mem_recalc(void)
#ifdef ENABLE_PS2_MCA_LOG
int enabled_mem = 0;
#endif
- int base = 0;
- int remap_size = (ps2.option[3] & 0x10) ? 384 : 256;
- int bit_mask = 0x00;
- int max_rows = 4;
+ int base = 0;
+ int remap_size = (ps2.option[3] & 0x10) ? 384 : 256;
+ int bit_mask = 0x00;
+ int max_rows = 4;
int bank_to_rows[16] = { 4, 2, 1, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 2, 1, 0 };
ps2_mca_log("%02X %02X\n", ps2.option[1], ps2.option[3]);
@@ -968,18 +972,15 @@ ps2_mca_write(uint16_t port, uint8_t val, UNUSED(void *priv))
case 0x102:
if (!(ps2.setup & PS2_SETUP_IO))
ps2.planar_write(port, val);
- else if (!(ps2.setup & PS2_SETUP_VGA))
- {
- if (ps2.mb_vga)
- {
+ else if (!(ps2.setup & PS2_SETUP_VGA)) {
+ if (ps2.mb_vga) {
if (vga_isenabled(ps2.mb_vga))
vga_disable(ps2.mb_vga);
if (val & 1)
vga_enable(ps2.mb_vga);
}
ps2.pos_vga = val;
- }
- else if (ps2.adapter_setup & PS2_ADAPTER_SETUP)
+ } else if (ps2.adapter_setup & PS2_ADAPTER_SETUP)
mca_write(port, val);
break;
case 0x103:
@@ -1162,6 +1163,29 @@ ps2_mca_board_model_50_init(void)
ps2.planar_read = model_50_read;
ps2.planar_write = model_50_write;
+ /*
+ I/O 103h - Bit 3: Memory Presence Detect 2
+ Bit 2: Memory Presence Detect 1
+ Bit 1: Password Override Jumper
+ Bit 0: Enable System Board RAM
+ */
+
+ switch (mem_size / 1024) {
+ case 0: /*256Kx2*/
+ ps2.option[1] = 0xf8;
+ break;
+ case 1: /*512Kx2*/
+ ps2.option[1] = 0xf4;
+ break;
+ case 2: /*1Mx2*/
+ default:
+ ps2.option[1] = 0xf0;
+ break;
+ }
+
+ /* Enable password function */
+ ps2.option[1] |= 0x02;
+
if (mem_size > 2048) {
/* Only 2 MB supported on planar, create a memory expansion card for the rest */
ps2_mca_mem_fffc_init(2);
@@ -1182,9 +1206,36 @@ ps2_mca_board_model_60_init(void)
ps2.planar_read = model_50_read;
ps2.planar_write = model_50_write;
- if (mem_size > 2048) {
- /* Only 2 MB supported on planar, create a memory expansion card for the rest */
- ps2_mca_mem_fffc_init(2);
+ /*
+ I/O 103h - Bit 3: Memory Presence Detect 2 (Reversed)
+ Bit 2: Memory Presence Detect 1 (Reversed)
+ Bit 1: Password Override Jumper
+ Bit 0: Enable System Board RAM
+ */
+
+ switch (mem_size / 1024) {
+ case 0: /*256Kx2*/
+ ps2.option[1] = 0xf0;
+ break;
+ case 1: /*256Kx4*/
+ ps2.option[1] = 0xf4;
+ break;
+ case 2: /*512Kx4*/
+ case 3: /*Not supported*/
+ ps2.option[1] = 0xf8;
+ break;
+ case 4: /*1Mx4*/
+ default:
+ ps2.option[1] = 0xfc;
+ break;
+ }
+
+ /* Enable password function */
+ ps2.option[1] |= 0x02;
+
+ if (mem_size > 4096) {
+ /* Only 4 MB supported on planar, create a memory expansion card for the rest */
+ ps2_mca_mem_fffc_init(4);
}
device_add(&ps2_nvr_55ls_device);
@@ -1595,7 +1646,7 @@ machine_ps2_common_init(const machine_t *model)
ps2.uart = device_add_inst(&ns16550_device, 1);
- ps2.lpt = device_add_inst(&lpt_port_device, 1);
+ ps2.lpt = device_add_inst(&lpt_port_device, 1);
lpt_set_ext(ps2.lpt, 1);
ps2.has_e0000_hole = 0;
@@ -1604,24 +1655,36 @@ machine_ps2_common_init(const machine_t *model)
static const device_config_t ps2_model_50_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "ibmps2_m50",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "IBM PS/2 model 50", .internal_name = "ibmps2_m50", .bios_type = BIOS_NORMAL,
- .files_no = 4, .local = 0, .size = 131072, .files = { "roms/machines/ibmps2_m50/90x7420.zm13",
- "roms/machines/ibmps2_m50/90x7429.zm18",
- "roms/machines/ibmps2_m50/90x7423.zm14",
- "roms/machines/ibmps2_m50/90x7426.zm16", "" } },
- { .name = "IBM PS/2 model 50Z", .internal_name = "ibmps2_m50z", .bios_type = BIOS_NORMAL,
- .files_no = 2, .local = 0, .size = 131072, .files = { "roms/machines/ibmps2_m50/15F8366.BIN",
- "roms/machines/ibmps2_m50/15F8365.BIN", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "IBM PS/2 model 50",
+ .internal_name = "ibmps2_m50",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 4,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ibmps2_m50/90x7420.zm13", "roms/machines/ibmps2_m50/90x7429.zm18",
+ "roms/machines/ibmps2_m50/90x7423.zm14", "roms/machines/ibmps2_m50/90x7426.zm16", "" }
+ },
+ {
+ .name = "IBM PS/2 model 50Z",
+ .internal_name = "ibmps2_m50z",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 2,
+ .local = 0,
+ .size = 131072,
+ .files = { "roms/machines/ibmps2_m50/15F8366.BIN", "roms/machines/ibmps2_m50/15F8365.BIN", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -1644,8 +1707,8 @@ const device_t ps2_model_50_device = {
int
machine_ps2_model_50_init(const machine_t *model)
{
- int ret = 0;
- const char* fn[4];
+ int ret = 0;
+ const char *fn[4];
/* No ROMs available */
if (!device_available(model->device))
@@ -1654,11 +1717,11 @@ machine_ps2_model_50_init(const machine_t *model)
device_context(model->device);
int is_50z = !strcmp(device_get_config_bios("bios"), "ibmps2_m50z");
if (is_50z) {
- for (int i = 0; i < 2; i++)
+ for (uint8_t i = 0; i < 2; i++)
fn[i] = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), i);
ret = bios_load_interleaved(fn[0], fn[1], 0x000e0000, 131072, 0);
} else {
- for (int i = 0; i < 4; i++)
+ for (uint8_t i = 0; i < 4; i++)
fn[i] = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), i);
ret = bios_load_interleaved(fn[0], fn[1], 0x000f0000, 131072, 0);
ret &= bios_load_aux_interleaved(fn[2], fn[3], 0x000e0000, 65536, 0);
@@ -1841,7 +1904,7 @@ ps55_mca_board_model_50t_init(void)
/* The slot 5 is reserved for the Integrated Fixed Disk II (an internal ESDI hard drive). */
mca_init(5);
- ps2.planar_read = ps55_model_50t_read;
+ ps2.planar_read = ps55_model_50t_read;
ps2.planar_write = ps55_model_50tv_write;
device_add(&ps2_nvr_device);
@@ -1853,26 +1916,26 @@ ps55_mca_board_model_50t_init(void)
ps2.has_e0000_hole = 1;
mem_mapping_add(&ps2.split_mapping,
- (mem_size + 256) * 1024,
- 256 * 1024,
- ps2_read_split_ram,
- ps2_read_split_ramw,
- ps2_read_split_raml,
- ps2_write_split_ram,
- ps2_write_split_ramw,
- ps2_write_split_raml,
- &ram[0xa0000],
- MEM_MAPPING_INTERNAL,
- NULL);
+ (mem_size + 256) * 1024,
+ 256 * 1024,
+ ps2_read_split_ram,
+ ps2_read_split_ramw,
+ ps2_read_split_raml,
+ ps2_write_split_ram,
+ ps2_write_split_ramw,
+ ps2_write_split_raml,
+ &ram[0xa0000],
+ MEM_MAPPING_INTERNAL,
+ NULL);
mem_mapping_disable(&ps2.split_mapping);
if (mem_size > 8192) {
/* Only 8 MB supported on planar, create a memory expansion card for the rest */
- ps2_mca_mem_fffc_init(8);
+ ps2_mca_mem_fffc_init(8);
}
if (gfxcard[0] == VID_INTERNAL)
- ps2.mb_vga = (vga_t *)device_add(&ps1vga_mca_device);
+ ps2.mb_vga = (vga_t *) device_add(&ps1vga_mca_device);
}
static void
@@ -1884,7 +1947,7 @@ ps55_mca_board_model_50v_init(void)
/* The slot 5 is reserved for the Integrated Fixed Disk II (an internal ESDI hard drive). */
mca_init(5);
- ps2.planar_read = ps55_model_50v_read;
+ ps2.planar_read = ps55_model_50v_read;
ps2.planar_write = ps55_model_50tv_write;
device_add(&ps2_nvr_device);
@@ -1897,17 +1960,17 @@ ps55_mca_board_model_50v_init(void)
ps2.has_e0000_hole = 1;
mem_mapping_add(&ps2.split_mapping,
- (mem_size + 256) * 1024,
- 256 * 1024,
- ps2_read_split_ram,
- ps2_read_split_ramw,
- ps2_read_split_raml,
- ps2_write_split_ram,
- ps2_write_split_ramw,
- ps2_write_split_raml,
- &ram[0xa0000],
- MEM_MAPPING_INTERNAL,
- NULL);
+ (mem_size + 256) * 1024,
+ 256 * 1024,
+ ps2_read_split_ram,
+ ps2_read_split_ramw,
+ ps2_read_split_raml,
+ ps2_write_split_ram,
+ ps2_write_split_ramw,
+ ps2_write_split_raml,
+ &ram[0xa0000],
+ MEM_MAPPING_INTERNAL,
+ NULL);
mem_mapping_disable(&ps2.split_mapping);
mem_mapping_add(&ps2.cache_mapping,
@@ -1924,13 +1987,12 @@ ps55_mca_board_model_50v_init(void)
NULL);
mem_mapping_disable(&ps2.cache_mapping);
- if (mem_size > 8192) {
- /* Only 8 MB supported on planar, create a memory expansion card for the rest */
- ps2_mca_mem_fffc_init(8);
- }
+ /* Only 8 MB supported on planar, create a memory expansion card for the rest */
+ if (mem_size > 8192)
+ ps2_mca_mem_fffc_init(8);
if (gfxcard[0] == VID_INTERNAL)
- ps2.mb_vga = (vga_t *)device_add(&ps1vga_mca_device);
+ ps2.mb_vga = (vga_t *) device_add(&ps1vga_mca_device);
}
int
@@ -1939,7 +2001,7 @@ machine_ps55_model_50t_init(const machine_t *model)
int ret;
ret = bios_load_linear("roms/machines/ibmps55_m50t/38F6933.BIN",
- 0x000e0000, 131072, 0);
+ 0x000e0000, 131072, 0);
if (bios_only || !ret)
return ret;
@@ -1947,15 +2009,15 @@ machine_ps55_model_50t_init(const machine_t *model)
machine_ps2_common_init(model);
/*
- * Planar ID
- * FFFAh - PS/55 model 5551-S0x, T0x (stage 1?)
- * FFEEh - PS/55 model 5551-S1x, T1x (stage 2?)
- * Verification in BIOS P/N 38F6933: FBxx -> 4 slots (error), xxEE -> 5 slots (ok), others -> 8 (error)
- *
- * The only difference between S and T models is the CPU speed (16 MHz vs 20 MHz).
- * The POST measures the speed, and sets a flag in the BIOS Data Area to indicate the sub model.
- * The VM in 86Box runs faster than the real, so the POST always determines it as the T model.
- */
+ * Planar ID
+ * FFFAh - PS/55 model 5551-S0x, T0x (stage 1?)
+ * FFEEh - PS/55 model 5551-S1x, T1x (stage 2?)
+ * Verification in BIOS P/N 38F6933: FBxx -> 4 slots (error), xxEE -> 5 slots (ok), others -> 8 (error)
+ *
+ * The only difference between S and T models is the CPU speed (16 MHz vs 20 MHz).
+ * The POST measures the speed, and sets a flag in the BIOS Data Area to indicate the sub model.
+ * The VM in 86Box runs faster than the real, so the POST always determines it as the T model.
+ */
ps2.planar_id = 0xffee;
ps55_mca_board_model_50t_init();
@@ -1979,10 +2041,10 @@ machine_ps55_model_50v_init(const machine_t *model)
machine_ps2_common_init(model);
/*
- * Planar ID
- * F1FFh - PS/55 model 5551-V0x, V1x
- * Verification in BIOS P/N 56F7416,56F7417: FBxx -> 5 slots (ok), F1xx -> 5 slots (ok), others -> 8 (error)
- */
+ * Planar ID
+ * F1FFh - PS/55 model 5551-V0x, V1x
+ * Verification in BIOS P/N 56F7416,56F7417: FBxx -> 5 slots (ok), F1xx -> 5 slots (ok), others -> 8 (error)
+ */
ps2.planar_id = 0xf1ff;
ps55_mca_board_model_50v_init();
diff --git a/src/machine/m_tandy.c b/src/machine/m_tandy.c
index 9ac254e44..5591f2cf0 100644
--- a/src/machine/m_tandy.c
+++ b/src/machine/m_tandy.c
@@ -45,7 +45,6 @@
#include <86box/m_tandy.h>
#include <86box/plat_unused.h>
-
enum {
TYPE_TANDY = 0,
TYPE_TANDY1000SX,
@@ -60,9 +59,8 @@ enum {
EEPROM_WRITE
};
-
static const scancode scancode_tandy[512] = {
- // clang-format off
+ // clang-format off
{ .mk = { 0 }, .brk = { 0 } }, /* 000 */
{ .mk = { 0x01, 0 }, .brk = { 0x81, 0 } }, /* 001 */
{ .mk = { 0x02, 0 }, .brk = { 0x82, 0 } }, /* 002 */
@@ -575,7 +573,7 @@ static const scancode scancode_tandy[512] = {
{ .mk = { 0 }, .brk = { 0 } }, /* 1fd */
{ .mk = { 0 }, .brk = { 0 } }, /* 1fe */
{ .mk = { 0 }, .brk = { 0 } } /* 1ff */
- // clang-format on
+ // clang-format on
};
static int eep_data_out;
@@ -598,8 +596,6 @@ tandy_log(const char *fmt, ...)
# define tandy_log(fmt, ...)
#endif
-
-
static void
eep_write(UNUSED(uint16_t addr), uint8_t val, void *priv)
{
diff --git a/src/machine/m_v86p.c b/src/machine/m_v86p.c
index fbe7296f8..0be44de53 100644
--- a/src/machine/m_v86p.c
+++ b/src/machine/m_v86p.c
@@ -61,16 +61,16 @@ machine_v86p_init(const machine_t *model)
if (!ret) {
/* Try an older version of the BIOS. */
rom_id = 1;
- ret = bios_load_interleavedr("roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_090489_Even.rom",
- "roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_090489_Odd.rom",
- 0x000f8000, 65536, 0);
+ ret = bios_load_interleavedr("roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_090489_Even.rom",
+ "roms/machines/v86p/INTEL8086AWD_BIOS_S3.1_V86P_090489_Odd.rom",
+ 0x000f8000, 65536, 0);
}
if (!ret) {
/* Try JVERNET's BIOS. */
rom_id = 2;
- ret = bios_load_linear("roms/machines/v86p/V86P.ROM",
- 0x000f0000, 65536, 0);
+ ret = bios_load_linear("roms/machines/v86p/V86P.ROM",
+ 0x000f0000, 65536, 0);
}
if (bios_only || !ret)
diff --git a/src/machine/m_xt.c b/src/machine/m_xt.c
index 815045389..007e8c7c4 100644
--- a/src/machine/m_xt.c
+++ b/src/machine/m_xt.c
@@ -46,6 +46,7 @@
#include <86box/video.h>
extern const device_t vendex_xt_rtc_onboard_device;
+extern const device_t rtc58167_device;
/* 8088 */
static void
@@ -65,46 +66,106 @@ machine_xt_common_init(const machine_t *model, int fixed_floppy)
static const device_config_t ibmpc_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "ibm5150_5700671",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "5700671 (10/19/81)", .internal_name = "ibm5150_5700671", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/ibmpc/BIOS_IBM5150_19OCT81_5700671_U33.BIN", "" } },
- { .name = "5700051 (04/24/81)", .internal_name = "ibm5150_5700051", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/ibmpc/BIOS_IBM5150_24APR81_5700051_U33.BIN", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "5700671 (10/19/81)",
+ .internal_name = "ibm5150_5700671",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/ibmpc/BIOS_IBM5150_19OCT81_5700671_U33.BIN", "" }
+ },
+ {
+ .name = "5700051 (04/24/81)",
+ .internal_name = "ibm5150_5700051",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/ibmpc/BIOS_IBM5150_24APR81_5700051_U33.BIN", "" }
+ },
// GLaBIOS for IBM PC
- { .name = "GLaBIOS 0.4.0 (8088)", .internal_name = "glabios_040_8088", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/glabios/GLABIOS_0.4.0_8P.ROM", "" } },
- { .name = "GLaBIOS 0.4.0 (V20)", .internal_name = "glabios_040_v20", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/glabios/GLABIOS_0.4.0_VP.ROM", "" } },
+ {
+ .name = "GLaBIOS 0.4.0 (8088)",
+ .internal_name = "glabios_040_8088",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_8P.ROM", "" }
+ },
+ {
+ .name = "GLaBIOS 0.4.0 (V20)",
+ .internal_name = "glabios_040_v20",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_VP.ROM", "" }
+ },
// The following are Diagnostic ROMs.
- { .name = "Supersoft Diagnostics", .internal_name = "diag_supersoft", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/diagnostic/Supersoft_PCXT_8KB.bin", "" } },
- { .name = "Ruud's Diagnostic Rom", .internal_name = "diag_ruuds", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/diagnostic/ruuds_diagnostic_rom_v5.4_8kb.bin", "" } },
- { .name = "XT RAM Test", .internal_name = "diag_xtramtest", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/diagnostic/xtramtest_8k.bin", "" } },
+ {
+ .name = "Supersoft Diagnostics",
+ .internal_name = "diag_supersoft",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/diagnostic/Supersoft_PCXT_8KB.bin", "" }
+ },
+ {
+ .name = "Ruud's Diagnostic Rom",
+ .internal_name = "diag_ruuds",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/diagnostic/ruuds_diagnostic_rom_v5.4_8kb.bin", "" }
+ },
+ {
+ .name = "XT RAM Test",
+ .internal_name = "diag_xtramtest",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/diagnostic/xtramtest_8k.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{
- .name = "enable_5161",
- .description = "IBM 5161 Expansion Unit",
- .type = CONFIG_BINARY,
- .default_int = 0
+ .name = "enable_5161",
+ .description = "IBM 5161 Expansion Unit",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{
- .name = "enable_basic",
- .description = "IBM Cassette Basic",
- .type = CONFIG_BINARY,
- .default_int = 1
+ .name = "enable_basic",
+ .description = "IBM Cassette Basic",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -175,46 +236,106 @@ machine_ibmpc_init(const machine_t *model)
static const device_config_t ibmpc82_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "ibm5150_1501476",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "1501476 (10/27/82)", .internal_name = "ibm5150_1501476", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/ibmpc82/BIOS_5150_27OCT82_1501476_U33.BIN", "" } },
- { .name = "5000024 (08/16/82)", .internal_name = "ibm5150_5000024", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/ibmpc82/BIOS_5150_16AUG82_5000024_U33.BIN", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "1501476 (10/27/82)",
+ .internal_name = "ibm5150_1501476",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/ibmpc82/BIOS_5150_27OCT82_1501476_U33.BIN", "" }
+ },
+ {
+ .name = "5000024 (08/16/82)",
+ .internal_name = "ibm5150_5000024",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/ibmpc82/BIOS_5150_16AUG82_5000024_U33.BIN", "" }
+ },
// GLaBIOS for IBM PC
- { .name = "GLaBIOS 0.4.0 (8088)", .internal_name = "glabios_040_8088", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/glabios/GLABIOS_0.4.0_8P.ROM", "" } },
- { .name = "GLaBIOS 0.4.0 (V20)", .internal_name = "glabios_040_v20", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/glabios/GLABIOS_0.4.0_VP.ROM", "" } },
+ {
+ .name = "GLaBIOS 0.4.0 (8088)",
+ .internal_name = "glabios_040_8088",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_8P.ROM", "" }
+ },
+ {
+ .name = "GLaBIOS 0.4.0 (V20)",
+ .internal_name = "glabios_040_v20",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_VP.ROM", "" }
+ },
// The following are Diagnostic ROMs.
- { .name = "Supersoft Diagnostics", .internal_name = "diag_supersoft", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/diagnostic/Supersoft_PCXT_8KB.bin", "" } },
- { .name = "Ruud's Diagnostic Rom", .internal_name = "diag_ruuds", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/diagnostic/ruuds_diagnostic_rom_v5.4_8kb.bin", "" } },
- { .name = "XT RAM Test", .internal_name = "diag_xtramtest", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 40960, .files = { "roms/machines/diagnostic/xtramtest_8k.bin", "" } },
+ {
+ .name = "Supersoft Diagnostics",
+ .internal_name = "diag_supersoft",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/diagnostic/Supersoft_PCXT_8KB.bin", "" }
+ },
+ {
+ .name = "Ruud's Diagnostic Rom",
+ .internal_name = "diag_ruuds",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/diagnostic/ruuds_diagnostic_rom_v5.4_8kb.bin", "" }
+ },
+ {
+ .name = "XT RAM Test",
+ .internal_name = "diag_xtramtest",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 40960,
+ .files = { "roms/machines/diagnostic/xtramtest_8k.bin", "" }
+ },
{ .files_no = 0 }
- },
+ }
},
{
- .name = "enable_5161",
- .description = "IBM 5161 Expansion Unit",
- .type = CONFIG_BINARY,
- .default_int = 1
+ .name = "enable_5161",
+ .description = "IBM 5161 Expansion Unit",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{
- .name = "enable_basic",
- .description = "IBM Cassette Basic",
- .type = CONFIG_BINARY,
- .default_int = 1
+ .name = "enable_basic",
+ .description = "IBM Cassette Basic",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -292,6 +413,7 @@ static const device_config_t ibmxt_config[] = {
.default_int = 0,
.file_filter = NULL,
.spinner = { 0 },
+ .selection = { { 0 } },
.bios = {
{
.name = "1501512 (11/08/82)",
@@ -300,7 +422,8 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 0,
.size = 65536,
- .files = { "roms/machines/ibmxt/BIOS_5160_08NOV82_U18_1501512.BIN", "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
+ .files = { "roms/machines/ibmxt/BIOS_5160_08NOV82_U18_1501512.BIN",
+ "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
},
{
.name = "1501512 (11/08/82) (Alt)",
@@ -309,7 +432,8 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 0,
.size = 65536,
- .files = { "roms/machines/ibmxt/BIOS_5160_08NOV82_U18_1501512.BIN", "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_6359116.BIN", "" }
+ .files = { "roms/machines/ibmxt/BIOS_5160_08NOV82_U18_1501512.BIN",
+ "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_6359116.BIN", "" }
},
{
.name = "5000026 (08/16/82)",
@@ -318,7 +442,8 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 0,
.size = 65536,
- .files = { "roms/machines/ibmxt/BIOS_5160_16AUG82_U18_5000026.BIN", "roms/machines/ibmxt/BIOS_5160_16AUG82_U19_5000027.BIN", "" }
+ .files = { "roms/machines/ibmxt/BIOS_5160_16AUG82_U18_5000026.BIN",
+ "roms/machines/ibmxt/BIOS_5160_16AUG82_U19_5000027.BIN", "" }
},
// GLaBIOS for IBM XT
@@ -329,7 +454,8 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 1,
.size = 40960,
- .files = { "roms/machines/glabios/GLABIOS_0.4.0_8X.ROM", "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_8X.ROM",
+ "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
},
{
.name = "GLaBIOS 0.4.0 (V20)",
@@ -338,7 +464,8 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 1,
.size = 40960,
- .files = { "roms/machines/glabios/GLABIOS_0.4.0_VX.ROM", "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_VX.ROM",
+ "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
},
// The following are Diagnostic ROMs.
@@ -349,7 +476,8 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 2,
.size = 65536,
- .files = { "roms/machines/diagnostic/Supersoft_PCXT_32KB.bin", "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
+ .files = { "roms/machines/diagnostic/Supersoft_PCXT_32KB.bin",
+ "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
},
{
.name = "Ruud's Diagnostic Rom",
@@ -358,7 +486,8 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 2,
.size = 65536,
- .files = { "roms/machines/diagnostic/ruuds_diagnostic_rom_v5.4_32kb.bin", "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
+ .files = { "roms/machines/diagnostic/ruuds_diagnostic_rom_v5.4_32kb.bin",
+ "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
},
{
.name = "XT RAM Test",
@@ -367,22 +496,33 @@ static const device_config_t ibmxt_config[] = {
.files_no = 2,
.local = 2,
.size = 65536,
- .files = { "roms/machines/diagnostic/xtramtest_32k.bin", "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
+ .files = { "roms/machines/diagnostic/xtramtest_32k.bin",
+ "roms/machines/ibmxt/BIOS_5160_08NOV82_U19_5000027.BIN", "" }
},
{ .files_no = 0 }
- },
+ }
},
{
- .name = "enable_5161",
- .description = "IBM 5161 Expansion Unit",
- .type = CONFIG_BINARY,
- .default_int = 1
+ .name = "enable_5161",
+ .description = "IBM 5161 Expansion Unit",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{
- .name = "enable_basic",
- .description = "IBM Cassette Basic",
- .type = CONFIG_BINARY,
- .default_int = 1
+ .name = "enable_basic",
+ .description = "IBM Cassette Basic",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -421,10 +561,10 @@ machine_ibmxt_init(const machine_t *model)
enable_basic = machine_get_config_int("enable_basic");
fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
local = device_get_bios_local(model->device, device_get_config_bios("bios"));
-
+
if (local == 0) // Offset for stock roms
- offset = 0x6000;
- ret = bios_load_linear(fn, 0x000fe000, 65536, offset);
+ offset = 0x6000;
+ ret = bios_load_linear(fn, 0x000fe000, 65536, offset);
if (enable_basic && ret) {
if (local == 0) { // needed for stock roms
@@ -463,6 +603,7 @@ static const device_config_t ibmxt86_config[] = {
.default_int = 0,
.file_filter = NULL,
.spinner = { 0 },
+ .selection = { { 0 } },
.bios = {
{
.name = "1501512 (05/09/86)",
@@ -471,7 +612,8 @@ static const device_config_t ibmxt86_config[] = {
.files_no = 2,
.local = 0,
.size = 65536,
- .files = { "roms/machines/ibmxt86/BIOS_5160_09MAY86_U18_59X7268_62X0890_27256_F800.BIN", "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
+ .files = { "roms/machines/ibmxt86/BIOS_5160_09MAY86_U18_59X7268_62X0890_27256_F800.BIN",
+ "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
},
{
.name = "5000026 (01/10/86)",
@@ -480,7 +622,8 @@ static const device_config_t ibmxt86_config[] = {
.files_no = 2,
.local = 0,
.size = 65536,
- .files = { "roms/machines/ibmxt86/BIOS_5160_10JAN86_U18_62X0851_27256_F800.BIN", "roms/machines/ibmxt86/BIOS_5160_10JAN86_U19_62X0854_27256_F000.BIN", "" }
+ .files = { "roms/machines/ibmxt86/BIOS_5160_10JAN86_U18_62X0851_27256_F800.BIN",
+ "roms/machines/ibmxt86/BIOS_5160_10JAN86_U19_62X0854_27256_F000.BIN", "" }
},
{
.name = "1501512 (01/10/86) (Alt)",
@@ -489,7 +632,8 @@ static const device_config_t ibmxt86_config[] = {
.files_no = 2,
.local = 0,
.size = 65536,
- .files = { "roms/machines/ibmxt86/BIOS_5160_10JAN86_U18_62X0852_27256_F800.BIN", "roms/machines/ibmxt86/BIOS_5160_10JAN86_U19_62X0853_27256_F000.BIN", "" }
+ .files = { "roms/machines/ibmxt86/BIOS_5160_10JAN86_U18_62X0852_27256_F800.BIN",
+ "roms/machines/ibmxt86/BIOS_5160_10JAN86_U19_62X0853_27256_F000.BIN", "" }
},
// GLaBIOS for IBM XT
@@ -500,7 +644,8 @@ static const device_config_t ibmxt86_config[] = {
.files_no = 2,
.local = 1,
.size = 65536,
- .files = { "roms/machines/glabios/GLABIOS_0.4.0_8X.ROM", "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_8X.ROM",
+ "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
},
{
.name = "GLaBIOS 0.4.0 (V20)",
@@ -509,7 +654,8 @@ static const device_config_t ibmxt86_config[] = {
.files_no = 2,
.local = 1,
.size = 65536,
- .files = { "roms/machines/glabios/GLABIOS_0.4.0_VX.ROM", "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_VX.ROM",
+ "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
},
// The following are Diagnostic ROMs.
@@ -520,7 +666,8 @@ static const device_config_t ibmxt86_config[] = {
.files_no = 2,
.local = 2,
.size = 65536,
- .files = { "roms/machines/diagnostic/Supersoft_PCXT_32KB.bin", "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
+ .files = { "roms/machines/diagnostic/Supersoft_PCXT_32KB.bin",
+ "roms/machines/ibmxt86/BIOS_5160_09MAY86_U19_62X0819_68X4370_27256_F000.BIN", "" }
},
{
.name = "Ruud's Diagnostic Rom",
@@ -545,10 +692,15 @@ static const device_config_t ibmxt86_config[] = {
},
},
{
- .name = "enable_5161",
- .description = "IBM 5161 Expansion Unit",
- .type = CONFIG_BINARY,
- .default_int = 1
+ .name = "enable_5161",
+ .description = "IBM 5161 Expansion Unit",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -575,20 +727,20 @@ machine_ibmxt86_init(const machine_t *model)
uint8_t enable_5161;
const char *fn;
uint16_t offset = 0;
- uint32_t local = 0;
+ uint32_t local = 0;
/* No ROMs available. */
if (!device_available(model->device))
return ret;
device_context(model->device);
- enable_5161 = machine_get_config_int("enable_5161");
- fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
- local = device_get_bios_local(model->device, device_get_config_bios("bios"));
+ enable_5161 = machine_get_config_int("enable_5161");
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ local = device_get_bios_local(model->device, device_get_config_bios("bios"));
if (local == 0) // Offset for stock roms
- offset = 0x6000;
- ret = bios_load_linear(fn, 0x000fe000, 65536, offset);
+ offset = 0x6000;
+ ret = bios_load_linear(fn, 0x000fe000, 65536, offset);
if (ret) {
if (local == 0) { // needed for stock roms
@@ -744,13 +896,71 @@ machine_xt_compaq_portable_init(const machine_t *model)
return ret;
}
+static const device_config_t dtk_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "dtk",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "2.39",
+ .internal_name = "dtk_239",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 8192,
+ .files = { "roms/machines/dtk/PIM-TB10-Z.BIN", ""}
+ },
+ {
+ .name = "2.42",
+ .internal_name = "dtk",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 8192,
+ .files = { "roms/machines/dtk/dtk_erso_2.42_2764.bin", ""}
+ },
+ { .files_no = 0 }
+ }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t dtk_device = {
+ .name = "DTK PIM-TB10-Z",
+ .internal_name = "dtk_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = dtk_config
+};
+
int
machine_xt_dtk_init(const machine_t *model)
{
- int ret;
+ int ret = 0;
+ const char *fn;
- ret = bios_load_linear("roms/machines/dtk/dtk_erso_2.42_2764.bin",
- 0x000fe000, 8192, 0);
+ /* No ROMs available. */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000fe000, 8192, 0);
+ device_context_restore();
if (bios_only || !ret)
return ret;
@@ -881,23 +1091,47 @@ machine_xt_super16te_init(const machine_t *model)
static const device_config_t jukopc_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "jukost",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Bios 2.30", .internal_name = "jukost", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 8192, .files = { "roms/machines/jukopc/000o001.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Bios 2.30",
+ .internal_name = "jukost",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 8192,
+ .files = { "roms/machines/jukopc/000o001.bin", "" }
+ },
+
// GLaBIOS for Juko ST
- { .name = "GLaBIOS 0.4.0 (8088)", .internal_name = "glabios_040_8088", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 8192, .files = { "roms/machines/glabios/GLABIOS_0.4.0_8S.ROM", "" } },
- { .name = "GLaBIOS 0.4.0 (V20)", .internal_name = "glabios_040_v20", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 8192, .files = { "roms/machines/glabios/GLABIOS_0.4.0_VS.ROM", "" } },
+ {
+ .name = "GLaBIOS 0.4.0 (8088)",
+ .internal_name = "glabios_040_8088",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 8192,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_8S.ROM", "" }
+ },
+ {
+ .name = "GLaBIOS 0.4.0 (V20)",
+ .internal_name = "glabios_040_v20",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 8192,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_VS.ROM", "" }
+ },
+
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -928,8 +1162,8 @@ machine_xt_jukopc_init(const machine_t *model)
return ret;
device_context(model->device);
- fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
- ret = bios_load_linear(fn, 0x000fe000, 8192, 0);
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000fe000, 8192, 0);
device_context_restore();
if (bios_only || !ret)
@@ -977,13 +1211,14 @@ machine_xt_micoms_xl7turbo_init(const machine_t *model)
static const device_config_t pc500_config[] = {
// clang-format off
{
- .name = "bios",
+ .name = "bios",
.description = "BIOS Version",
.type = CONFIG_BIOS,
.default_string = "pc500_330",
.default_int = 0,
.file_filter = NULL,
.spinner = { 0 },
+ .selection = { { 0 } },
.bios = {
{
.name = "3.30",
@@ -995,7 +1230,7 @@ static const device_config_t pc500_config[] = {
.files = { "roms/machines/pc500/rom330.bin", "" }
},
{
- .name = "3.10",
+ .name = "3.1",
.internal_name = "pc500_310",
.bios_type = BIOS_NORMAL,
.files_no = 1,
@@ -1004,7 +1239,38 @@ static const device_config_t pc500_config[] = {
.files = { "roms/machines/pc500/rom310.bin", "" }
},
{ .files_no = 0 }
+ }
+ },
+ {
+ .name = "rtc_irq",
+ .description = "RTC IRQ",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = -1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
+ { .description = "Disabled", .value = -1 },
+ { .description = "Enabled", .value = 2 },
+ { .description = "" }
},
+ .bios = { { 0 } }
+ },
+ {
+ .name = "rtc_port",
+ .description = "RTC Port Address",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
+ { .description = "Disabled", .value = 0 },
+ { .description = "2C0H", .value = 0x2c0 },
+ { .description = "300H", .value = 0x300 },
+ { .description = "" }
+ },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -1026,6 +1292,203 @@ const device_t pc500_device = {
int
machine_xt_pc500_init(const machine_t *model)
+{
+ int ret = 0;
+ int rtc_port = 0;
+ const char *fn;
+
+ /* No ROMs available. */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ rtc_port = machine_get_config_int("rtc_port");
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000fe000, 8192, 0);
+ device_context_restore();
+
+ if (bios_only || !ret)
+ return ret;
+
+ device_add(&kbc_pc82_device);
+
+ machine_xt_common_init(model, 0);
+
+ if (rtc_port != 0)
+ device_add(&rtc58167_device);
+
+ return ret;
+}
+
+static const device_config_t pc500plus_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "pc500plus",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .bios = {
+ {
+ .name = "4.06",
+ .internal_name = "pc500plus_406",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 16384,
+ .files = { "roms/machines/pc500/rom406.bin", "" }
+ },
+ {
+ .name = "4.04",
+ .internal_name = "pc500plus",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 16384,
+ .files = { "roms/machines/pc500/rom404.bin", "" }
+ },
+ {
+ .name = "4.03",
+ .internal_name = "pc500plus_403",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 16384,
+ .files = { "roms/machines/pc500/rom403.bin", "" }
+ },
+ { .files_no = 0 }
+ },
+ },
+ {
+ .name = "rtc_irq",
+ .description = "RTC IRQ",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = -1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
+ { .description = "Disabled", .value = -1 },
+ { .description = "Enabled", .value = 2 },
+ { .description = "" }
+ },
+ .bios = { { 0 } }
+ },
+ {
+ .name = "rtc_port",
+ .description = "Onboard RTC",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
+ { .description = "Disabled", .value = 0 },
+ { .description = "Enabled", .value = 0x2c0 },
+ { .description = "" }
+ },
+ .bios = { { 0 } }
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t pc500plus_device = {
+ .name = "Multitech PC-500 plus",
+ .internal_name = "pc500plus_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = pc500plus_config
+};
+
+int
+machine_xt_pc500plus_init(const machine_t *model)
+{
+ int ret = 0;
+ int rtc_port = 0;
+ const char *fn;
+
+ /* No ROMs available. */
+ if (!device_available(model->device))
+ return ret;
+
+ device_context(model->device);
+ rtc_port = machine_get_config_int("rtc_port");
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000fc000, 16384, 0);
+ device_context_restore();
+
+ if (bios_only || !ret)
+ return ret;
+
+ machine_xt_clone_init(model, 0);
+
+ if (rtc_port != 0)
+ device_add(&rtc58167_device);
+
+ return ret;
+}
+
+static const device_config_t pc700_config[] = {
+ // clang-format off
+ {
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
+ .default_string = "pc700",
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .bios = {
+ {
+ .name = "3.30",
+ .internal_name = "pc700",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 8192,
+ .files = { "roms/machines/pc700/multitech pc-700 3.30.bin", "" }
+ },
+ {
+ .name = "3.1",
+ .internal_name = "pc700_31",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 8192,
+ .files = { "roms/machines/pc700/multitech pc-700 3.1.bin", "" }
+ },
+ { .files_no = 0 }
+ },
+ },
+ { .name = "", .description = "", .type = CONFIG_END }
+ // clang-format on
+};
+
+const device_t pc700_device = {
+ .name = "Multitech PC-700",
+ .internal_name = "pc700_device",
+ .flags = 0,
+ .local = 0,
+ .init = NULL,
+ .close = NULL,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = pc700_config
+};
+
+int
+machine_xt_pc700_init(const machine_t *model)
{
int ret = 0;
const char *fn;
@@ -1035,50 +1498,14 @@ machine_xt_pc500_init(const machine_t *model)
return ret;
device_context(model->device);
- fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
- ret = bios_load_linear(fn, 0x000fe000, 8192, 0);
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000fe000, 8192, 0);
device_context_restore();
if (bios_only || !ret)
return ret;
- device_add(&kbc_pc_device);
-
- machine_xt_common_init(model, 0);
-
- return ret;
-}
-
-int
-machine_xt_pc500plus_init(const machine_t *model)
-{
- int ret;
-
- ret = bios_load_linear("roms/machines/pc500/rom404.bin",
- 0x000fc000, 16384, 0);
-
- if (bios_only || !ret)
- return ret;
-
- device_add(&kbc_pc_device);
-
- machine_xt_common_init(model, 0);
-
- return ret;
-}
-
-int
-machine_xt_pc700_init(const machine_t *model)
-{
- int ret;
-
- ret = bios_load_linear("roms/machines/pc700/multitech pc-700 3.1.bin",
- 0x000fe000, 8192, 0);
-
- if (bios_only || !ret)
- return ret;
-
- device_add(&kbc_pc_device);
+ device_add(&kbc_pc82_device);
machine_xt_common_init(model, 0);
@@ -1280,23 +1707,47 @@ machine_xt_pcxt_init(const machine_t *model)
static const device_config_t vendex_config[] = {
// clang-format off
{
- .name = "bios",
- .description = "BIOS Version",
- .type = CONFIG_BIOS,
+ .name = "bios",
+ .description = "BIOS Version",
+ .type = CONFIG_BIOS,
.default_string = "vendex",
- .default_int = 0,
- .file_filter = "",
- .spinner = { 0 },
- .bios = {
- { .name = "Bios 2.03C", .internal_name = "vendex", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 16384, .files = { "roms/machines/vendex/Vendex Turbo 888 XT - ROM BIOS - VER 2.03C.bin", "" } },
+ .default_int = 0,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = {
+ {
+ .name = "Bios 2.03C",
+ .internal_name = "vendex",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 16384,
+ .files = { "roms/machines/vendex/Vendex Turbo 888 XT - ROM BIOS - VER 2.03C.bin", "" }
+ },
+
// GLaBIOS for Vendex
- { .name = "GLaBIOS 0.4.0 (8088)", .internal_name = "glabios_040_8088", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 16384, .files = { "roms/machines/glabios/GLABIOS_0.4.0_8TV.ROM", "" } },
- { .name = "GLaBIOS 0.4.0 (V20)", .internal_name = "glabios_040_v20", .bios_type = BIOS_NORMAL,
- .files_no = 1, .local = 0, .size = 16384, .files = { "roms/machines/glabios/GLABIOS_0.4.0_VTV.ROM", "" } },
+ {
+ .name = "GLaBIOS 0.4.0 (8088)",
+ .internal_name = "glabios_040_8088",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 16384,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_8TV.ROM", "" }
+ },
+ {
+ .name = "GLaBIOS 0.4.0 (V20)",
+ .internal_name = "glabios_040_v20",
+ .bios_type = BIOS_NORMAL,
+ .files_no = 1,
+ .local = 0,
+ .size = 16384,
+ .files = { "roms/machines/glabios/GLABIOS_0.4.0_VTV.ROM", "" }
+ },
+
{ .files_no = 0 }
- },
+ }
},
{ .name = "", .description = "", .type = CONFIG_END }
// clang-format on
@@ -1327,8 +1778,8 @@ machine_xt_vendex_init(const machine_t *model)
return ret;
device_context(model->device);
- fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
- ret = bios_load_linear(fn, 0x000fc000, 16384, 0);
+ fn = device_get_bios_file(model->device, device_get_config_bios("bios"), 0);
+ ret = bios_load_linear(fn, 0x000fc000, 16384, 0);
device_context_restore();
if (bios_only || !ret)
@@ -1342,7 +1793,7 @@ machine_xt_vendex_init(const machine_t *model)
}
static void
-machine_xt_laserxt_common_init(const machine_t *model,int is_lxt3)
+machine_xt_laserxt_common_init(const machine_t *model, int is_lxt3)
{
machine_common_init(model);
@@ -1593,7 +2044,7 @@ machine_xt_pc5086_init(const machine_t *model)
int ret;
ret = bios_load_linear("roms/machines/pc5086/sys_rom.bin",
- 0x000f0000, 65536, 0);
+ 0x000f0000, 65536, 0);
if (bios_only || !ret)
return ret;
diff --git a/src/machine/m_xt_olivetti.c b/src/machine/m_xt_olivetti.c
index 13d98e6f9..50a891e2c 100644
--- a/src/machine/m_xt_olivetti.c
+++ b/src/machine/m_xt_olivetti.c
@@ -132,8 +132,8 @@ typedef struct m24_kbd_t {
uint8_t scan[7];
/* Mouse stuff. */
- int mouse_input_mode;
- int b;
+ int mouse_input_mode;
+ int b;
pc_timer_t send_delay_timer;
} m24_kbd_t;
@@ -553,20 +553,20 @@ m24_kbd_write(uint16_t port, uint8_t val, void *priv)
switch (m24_kbd->command) {
case 0x11:
m24_kbd->mouse_input_mode = 0;
- m24_kbd->scan[0] = m24_kbd->params[0];
- m24_kbd->scan[1] = m24_kbd->params[1];
- m24_kbd->scan[2] = m24_kbd->params[2];
- m24_kbd->scan[3] = m24_kbd->params[3];
- m24_kbd->scan[4] = m24_kbd->params[4];
- m24_kbd->scan[5] = m24_kbd->params[5];
- m24_kbd->scan[6] = m24_kbd->params[6];
+ m24_kbd->scan[0] = m24_kbd->params[0];
+ m24_kbd->scan[1] = m24_kbd->params[1];
+ m24_kbd->scan[2] = m24_kbd->params[2];
+ m24_kbd->scan[3] = m24_kbd->params[3];
+ m24_kbd->scan[4] = m24_kbd->params[4];
+ m24_kbd->scan[5] = m24_kbd->params[5];
+ m24_kbd->scan[6] = m24_kbd->params[6];
break;
case 0x12:
m24_kbd->mouse_input_mode = 1;
- m24_kbd->scan[0] = m24_kbd->params[0];
- m24_kbd->scan[1] = m24_kbd->params[1];
- m24_kbd->scan[2] = m24_kbd->params[2];
+ m24_kbd->scan[0] = m24_kbd->params[0];
+ m24_kbd->scan[1] = m24_kbd->params[1];
+ m24_kbd->scan[2] = m24_kbd->params[2];
break;
default:
@@ -722,7 +722,7 @@ m24_kbd_reset(void *priv)
m24_kbd->wantirq = 0;
keyboard_scan = 1;
m24_kbd->param = m24_kbd->param_total = 0;
- m24_kbd->mouse_input_mode = 0;
+ m24_kbd->mouse_input_mode = 0;
m24_kbd->scan[0] = 0x1c;
m24_kbd->scan[1] = 0x53;
m24_kbd->scan[2] = 0x01;
@@ -736,11 +736,11 @@ static int
ms_poll(void *priv)
{
m24_kbd_t *m24_kbd = (m24_kbd_t *) priv;
- int delta_x;
- int delta_y;
- int o_x;
- int o_y;
- int b = mouse_get_buttons_ex();
+ int delta_x;
+ int delta_y;
+ int o_x;
+ int o_y;
+ int b = mouse_get_buttons_ex();
if (((key_queue_end - key_queue_start) & 0xf) > 14)
return 0xff;
@@ -847,7 +847,7 @@ ms_poll(void *priv)
- Right Windows (E0 5C) -> F18 (67).
*/
const scancode scancode_olivetti_m24_deluxe[512] = {
- // clang-format off
+ // clang-format off
{ .mk = { 0 }, .brk = { 0 } }, /* 000 */
{ .mk = { 0x01, 0 }, .brk = { 0x81, 0 } }, /* 001 */
{ .mk = { 0x02, 0 }, .brk = { 0x82, 0 } }, /* 002 */
@@ -1360,7 +1360,7 @@ const scancode scancode_olivetti_m24_deluxe[512] = {
{ .mk = { 0 }, .brk = { 0 } }, /* 1fd */
{ .mk = { 0 }, .brk = { 0 } }, /* 1fe */
{ .mk = { 0 }, .brk = { 0 } } /* 1ff */
- // clang-format on
+ // clang-format on
};
/* Remapping as follows:
@@ -1370,7 +1370,7 @@ const scancode scancode_olivetti_m24_deluxe[512] = {
- Menu (E0 5D) -> 5C.
*/
const scancode scancode_olivetti_m240[512] = {
- // clang-format off
+ // clang-format off
{ .mk = { 0 }, .brk = { 0 } }, /* 000 */
{ .mk = { 0x01, 0 }, .brk = { 0x81, 0 } }, /* 001 */
{ .mk = { 0x02, 0 }, .brk = { 0x82, 0 } }, /* 002 */
@@ -1883,7 +1883,7 @@ const scancode scancode_olivetti_m240[512] = {
{ .mk = { 0 }, .brk = { 0 } }, /* 1fd */
{ .mk = { 0 }, .brk = { 0 } }, /* 1fe */
{ .mk = { 0 }, .brk = { 0 } } /* 1ff */
- // clang-format on
+ // clang-format on
};
static void
@@ -2084,33 +2084,38 @@ const device_t m24_kbd_device = {
};
const device_config_t m19_vid_config[] = {
- // clang-format off
+ // clang-format off
{
/* Olivetti / ATT compatible displays */
- .name = "rgb_type",
- .description = "RGB type",
- .type = CONFIG_SELECTION,
- .default_string = "",
- .default_int = CGA_RGB,
- .file_filter = "",
- .spinner = { 0 },
- .selection = {
+ .name = "rgb_type",
+ .description = "RGB type",
+ .type = CONFIG_SELECTION,
+ .default_string = NULL,
+ .default_int = CGA_RGB,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = {
{ .description = "Color", .value = 0 },
{ .description = "Green Monochrome", .value = 1 },
{ .description = "Amber Monochrome", .value = 2 },
{ .description = "Gray Monochrome", .value = 3 },
{ .description = "" }
- }
+ },
+ .bios = { { 0 } }
},
{
- .name = "snow_enabled",
- .description = "Snow emulation",
- .type = CONFIG_BINARY,
- .default_string = "",
- .default_int = 1,
+ .name = "snow_enabled",
+ .description = "Snow emulation",
+ .type = CONFIG_BINARY,
+ .default_string = NULL,
+ .default_int = 1,
+ .file_filter = NULL,
+ .spinner = { 0 },
+ .selection = { { 0 } },
+ .bios = { { 0 } }
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t m19_vid_device = {
@@ -2243,7 +2248,7 @@ m24_read(uint16_t port, UNUSED(void *priv))
static uint8_t
m240_read(uint16_t port, UNUSED(void *priv))
{
- uint8_t ret = 0x00;
+ uint8_t ret = 0x00;
int fdd_count = 0;
switch (port) {
diff --git a/src/machine/m_xt_t1000.c b/src/machine/m_xt_t1000.c
index 13407c535..87899e7c6 100644
--- a/src/machine/m_xt_t1000.c
+++ b/src/machine/m_xt_t1000.c
@@ -286,8 +286,8 @@ tc8521_write(uint16_t addr, uint8_t val, void *priv)
static uint8_t
tc8521_read(uint16_t addr, void *priv)
{
- const nvr_t *nvr = (nvr_t *) priv;
- uint8_t page;
+ const nvr_t *nvr = (nvr_t *) priv;
+ uint8_t page;
/* Get to the correct register page. */
addr &= 0x0f;
@@ -340,7 +340,7 @@ ems_execaddr(t1000_t *sys, UNUSED(int pg), uint16_t val)
return 0; /* Bit 7 reset => not mapped */
if (!sys->ems_pages)
return 0; /* No EMS available: all used by
- * HardRAM or conventional RAM */
+ * HardRAM or conventional RAM */
val &= 0x7f;
#if 0
@@ -466,7 +466,7 @@ static uint8_t
ems_read_ram(uint32_t addr, void *priv)
{
const t1000_t *sys = (t1000_t *) priv;
- int pg = addr_to_page(addr);
+ int pg = addr_to_page(addr);
if (pg < 0)
return 0xff;
@@ -832,7 +832,7 @@ int
machine_xt_t1000_init(const machine_t *model)
{
FILE *fp;
- int ret;
+ int ret;
ret = bios_load_linear("roms/machines/t1000/t1000.rom",
0x000f8000, 32768, 0);
diff --git a/src/machine/m_xt_xi8088.c b/src/machine/m_xt_xi8088.c
index 756432405..729cf48d5 100644
--- a/src/machine/m_xt_xi8088.c
+++ b/src/machine/m_xt_xi8088.c
@@ -87,77 +87,77 @@ xi8088_init(UNUSED(const device_t *info))
}
static const device_config_t xi8088_config[] = {
- // clang-format off
+ // clang-format off
{
- .name = "turbo_setting",
+ .name = "turbo_setting",
.description = "Turbo",
- .type = CONFIG_SELECTION,
- .selection = {
+ .type = CONFIG_SELECTION,
+ .default_int = 0,
+ .selection = {
{
.description = "Always at selected speed",
- .value = 0
+ .value = 0
},
{
.description = "BIOS setting + Hotkeys (off during POST)",
- .value = 1
+ .value = 1
}
- },
- .default_int = 0
+ }
},
{
- .name = "bios_128kb",
+ .name = "bios_128kb",
.description = "BIOS size",
- .type = CONFIG_SELECTION,
- .selection = {
+ .type = CONFIG_SELECTION,
+ .default_int = 1,
+ .selection = {
{
.description = "64 KB starting from F0000",
- .value = 0
+ .value = 0
},
{
.description = "128 KB starting from E0000 (address MSB inverted, last 64 KB first)",
- .value = 1
+ .value = 1
}
- },
- .default_int = 1
+ }
},
{
- .name = "umb_c0000h_c7fff",
+ .name = "umb_c0000h_c7fff",
.description = "Map C0000-C7FFF as UMB",
- .type = CONFIG_BINARY,
+ .type = CONFIG_BINARY,
.default_int = 0
},
{
- .name = "umb_c8000h_cffff",
+ .name = "umb_c8000h_cffff",
.description = "Map C8000-CFFFF as UMB",
- .type = CONFIG_BINARY,
+ .type = CONFIG_BINARY,
.default_int = 0
},
{
- .name = "umb_d0000h_d7fff",
+ .name = "umb_d0000h_d7fff",
.description = "Map D0000-D7FFF as UMB",
- .type = CONFIG_BINARY,
+ .type = CONFIG_BINARY,
.default_int = 0
},
{
- .name = "umb_d8000h_dffff",
+ .name = "umb_d8000h_dffff",
.description = "Map D8000-DFFFF as UMB",
- .type = CONFIG_BINARY,
+ .type = CONFIG_BINARY,
.default_int = 0
},
{
- .name = "umb_e0000h_e7fff",
+ .name = "umb_e0000h_e7fff",
.description = "Map E0000-E7FFF as UMB",
- .type = CONFIG_BINARY,
+ .type = CONFIG_BINARY,
.default_int = 0
},
{
- .name = "umb_e8000h_effff",
+ .name = "umb_e8000h_effff",
.description = "Map E8000-EFFFF as UMB",
- .type = CONFIG_BINARY,
+ .type = CONFIG_BINARY,
.default_int = 0
},
{ .name = "", .description = "", .type = CONFIG_END }
- // clang-format on
+ // clang-format on
};
const device_t xi8088_device = {
diff --git a/src/machine/machine.c b/src/machine/machine.c
index 55bc141c0..30f979fd4 100644
--- a/src/machine/machine.c
+++ b/src/machine/machine.c
@@ -76,9 +76,9 @@ machine_init_ex(int m)
machine_init_gpio();
machine_init_gpio_acpi();
- machine_snd = NULL;
+ machine_snd = NULL;
- is_vpc = 0;
+ is_vpc = 0;
standalone_gameport_type = NULL;
gameport_instance_id = 0;
@@ -183,7 +183,7 @@ void
machine_common_init(UNUSED(const machine_t *model))
{
uint8_t cpu_requires_fast_pit = is486 || (!is286 && is8086 && (cpu_s->rspeed >= 8000000));
- cpu_requires_fast_pit = cpu_requires_fast_pit && !cpu_16bitbus;
+ cpu_requires_fast_pit = cpu_requires_fast_pit && !cpu_16bitbus;
/* System devices first. */
pic_init();
diff --git a/src/machine/machine_table.c b/src/machine/machine_table.c
index 9fa4ab81b..bd68734c7 100644
--- a/src/machine/machine_table.c
+++ b/src/machine/machine_table.c
@@ -191,7375 +191,7375 @@ const machine_filter_t machine_chipsets[] = {
*/
const machine_t machines[] = {
- // clang-format off
+ // clang-format off
/* 8088 Machines */
{
- .name = "[8088] IBM PC (1981)",
- .internal_name = "ibmpc",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_ibmpc_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] IBM PC (1981)",
+ .internal_name = "ibmpc",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_ibmpc_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC5150,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 16,
- .max = 64,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 16,
+ .max = 64,
.step = 16
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ibmpc_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ibmpc_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] IBM PC (1982)",
- .internal_name = "ibmpc82",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_ibmpc82_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] IBM PC (1982)",
+ .internal_name = "ibmpc82",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_ibmpc82_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC5150,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 256,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 256,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc82_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ibmpc82_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc82_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ibmpc82_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] IBM PCjr",
- .internal_name = "ibmpcjr",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_pcjr_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] IBM PCjr",
+ .internal_name = "ibmpcjr",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_pcjr_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 4772728,
- .max_bus = 4772728,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 4772728,
+ .max_bus = 4772728,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCJR,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_CARTRIDGE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_CARTRIDGE | MACHINE_FDC,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL, /* TODO: No specific kbd_device yet */
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &pcjr_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL, /* TODO: No specific kbd_device yet */
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = &fdc_pcjr_device,
+ .sio_device = NULL,
+ .vid_device = &pcjr_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] IBM XT (1982)",
- .internal_name = "ibmxt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_ibmxt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] IBM XT (1982)",
+ .internal_name = "ibmxt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_ibmxt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 256,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 256,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ibmxt_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ibmxt_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] IBM XT (1986)",
- .internal_name = "ibmxt86",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_ibmxt86_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] IBM XT (1986)",
+ .internal_name = "ibmxt86",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_ibmxt86_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt86_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ibmxt86_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt86_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ibmxt86_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] American XT Computer",
- .internal_name = "americxt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_americxt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] American XT Computer",
+ .internal_name = "americxt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_americxt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] AMI XT clone",
- .internal_name = "amixt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_amixt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] AMI XT clone",
+ .internal_name = "amixt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_amixt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Atari PC 3",
- .internal_name = "ataripc3",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_ataripc3_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Atari PC 3",
+ .internal_name = "ataripc3",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_ataripc3_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FDC, /* Machine has internal video: NSI EVC315-S EGA */
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FDC, /* Machine has internal video: NSI EVC315-S EGA */
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Bondwell BW230",
- .internal_name = "bw230",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_bw230_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Bondwell BW230",
+ .internal_name = "bw230",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_bw230_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Columbia Data Products MPC-1600",
- .internal_name = "mpc1600",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_mpc1600_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Columbia Data Products MPC-1600",
+ .internal_name = "mpc1600",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_mpc1600_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 512,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 512,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc82_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc82_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Compaq Portable",
- .internal_name = "portable",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_compaq_portable_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Compaq Portable",
+ .internal_name = "portable",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_compaq_portable_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_KEYBOARD,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_KEYBOARD,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_compaq_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_compaq_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] DTK PIM-TB10-Z",
- .internal_name = "dtk",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_dtk_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] DTK PIM-TB10-Z",
+ .internal_name = "dtk",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_dtk_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &dtk_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Eagle PC Spirit",
- .internal_name = "pcspirit",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pcspirit_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Eagle PC Spirit",
+ .internal_name = "pcspirit",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pcspirit_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc82_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc82_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Generic XT clone",
- .internal_name = "genxt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_genxt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Generic XT clone",
+ .internal_name = "genxt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_genxt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] GLaBIOS",
- .internal_name = "glabios",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_glabios_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] GLaBIOS",
+ .internal_name = "glabios",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_glabios_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Hyosung Topstar 88T",
- .internal_name = "top88",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_top88_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Hyosung Topstar 88T",
+ .internal_name = "top88",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_top88_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FDC, /* Machine has internal video: Paradise PVC2 */
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FDC, /* Machine has internal video: Paradise PVC2 */
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = &fdc_xt_device,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = &fdc_xt_device,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Hyundai SUPER-16T",
- .internal_name = "super16t",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_super16t_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Hyundai SUPER-16T",
+ .internal_name = "super16t",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_super16t_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 4772728,
- .max_bus = 8000000,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 4772728,
+ .max_bus = 8000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FDC,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FDC,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = &fdc_xt_device,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = &fdc_xt_device,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Hyundai SUPER-16TE",
- .internal_name = "super16te",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_super16te_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Hyundai SUPER-16TE",
+ .internal_name = "super16te",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_super16te_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FDC,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FDC,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = &fdc_xt_device,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = &fdc_xt_device,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Juko ST",
- .internal_name = "jukopc",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_jukopc_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Juko ST",
+ .internal_name = "jukopc",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_jukopc_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &jukopc_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &jukopc_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Kaypro PC",
- .internal_name = "kaypropc",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_kaypropc_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Kaypro PC",
+ .internal_name = "kaypropc",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_kaypropc_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Micoms XL-7 Turbo/Pravetz-16ES",
- .internal_name = "mxl7t",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_micoms_xl7turbo_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Micoms XL-7 Turbo/Pravetz-16ES",
+ .internal_name = "mxl7t",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_micoms_xl7turbo_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Multitech PC-500",
- .internal_name = "pc500",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pc500_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Multitech PC-500 / Franklin PC 8000",
+ .internal_name = "pc500",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pc500_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &pc500_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc82_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pc500_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Multitech PC-500 plus",
- .internal_name = "pc500plus",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pc500plus_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Multitech PC-500 plus",
+ .internal_name = "pc500plus",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pc500plus_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pc500plus_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Multitech PC-700",
- .internal_name = "pc700",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pc700_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Multitech PC-700 / Siemens SICOMP PC 16 05",
+ .internal_name = "pc700",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pc700_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc82_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pc700_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] NCR PC4i",
- .internal_name = "pc4i",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pc4i_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] NCR PC4i",
+ .internal_name = "pc4i",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pc4i_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Olivetti M19",
- .internal_name = "m19",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_m19_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Olivetti M19",
+ .internal_name = "m19",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_m19_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 4772728,
- .max_bus = 7159092,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 4772728,
+ .max_bus = 7159092,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_olivetti_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &m19_vid_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_olivetti_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &m19_vid_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] OpenXT",
- .internal_name = "openxt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_openxt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] OpenXT",
+ .internal_name = "openxt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_openxt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Philips P3105/NMS9100",
- .internal_name = "p3105",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_p3105_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Philips P3105/NMS9100",
+ .internal_name = "p3105",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_p3105_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_XTA,
- .ram = {
- .min = 256,
- .max = 768,
+ .flags = MACHINE_XTA,
+ .ram = {
+ .min = 256,
+ .max = 768,
.step = 256
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Phoenix XT clone",
- .internal_name = "pxxt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pxxt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Phoenix XT clone",
+ .internal_name = "pxxt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pxxt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Pravetz 16 / IMKO-4",
- .internal_name = "pravetz16",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pravetz16_imko4_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Pravetz 16 / IMKO-4",
+ .internal_name = "pravetz16",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pravetz16_imko4_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pravetz_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pravetz_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Pravetz 16S / CPU12 Plus",
- .internal_name = "pravetz16s",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pravetz16s_cpu12p_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Pravetz 16S / CPU12 Plus",
+ .internal_name = "pravetz16s",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pravetz16s_cpu12p_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 4772728,
- .max_bus = 12000000,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 4772728,
+ .max_bus = 12000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 1024,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 1024,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Samsung SPC-3000V/Packard Bell PB500/PB8810",
- .internal_name = "pb8810",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pb8810_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Samsung SPC-3000V/Packard Bell PB500/PB8810",
+ .internal_name = "pb8810",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pb8810_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Sanyo SX-16",
- .internal_name = "sansx16",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_sansx16_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Sanyo SX-16",
+ .internal_name = "sansx16",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_sansx16_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FDC,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_FDC,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = &fdc_xt_device,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = &fdc_xt_device,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Schneider EuroPC",
- .internal_name = "europc",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_europc_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Schneider EuroPC",
+ .internal_name = "europc",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_europc_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088_EUROPC,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088_EUROPC,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_XTA | MACHINE_KEYBOARD | MACHINE_MOUSE, /* Machine has internal video: Paradise PVC4 */
- .ram = {
- .min = 512,
- .max = 640,
+ .flags = MACHINE_XTA | MACHINE_KEYBOARD | MACHINE_MOUSE, /* Machine has internal video: Paradise PVC4 */
+ .ram = {
+ .min = 512,
+ .max = 640,
.step = 128
},
- .nvrmask = 15,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 15,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Super PC/Turbo XT",
- .internal_name = "pcxt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_pcxt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Super PC/Turbo XT",
+ .internal_name = "pcxt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_pcxt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Tandy 1000 SX",
- .internal_name = "tandy1000sx",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_tandy1000sx_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Tandy 1000 SX",
+ .internal_name = "tandy1000sx",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_tandy1000sx_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
- .ram = {
- .min = 384,
- .max = 640,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 384,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_tandy_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &tandy_1000_video_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_tandy_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &tandy_1000_video_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Tandy 1000 HX",
- .internal_name = "tandy1000hx",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_tandy1000hx_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Tandy 1000 HX",
+ .internal_name = "tandy1000hx",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_tandy1000hx_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_tandy_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &tandy_1000hx_video_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_tandy_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &tandy_1000hx_video_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Toshiba T1000",
- .internal_name = "t1000",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_t1000_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Toshiba T1000",
+ .internal_name = "t1000",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_t1000_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD,
- .ram = {
- .min = 512,
- .max = 1280,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 512,
+ .max = 1280,
.step = 768
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_t1x00_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &t1000_video_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_t1x00_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &t1000_video_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Vendex HeadStart Turbo 888-XT",
- .internal_name = "vendex",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_vendex_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Vendex HeadStart Turbo 888-XT",
+ .internal_name = "vendex",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_vendex_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FDC,
- .ram = {
- .min = 256,
- .max = 768,
+ .flags = MACHINE_FDC,
+ .ram = {
+ .min = 256,
+ .max = 768,
.step = 256
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &vendex_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = &fdc_xt_device,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &vendex_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = &fdc_xt_device,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] VTech Laser Turbo XT",
- .internal_name = "ltxt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_laserxt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] VTech Laser Turbo XT",
+ .internal_name = "ltxt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_laserxt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088_VTECH,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088_VTECH,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &laserxt_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &laserxt_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a standard PS/2 KBC (so, use IBM PS/2 Type 1). */
{
- .name = "[8088] Xi8088",
- .internal_name = "xi8088",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_xi8088_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Xi8088",
+ .internal_name = "xi8088",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_xi8088_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 1024,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 1024,
.step = 64
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_p1 = 0x00400cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &xi8088_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_p1 = 0x00400cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &xi8088_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Z-NIX PC-1600",
- .internal_name = "znic",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_znic_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Z-NIX PC-1600",
+ .internal_name = "znic",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_znic_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Zenith Data Systems Z-151/152/161",
- .internal_name = "zdsz151",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_z151_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Zenith Data Systems Z-151/152/161",
+ .internal_name = "zdsz151",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_z151_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_zenith_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_zenith_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Zenith Data Systems Z-159",
- .internal_name = "zdsz159",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_z159_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Zenith Data Systems Z-159",
+ .internal_name = "zdsz159",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_z159_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_zenith_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_zenith_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8088] Zenith Data Systems SupersPort (Z-184)",
- .internal_name = "zdsupers",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_z184_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8088] Zenith Data Systems SupersPort (Z-184)",
+ .internal_name = "zdsupers",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_z184_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO_FIXED,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_VIDEO_FIXED,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_zenith_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &cga_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_zenith_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &cga_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[GC100A] Philips P3120",
- .internal_name = "p3120",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_GC100A,
- .init = machine_xt_p3120_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[GC100A] Philips P3120",
+ .internal_name = "p3120",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_GC100A,
+ .init = machine_xt_p3120_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_XTA,
- .ram = {
- .min = 256,
- .max = 768,
+ .flags = MACHINE_XTA,
+ .ram = {
+ .min = 256,
+ .max = 768,
.step = 256
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_pc_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_pc_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[V20] PC-XT",
- .internal_name = "v20xt",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_v20xt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[V20] PC-XT",
+ .internal_name = "v20xt",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_v20xt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK(CPU_8088),
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK(CPU_8088),
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[V20] Tulip PC Compact 2",
- .internal_name = "tuliptc8",
- .type = MACHINE_TYPE_8088,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_tuliptc8_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[V20] Tulip PC Compact 2",
+ .internal_name = "tuliptc8",
+ .type = MACHINE_TYPE_8088,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_tuliptc8_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8088,
- .block = CPU_BLOCK(CPU_8088),
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8088,
+ .block = CPU_BLOCK(CPU_8088),
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 64,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 64,
+ .max = 640,
.step = 64
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 8086 Machines */
{
- .name = "[8086] Amstrad PC1512",
- .internal_name = "pc1512",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_pc1512_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Amstrad PC1512",
+ .internal_name = "pc1512",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_pc1512_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 8000000,
- .max_bus = 8000000,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 8000000,
+ .max_bus = 8000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_MOUSE,
- .ram = {
- .min = 512,
- .max = 640,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_MOUSE,
+ .ram = {
+ .min = 512,
+ .max = 640,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &vid_1512_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &vid_1512_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Amstrad PC1640",
- .internal_name = "pc1640",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_pc1640_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Amstrad PC1640",
+ .internal_name = "pc1640",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_pc1640_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE,
- .ram = {
- .min = 640,
- .max = 640,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE,
+ .ram = {
+ .min = 640,
+ .max = 640,
.step = 640
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &vid_1640_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &vid_1640_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Amstrad PC2086",
- .internal_name = "pc2086",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_pc2086_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Amstrad PC2086",
+ .internal_name = "pc2086",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_pc2086_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_MOUSE,
- .ram = {
- .min = 640,
- .max = 640,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_MOUSE,
+ .ram = {
+ .min = 640,
+ .max = 640,
.step = 640
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &vid_pc2086_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &vid_pc2086_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Amstrad PC3086",
- .internal_name = "pc3086",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_pc3086_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Amstrad PC3086",
+ .internal_name = "pc3086",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_pc3086_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_XTA | MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_MOUSE,
- .ram = {
- .min = 640,
- .max = 640,
+ .flags = MACHINE_XTA | MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_MOUSE,
+ .ram = {
+ .min = 640,
+ .max = 640,
.step = 640
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &vid_pc3086_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &vid_pc3086_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Amstrad PC5086",
- .internal_name = "pc5086",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_pc5086_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Amstrad PC5086",
+ .internal_name = "pc5086",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_pc5086_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC | MACHINE_BUS_PS2,
- .flags = MACHINE_XTA,
- .ram = {
- .min = 512,
- .max = 640,
+ .flags = MACHINE_XTA,
+ .ram = {
+ .min = 512,
+ .max = 640,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &f82c710_pc5086_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &f82c710_pc5086_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Amstrad PC20(0)",
- .internal_name = "pc200",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_pc200_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Amstrad PC20(0)",
+ .internal_name = "pc200",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_pc200_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE,
- .ram = {
- .min = 512,
- .max = 640,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE,
+ .ram = {
+ .min = 512,
+ .max = 640,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &vid_200_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &vid_200_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Amstrad PPC512/640",
- .internal_name = "ppc512",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ppc512_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Amstrad PPC512/640",
+ .internal_name = "ppc512",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ppc512_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE,
- .ram = {
- .min = 512,
- .max = 640,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE,
+ .ram = {
+ .min = 512,
+ .max = 640,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &vid_ppc512_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &vid_ppc512_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Compaq Deskpro",
- .internal_name = "deskpro",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_compaq_deskpro_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Compaq Deskpro",
+ .internal_name = "deskpro",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_compaq_deskpro_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_compaq_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_compaq_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Epson Equity LT",
- .internal_name = "elt",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_elt_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Epson Equity LT",
+ .internal_name = "elt",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_elt_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO,
- .ram = {
- .min = 640,
- .max = 640,
+ .flags = MACHINE_VIDEO,
+ .ram = {
+ .min = 640,
+ .max = 640,
.step = 640
},
- .nvrmask = 0x3f,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0x3f,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Mazovia 1016",
- .internal_name = "maz1016",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_maz1016_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Mazovia 1016",
+ .internal_name = "maz1016",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_maz1016_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086_MAZOVIA,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086_MAZOVIA,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 384
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Olivetti M21/24/24SP/AT&T PC 6300",
- .internal_name = "m24",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_m24_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Olivetti M21/24/24SP/AT&T PC 6300",
+ .internal_name = "m24",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_m24_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE | MACHINE_MFM,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MOUSE | MACHINE_MFM,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 128
},
- .nvrmask = 15,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 15,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &ogc_m24_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &ogc_m24_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Olivetti KBC firmware. */
{
- .name = "[8086] Olivetti M240/AT&T PC 6300 WGS",
- .internal_name = "m240",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_m240_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Olivetti M240/AT&T PC 6300 WGS",
+ .internal_name = "m240",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_m240_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_KEYBOARD | MACHINE_MFM,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_KEYBOARD | MACHINE_MFM,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 128
},
- .nvrmask = 15,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 15,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Schetmash Iskra-3104",
- .internal_name = "iskra3104",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_iskra3104_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Schetmash Iskra-3104",
+ .internal_name = "iskra3104",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_iskra3104_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 128,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 128,
+ .max = 640,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xtclone_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xtclone_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Tandy 1000 SL/2",
- .internal_name = "tandy1000sl2",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_tandy1000sl2_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Tandy 1000 SL/2",
+ .internal_name = "tandy1000sl2",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_tandy1000sl2_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
- .ram = {
- .min = 512,
- .max = 768,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 512,
+ .max = 768,
.step = 128
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL /* TODO: No specific kbd_device yet */,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &tandy_1000sl_video_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL /* TODO: No specific kbd_device yet */,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &tandy_1000sl_video_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Toshiba T1200",
- .internal_name = "t1200",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_xt_t1200_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Toshiba T1200",
+ .internal_name = "t1200",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_xt_t1200_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MFM,
- .ram = {
- .min = 1024,
- .max = 2048,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MFM,
+ .ram = {
+ .min = 1024,
+ .max = 2048,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_t1x00_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &t1200_video_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_t1x00_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &t1200_video_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] Victor V86P",
- .internal_name = "v86p",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_v86p_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] Victor V86P",
+ .internal_name = "v86p",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_v86p_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MFM,
- .ram = {
- .min = 512,
- .max = 1024,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD | MACHINE_MFM,
+ .ram = {
+ .min = 512,
+ .max = 1024,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[8086] VTech Laser XT3",
- .internal_name = "lxt3",
- .type = MACHINE_TYPE_8086,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_xt_lxt3_init,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[8086] VTech Laser XT3",
+ .internal_name = "lxt3",
+ .type = MACHINE_TYPE_8086,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_xt_lxt3_init,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_8086_VTECH,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_8086_VTECH,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PC,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 640,
.step = 64
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_xt_lxt3_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0xff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &lxt3_device,
- .kbd_device = &keyboard_pc_xt_device,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_xt_lxt3_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0xff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &lxt3_device,
+ .kbd_device = &keyboard_pc_xt_device,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 286 AT machines */
/* Has IBM AT KBC firmware. */
{
- .name = "[ISA] IBM AT",
- .internal_name = "ibmat",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_ibmat_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] IBM AT",
+ .internal_name = "ibmat",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_ibmat_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 8000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 8000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 512,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 512,
.step = 256
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ibmat_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ibmat_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[ISA] IBM PS/1 model 2011",
- .internal_name = "ibmps1es",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps1_m2011_init,
- .p1_handler = machine_ps1_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] IBM PS/1 model 2011",
+ .internal_name = "ibmps1es",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps1_m2011_init,
+ .p1_handler = machine_ps1_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 10000000,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 10000000,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_XTA | MACHINE_VIDEO_FIXED,
- .ram = {
- .min = 512,
- .max = 15360,
+ .flags = MACHINE_XTA | MACHINE_VIDEO_FIXED,
+ .ram = {
+ .min = 512,
+ .max = 15360,
.step = 512
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ps1_2011_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ps1_2011_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[ISA] IBM PS/2 model 30-286",
- .internal_name = "ibmps2_m30_286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_m30_286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] IBM PS/2 model 30-286",
+ .internal_name = "ibmps2_m30_286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_m30_286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286 | CPU_PKG_486SLC_IBM,
- .block = CPU_BLOCK_NONE,
- .min_bus = 10000000,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286 | CPU_PKG_486SLC_IBM,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 10000000,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_XTA | MACHINE_VIDEO_FIXED,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_XTA | MACHINE_VIDEO_FIXED,
+ .ram = {
+ .min = 512,
+ .max = 4096,
.step = 512
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[ISA] IBM XT Model 286",
- .internal_name = "ibmxt286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_ibmxt286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] IBM XT Model 286",
+ .internal_name = "ibmxt286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_ibmxt286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 6000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 6000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 640,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 640,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ibmxt286_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ibmxt286_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses Commodore (CBM) KBC firmware, to be implemented as identical to the
IBM AT KBC firmware unless evidence emerges of any proprietary commands. */
{
- .name = "[ISA] Commodore PC 30 III",
- .internal_name = "cmdpc30",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY, /* Machine has chipset: Faraday FE3400B */
- .init = machine_at_cmdpc_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Commodore PC 30 III",
+ .internal_name = "cmdpc30",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY, /* Machine has chipset: Faraday FE3400B */
+ .init = machine_at_cmdpc_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 12500000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 12500000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 640,
- .max = 14912,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 640,
+ .max = 14912,
.step = 64
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses Compaq KBC firmware. */
{
- .name = "[ISA] Compaq Portable II",
- .internal_name = "portableii",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_at_portableii_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Compaq Portable II",
+ .internal_name = "portableii",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_at_portableii_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 16000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 16000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_KEYBOARD,
- .ram = {
- .min = 640,
- .max = 16384,
+ .flags = MACHINE_KEYBOARD,
+ .ram = {
+ .min = 640,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses Compaq KBC firmware. */
{
- .name = "[ISA] Compaq Portable III",
- .internal_name = "portableiii",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_at_portableiii_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Compaq Portable III",
+ .internal_name = "portableiii",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_at_portableiii_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 16000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 16000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_KEYBOARD,
- .ram = {
- .min = 640,
- .max = 16384,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 640,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &compaq_plasma_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &compaq_plasma_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[ISA] GRiD GRiDcase 1520",
- .internal_name = "grid1520",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY, /* Machine has chipset: Faraday FE3400B */
- .init = machine_at_grid1520_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] GRiD GRiDcase 1520",
+ .internal_name = "grid1520",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY, /* Machine has chipset: Faraday FE3400B */
+ .init = machine_at_grid1520_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE /*| MACHINE_VIDEO_FIXED*/ | MACHINE_KEYBOARD,
- .ram = {
- .min = 1024,
- .max = 8192,
+ .flags = MACHINE_IDE /*| MACHINE_VIDEO_FIXED*/ | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 1024,
+ .max = 8192,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[ISA] Multitech PC-900",
- .internal_name = "pc900",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_pc900_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Multitech PC-900 / Commodore PC 40 / NBI 4200",
+ .internal_name = "pc900",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_pc900_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 10000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 10000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 1024,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 1024,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pc900_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[ISA] MR BIOS 286 clone",
- .internal_name = "mr286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_mr286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] MR BIOS 286 clone",
+ .internal_name = "mr286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_mr286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[ISA] NCR PC8/810/710/3390/3392",
- .internal_name = "pc8",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_pc8_init,
- .p1_handler = machine_ncr_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] NCR PC8/810/710/3390/3392",
+ .internal_name = "pc8",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_pc8_init,
+ .p1_handler = machine_ncr_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_NCR,
- .kbc_p1 = 0x000004df,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_NCR,
+ .kbc_p1 = 0x000004df,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Olivetti KBC firmware. */
{
- .name = "[ISA] Olivetti M290/AT&T 6286 WGS",
- .internal_name = "m290",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY, /* Yes, it's M290 with 98/86 gate array, not M290-30 with VLSI TOPCAT chipset. */
- .init = machine_at_m290_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Olivetti M290/AT&T 6286 WGS",
+ .internal_name = "m290",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY, /* Yes, it's M290 with 98/86 gate array, not M290-30 with VLSI TOPCAT chipset. */
+ .init = machine_at_m290_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_OLIVETTI,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_OLIVETTI,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
/* To configure the BIOS, use PB_2330a_diag.IMA from MS-DOS 3.30 Packard Bell OEM, GSETUP might work too*/
{
- .name = "[ISA] Packard Bell PB286",
- .internal_name = "pb286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_pb286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Packard Bell PB286",
+ .internal_name = "pb286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_pb286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 1024,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 1024,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[ISA] Phoenix AT clone",
- .internal_name = "ibmatpx",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_pxat_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Phoenix AT clone",
+ .internal_name = "ibmatpx",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_pxat_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 1024, /* assumed; more can be added via memory expansions */
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 1024, /* assumed; more can be added via memory expansions */
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Quadtel KBC firmware. */
{
- .name = "[ISA] Quadtel AT clone",
- .internal_name = "ibmatquadtel",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_quadtat_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Quadtel AT clone",
+ .internal_name = "ibmatquadtel",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_quadtat_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 1024, /* assumed; more can be added via memory expansions */
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 1024, /* assumed; more can be added via memory expansions */
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_QUADTEL,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_QUADTEL,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has unknown KBC firmware. */
{
- .name = "[ISA] Sanyo MBC-17PLUS",
- .internal_name = "mbc17",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_mbc17_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Sanyo MBC-17PLUS",
+ .internal_name = "mbc17",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_mbc17_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 12000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 12000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has unknown KBC firmware. */
{
- .name = "[ISA] Sharp AX286D",
- .internal_name = "ax286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_ax286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Sharp AX286D",
+ .internal_name = "ax286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_ax286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
+ .kbc_device = &kbc_at_device,
/* The version number is a guess - we have no probe of this machine's controller. */
- .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a Siemens proprietary KBC which is completely undocumented. */
{
- .name = "[ISA] Siemens PCD-2L",
- .internal_name = "siemens",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_siemens_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Siemens PCD-2L",
+ .internal_name = "siemens",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_siemens_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 12500000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 12500000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 15872,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 15872,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_SIEMENS,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_SIEMENS,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has Toshiba's proprietary KBC, which is already implemented. */
{
- .name = "[ISA] Toshiba T3100e",
- .internal_name = "t3100e",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_at_t3100e_init,
- .p1_handler = machine_t3100e_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Toshiba T3100e",
+ .internal_name = "t3100e",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_at_t3100e_init,
+ .p1_handler = machine_t3100e_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
- .ram = {
- .min = 1024,
- .max = 5120,
+ .flags = MACHINE_IDE | MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 1024,
+ .max = 5120,
.step = 256
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_TOSHIBA,
- .kbc_p1 = 0x0000bfff,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_TOSHIBA,
+ .kbc_p1 = 0x0000bfff,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* AMI BIOS for a chipset-less machine, most likely has AMI 'F' KBC firmware. */
{
- .name = "[ISA] Trangg Bow Unknown 286",
- .internal_name = "ibmatami",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_tbunk286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Trangg Bow Unknown 286",
+ .internal_name = "ibmatami",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_tbunk286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 256,
- .max = 1024, /* assumed; more can be added via memory expansions */
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 256,
+ .max = 1024, /* assumed; more can be added via memory expansions */
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00003800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00003800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* No proper pictures of the KBC exist, though it seems to have the IBM AT KBC
firmware. */
{
- .name = "[C&T PC/AT] Dell System 200",
- .internal_name = "dells200",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_CT_AT,
- .init = machine_at_dells200_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T PC/AT] Dell System 200",
+ .internal_name = "dells200",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_CT_AT,
+ .init = machine_at_dells200_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 12000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 12000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 640,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 640,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* has an Award-branded KBC controller */
{
- .name = "[C&T PC/AT] Hyundai Super-286C",
- .internal_name = "super286c",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_CT_AT,
- .init = machine_at_super286c_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T PC/AT] Hyundai Super-286C",
+ .internal_name = "super286c",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_CT_AT,
+ .init = machine_at_super286c_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 1024,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 1024,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AWARD | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AWARD | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* No proper pictures of the KBC exist, though it seems to have the IBM AT KBC
firmware. */
{
- .name = "[C&T PC/AT] PC's Limited (Dell) 28608L/AT122",
- .internal_name = "at122",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_CT_AT,
- .init = machine_at_at122_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T PC/AT] PC's Limited (Dell) 28608L/AT122",
+ .internal_name = "at122",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_CT_AT,
+ .init = machine_at_at122_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 12000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 12000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 640,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 640,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* No proper pictures of the KBC exist, though it seems to have the IBM AT KBC
firmware. */
{
- .name = "[C&T PC/AT] Tulip AT Compact",
- .internal_name = "tuliptc7",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_CT_AT,
- .init = machine_at_tuliptc7_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T PC/AT] Tulip AT Compact",
+ .internal_name = "tuliptc7",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_CT_AT,
+ .init = machine_at_tuliptc7_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 12000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 12000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 640,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 640,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Chips & Technologies KBC firmware. */
{
- .name = "[C&T PC/AT] Wells American A*Star",
- .internal_name = "wellamerastar",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_CT_AT,
- .init = machine_at_wellamerastar_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T PC/AT] Wells American A*Star",
+ .internal_name = "wellamerastar",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_CT_AT,
+ .init = machine_at_wellamerastar_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 6000000,
- .max_bus = 14000000,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 6000000,
+ .max_bus = 14000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 1024,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 1024,
.step = 128
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_CHIPS | 0x0000a600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_CHIPS | 0x0000a600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Quadtel KBC firmware. */
{
- .name = "[GC103] Quadtel 286 clone",
- .internal_name = "quadt286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_GC103,
- .init = machine_at_quadt286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[GC103] Quadtel 286 clone",
+ .internal_name = "quadt286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_GC103,
+ .init = machine_at_quadt286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_SOFTFLOAT_ONLY,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_SOFTFLOAT_ONLY,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_QUADTEL,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_QUADTEL,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI 'B' KBC firmware. */
{
- .name = "[GC103] TriGem 286M",
- .internal_name = "tg286m",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_GC103,
- .init = machine_at_tg286m_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[GC103] TriGem 286M",
+ .internal_name = "tg286m",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_GC103,
+ .init = machine_at_tg286m_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004200,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004200,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Phoenix MultiKey/42 KBC firmware. */
{
- .name = "[NEAT] Arche AMA-2010",
- .internal_name = "px286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_NEAT,
- .init = machine_at_px286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[NEAT] Arche AMA-2010",
+ .internal_name = "px286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_NEAT,
+ .init = machine_at_px286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
+ .kbc_device = &kbc_at_device,
/* The version number is a guess - we have no probe of this machine's controller. */
- .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Most likely has Chips & Technologies KBC firmware. */
{
- .name = "[NEAT] Atari PC 4",
- .internal_name = "ataripc4",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_NEAT,
- .init = machine_at_ataripc4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[NEAT] Atari PC 4",
+ .internal_name = "ataripc4",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_NEAT,
+ .init = machine_at_ataripc4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FDC, /* Machine has video: Paradise PVGA1A */
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_FDC, /* Machine has video: Paradise PVGA1A */
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_CHIPS | 0x0000a600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_CHIPS | 0x0000a600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is 'H'. */
{
- .name = "[NEAT] DataExpert 286",
- .internal_name = "ami286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_NEAT,
- .init = machine_at_neat_ami_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[NEAT] DataExpert 286",
+ .internal_name = "ami286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_NEAT,
+ .init = machine_at_neat_ami_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has NCR KBC firmware. */
{
- .name = "[NEAT] NCR 3302",
- .internal_name = "3302",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_NEAT,
- .init = machine_at_3302_init,
- .p1_handler = machine_ncr_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[NEAT] NCR 3302",
+ .internal_name = "3302",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_NEAT,
+ .init = machine_at_3302_init,
+ .p1_handler = machine_ncr_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 512,
- .max = 5120,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 512,
+ .max = 5120,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_NCR,
- .kbc_p1 = 0x000004df,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = ¶dise_pvga1a_ncr3302_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_NCR,
+ .kbc_p1 = 0x000004df,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = ¶dise_pvga1a_ncr3302_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the VLSI 82C113 with on-chip KBC. */
{
- .name = "[SCAMP] Amstrad PC7286",
- .internal_name = "pc7286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
- .init = machine_at_pc7286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAMP] Amstrad PC7286",
+ .internal_name = "pc7286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
+ .init = machine_at_pc7286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has unknown KBC firmware. */
{
- .name = "[SCAT] Amstrad PC5286",
- .internal_name = "pc5286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_pc5286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Amstrad PC5286",
+ .internal_name = "pc5286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_pc5286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT | MACHINE_BUS_PS2,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &f82c710_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &f82c710_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Chips & Technologies KBC firmware. */
{
- .name = "[SCAT] GW-286CT GEAR",
- .internal_name = "gw286ct",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_gw286ct_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] GW-286CT GEAR",
+ .internal_name = "gw286ct",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_gw286ct_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_CHIPS | 0x0000a600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &f82c710_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_CHIPS | 0x0000a600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &f82c710_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware - that's actually a guess since we
do not currently have a picture of the motherboard.
In the code, we actually give it the AMI PS/2 controller. */
{
- .name = "[SCAT] Goldstar GDC-212M",
- .internal_name = "gdc212m",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_gdc212m_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Goldstar GDC-212M",
+ .internal_name = "gdc212m",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_gdc212m_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 4096,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 4096,
.step = 512
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[SCAT] Hyundai Solomon 286KP",
- .internal_name = "award286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_award286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Hyundai Solomon 286KP",
+ .internal_name = "award286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_award286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 640,
- .max = 8192,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 640,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[SCAT] Hyundai Super-286TR",
- .internal_name = "super286tr",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_super286tr_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Hyundai Super-286TR",
+ .internal_name = "super286tr",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_super286tr_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 640,
- .max = 8192,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 640,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = "[SCAT] ICL DRS M35/286",
- .internal_name = "drsm35286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_drsm35286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] ICL DRS M35/286",
+ .internal_name = "drsm35286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_drsm35286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO, /* Machine has Super I/O: C&T F82C711 */
- .ram = {
- .min = 512,
- .max = 5120,
+ .flags = MACHINE_IDE | MACHINE_VIDEO, /* Machine has Super I/O: C&T F82C711 */
+ .ram = {
+ .min = 512,
+ .max = 5120,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5401_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5401_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[SCAT] Samsung Deskmaster 286",
- .internal_name = "deskmaster286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_deskmaster286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Samsung Deskmaster 286",
+ .internal_name = "deskmaster286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_deskmaster286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE, /* Has internal video: C&T VGA 411 */
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_IDE, /* Has internal video: C&T VGA 411 */
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Samsung (SEC) V1.4 KBC firmware. */
/* TODO: Do kbc_at.c logging to see if the BIOS sends any proprietary commands. */
{
- .name = "[SCAT] Samsung SPC-4200P",
- .internal_name = "spc4200p",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_spc4200p_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Samsung SPC-4200P",
+ .internal_name = "spc4200p",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_spc4200p_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE, /* Has internal video: C&T VGA 411 */
- .ram = {
- .min = 512,
- .max = 2048,
+ .flags = MACHINE_IDE, /* Has internal video: C&T VGA 411 */
+ .ram = {
+ .min = 512,
+ .max = 2048,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Most likely has a Samsung (SEC) V1.4 KBC firmware like the SPC-4200P above. */
{
- .name = "[SCAT] Samsung SPC-4216P",
- .internal_name = "spc4216p",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_spc4216p_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Samsung SPC-4216P",
+ .internal_name = "spc4216p",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_spc4216p_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 5120,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 5120,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Most likely has a Samsung (SEC) V1.4 KBC firmware like the SPC-4200P above. */
{
- .name = "[SCAT] Samsung SPC-4620P",
- .internal_name = "spc4620p",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_spc4620p_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Samsung SPC-4620P",
+ .internal_name = "spc4620p",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_spc4620p_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 5120,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 5120,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI '8' KBC firmware. */
{
- .name = "[SCAT] Senor Science Co. SCAT-286-003",
- .internal_name = "senorscat286",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_SCAT,
- .init = machine_at_senor_scat286_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAT] Senor Science Co. SCAT-286-003",
+ .internal_name = "senorscat286",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_SCAT,
+ .init = machine_at_senor_scat286_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 512,
- .max = 4096,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 512,
+ .max = 4096,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00003800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00003800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 286 machines that utilize the MCA bus */
/* Has IBM PS/2 Type 2 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 50",
- .internal_name = "ibmps2_m50",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_50_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 50",
+ .internal_name = "ibmps2_m50",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_50_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286 | CPU_PKG_486SLC_IBM,
- .block = CPU_BLOCK_NONE,
- .min_bus = 10000000,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286 | CPU_PKG_486SLC_IBM,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 10000000,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 10240,
+ .flags = MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 10240,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM | KBC_FLAG_IS_TYPE2,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ps2_model_50_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM | KBC_FLAG_IS_TYPE2,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ps2_model_50_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 2 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 60",
- .internal_name = "ibmps2_m60",
- .type = MACHINE_TYPE_286,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_60_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 60",
+ .internal_name = "ibmps2_m60",
+ .type = MACHINE_TYPE_286,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_60_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_286 | CPU_PKG_486SLC_IBM,
- .block = CPU_BLOCK_NONE,
- .min_bus = 10000000,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_286 | CPU_PKG_486SLC_IBM,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 10000000,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 10240,
+ .flags = MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 12288,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM | KBC_FLAG_IS_TYPE2,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM | KBC_FLAG_IS_TYPE2,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 386SX machines */
/* ISA slots available because an official IBM expansion for that existed. */
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[ISA] IBM PS/1 model 2121",
- .internal_name = "ibmps1_2121",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps1_m2121_init,
- .p1_handler = machine_ps1_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] IBM PS/1 model 2121",
+ .internal_name = "ibmps1_2121",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps1_m2121_init,
+ .p1_handler = machine_ps1_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 2048,
- .max = 6144,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 2048,
+ .max = 6144,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has NCR KBC firmware. */
{
- .name = "[ISA] NCR PC916SX",
- .internal_name = "pc916sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_DISCRETE, /* Machine has chipset: TI TACT82000 */
- .init = machine_at_pc916sx_init,
- .p1_handler = machine_ncr_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] NCR PC916SX",
+ .internal_name = "pc916sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_DISCRETE, /* Machine has chipset: TI TACT82000 */
+ .init = machine_at_pc916sx_init,
+ .p1_handler = machine_ncr_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_NCR,
- .kbc_p1 = 0x000004df,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_NCR,
+ .kbc_p1 = 0x000004df,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Quadtel KBC firmware. */
{
- .name = "[ISA] QTC-SXM KT X20T02/HI",
- .internal_name = "quadt386sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_DISCRETE, /* Machine has chipset: VLSI TOPCAT */
- .init = machine_at_quadt386sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] QTC-SXM KT X20T02/HI",
+ .internal_name = "quadt386sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_DISCRETE, /* Machine has chipset: VLSI TOPCAT */
+ .init = machine_at_quadt386sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_QUADTEL,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_QUADTEL,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Most likely has Phonenix KBC firmware. */
{
- .name = "[ACC 2036] Packard Bell Legend 300SX",
- .internal_name = "pbl300sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_ACC_2036,
- .init = machine_at_pbl300sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ACC 2036] Packard Bell PB300/PB320",
+ .internal_name = "pbl300sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_ACC_2036,
+ .init = machine_at_pbl300sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
+ .kbc_device = &kbc_at_device,
/* The version number is a guess - we have no probe of this machine's controller. */
- .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &pbl300sx_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &oti037_pbl300sx_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pbl300sx_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &oti037_pbl300sx_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the AMIKey-2 KBC - that's actually a guess since we
do not currently have a picture of the motherboard. */
{
- .name = "[ALi M1217] AAEON SBC-350A",
- .internal_name = "sbc350a",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_ALI_M1217,
- .init = machine_at_sbc350a_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1217] AAEON SBC-350A",
+ .internal_name = "sbc350a",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_ALI_M1217,
+ .init = machine_at_sbc350a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a Holtek keyboard controller which clones AMI 'H'. */
{
- .name = "[ALi M1217] Acrosser AR-B1374",
- .internal_name = "arb1374",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_ALI_M1217,
- .init = machine_at_arb1374_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1217] Acrosser AR-B1374",
+ .internal_name = "arb1374",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_ALI_M1217,
+ .init = machine_at_arb1374_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a JetKey KBC without version, which is a clone of AMI '8'. */
{
- .name = "[ALi M1217] Chaintech 3xxAX/AXB",
- .internal_name = "325ax",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_ALI_M1217,
- .init = machine_at_325ax_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1217] Chaintech 3xxAX/AXB",
+ .internal_name = "325ax",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_ALI_M1217,
+ .init = machine_at_325ax_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00003800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &c325ax_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00003800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &c325ax_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[ALi M1217] Flytech A36",
- .internal_name = "flytech386",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_ALI_M1217,
- .init = machine_at_flytech386_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1217] Flytech A36",
+ .internal_name = "flytech386",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_ALI_M1217,
+ .init = machine_at_flytech386_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &tvga8900d_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &tvga8900d_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses a NEC/Acer 90M002A.
This is a strange one - it has command AF but it returns 0x00. */
{
- .name = "[ALi M1409] Acer 100T",
- .internal_name = "acer100t",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_ALI_M1409,
- .init = machine_at_acer100t_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1409] Acer 100T",
+ .internal_name = "acer100t",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_ALI_M1409,
+ .init = machine_at_acer100t_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 16000000,
- .max_bus = 25000000, /* Limited to 25 due a inaccurate cpu speed */
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 16000000,
+ .max_bus = 25000000, /* Limited to 25 due a inaccurate cpu speed */
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0,
+ .min_multi = 0,
+ .max_multi = 0,
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO , /* Machine has internal OTI 077 Video card*/
- .ram = {
- .min = 2048,
- .max = 16256,
+ .flags = MACHINE_IDE | MACHINE_VIDEO , /* Machine has internal OTI 077 Video card*/
+ .ram = {
+ .min = 2048,
+ .max = 16256,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ACER,
- .kbc_p1 = 0x004008f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &oti077_acer100t_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ACER,
+ .kbc_p1 = 0x004008f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &oti077_acer100t_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an AMI KBC firmware, the only photo of this is too low resolution
for me to read what's on the KBC chip, so I'm going to assume AMI 'F'
based on the other known HT18 AMI BIOS strings. */
{
- .name = "[HT18] Arche AMA-932J",
- .internal_name = "ama932j",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_HT18,
- .init = machine_at_ama932j_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[HT18] Arche AMA-932J",
+ .internal_name = "ama932j",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_HT18,
+ .init = machine_at_ama932j_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &oti067_ama932j_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &oti067_ama932j_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Most likely has a Phoenix MultiKey/42 keyboard controller. */
{
- .name = "[Intel 82335] ADI 386SX",
- .internal_name = "adi386sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_INTEL_82335,
- .init = machine_at_adi386sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[Intel 82335] ADI 386SX",
+ .internal_name = "adi386sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_INTEL_82335,
+ .init = machine_at_adi386sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00010500, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00010500, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an AMI Keyboard BIOS PLUS KBC firmware ('8'). */
- { .name = "[Intel 82335] Shuttle 386SX",
- .internal_name = "shuttle386sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_INTEL_82335,
- .init = machine_at_shuttle386sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ { .name = "[Intel 82335] Shuttle 386SX",
+ .internal_name = "shuttle386sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_INTEL_82335,
+ .init = machine_at_shuttle386sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004400, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004400, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses Commodore (CBM) KBC firmware, to be implemented as identical to
the IBM PS/2 Type 1 KBC firmware unless evidence emerges of any
proprietary commands. */
{
- .name = "[NEAT] Commodore SL386SX-16",
- .internal_name = "cmdsl386sx16",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_NEAT,
- .init = machine_at_cmdsl386sx16_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[NEAT] Commodore SL386SX-16",
+ .internal_name = "cmdsl386sx16",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_NEAT,
+ .init = machine_at_cmdsl386sx16_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 1024,
- .max = 8192,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 1024,
+ .max = 8192,
.step = 512
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[NEAT] DTK PM-1630C",
- .internal_name = "dtk386",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_NEAT,
- .init = machine_at_neat_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[NEAT] DTK PM-1630C",
+ .internal_name = "dtk386",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_NEAT,
+ .init = machine_at_neat_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
- { .name = "[NEATsx] OKI if386AX30L",
- .internal_name = "if386sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_NEAT_SX,
- .init = machine_at_if386sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ { .name = "[NEATsx] OKI if386AX30L",
+ .internal_name = "if386sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_NEAT_SX,
+ .init = machine_at_if386sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_KEYBOARD_JIS | MACHINE_AX,
- .ram = {
- .min = 1024,
- .max = 4096,
+ .flags = MACHINE_VIDEO_FIXED | MACHINE_KEYBOARD | MACHINE_KEYBOARD_JIS | MACHINE_AX,
+ .ram = {
+ .min = 1024,
+ .max = 4096,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
+ .kbc_device = &kbc_at_device,
/* The version number is a guess - we have no probe of this machine's controller. */
- .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_params = KBC_VEN_PHOENIX | 0x00010500,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI KBC firmware of uknown revision, maybe '8'. */
{
- .name = "[OPTi 283] Silicon Valley Computer SVC386SX/P1",
- .internal_name = "svc386sxp1",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_OPTI_283,
- .init = machine_at_svc386sxp1_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 283] Silicon Valley Computer SVC386SX/P1",
+ .internal_name = "svc386sxp1",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_OPTI_283,
+ .init = machine_at_svc386sxp1_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00003800, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00003800, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[OPTi 291] DTK PPM-3333P",
- .internal_name = "awardsx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_OPTI_291,
- .init = machine_at_awardsx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 291] DTK PPM-3333P",
+ .internal_name = "awardsx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_OPTI_291,
+ .init = machine_at_awardsx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses Commodore (CBM) KBC firmware, to be implemented as identical to
the IBM PS/2 Type 1 KBC firmware unless evidence emerges of any
proprietary commands. */
{
- .name = "[SCAMP] Commodore SL386SX-25",
- .internal_name = "cmdsl386sx25",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
- .init = machine_at_cmdsl386sx25_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAMP] Commodore SL386SX-25",
+ .internal_name = "cmdsl386sx25",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
+ .init = machine_at_cmdsl386sx25_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 8192,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 8192,
.step = 512
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL, /* The keyboard controller is part of the VL82c113. */
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5402_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL, /* The keyboard controller is part of the VL82c113. */
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5402_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The closest BIOS string I find to this one's, differs only in one part,
and ends in -8, so I'm going to assume that this, too, has an AMI '8'
(AMI Keyboard BIOS Plus) KBC firmware. */
{
- .name = "[SCAMP] DataExpert 386SX",
- .internal_name = "dataexpert386sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
- .init = machine_at_dataexpert386sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAMP] DataExpert 386SX",
+ .internal_name = "dataexpert386sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
+ .init = machine_at_dataexpert386sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 10000000,
- .max_bus = 25000000,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 10000000,
+ .max_bus = 25000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004400, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004400, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* No proper pictures of the KBC exist, though it seems to have the IBM AT KBC
firmware. */
{
- .name = "[SCAMP] Dell System 333s/L",
- .internal_name = "dells333sl",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
- .init = machine_at_dells333sl_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAMP] Dell System 333s/L",
+ .internal_name = "dells333sl",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
+ .init = machine_at_dells333sl_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 10000000,
- .max_bus = 33333333,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 10000000,
+ .max_bus = 33333333,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00002020,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &dells333sl_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5420_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00002020,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &dells333sl_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5420_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The only photo we have is too blurry to read the marking on the
the keyboard controller, but it's possibly a Phoenix. */
{
- .name = "[SCAMP] Samsung SPC-6033P",
- .internal_name = "spc6033p",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
- .init = machine_at_spc6033p_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCAMP] Samsung SPC-6033P",
+ .internal_name = "spc6033p",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_VLSI_SCAMP,
+ .init = machine_at_spc6033p_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 2048,
- .max = 12288,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 2048,
+ .max = 12288,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device, /* Possibly. */
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &ati28800k_spc6033p_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device, /* Possibly. */
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &ati28800k_spc6033p_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an unknown AMI KBC firmware, I'm going to assume 'F' until a
photo or real hardware BIOS string is found. */
{
- .name = "[SCATsx] Kaimei KMX-C-02",
- .internal_name = "kmxc02",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_SCAT_SX,
- .init = machine_at_kmxc02_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SCATsx] Kaimei KMX-C-02",
+ .internal_name = "kmxc02",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_SCAT_SX,
+ .init = machine_at_kmxc02_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 512,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 512,
+ .max = 16384,
.step = 512
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device, /* Possibly. */
- .kbc_params = KBC_VEN_AMI | 0x00004600, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device, /* Possibly. */
+ .kbc_params = KBC_VEN_AMI | 0x00004600, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Quadtel KBC firmware. */
{
- .name = "[WD76C10] Amstrad MegaPC",
- .internal_name = "megapc",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_WD76C10,
- .init = machine_at_wd76c10_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[WD76C10] Amstrad MegaPC",
+ .internal_name = "megapc",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_WD76C10,
+ .init = machine_at_wd76c10_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 16000000,
- .max_bus = 25000000,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 16000000,
+ .max_bus = 25000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_QUADTEL,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_QUADTEL,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 386SX machines which utilize the MCA bus */
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 55SX",
- .internal_name = "ibmps2_m55sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_55sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 55SX",
+ .internal_name = "ibmps2_m55sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_55sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 8192,
+ .flags = MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 8192,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 65SX",
- .internal_name = "ibmps2_m65sx",
- .type = MACHINE_TYPE_386SX,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_65sx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 65SX",
+ .internal_name = "ibmps2_m65sx",
+ .type = MACHINE_TYPE_386SX,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_65sx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386SX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386SX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 8192,
+ .flags = MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 8192,
.step = 1024
},
- .nvrmask = 63,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .nvrmask = 63,
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* ALi M6117 machines */
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[ALi M6117] Acrosser PJ-A511M",
- .internal_name = "pja511m",
- .type = MACHINE_TYPE_M6117,
- .chipset = MACHINE_CHIPSET_ALI_M6117,
- .init = machine_at_pja511m_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M6117] Acrosser PJ-A511M",
+ .internal_name = "pja511m",
+ .type = MACHINE_TYPE_M6117,
+ .chipset = MACHINE_CHIPSET_ALI_M6117,
+ .init = machine_at_pja511m_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_M6117,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_M6117,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[ALi M6117] Protech ProX-1332",
- .internal_name = "prox1332",
- .type = MACHINE_TYPE_M6117,
- .chipset = MACHINE_CHIPSET_ALI_M6117,
- .init = machine_at_prox1332_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M6117] Protech ProX-1332",
+ .internal_name = "prox1332",
+ .type = MACHINE_TYPE_M6117,
+ .chipset = MACHINE_CHIPSET_ALI_M6117,
+ .init = machine_at_prox1332_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_M6117,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_M6117,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 486SLC machines */
/* 486SLC machines with just the ISA slot */
/* Has AMIKey H KBC firmware. */
{
- .name = "[OPTi 283] RYC Leopard LX",
- .internal_name = "rycleopardlx",
- .type = MACHINE_TYPE_486SLC,
- .chipset = MACHINE_CHIPSET_OPTI_283,
- .init = machine_at_rycleopardlx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 283] RYC Leopard LX",
+ .internal_name = "rycleopardlx",
+ .type = MACHINE_TYPE_486SLC,
+ .chipset = MACHINE_CHIPSET_OPTI_283,
+ .init = machine_at_rycleopardlx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_486SLC_IBM,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_486SLC_IBM,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 386DX machines */
/* Uses Compaq KBC firmware. */
{
- .name = "[ISA] Compaq Deskpro 386",
- .internal_name = "deskpro386",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_deskpro386_init,
- .p1_handler = machine_compaq_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Compaq Deskpro 386",
+ .internal_name = "deskpro386",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_deskpro386_init,
+ .p1_handler = machine_compaq_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX_DESKPRO386,
- .block = CPU_BLOCK(CPU_486DLC, CPU_RAPIDCAD),
- .min_bus = 16000000,
- .max_bus = 25000000,
+ .cpu = {
+ .package = CPU_PKG_386DX_DESKPRO386,
+ .block = CPU_BLOCK(CPU_486DLC, CPU_RAPIDCAD),
+ .min_bus = 16000000,
+ .max_bus = 25000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_COMPAQ,
- .kbc_p1 = 0x000000f4,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &deskpro386_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_COMPAQ,
+ .kbc_p1 = 0x000000f4,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &deskpro386_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses Compaq KBC firmware. */
{
- .name = "[ISA] Compaq Portable III (386)",
- .internal_name = "portableiii386",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_portableiii386_init,
- .p1_handler = machine_compaq_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Compaq Portable III (386)",
+ .internal_name = "portableiii386",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_portableiii386_init,
+ .p1_handler = machine_compaq_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 20000000,
- .max_bus = 20000000,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 20000000,
+ .max_bus = 20000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_KEYBOARD,
- .ram = {
- .min = 1024,
- .max = 14336,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_KEYBOARD,
+ .ram = {
+ .min = 1024,
+ .max = 14336,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_COMPAQ,
- .kbc_p1 = 0x000000f4,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &compaq_plasma_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_COMPAQ,
+ .kbc_p1 = 0x000000f4,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &compaq_plasma_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Phoenix MultiKey/42 KBC firmware. */
{
- .name = "[ISA] Micronics 09-00021 (Tandon BIOS)",
- .internal_name = "micronics386",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_micronics386_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Micronics 09-00021 (Tandon BIOS)",
+ .internal_name = "micronics386",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_micronics386_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM AT KBC firmware. */
{
- .name = "[ISA] Micronics 09-00021 (Phoenix BIOS)",
- .internal_name = "micronics386px",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_DISCRETE,
- .init = machine_at_micronics386px_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ISA] Micronics 09-00021 (Phoenix BIOS)",
+ .internal_name = "micronics386px",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_DISCRETE,
+ .init = machine_at_micronics386px_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 512,
- .max = 8192,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 512,
+ .max = 8192,
.step = 128
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Jetkey V3, which we currently lack a probe of, but an
old test by Carlos showed it as being 'F'. */
{
- .name = "[ACC 2168] Juko AT046DX3",
- .internal_name = "acc386",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_ACC_2168,
- .init = machine_at_acc386_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ACC 2168] Juko AT046DX3",
+ .internal_name = "acc386",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_ACC_2168,
+ .init = machine_at_acc386_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Lance LT38C41 that clones an AMIKEY ('F'). */
{
- .name = "[ALi M1429] ECS Panda 386V",
- .internal_name = "ecs386v",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_ALI_M1429,
- .init = machine_at_ecs386v_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429] ECS Panda 386V",
+ .internal_name = "ecs386v",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_ALI_M1429,
+ .init = machine_at_ecs386v_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0,
+ .min_multi = 0,
+ .max_multi = 0,
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024,
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device, /* TODO: Lance LT38C41. */
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device, /* TODO: Lance LT38C41. */
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an AMI Keyboard BIOS PLUS KBC firmware ('8'). */
{
- .name = "[C&T 386/AT] ECS 386/32",
- .internal_name = "ecs386",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_CT_386,
- .init = machine_at_ecs386_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T 386/AT] ECS 386/32",
+ .internal_name = "ecs386",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_CT_386,
+ .init = machine_at_ecs386_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00003800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00003800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Unknown - we give it an AT Award keyboard controller. */
{
- .name = "[C&T 386/AT] Samsung SPC-6000A",
- .internal_name = "spc6000a",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_CT_386,
- .init = machine_at_spc6000a_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T 386/AT] Samsung SPC-6000A",
+ .internal_name = "spc6000a",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_CT_386,
+ .init = machine_at_spc6000a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AWARD | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AWARD | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* I found one board picture of it and I can't really read the
keyboard controller markings from it, but it may be Phoenix. */
{
- .name = "[C&T 386/AT] Tandy 4000",
- .internal_name = "tandy4000",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_CT_386,
- .init = machine_at_tandy4000_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[C&T 386/AT] Tandy 4000",
+ .internal_name = "tandy4000",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_CT_386,
+ .init = machine_at_tandy4000_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey 'F' KBC firmware. */
{
- .name = "[OPTi 391] DataExpert 386WB",
- .internal_name = "dataexpert386wb",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_OPTI_391,
- .init = machine_at_dataexpert386wb_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 391] DataExpert 386C",
+ .internal_name = "dataexpert386wb",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_OPTI_391,
+ .init = machine_at_dataexpert386wb_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX, /* Actual machine only supports 386DXes */
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX, /* Actual machine only supports 386DXes */
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &dataexpert386wb_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The board has a "ASII KB-100" which I was not able to find any information about,
but the BIOS sends commands C9 without a parameter and D5, both of which are
Phoenix MultiKey commands. */
{
- .name = "[OPTi 495SLC] U-Board OPTi 495SLC",
- .internal_name = "award495",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_OPTI_495SLC,
- .init = machine_at_opti495_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 495SLC] U-Board OPTi 495SLC",
+ .internal_name = "award495",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_OPTI_495SLC,
+ .init = machine_at_opti495_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX, /* Actual machine only supports 386DXes */
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX, /* Actual machine only supports 386DXes */
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Award KBC firmware. */
{
- .name = "[SiS 310] ASUS 386/33-64K",
- .internal_name = "asus3863364k",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_SIS_310,
- .init = machine_at_asus3863364k_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 310] ASUS 386/33-64K",
+ .internal_name = "asus3863364k",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_SIS_310,
+ .init = machine_at_asus3863364k_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AWARD | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AWARD | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey F KBC firmware. */
{
- .name = "[SiS 310] ASUS ISA-386C",
- .internal_name = "asus386",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_SIS_310,
- .init = machine_at_asus386_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 310] ASUS ISA-386C",
+ .internal_name = "asus386",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_SIS_310,
+ .init = machine_at_asus386_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 386DX machines which utilize the MCA bus */
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 80 (type 2)",
- .internal_name = "ibmps2_m80",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_80_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 80 (type 2)",
+ .internal_name = "ibmps2_m80",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_80_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_486BL,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_486BL,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/55 5551-Sxx, Txx stage 2 firmware. */
{
- .name = "[MCA] IBM PS/55 model 5550-T",
- .internal_name = "ibmps55_m50t",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps55_model_50t_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/55 model 5550-S/T Stage II",
+ .internal_name = "ibmps55_m50t",
+ .type = MACHINE_TYPE_386DX,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps55_model_50t_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_486BL,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_486BL,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD_JIS | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 16384,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD_JIS | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 16384,
.step = 2048
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
- },
- /* Has IBM PS/55 5551-V0x, V1x firmware. */
- {
- .name = "[MCA] IBM PS/55 model 5550-V",
- .internal_name = "ibmps55_m50v",
- .type = MACHINE_TYPE_386DX,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps55_model_50v_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
- .gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_486BL,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
- .min_voltage = 0,
- .max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
- },
- .bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO | MACHINE_KEYBOARD_JIS | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 16384,
- .step = 4096
- },
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
- .default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 386DX/486 machines */
/* Winbond W83C42 - ASIC that clones AMI 'F'. */
{
- .name = "[ALi M1429G] DataExpert EXP4349",
- .internal_name = "exp4349",
- .type = MACHINE_TYPE_386DX_486,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_exp4349_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] DataExpert EXP4349",
+ .internal_name = "exp4349",
+ .type = MACHINE_TYPE_386DX_486,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_exp4349_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey F KBC firmware. The EFAR chipst is a rebrand of OPTi 495SX. */
{
- .name = "[OPTi 495SX] CAF Technology C747",
- .internal_name = "c747",
- .type = MACHINE_TYPE_386DX_486,
- .chipset = MACHINE_CHIPSET_OPTI_495SX,
- .init = machine_at_c747_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 495SX] CAF Technology C747",
+ .internal_name = "c747",
+ .type = MACHINE_TYPE_386DX_486,
+ .chipset = MACHINE_CHIPSET_OPTI_495SX,
+ .init = machine_at_c747_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM | MACHINE_IDE,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_APM | MACHINE_IDE,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_SIEMENS,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_SIEMENS,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey 'F' or MR BIOS 'M' KBC firmware, we give it the latter
for the sake of keyboard controller diversity. */
{
- .name = "[OPTi 495SX] DataExpert SX495",
- .internal_name = "ami495",
- .type = MACHINE_TYPE_386DX_486,
- .chipset = MACHINE_CHIPSET_OPTI_495SX,
- .init = machine_at_opti495_ami_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 495SX] DataExpert SX495",
+ .internal_name = "ami495",
+ .type = MACHINE_TYPE_386DX_486,
+ .chipset = MACHINE_CHIPSET_OPTI_495SX,
+ .init = machine_at_opti495_ami_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004d00,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &opti495_ami_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004d00,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &opti495_ami_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 70 (type 3)",
- .internal_name = "ibmps2_m70_type3",
- .type = MACHINE_TYPE_386DX_486,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_70_type3_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 70 (type 3)",
+ .internal_name = "ibmps2_m70_type3",
+ .type = MACHINE_TYPE_386DX_486,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_70_type3_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_486BL | CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_486BL | CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 65536,
+ .flags = MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 65536,
.step = 2048
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 80 (type 3)",
- .internal_name = "ibmps2_m80_type3",
- .type = MACHINE_TYPE_386DX_486,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_80_axx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 80 (type 3)",
+ .internal_name = "ibmps2_m80_type3",
+ .type = MACHINE_TYPE_386DX_486,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_80_axx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_386DX | CPU_PKG_486BL | CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_486BL | CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 65536,
+ .flags = MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 65536,
.step = 2048
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ /* Has IBM PS/55 5551-V0x, V1x firmware. */
+ {
+ .name = "[MCA] IBM PS/55 model 5550-V0/V1",
+ .internal_name = "ibmps55_m50v",
+ .type = MACHINE_TYPE_386DX_486,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps55_model_50v_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_386DX | CPU_PKG_486BL | CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
+ .min_voltage = 0,
+ .max_voltage = 0,
+ .min_multi = 0,
+ .max_multi = 0
+ },
+ .bus_flags = MACHINE_PS2_MCA,
+ .flags = MACHINE_VIDEO | MACHINE_KEYBOARD_JIS | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 16384,
+ .step = 4096
+ },
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 486 machines - Socket 1 */
/* Has JetKey V5 KBC Firmware - we now have a photo of the board and its POST
screen, so we can match JetKey V5 to 'F'. */
{
- .name = "[CS4031] AMI 486 CS4031",
- .internal_name = "cs4031",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_CT_CS4031,
- .init = machine_at_cs4031_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[CS4031] AMI 486 CS4031",
+ .internal_name = "cs4031",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_CT_CS4031,
+ .init = machine_at_cs4031_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI KF KBC firmware. */
{
- .name = "[OPTi 381] Gigabyte GA-486L",
- .internal_name = "ga486l",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_OPTI_381,
- .init = machine_at_ga486l_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 381] Gigabyte GA-486L",
+ .internal_name = "ga486l",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_OPTI_381,
+ .init = machine_at_ga486l_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses the AMIKey 'F' keyboard controller firmware. */
{
- .name = "[OPTi 493] Silicon Valley Computer 486WB",
- .internal_name = "svc486wb",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_OPTI_493,
- .init = machine_at_svc486wb_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 493] Silicon Valley Computer 486WB",
+ .internal_name = "svc486wb",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_OPTI_493,
+ .init = machine_at_svc486wb_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 20000000,
- .max_bus = 33333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 20000000,
+ .max_bus = 33333333,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 2.0
+ .min_multi = 0,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses some variant of Phoenix MultiKey/42 as the Intel 8242 chip has a Phoenix
copyright. */
{
- .name = "[OPTi 498] Mylex MVI486",
- .internal_name = "mvi486",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_OPTI_498,
- .init = machine_at_mvi486_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 498] Mylex MVI486",
+ .internal_name = "mvi486",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_OPTI_498,
+ .init = machine_at_mvi486_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI KF KBC firmware. */
{
- .name = "[SiS 401] ASUS ISA-486",
- .internal_name = "isa486",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_SIS_401,
- .init = machine_at_isa486_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 401] ASUS ISA-486",
+ .internal_name = "isa486",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_SIS_401,
+ .init = machine_at_isa486_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware, per the screenshot in "How computers & MS-DOS work".
Also seen with an AMI 'F'. */
{
- .name = "[SiS 401] Chaintech 4xxSX/SC",
- .internal_name = "sis401",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_SIS_401,
- .init = machine_at_sis401_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 401] Chaintech 4xxSX/SC",
+ .internal_name = "sis401",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_SIS_401,
+ .init = machine_at_sis401_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Seen with both AMIKey F and AMIKey-2 H KBC firmwares. */
{
- .name = "[SiS 460] ABIT AB-AV4",
- .internal_name = "av4",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_SIS_460,
- .init = machine_at_av4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 460] ABIT AB-AV4",
+ .internal_name = "av4",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_SIS_460,
+ .init = machine_at_av4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Phoenix KBC firmware. */
{
- .name = "[SiS 471] AST Advantage! 40xxd",
- .internal_name = "advantage40xxd",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_advantage40xxd_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] AST Advantage! 40xxd",
+ .internal_name = "advantage40xxd",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_advantage40xxd_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 2
+ .min_multi = 0,
+ .max_multi = 2
},
.bus_flags = MACHINE_PS2_VLB,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 36864,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 36864,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5424_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5424_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey F KBC firmware. */
{
- .name = "[Symphony SL42C460] DTK PKM-0031Y",
- .internal_name = "dtk461",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_SYMPHONY_SL82C460,
- .init = machine_at_dtk461_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[Symphony SL42C460] DTK PKM-0031Y",
+ .internal_name = "dtk461",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_SYMPHONY_SL82C460,
+ .init = machine_at_dtk461_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The chip is a Lance LT38C41, a clone of the Intel 8041, and the BIOS sends
commands BC, BD, and C9 which exist on both AMIKey and Phoenix MultiKey/42,
@@ -7567,1555 +7567,1599 @@ const machine_t machines[] = {
this must have some form of AMIKey.
This is also seen with a genuine AMI 'F' (one of the photos on TheRetroWeb). */
{
- .name = "[VIA VT82C495] FIC 486-VC-HD",
- .internal_name = "486vchd",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_VIA_VT82C495,
- .init = machine_at_486vchd_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA VT82C495] FIC 486-VC-HD",
+ .internal_name = "486vchd",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_VIA_VT82C495,
+ .init = machine_at_486vchd_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 64512,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 64512,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VLSI VL82C113A SCAMP Combination I/O which holds the KBC. */
{
- .name = "[VLSI 82C480] HP Vectra 486VL",
- .internal_name = "vect486vl",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_VLSI_VL82C480,
- .init = machine_at_vect486vl_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI 82C480] HP Vectra 486VL",
+ .internal_name = "vect486vl",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_VLSI_VL82C480,
+ .init = machine_at_vect486vl_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 32768,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL, /* The keyboard controller is part of the VL82c113. */
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL, /*Has SIO (sorta): VLSI VL82C113A SCAMP Combination I/O*/
- .vid_device = &gd5428_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL, /* The keyboard controller is part of the VL82c113. */
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL, /*Has SIO (sorta): VLSI VL82C113A SCAMP Combination I/O*/
+ .vid_device = &gd5428_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a standard IBM PS/2 KBC firmware or a clone thereof. */
{
- .name = "[VLSI 82C481] Siemens Nixdorf D824",
- .internal_name = "d824",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_VLSI_VL82C481,
- .init = machine_at_d824_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI 82C481] Siemens Nixdorf D824",
+ .internal_name = "d824",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_VLSI_VL82C481,
+ .init = machine_at_d824_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 32768,
.step = 2048
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5428_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5428_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VLSI VL82C113A SCAMP Combination I/O which holds the KBC. */
{
- .name = "[VLSI 82C486] Olivetti PCS 44/C",
- .internal_name = "pcs44c",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_VLSI_VL82C486,
- .init = machine_at_pcs44c_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI 82C486] Olivetti PCS 44/C",
+ .internal_name = "pcs44c",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_VLSI_VL82C486,
+ .init = machine_at_pcs44c_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 20480,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 20480,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &oti077_pcs44c_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &oti077_pcs44c_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VLSI VL82C113A SCAMP Combination I/O which holds the KBC. */
{
- .name = "[VLSI 82C486] Tulip 486 DC/DT",
- .internal_name = "tuliptc38",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_VLSI_VL82C486,
- .init = machine_at_tuliptc38_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI 82C486] Tulip 486 DC/DT",
+ .internal_name = "tuliptc38",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_VLSI_VL82C486,
+ .init = machine_at_tuliptc38_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 32768,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL, /*Has SIO (sorta): VLSI VL82C113A SCAMP Combination I/O*/
- .vid_device = &gd5426_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL, /*Has SIO (sorta): VLSI VL82C113A SCAMP Combination I/O*/
+ .vid_device = &gd5426_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Award KBC firmware. */
{
- .name = "[ZyMOS Poach] ASUS ISA-486C",
- .internal_name = "isa486c",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_ZYMOS_POACH,
- .init = machine_at_isa486c_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ZyMOS Poach] ASUS ISA-486C",
+ .internal_name = "isa486c",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_ZYMOS_POACH,
+ .init = machine_at_isa486c_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AWARD | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AWARD | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI KF KBC firmware. */
{
- .name = "[ZyMOS Poach] Genoa Unknown 486",
- .internal_name = "genoa486",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_ZYMOS_POACH,
- .init = machine_at_genoa486_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ZyMOS Poach] Genoa Unknown 486",
+ .internal_name = "genoa486",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_ZYMOS_POACH,
+ .init = machine_at_genoa486_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 16384,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 16384,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[MCA] IBM PS/2 model 70 (type 4)",
- .internal_name = "ibmps2_m70_type4",
- .type = MACHINE_TYPE_486,
- .chipset = MACHINE_CHIPSET_PROPRIETARY,
- .init = machine_ps2_model_70_type4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[MCA] IBM PS/2 model 70 (type 4)",
+ .internal_name = "ibmps2_m70_type4",
+ .type = MACHINE_TYPE_486,
+ .chipset = MACHINE_CHIPSET_PROPRIETARY,
+ .init = machine_ps2_model_70_type4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET1,
- .block = CPU_BLOCK(CPU_i486SX, CPU_i486SX_SLENH, CPU_Am486SX, CPU_Cx486S),
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET1,
+ .block = CPU_BLOCK(CPU_i486SX, CPU_i486SX_SLENH, CPU_Am486SX, CPU_Cx486S),
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_MCA,
- .flags = MACHINE_VIDEO | MACHINE_SOFTFLOAT_ONLY,
- .ram = {
- .min = 2048,
- .max = 65536,
+ .flags = MACHINE_VIDEO | MACHINE_SOFTFLOAT_ONLY,
+ .ram = {
+ .min = 2048,
+ .max = 65536,
.step = 2048
},
- .nvrmask = 63,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 63,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_IBM,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_IBM,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 486 machines - Socket 2 */
/* 486 machines with just the ISA slot */
/* Uses some variant of Phoenix MultiKey/42 as the BIOS sends keyboard controller
command C7 (OR input byte with received data byte). */
{
- .name = "[ACC 2168] Packard Bell PB410A",
- .internal_name = "pb410a",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_ACC_2168,
- .init = machine_at_pb410a_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ACC 2168] Packard Bell PB410/PB410A/PB420/PB420T",
+ .internal_name = "pb410a",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_ACC_2168,
+ .init = machine_at_pb410a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM | MACHINE_GAMEPORT,
- .ram = {
- .min = 4096,
- .max = 36864,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM | MACHINE_GAMEPORT,
+ .ram = {
+ .min = 4096,
+ .max = 36864,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900 /* Guess. */,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &ht216_32_pb410a_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900 /* Guess. */,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &ht216_32_pb410a_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses an ACER/NEC 90M002A (UPD82C42C, 8042 clone) with unknown firmware (V4.01H). */
{
- .name = "[ALi M1429G] Acer A1G",
- .internal_name = "acera1g",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_acera1g_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] Acer A1G",
+ .internal_name = "acera1g",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_acera1g_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 36864,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 36864,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ACER,
- .kbc_p1 = 0x004008f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5428_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ACER,
+ .kbc_p1 = 0x004008f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5428_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[ALi M1429G] Kaimei SA-486 VL-BUS M.B.",
- .internal_name = "win486",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_winbios1429_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] Kaimei SA-486 VL-BUS M.B.",
+ .internal_name = "win486",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_winbios1429_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has JetKey V5.0 KBC Firmware which clones an AMI 'H'.
The board was also seen 2003 with a -F string. */
{
- .name = "[ALi M1429] Olystar LIL1429",
- .internal_name = "ali1429",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_ALI_M1429,
- .init = machine_at_ali1429_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429] Olystar LIL1429",
+ .internal_name = "ali1429",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_ALI_M1429,
+ .init = machine_at_ali1429_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI 'H' KBC. */
{
- .name = "[i420TX] J-Bond PCI400C-A",
- .internal_name = "pci400ca",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_INTEL_420TX,
- .init = machine_at_pci400ca_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420TX] J-Bond PCI400C-A",
+ .internal_name = "pci400ca",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_INTEL_420TX,
+ .init = machine_at_pci400ca_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_SCSI,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_SCSI,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a standalone AMI Megakey 1993, which is type 'P'. */
{
- .name = "[IMS 8848] Tekram G486IP",
- .internal_name = "g486ip",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_IMS_8848,
- .init = machine_at_g486ip_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[IMS 8848] Tekram G486IP",
+ .internal_name = "g486ip",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_IMS_8848,
+ .init = machine_at_g486ip_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey-2 'H' KBC firmware. */
{
- .name = "[OPTi 499] Alaris Cobalt LPX",
- .internal_name = "cobalt",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_OPTI_499,
- .init = machine_at_cobalt_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 499] Alaris Cobalt LPX",
+ .internal_name = "cobalt",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_OPTI_499,
+ .init = machine_at_cobalt_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3 | CPU_PKG_486BL,
- .block = CPU_BLOCK(CPU_P24T),
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3 | CPU_PKG_486BL,
+ .block = CPU_BLOCK(CPU_P24T),
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_VLB,
- .flags = MACHINE_APM | MACHINE_VIDEO | MACHINE_IDE_DUAL,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM | MACHINE_VIDEO | MACHINE_IDE_DUAL,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5428_vlb_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5428_vlb_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey-2 'H' KBC firmware. */
{
- .name = "[OPTi 499] Alaris COUGAR 486BL",
- .internal_name = "cougar",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_OPTI_499,
- .init = machine_at_cougar_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 499] Alaris COUGAR 486BL",
+ .internal_name = "cougar",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_OPTI_499,
+ .init = machine_at_cougar_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3 | CPU_PKG_486BL,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3 | CPU_PKG_486BL,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM, /* Machine has IDE with controller: Appian ADI/2 */
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM, /* Machine has IDE with controller: Appian ADI/2 */
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses an Intel KBC with Phoenix MultiKey KBC firmware. */
{
- .name = "[SiS 461] DEC DECpc LPV",
- .internal_name = "decpclpv",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_SIS_461,
- .init = machine_at_decpclpv_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 461] DEC DECpc LPV",
+ .internal_name = "decpclpv",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_SIS_461,
+ .init = machine_at_decpclpv_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_86c805_onboard_vlb_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_86c805_onboard_vlb_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses a ???? KBC. */
{
- .name = "[SiS 461] Dell System 4xx/NP",
- .internal_name = "dell466np",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_SIS_461,
- .init = machine_at_dell466np_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 461] Dell System 4xx/NP",
+ .internal_name = "dell466np",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_SIS_461,
+ .init = machine_at_dell466np_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 32768,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 32768,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x00002420,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5428_onboard_vlb_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x00002420,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5428_onboard_vlb_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The BIOS does not send any non-standard keyboard controller commands and wants
a PS/2 mouse, so it's an IBM PS/2 KBC (Type 1) firmware. */
{
- .name = "[SiS 461] IBM PS/ValuePoint 433DX/Si",
- .internal_name = "valuepoint433",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_SIS_461,
- .init = machine_at_valuepoint433_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 461] IBM PS/ValuePoint 433DX/Si",
+ .internal_name = "valuepoint433",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_SIS_461,
+ .init = machine_at_valuepoint433_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VLSI VL82C113A SCAMP Combination I/O which holds the KBC. */
{
- .name = "[VLSI 82C480] ZEOS Martin",
- .internal_name = "martin",
- .type = MACHINE_TYPE_486_S2,
- .chipset = MACHINE_CHIPSET_VLSI_VL82C480,
- .init = machine_at_martin_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI 82C480] ZEOS Martin",
+ .internal_name = "martin",
+ .type = MACHINE_TYPE_486_S2,
+ .chipset = MACHINE_CHIPSET_VLSI_VL82C480,
+ .init = machine_at_martin_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 65536,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 65536,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 486 machines - Socket 3 */
/* 486 machines with just the ISA slot */
/* JETKey V5.0 */
{
- .name = "[ALi M1429G] A-Trend ATC-1762",
- .internal_name = "atc1762",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_atc1762_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] A-Trend ATC-1762",
+ .internal_name = "atc1762",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_atc1762_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | KBC_FLAG_IS_ASIC | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | KBC_FLAG_IS_ASIC | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[ALi M1429G] ECS AL486",
- .internal_name = "ecsal486",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_ecsal486_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] ECS AL486",
+ .internal_name = "ecsal486",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_ecsal486_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 98304,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 98304,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This uses a VIA VT82C42N KBC, which is a clone of type 'F' with additional commands.
It's really an ASIC clone of the Award KBC, which is itself an extended clone of AMI 'F'. */
{
- .name = "[ALi M1429G] Lanner Electronics AP-4100AA",
- .internal_name = "ap4100aa",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_ap4100aa_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] Lanner Electronics AP-4100AA",
+ .internal_name = "ap4100aa",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_ap4100aa_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_AT,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Fujitsu MBL8042H KBC. */
{
- .name = "[Contaq 82C596A] A-Trend 4GPV5",
- .internal_name = "4gpv5",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_CONTAQ_82C596,
- .init = machine_at_4gpv5_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[Contaq 82C596A] A-Trend 4GPV5",
+ .internal_name = "4gpv5",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_CONTAQ_82C596,
+ .init = machine_at_4gpv5_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI MegaKey 'P' KBC firmware. */
{
- .name = "[Contaq 82C597] Visionex Green-B",
- .internal_name = "greenb",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_CONTAQ_82C597,
- .init = machine_at_greenb_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[Contaq 82C597] Visionex Green-B",
+ .internal_name = "greenb",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_CONTAQ_82C597,
+ .init = machine_at_greenb_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Version 1.0 has an AMIKEY-2, version 2.0 has a VIA VT82C42N KBC. */
{
- .name = "[OPTi 895] Jetway J-403TG",
- .internal_name = "403tg",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_OPTI_895_802G,
- .init = machine_at_403tg_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 895] Jetway J-403TG",
+ .internal_name = "403tg",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_OPTI_895_802G,
+ .init = machine_at_403tg_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &j403tg_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &j403tg_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Uses an Acer 90M002A.
This is a strange one - it has command AF but it returns 0x00. */
{
- .name = "[SiS 461] Acer V10",
- .internal_name = "acerv10",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_461,
- .init = machine_at_acerv10_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 461] Acer V10",
+ .internal_name = "acerv10",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_461,
+ .init = machine_at_acerv10_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_VLB,
- .flags = MACHINE_IDE | MACHINE_APM, /* Machine has internal SCSI: Adaptec AIC-6360 */
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE | MACHINE_APM, /* Machine has internal SCSI: Adaptec AIC-6360 */
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ACER,
- .kbc_p1 = 0x004008f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ACER,
+ .kbc_p1 = 0x004008f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The BIOS string ends in -U, unless command 0xA1 (AMIKey get version) returns an
'F', in which case, it ends in -F, so it has an AMIKey F KBC firmware.
The photo of the board shows an AMIKey KBC which is indeed F. */
{
- .name = "[SiS 471] ABIT AB-AH4",
- .internal_name = "win471",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_win471_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] ABIT AB-AH4",
+ .internal_name = "win471",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_win471_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK(CPU_Cx5x86),
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 2
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ /* JETKey 5.0 KBC */
+ {
+ .name = "[SiS 471] ABIT AB-AH4T",
+ .internal_name = "win471t",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_win471t_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
+ .min_voltage = 0,
+ .max_voltage = 0,
+ .min_multi = 0,
+ .max_multi = 0
+ },
+ .bus_flags = MACHINE_VLB,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
+ .step = 1024
+ },
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | KBC_FLAG_IS_ASIC | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey-2 'H' keyboard BIOS. */
{
- .name = "[SiS 471] AOpen Vi15G",
- .internal_name = "vi15g",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_vi15g_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] AOpen Vi15G",
+ .internal_name = "vi15g",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_vi15g_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[SiS 471] ASUS VL/I-486SV2GX4",
- .internal_name = "vli486sv2g",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_vli486sv2g_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] ASUS VL/I-486SV2GX4",
+ .internal_name = "vli486sv2g",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_vli486sv2g_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an Intel 82C42PE with Phoenix MultiKey/C42 KBC firmware, copyrighted 1993. */
{
- .name = "[SiS 471] DEC Venturis 4xx",
- .internal_name = "dvent4xx",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_dvent4xx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] DEC Venturis 4xx",
+ .internal_name = "dvent4xx",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_dvent4xx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE_DUAL | MACHINE_SUPER_IO | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 4096,
- .max = 69632,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SUPER_IO | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 4096,
+ .max = 69632,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED,
.default_jumpered_ecp_dma = 4,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_trio32_onboard_vlb_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio32_onboard_vlb_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has JetKey v5.0G KBC Firmware which is a clone of AMIKey type F. */
{
- .name = "[SiS 471] DTK PKM-0038S E-2",
- .internal_name = "dtk486",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_dtk486_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] DTK PKM-0038S E-2",
+ .internal_name = "dtk486",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_dtk486_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | KBC_FLAG_IS_ASIC | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | KBC_FLAG_IS_ASIC | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Lance LT38C41L with AMIKey F keyboard BIOS. */
{
- .name = "[SiS 471] Epox GXA486SG",
- .internal_name = "ami471",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_ami471_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] Epox GXA486SG",
+ .internal_name = "ami471",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_ami471_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | KBC_FLAG_IS_ASIC | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | KBC_FLAG_IS_CLONE | KBC_FLAG_IS_ASIC | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has MR BIOS V307UT KBC firmware, which, bizarrely enough, is actually a genuine AMI 'H'. */
{
- .name = "[SiS 471] SiS VL-BUS 471 REV. A1",
- .internal_name = "px471",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_px471_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] SiS VL-BUS 471 REV. A1",
+ .internal_name = "px471",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_px471_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* TriGem AMIBIOS Pre-Color with TriGem AMI 'Z' keyboard controller */
{
- .name = "[SiS 471] TriGem 486G (Olympia-K)",
- .internal_name = "tg486g",
- .type = MACHINE_TYPE_486_S3,
- .chipset = MACHINE_CHIPSET_SIS_471,
- .init = machine_at_tg486g_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 471] TriGem 486G (Olympia-K)",
+ .internal_name = "tg486g",
+ .type = MACHINE_TYPE_486_S3,
+ .chipset = MACHINE_CHIPSET_SIS_471,
+ .init = machine_at_tg486g_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_VLB,
- .flags = MACHINE_IDE | MACHINE_APM, /* Has internal video: Western Digital WD90C33-ZZ */
- .ram = {
- .min = 4096,
- .max = 40960,
+ .flags = MACHINE_IDE | MACHINE_APM, /* Has internal video: Western Digital WD90C33-ZZ */
+ .ram = {
+ .min = 4096,
+ .max = 40960,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 486 machines - Socket 3 PCI */
@@ -9123,224 +9167,224 @@ const machine_t machines[] = {
/* Machine with ALi M1429G chipset and M1435 southbridge */
/* Has an AMIKEY-2 KBC which is type 'H'. */
{
- .name = "[ALi M1429G] MSI MS-4134",
- .internal_name = "ms4134",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_ms4134_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] MSI MS-4134",
+ .internal_name = "ms4134",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_ms4134_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCIV,
- .flags = MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* TriGem machine with M1429G and PhoenixBIOS */
{
- .name = "[ALi M1429G] TriGem 486GP (Talent)",
- .internal_name = "tg486gp",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1429G,
- .init = machine_at_tg486gp_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1429G] TriGem 486GP (Talent)",
+ .internal_name = "tg486gp",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1429G,
+ .init = machine_at_tg486gp_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[ALi M1489] AAEON SBC-490",
- .internal_name = "sbc490",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1489,
- .init = machine_at_sbc490_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1489] AAEON SBC-490",
+ .internal_name = "sbc490",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1489,
+ .init = machine_at_sbc490_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &tgui9440_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &tgui9440_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the ALi M1487/9's on-chip keyboard controller which clones a standard AT
KBC. */
{
- .name = "[ALi M1489] ABIT AB-PB4",
- .internal_name = "abpb4",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1489,
- .init = machine_at_abpb4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1489] ABIT AB-PB4",
+ .internal_name = "abpb4",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1489,
+ .init = machine_at_abpb4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI, /* Machine has a PISA slot */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ALI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ALI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an ALi M5042 with phoenix firmware like the ESA TF-486. */
{
- .name = "[ALi M1489] Acrosser AR-B1476",
- .internal_name = "arb1476",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1489,
- .init = machine_at_arb1476_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1489] Acrosser AR-B1476",
+ .internal_name = "arb1476",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1489,
+ .init = machine_at_arb1476_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM, /* Has onboard video: C&T F65545 */
- .ram = {
- .min = 8192,
- .max = 73728,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM, /* Has onboard video: C&T F65545 */
+ .ram = {
+ .min = 8192,
+ .max = 73728,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00014000, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00014000, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the ALi M1487/9's on-chip keyboard controller which clones a standard AT
KBC.
@@ -9348,91 +9392,91 @@ const machine_t machines[] = {
and 0xCB if command 0xA1 returns a letter in the 0x5x or 0x7x ranges, so I'm
going to give it an AMI 'U' KBC. */
{
- .name = "[ALi M1489] AMI WinBIOS 486 PCI",
- .internal_name = "win486pci",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1489,
- .init = machine_at_win486pci_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1489] AMI WinBIOS 486 PCI",
+ .internal_name = "win486pci",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1489,
+ .init = machine_at_win486pci_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00005500,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00005500,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an ALi M5042 keyboard controller with Phoenix MultiKey/42 v1.40 firmware. */
{
- .name = "[ALi M1489] ESA TF-486",
- .internal_name = "tf486",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1489,
- .init = machine_at_tf486_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1489] ESA TF-486",
+ .internal_name = "tf486",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1489,
+ .init = machine_at_tf486_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00014000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00014000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the ALi M1487/9's on-chip keyboard controller which clones a standard AT
KBC.
@@ -9440,1467 +9484,1467 @@ const machine_t machines[] = {
returns (but only if command 0xA1 is instant response), so said ALi keyboard
controller likely returns 'E'. */
{
- .name = "[ALi M1489] MSI MS-4145",
- .internal_name = "ms4145",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_ALI_M1489,
- .init = machine_at_ms4145_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi M1489] MSI MS-4145",
+ .internal_name = "ms4145",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_ALI_M1489,
+ .init = machine_at_ms4145_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ALI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ALI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[i420EX] Advanced Integration Research 486PI",
- .internal_name = "486pi",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420EX,
- .init = machine_at_486pi_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420EX] Advanced Integration Research 486PI",
+ .internal_name = "486pi",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420EX,
+ .init = machine_at_486pi_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Phoenix Multikey/42 PS/2 KBC, but unknown version */
{
- .name = "[i420EX] Anigma BAT4IP3e",
- .internal_name = "bat4ip3e",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420EX,
- .init = machine_at_bat4ip3e_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420EX] Anigma BAT4IP3e",
+ .internal_name = "bat4ip3e",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420EX,
+ .init = machine_at_bat4ip3e_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[i420EX] ASUS PVI-486AP4",
- .internal_name = "486ap4",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420EX,
- .init = machine_at_486ap4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420EX] ASUS PVI-486AP4",
+ .internal_name = "486ap4",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420EX,
+ .init = machine_at_486ap4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the Phoenix MultiKey KBC firmware. */
{
- .name = "[i420EX] Intel Classic/PCI ED (Ninja)",
- .internal_name = "ninja",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420EX,
- .init = machine_at_ninja_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420EX] Intel Classic/PCI ED (Ninja)",
+ .internal_name = "ninja",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420EX,
+ .init = machine_at_ninja_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_PS2_KBC | MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED,
.default_jumpered_ecp_dma = 4,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* absolutely no KBC info */
{
- .name = "[i420EX] ICS SB486P",
- .internal_name = "sb486p",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420EX,
- .init = machine_at_sb486p_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420EX] ICS SB486P",
+ .internal_name = "sb486p",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420EX,
+ .init = machine_at_sb486p_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* According to another string seen on the UH19 website, this has AMI 'H' KBC. */
{
- .name = "[i420TX] AMI Super Voyager PCI",
- .internal_name = "amis76",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420TX,
- .init = machine_at_amis76_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420TX] AMI Super Voyager PCI",
+ .internal_name = "amis76",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420TX,
+ .init = machine_at_amis76_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/*
This has an AMIKey (and an on-board NCR 53C810 PCI SCSI controller), thanks, eBay!
The keyboard port is AT.
*/
{
- .name = "[i420TX] ASUS PCI/I-486SP3",
- .internal_name = "486sp3",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420TX,
- .init = machine_at_486sp3_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420TX] ASUS PCI/I-486SP3",
+ .internal_name = "486sp3",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420TX,
+ .init = machine_at_486sp3_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE | MACHINE_SCSI | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_SCSI | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the Phoenix MultiKey KBC firmware. */
{
- .name = "[i420TX] Intel Classic/PCI (Alfredo)",
- .internal_name = "alfredo",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420TX,
- .init = machine_at_alfredo_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420TX] Intel Classic/PCI (Alfredo)",
+ .internal_name = "alfredo",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420TX,
+ .init = machine_at_alfredo_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x00000ce0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x00000ce0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. Also has a
SST 29EE010 Flash chip. */
{
- .name = "[i420ZX] ASUS PCI/I-486SP3G",
- .internal_name = "486sp3g",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420ZX,
- .init = machine_at_486sp3g_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420ZX] ASUS PCI/I-486SP3G",
+ .internal_name = "486sp3g",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420ZX,
+ .init = machine_at_486sp3g_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE | MACHINE_SCSI | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_SCSI | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMI MEGAKey 'P' or 'R' keyboard controller. */
{
- .name = "[i420ZX] ICS SB486PV",
- .internal_name = "sb486pv",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_INTEL_420ZX,
- .init = machine_at_sb486pv_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i420ZX] ICS SB486PV",
+ .internal_name = "sb486pv",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_INTEL_420ZX,
+ .init = machine_at_sb486pv_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
/* Has PCI but no user-facing slots. */
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM | MACHINE_PCI_INTERNAL,
- .ram = {
- .min = 2048,
- .max = 65536,
+ .flags = MACHINE_PS2_KBC | MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM | MACHINE_PCI_INTERNAL,
+ .ram = {
+ .min = 2048,
+ .max = 65536,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &sb486pv_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5436_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &sb486pv_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5436_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This most likely has a standalone AMI Megakey 1993, which is type 'P', like the below Tekram board. */
{
- .name = "[IMS 8848] J-Bond PCI400C-B",
- .internal_name = "pci400cb",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_IMS_8848,
- .init = machine_at_pci400cb_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[IMS 8848] J-Bond PCI400C-B",
+ .internal_name = "pci400cb",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_IMS_8848,
+ .init = machine_at_pci400cb_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCIV,
- .flags = MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005000, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005000, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[OPTi 802G] IBM PC 330 (type 6573)",
- .internal_name = "pc330_6573",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_OPTI_895_802G,
- .init = machine_at_pc330_6573_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 802G] IBM PC 330 (type 6573)",
+ .internal_name = "pc330_6573",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_OPTI_895_802G,
+ .init = machine_at_pc330_6573_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3_PC330,
- .block = CPU_BLOCK_NONE,
- .min_bus = 25000000,
- .max_bus = 33333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3_PC330,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 25000000,
+ .max_bus = 33333333,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 2.0,
- .max_multi = 3.0
+ .min_multi = 2.0,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &pc330_6573_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5430_onboard_vlb_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pc330_6573_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5430_onboard_vlb_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* has a Phoenix PLCC Multikey copyrighted 1993, version unknown. */
{
- .name = "[OPTi 895] Packard Bell PB450",
- .internal_name = "pb450",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_OPTI_895_802G,
- .init = machine_at_pb450_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 895] Packard Bell PB450 (Firehawk)",
+ .internal_name = "pb450",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_OPTI_895_802G,
+ .init = machine_at_pb450_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &pb450_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5428_vlb_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pb450_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5428_vlb_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Acer KBC firmware. */
{
- .name = "[SiS 496] Acer P3",
- .internal_name = "acerp3",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_acerp3_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] Acer P3",
+ .internal_name = "acerp3",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_acerp3_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ACER | 0x00004200,
- .kbc_p1 = 0x004008f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5434_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ACER | 0x00004200,
+ .kbc_p1 = 0x004008f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5434_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[SiS 496] ASUS PVI-486SP3C",
- .internal_name = "486sp3c",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_486sp3c_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] ASUS PVI-486SP3C",
+ .internal_name = "486sp3c",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_486sp3c_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 261120,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 261120,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[SiS 496] Lucky Star LS-486E",
- .internal_name = "ls486e",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_ls486e_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] Lucky Star LS-486E",
+ .internal_name = "ls486e",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_ls486e_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[SiS 496] Micronics M4Li",
- .internal_name = "m4li",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_m4li_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] Micronics M4Li",
+ .internal_name = "m4li",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_m4li_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* AMIKEY-2 */
{
- .name = "[SiS 496] MSI MS-4144",
- .internal_name = "ms4144",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_ms4144_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] MSI MS-4144",
+ .internal_name = "ms4144",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_ms4144_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 5120, /* Hack: machine seems to break with less than 5 MBs of RAM */
- .max = 131072,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 5120, /* Hack: machine seems to break with less than 5 MBs of RAM */
+ .max = 131072,
.step = 1024
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Revision 1 has a Lance LT38C41L, revision 2 has a Holtek HT6542B.
Another variant with a Bestkey KBC might exist as well. */
{
- .name = "[SiS 496] Rise Computer R418",
- .internal_name = "r418",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_r418_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] Rise Computer R418",
+ .internal_name = "r418",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_r418_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 261120,
+ .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 261120,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a Holtek HT6542B KBC and the BIOS does not send a single non-standard KBC command.
The Holtek is an ASIC clone of AMI 'H' with a Holtek copyright string. */
{
- .name = "[SiS 496] Soyo 4SAW2",
- .internal_name = "4saw2",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_4saw2_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] Soyo 4SAW2",
+ .internal_name = "4saw2",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_4saw2_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK(CPU_i486SX, CPU_i486DX, CPU_Am486SX, CPU_Am486DX),
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK(CPU_i486SX, CPU_i486DX, CPU_Am486SX, CPU_Am486DX),
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 261120,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 261120,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* According to MrKsoft, his real 4DPS has an AMIKey-2, which is an updated version
of type 'H'. There are other variants of the board with Holtek HT6542B KBCs. */
{
- .name = "[SiS 496] Zida Tomato 4DP",
- .internal_name = "4dps",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_SIS_496,
- .init = machine_at_4dps_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 496] Zida Tomato 4DP",
+ .internal_name = "4dps",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_SIS_496,
+ .init = machine_at_4dps_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT,
- .ram = {
- .min = 2048,
- .max = 261120,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT,
+ .ram = {
+ .min = 2048,
+ .max = 261120,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the UMC 88xx on-chip KBC. */
{
- .name = "[UMC 8881] A-Trend ATC-1415",
- .internal_name = "atc1415",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_atc1415_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] A-Trend ATC-1415",
+ .internal_name = "atc1415",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_atc1415_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL, /* UMC UM8886 on-chip KBC. */
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL, /* UMC UM8886 on-chip KBC. */
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the UMC 88xx on-chip KBC. All the copies of the BIOS string I can find, end in
in -H, so the UMC on-chip KBC likely emulates the AMI 'H' KBC firmware. */
{
- .name = "[UMC 8881] Biostar MB-84xxUUD-A",
- .internal_name = "84xxuuda",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_84xxuuda_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] Biostar MB-84xxUUD-A",
+ .internal_name = "84xxuuda",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_84xxuuda_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
- /* Compaq Presario 7100 / 7200 Series, using MiTAC/Trigon PL4600C (486). */
+ /* Compaq Presario 7100 Series, using MiTAC/Trigon PL4600C (486). */
/* Has a VIA VT82C42N KBC. */
{
- .name = "[UMC 8881] Compaq Presario 7100/7200 Series 486",
- .internal_name = "pl4600c",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_pl4600c_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] Compaq Presario 7100 Series 486",
+ .internal_name = "pl4600c",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_pl4600c_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 65536,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 65536,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5430_onboard_pci_device,
- .snd_device = &ess_1688_device,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5430_onboard_pci_device,
+ .snd_device = &ess_1688_device,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
- .name = "[UMC 8881] ECS Elite UM8810P-AIO",
- .internal_name = "ecs486",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_ecs486_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] ECS Elite UM8810P-AIO",
+ .internal_name = "ecs486",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_ecs486_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey Z(!) KBC firmware. */
{
- .name = "[UMC 8881] Epson ActionPC 2600",
- .internal_name = "actionpc2600",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_actionpc2600_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] Epson ActionPC 2600",
+ .internal_name = "actionpc2600",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_actionpc2600_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 262144,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &tgui9440_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &tgui9440_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the UMC 88xx on-chip KBC. All the copies of the BIOS string I can find, end in
in -H, so the UMC on-chip KBC likely emulates the AMI 'H' KBC firmware. */
{
- .name = "[UMC 8881] Epson ActionTower 8400",
- .internal_name = "actiontower8400",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_actiontower8400_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] Epson ActionTower 8400",
+ .internal_name = "actiontower8400",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_actiontower8400_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 1024,
- .max = 262144,
+ .flags = MACHINE_SUPER_IO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 1024,
+ .max = 262144,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5430_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI_TRIGEM | 0x00005a00, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5430_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the UMC 88xx on-chip KBC. All the copies of the BIOS string I can find, end in
in -H, so the UMC on-chip KBC likely emulates the AMI 'H' KBC firmware. */
{
- .name = "[UMC 8881] PCChips M919",
- .internal_name = "m919",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_m919_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] PC Chips M919",
+ .internal_name = "m919",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_m919_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PCIV,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL, /* UMC UM8886 on-chip KBC. */
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL, /* UMC UM8886 on-chip KBC. */
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. Uses a mysterious I/O port C05. */
{
- .name = "[UMC 8881] Samsung SPC7700P-LW",
- .internal_name = "spc7700plw",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_spc7700plw_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] Samsung SPC7700P-LW",
+ .internal_name = "spc7700plw",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_spc7700plw_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL, /* UMC UM8886 on-chip KBC. */
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL, /* UMC UM8886 on-chip KBC. */
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a Holtek KBC. */
{
- .name = "[UMC 8881] Shuttle HOT-433A",
- .internal_name = "hot433a",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_UMC_UM8881,
- .init = machine_at_hot433a_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 8881] Shuttle HOT-433A",
+ .internal_name = "hot433a",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_UMC_UM8881,
+ .init = machine_at_hot433a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 262144,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &hot433a_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &hot433a_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C406 KBC+RTC that likely has identical commands to the VT82C42N. */
{
- .name = "[VIA VT82C496G] DFI G486VPA",
- .internal_name = "g486vpa",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_VIA_VT82C496G,
- .init = machine_at_g486vpa_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA VT82C496G] DFI G486VPA",
+ .internal_name = "g486vpa",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_VIA_VT82C496G,
+ .init = machine_at_g486vpa_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[VIA VT82C496G] FIC VIP-IO2",
- .internal_name = "486vipio2",
- .type = MACHINE_TYPE_486_S3_PCI,
- .chipset = MACHINE_CHIPSET_VIA_VT82C496G,
- .init = machine_at_486vipio2_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA VT82C496G] FIC VIP-IO2",
+ .internal_name = "486vipio2",
+ .type = MACHINE_TYPE_486_S3_PCI,
+ .chipset = MACHINE_CHIPSET_VIA_VT82C496G,
+ .init = machine_at_486vipio2_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET3,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = CPU_PKG_SOCKET3,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT,
- .ram = {
- .min = 1024,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT,
+ .ram = {
+ .min = 1024,
+ .max = 131072,
.step = 1024
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 486 machines - Miscellaneous */
@@ -10908,319 +10952,319 @@ const machine_t machines[] = {
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[STPC Client] ITOX STAR",
- .internal_name = "itoxstar",
- .type = MACHINE_TYPE_486_MISC,
- .chipset = MACHINE_CHIPSET_STPC_CLIENT,
- .init = machine_at_itoxstar_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[STPC Client] ITOX STAR",
+ .internal_name = "itoxstar",
+ .type = MACHINE_TYPE_486_MISC,
+ .chipset = MACHINE_CHIPSET_STPC_CLIENT,
+ .init = machine_at_itoxstar_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_STPC,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_STPC,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 75000000,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 1.0,
- .max_multi = 1.0
+ .min_multi = 1.0,
+ .max_multi = 1.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM, /* Machine has internal video: ST STPC Atlas */
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM, /* Machine has internal video: ST STPC Atlas */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[STPC Consumer-II] Acrosser AR-B1423C",
- .internal_name = "arb1423c",
- .type = MACHINE_TYPE_486_MISC,
- .chipset = MACHINE_CHIPSET_STPC_CONSUMER_II,
- .init = machine_at_arb1423c_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[STPC Consumer-II] Acrosser AR-B1423C",
+ .internal_name = "arb1423c",
+ .type = MACHINE_TYPE_486_MISC,
+ .chipset = MACHINE_CHIPSET_STPC_CONSUMER_II,
+ .init = machine_at_arb1423c_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_STPC,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_STPC,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 2.0,
- .max_multi = 2.0
+ .min_multi = 2.0,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: ST STPC Atlas */
- .ram = {
- .min = 32768,
- .max = 163840,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: ST STPC Atlas */
+ .ram = {
+ .min = 32768,
+ .max = 163840,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[STPC Consumer-II] Acrosser AR-B1479",
- .internal_name = "arb1479",
- .type = MACHINE_TYPE_486_MISC,
- .chipset = MACHINE_CHIPSET_STPC_CONSUMER_II,
- .init = machine_at_arb1479_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[STPC Consumer-II] Acrosser AR-B1479",
+ .internal_name = "arb1479",
+ .type = MACHINE_TYPE_486_MISC,
+ .chipset = MACHINE_CHIPSET_STPC_CONSUMER_II,
+ .init = machine_at_arb1479_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_STPC,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_STPC,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 2.0,
- .max_multi = 2.0
+ .min_multi = 2.0,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL | MACHINE_USB, /* Machine has internal video: ST STPC Atlas */
- .ram = {
- .min = 32768,
- .max = 163840,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL | MACHINE_USB, /* Machine has internal video: ST STPC Atlas */
+ .ram = {
+ .min = 32768,
+ .max = 163840,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[STPC Consumer-II] Lanner Electronics IAC-H488",
- .internal_name = "iach488",
- .type = MACHINE_TYPE_486_MISC,
- .chipset = MACHINE_CHIPSET_STPC_CONSUMER_II,
- .init = machine_at_iach488_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[STPC Consumer-II] Lanner Electronics IAC-H488",
+ .internal_name = "iach488",
+ .type = MACHINE_TYPE_486_MISC,
+ .chipset = MACHINE_CHIPSET_STPC_CONSUMER_II,
+ .init = machine_at_iach488_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_STPC,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_STPC,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 2.0,
- .max_multi = 2.0
+ .min_multi = 2.0,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2,
- .flags = MACHINE_IDE | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: ST STPC Atlas and NIC: Realtek RTL8139C+ */
- .ram = {
- .min = 32768,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: ST STPC Atlas and NIC: Realtek RTL8139C+ */
+ .ram = {
+ .min = 32768,
+ .max = 131072,
.step = 32768
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[STPC Elite] Advantech PCM-9340",
- .internal_name = "pcm9340",
- .type = MACHINE_TYPE_486_MISC,
- .chipset = MACHINE_CHIPSET_STPC_ELITE,
- .init = machine_at_pcm9340_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[STPC Elite] Advantech PCM-9340",
+ .internal_name = "pcm9340",
+ .type = MACHINE_TYPE_486_MISC,
+ .chipset = MACHINE_CHIPSET_STPC_ELITE,
+ .init = machine_at_pcm9340_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_STPC,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_STPC,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 2.0,
- .max_multi = 2.0
+ .min_multi = 2.0,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: SMI LynxEM+ 712 */
- .ram = {
- .min = 32768,
- .max = 98304,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: SMI LynxEM+ 712 */
+ .ram = {
+ .min = 32768,
+ .max = 98304,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[STPC Atlas] AAEON PCM-5330",
- .internal_name = "pcm5330",
- .type = MACHINE_TYPE_486_MISC,
- .chipset = MACHINE_CHIPSET_STPC_ATLAS,
- .init = machine_at_pcm5330_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[STPC Atlas] AAEON PCM-5330",
+ .internal_name = "pcm5330",
+ .type = MACHINE_TYPE_486_MISC,
+ .chipset = MACHINE_CHIPSET_STPC_ATLAS,
+ .init = machine_at_pcm5330_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_STPC,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_STPC,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 2.0,
- .max_multi = 2.0
+ .min_multi = 2.0,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: ST STPC Atlas */
- .ram = {
- .min = 32768,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_PCI_INTERNAL, /* Machine has internal video: ST STPC Atlas */
+ .ram = {
+ .min = 32768,
+ .max = 131072,
.step = 32768
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Socket 4 machines */
/* 430LX */
/* Hacer Acer 90M002A V4.10H KBC. */
{
- .name = "[i430LX] Acer V12P",
- .internal_name = "v12p",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_v12p_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] Acer V12P",
+ .internal_name = "v12p",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_v12p_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 196608,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 196608,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ACER | 0x00000000,
- .kbc_p1 = 0x004008f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &v12p_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ACER | 0x00000000,
+ .kbc_p1 = 0x004008f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &v12p_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware (AMIKey-2), per POST screen with BIOS string
shown in the manual. Has PS/2 mouse support with serial-style (DB9)
@@ -11228,399 +11272,399 @@ const machine_t machines[] = {
The boot block for BIOS recovery requires an unknown bit on port 805h
to be clear. */
{
- .name = "[i430LX] AMI Excalibur PCI Pentium",
- .internal_name = "excaliburpci",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_excaliburpci_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] AMI Excalibur PCI Pentium",
+ .internal_name = "excaliburpci",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_excaliburpci_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE | MACHINE_APM, /* Machine has internal SCSI */
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM, /* Machine has internal SCSI */
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey F KBC firmware (AMIKey). */
{
- .name = "[i430LX] ASUS P/I-P5MP3",
- .internal_name = "p5mp3",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_p5mp3_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] ASUS P/I-P5MP3",
+ .internal_name = "p5mp3",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_p5mp3_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 196608,
+ .flags = MACHINE_PS2_KBC | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 196608,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &p5mp3_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[i430LX] Dell OptiPlex 560/L",
- .internal_name = "opti560l",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_opti560l_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] Dell OptiPlex 560/L",
+ .internal_name = "opti560l",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_opti560l_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI MegaKey 'H' KBC firmware. */
{
- .name = "[i430LX] Gigabyte GA-586IS",
- .internal_name = "586is",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_586is_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] Gigabyte GA-586IS",
+ .internal_name = "586is",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_586is_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has IBM PS/2 Type 1 KBC firmware. */
{
- .name = "[i430LX] IBM PS/ValuePoint P60",
- .internal_name = "valuepointp60",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_valuepointp60_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] IBM PS/ValuePoint P60 (Robin ACE)",
+ .internal_name = "valuepointp60",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_valuepointp60_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_VIDEO_8514A | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_VIDEO_8514A | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &mach32_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &mach32_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the Phoenix MultiKey KBC firmware. */
{
- .name = "[i430LX] Intel Premiere/PCI (Batman)",
- .internal_name = "batman",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_batman_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] Intel Premiere/PCI (Batman)",
+ .internal_name = "batman",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_batman_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
- .kbc_p1 = 0x00001030,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &batman_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
+ .kbc_p1 = 0x00001030,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &batman_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the Phoenix MultiKey KBC firmware. */
{
- .name = "[i430LX] Intel Premiere/PCI (Batman's Revenge)",
- .internal_name = "revenge",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_revenge_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] Intel Premiere/PCI (Batman's Revenge)",
+ .internal_name = "revenge",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_revenge_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
- /* The M5Pi appears to have a Phoenix MultiKey KBC firmware according to photos. */
+ /* The M5Pi appears to have a Phoenix MultiKey KBC firmware according to photos. */
{
- .name = "[i430LX] Micronics M5Pi",
- .internal_name = "m5pi",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_m5pi_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] Micronics M5Pi",
+ .internal_name = "m5pi",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_m5pi_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the Phoenix MultiKey KBC firmware. */
{
- .name = "[i430LX] Packard Bell PB520R",
- .internal_name = "pb520r",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_INTEL_430LX,
- .init = machine_at_pb520r_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430LX] Packard Bell Robin LC (PB520R)",
+ .internal_name = "pb520r",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_INTEL_430LX,
+ .init = machine_at_pb520r_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 139264,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 139264,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5434_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5434_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* OPTi 596/597 */
@@ -11628,1528 +11672,1574 @@ const machine_t machines[] = {
PS/2 "Load Security" meaning), most likely MegaKey as it sends command AF
(Set Extended Controller RAM) just like the later Intel AMI BIOS'es. */
{
- .name = "[OPTi 597] AMI Excalibur VLB",
- .internal_name = "excalibur",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_OPTI_547_597,
- .init = machine_at_excalibur_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 597] AMI Excalibur VLB",
+ .internal_name = "excalibur",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_OPTI_547_597,
+ .init = machine_at_excalibur_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 60000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 60000000,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_VLB,
- .flags = MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 65536,
+ .flags = MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 65536,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005000, /* Guess. */
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005000, /* Guess. */
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* OPTi 596/597/822 */
/* Has a VIA VT82C42N KBC with AMI 'F' firmware */
{
- .name = "[OPTi 597] AT&T Globalyst 330 (Pentium)",
- .internal_name = "globalyst330_p5",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_OPTI_547_597,
- .init = machine_at_globalyst330_p5_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 597] AT&T Globalyst 330 (Pentium)",
+ .internal_name = "globalyst330_p5",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_OPTI_547_597,
+ .init = machine_at_globalyst330_p5_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PCIV,
- .flags = MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 65536,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 65536,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has AMIKey 'F' KBC firmware. */
{
- .name = "[OPTi 597] Supermicro P5VL-PCI",
- .internal_name = "p5vl",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_OPTI_547_597,
- .init = machine_at_p5vl_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 597] Supermicro P5VL-PCI",
+ .internal_name = "p5vl",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_OPTI_547_597,
+ .init = machine_at_p5vl_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PCIV,
- .flags = MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS 50x */
/* This has some form of AMI MegaKey as it uses keyboard controller command 0xCC. */
{
- .name = "[SiS 501] AMI Excalibur PCI-II Pentium ISA",
- .internal_name = "excaliburpci2",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_SIS_501,
- .init = machine_at_excaliburpci2_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 501] AMI Excalibur PCI-II Pentium ISA",
+ .internal_name = "excaliburpci2",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_SIS_501,
+ .init = machine_at_excaliburpci2_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[SiS 501] ASUS PCI/I-P5SP4",
- .internal_name = "p5sp4",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_SIS_501,
- .init = machine_at_p5sp4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 501] ASUS PCI/I-P5SP4",
+ .internal_name = "p5sp4",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_SIS_501,
+ .init = machine_at_p5sp4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[SiS 501] ECS SI5PI AIO",
- .internal_name = "ecs50x",
- .type = MACHINE_TYPE_SOCKET4,
- .chipset = MACHINE_CHIPSET_SIS_501,
- .init = machine_at_ecs50x_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 501] ECS SI5PI AIO",
+ .internal_name = "ecs50x",
+ .type = MACHINE_TYPE_SOCKET4,
+ .chipset = MACHINE_CHIPSET_SIS_501,
+ .init = machine_at_ecs50x_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 5000,
.max_voltage = 5000,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Socket 4/5 machines */
/* OPTi 596/597 */
/* This has AMIKey-2 'H' KBC firmware. */
{
- .name = "[OPTi 597] Taken PCI560-01",
- .internal_name = "pci56001",
- .type = MACHINE_TYPE_SOCKET4_5,
- .chipset = MACHINE_CHIPSET_OPTI_547_597,
- .init = machine_at_pci56001_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 597] Taken PCI560-01",
+ .internal_name = "pci56001",
+ .type = MACHINE_TYPE_SOCKET4_5,
+ .chipset = MACHINE_CHIPSET_OPTI_547_597,
+ .init = machine_at_pci56001_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4 | CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4 | CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 5000,
- .min_multi = 1.0,
- .max_multi = 1.5
+ .min_multi = 1.0,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* VLSI SuperCore */
/* This has Phoenix KBC firmware. */
{
- .name = "[VLSI SuperCore] DEC Celebris 5xx",
- .internal_name = "celebris5xx",
- .type = MACHINE_TYPE_SOCKET4_5,
- .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
- .init = machine_at_celebris5xx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI SuperCore] DEC Celebris 5xx",
+ .internal_name = "celebris5xx",
+ .type = MACHINE_TYPE_SOCKET4_5,
+ .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
+ .init = machine_at_celebris5xx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET4 | CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET4 | CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 5000,
- .min_multi = 1.0,
- .max_multi = 2.0
+ .min_multi = 1.0,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_vision864_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_vision864_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Socket 5 machines */
/* 430NX */
/* Has AMI 'H' KBC firmware. */
{
- .name = "[i430NX] ASUS PCI/I-P54NP4",
- .internal_name = "p54np4",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430NX,
- .init = machine_at_p54np4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430NX] ASUS PCI/I-P54NP4",
+ .internal_name = "p54np4",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430NX,
+ .init = machine_at_p54np4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE /*| MACHINE_SCSI */ | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 524288,
+ .flags = MACHINE_IDE /*| MACHINE_SCSI */ | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 524288,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI 'H' KBC firmware. */
{
- .name = "[i430NX] Gigabyte GA-586IP",
- .internal_name = "586ip",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430NX,
- .init = machine_at_586ip_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430NX] Gigabyte GA-586IP",
+ .internal_name = "586ip",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430NX,
+ .init = machine_at_586ip_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 262144,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 262144,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the Phoenix MultiKey KBC firmware. */
{
- .name = "[i430NX] Intel Premiere/PCI II (Plato)",
- .internal_name = "plato",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430NX,
- .init = machine_at_plato_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430NX] Intel Premiere/PCI II (Plato)",
+ .internal_name = "plato",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430NX,
+ .init = machine_at_plato_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
- .kbc_p1 = 0x00001030,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &plato_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900,
+ .kbc_p1 = 0x00001030,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &plato_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has unknown KBC firmware. */
{
- .name = "[i430NX] Siemens-Nixdorf D842",
- .internal_name = "d842",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430NX,
- .init = machine_at_d842_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430NX] Siemens-Nixdorf D842",
+ .internal_name = "d842",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430NX,
+ .init = machine_at_d842_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM, /* Machine has onboard video: TLI ET4000/w32p */
- .ram = {
- .min = 2048,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM, /* Machine has onboard video: TLI ET4000/w32p */
+ .ram = {
+ .min = 2048,
+ .max = 131072,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &d842_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &d842_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMI MegaKey KBC firmware. */
{
- .name = "[i430NX] Teknor TEK-932",
- .internal_name = "tek932",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430NX,
- .init = machine_at_tek932_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430NX] Teknor TEK-932",
+ .internal_name = "tek932",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430NX,
+ .init = machine_at_tek932_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_PS2_KBC | MACHINE_IDE | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 262144,
+ .flags = MACHINE_PS2_KBC | MACHINE_IDE | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 262144,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 430FX */
/* Uses an ACER/NEC 90M002A (UPD82C42C, 8042 clone) with unknown firmware (V5.0). */
{
- .name = "[i430FX] Acer V30",
- .internal_name = "acerv30",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_acerv30_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] Acer V30",
+ .internal_name = "acerv30",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_acerv30_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_ACER | 0x00000000,
- .kbc_p1 = 0x004008f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_ACER | 0x00000000,
+ .kbc_p1 = 0x004008f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey F KBC firmware. */
{
- .name = "[i430FX] AMI Apollo",
- .internal_name = "apollo",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_apollo_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] AMI Apollo",
+ .internal_name = "apollo",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_apollo_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has Dell KBC firmware. */
{
- .name = "[i430FX] Dell OptiPlex GXL/GXM",
- .internal_name = "optiplexgxl",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_optiplexgxl_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] Dell OptiPlex GXL/GXM",
+ .internal_name = "optiplexgxl",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_optiplexgxl_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86),
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86),
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_APM, /* Video: S3 Trio64V+ (86C765), Sound: Creative ViBRA 16S (CT2504), Network: 3Com ETHERLINK III (3C509B) */
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_APM, /* Video: S3 Trio64V+ (86C765), Sound: Creative ViBRA 16S (CT2504), Network: 3Com ETHERLINK III (3C509B) */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_trio64vplus_onboard_pci_device,
- .snd_device = &sb_vibra16s_onboard_device,
- .net_device = NULL /* not yet emulated */
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64vplus_onboard_pci_device,
+ .snd_device = &sb_vibra16s_onboard_device,
+ .net_device = NULL /* not yet emulated */
},
/* KBC On-Chip the VT82C406MV. */
{
- .name = "[i430FX] FIC PT-2000",
- .internal_name = "pt2000",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_pt2000_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] FIC PT-2000",
+ .internal_name = "pt2000",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_pt2000_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &pt2000_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ {
+ .name = "[i430FX] IBM PC 3x0 (type 65x6) (Morrison64)",
+ .internal_name = "pc330_65x6",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_pc330_65x6_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
+ .min_voltage = 3380,
+ .max_voltage = 3520,
+ .min_multi = 1.5,
+ .max_multi = 2.0
+ },
+ .bus_flags = MACHINE_PS2_PCI,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
+ .step = 8192
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .default_jumpered_ecp_dma = 3,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI . */
{
- .name = "[i430FX] Intel Advanced/ZP (Zappa)",
- .internal_name = "zappa",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_zappa_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] Intel Advanced/ZP (Zappa)",
+ .internal_name = "zappa",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_zappa_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &zappa_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
- /* The BIOS sends KBC command B3 which indicates an AMI (or VIA VT82C42N) KBC. */
+ /*
+ The BIOS sends KBC command B3 which indicates an AMI (or VIA VT82C42N) KBC.
+ The board turns out to be a BCM FM540 which has an AMI 'H' KBC.
+ */
{
- .name = "[i430FX] NEC PowerMate Vxxx",
- .internal_name = "powermatev",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_powermatev_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] NEC PowerMate Vxxx (BCM FM540)",
+ .internal_name = "powermatev",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_powermatev_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &powermatev_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey Z(!) KBC firmware. */
{
- .name = "[i430FX] TriGem Hawk",
- .internal_name = "hawk",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_hawk_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] TriGem Hawk",
+ .internal_name = "hawk",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_hawk_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI_TRIGEM | KBC_FLAG_IS_GREEN | 0x00005a00,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI_TRIGEM | KBC_FLAG_IS_GREEN | 0x00005a00,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* OPTi 596/597 */
/* Has unknown KBC firmware. */
{
- .name = "[OPTi 597] Northgate Computer Systems Elegance Pentium 90",
- .internal_name = "ncselp90",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_OPTI_547_597,
- .init = machine_at_ncselp90_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 597] Northgate Computer Systems Elegance Pentium 90",
+ .internal_name = "ncselp90",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_OPTI_547_597,
+ .init = machine_at_ncselp90_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCIV,
- .flags = MACHINE_APM | MACHINE_IDE_DUAL | MACHINE_SUPER_IO,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_APM | MACHINE_IDE_DUAL | MACHINE_SUPER_IO,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004d00, /* Guess */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004d00, /* Guess */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has unknown KBC firmware. */
{
- .name = "[OPTi 597] Shuttle HOT-543",
- .internal_name = "hot543",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_OPTI_547_597,
- .init = machine_at_hot543_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 597] Shuttle HOT-543",
+ .internal_name = "hot543",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_OPTI_547_597,
+ .init = machine_at_hot543_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PCIV,
- .flags = MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This uses an AMI KBC firmware in PS/2 mode (it sends command A5 with the
PS/2 "Load Security" meaning), most likely MegaKey as it sends command AF
(Set Extended Controller RAM) just like the later Intel AMI BIOS'es. */
{
- .name = "[OPTi 597] TMC PAT54PV",
- .internal_name = "pat54pv",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_OPTI_547_597,
- .init = machine_at_pat54pv_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[OPTi 597] TMC PAT54PV",
+ .internal_name = "pat54pv",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_OPTI_547_597,
+ .init = machine_at_pat54pv_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_VLB,
- .flags = MACHINE_PS2_KBC | MACHINE_APM,
- .ram = {
- .min = 2048,
- .max = 65536,
+ .flags = MACHINE_PS2_KBC | MACHINE_APM,
+ .ram = {
+ .min = 2048,
+ .max = 65536,
.step = 2048
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005000, /* Guess. */
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005000, /* Guess. */
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS 85C50x */
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[SiS 501] ASUS PCI/I-P54SP4",
- .internal_name = "p54sp4",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_SIS_501,
- .init = machine_at_p54sp4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 501] ASUS PCI/I-P54SP4",
+ .internal_name = "p54sp4",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_SIS_501,
+ .init = machine_at_p54sp4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86),
- .min_bus = 40000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86),
+ .min_bus = 40000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[SiS 501] BCM SQ-588",
- .internal_name = "sq588",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_SIS_501,
- .init = machine_at_sq588_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 501] BCM SQ-588",
+ .internal_name = "sq588",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_SIS_501,
+ .init = machine_at_sq588_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_PENTIUMMMX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_PENTIUMMMX),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This machine has a Winbond W83C842 KBC */
{
- .name = "[SiS 501] Gemlight GMB-P54SPS",
- .internal_name = "p54sps",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_SIS_501,
- .init = machine_at_p54sps_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 501] Gemlight GMB-P54SPS",
+ .internal_name = "p54sps",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_SIS_501,
+ .init = machine_at_p54sps_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
CPU_BLOCK(CPU_PENTIUMMMX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess. */
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[SiS 5501] MSI MS-5109",
- .internal_name = "ms5109",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_SIS_5501,
- .init = machine_at_ms5109_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5501] MSI MS-5109",
+ .internal_name = "ms5109",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_SIS_5501,
+ .init = machine_at_ms5109_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
CPU_BLOCK(CPU_PENTIUMMMX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey Z(!) KBC firmware. */
{
- .name = "[SiS 5501] Olivetti (TriGem) Torino",
- .internal_name = "torino",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_SIS_5501,
- .init = machine_at_torino_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5501] Olivetti (TriGem) Torino",
+ .internal_name = "torino",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_SIS_5501,
+ .init = machine_at_torino_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
CPU_BLOCK(CPU_PENTIUMMMX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 1.5
+ .min_multi = 1.5,
+ .max_multi = 1.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI_TRIGEM | KBC_FLAG_IS_GREEN | 0x00005a00,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &tgui9660_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI_TRIGEM | KBC_FLAG_IS_GREEN | 0x00005a00,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &tgui9660_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* UMC 889x */
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[UMC 889x] Shuttle HOT-539",
- .internal_name = "hot539",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_UMC_UM8890BF,
- .init = machine_at_hot539_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[UMC 889x] Shuttle HOT-539",
+ .internal_name = "hot539",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_UMC_UM8890BF,
+ .init = machine_at_hot539_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86),
- .min_bus = 40000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86),
+ .min_bus = 40000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3600,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* VLSI SuperCore */
/* This has AST KBC firmware, likely a Phoenix variant since the BIOS */
/* calls KBC command D5h to read the KBC revision. */
{
- .name = "[VLSI SuperCore] AST Bravo MS P/90",
- .internal_name = "bravoms586",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
- .init = machine_at_bravoms586_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI SuperCore] AST Bravo MS P/90",
+ .internal_name = "bravoms586",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
+ .init = machine_at_bravoms586_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
- },
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_CONFIG,
+ },
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_CONFIG,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5434_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5434_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA KBC chip */
{
- .name = "[VLSI SuperCore] DFI G586VPM Rev C",
- .internal_name = "g586vpmc",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
- .init = machine_at_g586vpmc_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI SuperCore] DFI G586VPM (rev. C)",
+ .internal_name = "g586vpmc",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
+ .init = machine_at_g586vpmc_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 262144,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600, /* Guess */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600, /* Guess */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* KBC firmware is unknown. No commands outside of the base PS/2 */
/* KBC command set are used. */
{
- .name = "[VLSI SuperCore] Micronics M54Si",
- .internal_name = "m54si",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
- .init = machine_at_m54si_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI SuperCore] Micronics M54Si",
+ .internal_name = "m54si",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
+ .init = machine_at_m54si_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 4,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00021400, /* Guess */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has Phoenix KBC firmware. */
{
- .name = "[VLSI SuperCore] Packard Bell PB600",
- .internal_name = "pb600",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
- .init = machine_at_pb600_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI SuperCore] Packard Bell Agoura/Wildcat (PB600)",
+ .internal_name = "pb600",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_VLSI_SUPERCORE,
+ .init = machine_at_pb600_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 8192,
- .max = 139264,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 8192,
+ .max = 139264,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5430_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5430_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* VLSI Wildcat */
/* This has Phoenix KBC firmware. */
{
- .name = "[VLSI Wildcat] AT&T Globalyst 620/630 (NCR 3248/3348)",
- .internal_name = "globalyst620",
- .type = MACHINE_TYPE_SOCKET5,
- .chipset = MACHINE_CHIPSET_VLSI_WILDCAT,
- .init = machine_at_globalyst620_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI Wildcat] AT&T Globalyst 620/630 (NCR 3248/3348)",
+ .internal_name = "globalyst620",
+ .type = MACHINE_TYPE_SOCKET5,
+ .chipset = MACHINE_CHIPSET_VLSI_WILDCAT,
+ .init = machine_at_globalyst620_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
- .ram = {
- .min = 4096,
- .max = 196608,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_VIDEO,
+ .ram = {
+ .min = 4096,
+ .max = 196608,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_trio64_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_PHOENIX | 0x00012900, /* Guess */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Socket 7 (Single Voltage) machines */
@@ -13157,405 +13247,583 @@ const machine_t machines[] = {
/* This has an AMIKey-2, which is type 'H'.
This also seems to be revision 2.1 with the FDC37C665 SIO. */
{
- .name = "[i430FX] ASUS P/I-P55TP4XE",
- .internal_name = "p54tp4xe",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_p54tp4xe_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] ASUS P/I-P55TP4XE",
+ .internal_name = "p54tp4xe",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_p54tp4xe_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3600,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &p54tp4xe_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &p54tp4xe_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware. The KBC itself seems to differ between an AMIKEY-2 and a Winbond W83C42. */
{
- .name = "[i430FX] DataExpert EXP8551",
- .internal_name = "exp8551",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_exp8551_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] DataExpert EXP8551",
+ .internal_name = "exp8551",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_exp8551_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ {
+ .name = "[i430FX] HP Vectra 500 Series xxx/MT",
+ .internal_name = "vectra500mt",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_vectra500mt_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
+ .min_voltage = 3380,
+ .max_voltage = 3520,
+ .min_multi = 1.5,
+ .max_multi = 3.0
+ },
+ .bus_flags = MACHINE_PS2_PCI,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
+ .step = 8192
+ },
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ {
+ .name = "[i430FX] HP Vectra VE 5/xxx Series 2",
+ .internal_name = "vectra52",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_vectra52_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
+ .min_voltage = 3380,
+ .max_voltage = 3520,
+ .min_multi = 1.5,
+ .max_multi = 3.0
+ },
+ .bus_flags = MACHINE_PS2_PCI,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
+ .step = 8192
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &vectra52_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5436_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C932 Super I/O chip with on-chip KBC with AMI
MegaKey (revision '5') KBC firmware. */
{
- .name = "[i430FX] HP Vectra VL 5/xxx Series 4 (Chimay)",
- .internal_name = "vectra54",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_vectra54_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] HP Vectra VL 5/xxx Series 4 (Chimay)",
+ .internal_name = "vectra54",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_vectra54_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.0
+ .min_multi = 1.5,
+ .max_multi = 2.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_trio64_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI . */
{
- .name = "[i430FX] Intel Advanced/ATX (Thor)",
- .internal_name = "thor",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_thor_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] Intel Advanced/AS (Atlantis)",
+ .internal_name = "atlantis",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_atlantis_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM | MACHINE_GAMEPORT, /* Machine has optional onboard sound: Crystal CS4232-KQ */
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_GAMEPORT | MACHINE_APM, /* Machine has onboard sound: Crystal CS4232-KQ */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &thor_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_trio64vplus_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &mach64ct_device_onboard,
+ .snd_device = &cs4232_onboard_device,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI . */
{
- .name = "[i430FX] Intel Advanced/EV (Endeavor)",
- .internal_name = "endeavor",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_endeavor_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = machine_at_endeavor_gpio_handler,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] Intel Advanced/ATX (Thor)",
+ .internal_name = "thor",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_thor_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM | MACHINE_SOUND | MACHINE_GAMEPORT, /* Machine has optional onboard sound: Crystal CS4232-KQ */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_trio64_onboard_pci_device,
- .snd_device = &sb_vibra16s_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &thor_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64vplus_onboard_pci_device,
+ .snd_device = &cs4232_onboard_device,
+ .net_device = NULL
+ },
+ /* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
+ PC87306 Super I/O chip, command 0xA1 returns '5'.
+ Command 0xA0 copyright string: (C)1994 AMI . */
+ {
+ .name = "[i430FX] Intel Advanced/EV (Endeavor)",
+ .internal_name = "endeavor",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_endeavor_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = machine_at_endeavor_gpio_handler,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
+ .min_voltage = 3380,
+ .max_voltage = 3520,
+ .min_multi = 1.5,
+ .max_multi = 3.0
+ },
+ .bus_flags = MACHINE_PS2_PCI,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
+ .step = 8192
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
+ .default_jumpered_ecp_dma = 3,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64_onboard_pci_device,
+ .snd_device = &sb_vibra16s_onboard_device,
+ .net_device = NULL
+ },
+ /* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
+ PC87306 Super I/O chip, command 0xA1 returns '5'.
+ Command 0xA0 copyright string: (C)1994 AMI . */
+ {
+ .name = "[i430FX] Intel Advanced/MA (Monaco)",
+ .internal_name = "monaco",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_monaco_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = machine_at_monaco_gpio_handler,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
+ .min_voltage = 3380,
+ .max_voltage = 3520,
+ .min_multi = 1.5,
+ .max_multi = 3.0
+ },
+ .bus_flags = MACHINE_PS2_PCI,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_GAMEPORT | MACHINE_APM, /* Machine has onboard sound: Crystal CS4232-KQ */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
+ .step = 8192
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
+ .default_jumpered_ecp_dma = 3,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &monaco_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &mach64ct_device_onboard,
+ .snd_device = &cs4232_onboard_device,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[i430FX] MSI MS-5119",
- .internal_name = "ms5119",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_ms5119_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] MSI MS-5119",
+ .internal_name = "ms5119",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_ms5119_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ms5119_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This most likely uses AMI MegaKey KBC firmware as well due to having the same
Super I/O chip (that has the KBC firmware on it) as eg. the Advanced/EV. */
{
- .name = "[i430FX] Packard Bell PB640",
- .internal_name = "pb640",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_pb640_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] Packard Bell Thousand Oaks (PB640)",
+ .internal_name = "pb640",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_pb640_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5440_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5440_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[i430FX] PCPartner MB500N",
- .internal_name = "mb500n",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_mb500n_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] PC Partner MB500N",
+ .internal_name = "mb500n",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_mb500n_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_0 | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an AMIKEY-2 'H' KBC firmware (1992). */
{
- .name = "[i430FX] QDI FMB",
- .internal_name = "fmb",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430FX,
- .init = machine_at_fmb_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430FX] QDI FMB",
+ .internal_name = "fmb",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430FX,
+ .init = machine_at_fmb_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_WINCHIP, CPU_WINCHIP2, CPU_Cx6x86, CPU_Cx6x86L, CPU_Cx6x86MX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_WINCHIP, CPU_WINCHIP2, CPU_Cx6x86, CPU_Cx6x86L, CPU_Cx6x86MX),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &fmb_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 430HX */
@@ -13563,1852 +13831,1852 @@ const machine_t machines[] = {
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i430HX] Acer V35N",
- .internal_name = "acerv35n",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_acerv35n_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Acer V35N",
+ .internal_name = "acerv35n",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_acerv35n_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3450,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey-2 or VIA VT82C42N KBC (depending on the revision) with AMIKEY 'F' KBC firmware. */
{
- .name = "[i430HX] AOpen AP53",
- .internal_name = "ap53",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_ap53_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] AOpen AP53",
+ .internal_name = "ap53",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_ap53_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3450,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.5
+ .min_multi = 1.5,
+ .max_multi = 2.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* [TEST] Has a VIA 82C42N KBC that emulates the AMIKey F KBC firmware. */
{
- .name = "[i430HX] Biostar MB-8500TUC",
- .internal_name = "8500tuc",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_8500tuc_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Biostar MB-8500TUC",
+ .internal_name = "8500tuc",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_8500tuc_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* It possible has AMIKEY-2 'H' KBC firmware. */
{
- .name = "[i430HX] Siemens-Nixdorf D943",
- .internal_name = "d943",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_d943_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Siemens-Nixdorf D943",
+ .internal_name = "d943",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_d943_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_AV | MACHINE_GAMEPORT | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_AV | MACHINE_GAMEPORT | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &d943_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5436_onboard_pci_device,
- .snd_device = &sb_vibra16c_onboard_device,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &d943_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5436_onboard_pci_device,
+ .snd_device = &sb_vibra16c_onboard_device,
+ .net_device = NULL
},
/* 430VX */
/* Has a SM(S)C FDC37C932FR Super I/O chip with on-chip KBC with AMI
MegaKey (revision '5') KBC firmware. */
{
- .name = "[i430VX] Gateway 2000 Mailman",
- .internal_name = "gw2kma",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_gw2kma_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Gateway 2000 Mailman",
+ .internal_name = "gw2kma",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_gw2kma_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_Cx6x86),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal video: ATI Mach64GT-B 3D Rage II */
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal video: ATI Mach64GT-B 3D Rage II */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &sb_vibra16c_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &sb_vibra16c_onboard_device,
+ .net_device = NULL
},
/* SiS 5501 */
/* Has the Lance LT38C41 KBC. */
{
- .name = "[SiS 5501] Chaintech 5SBM/5SBM2 (M103)",
- .internal_name = "5sbm2",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_SIS_5501,
- .init = machine_at_5sbm2_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5501] Chaintech 5SBM/5SBM2 (M103)",
+ .internal_name = "5sbm2",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_SIS_5501,
+ .init = machine_at_5sbm2_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &c5sbm2_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &c5sbm2_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS 5511 */
/* Has Megakey 'R' KBC */
{
- .name = "[SiS 5511] AMI Atlas PCI-II",
- .internal_name = "amis727",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_SIS_5511,
- .init = machine_at_amis727_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5511] AMI Atlas PCI-II",
+ .internal_name = "amis727",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_SIS_5511,
+ .init = machine_at_amis727_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005200,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005200,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware (AMIKey-2). */
{
- .name = "[SiS 5511] AOpen AP5S",
- .internal_name = "ap5s",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_SIS_5511,
- .init = machine_at_ap5s_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5511] AOpen AP5S",
+ .internal_name = "ap5s",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_SIS_5511,
+ .init = machine_at_ap5s_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ap5s_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ap5s_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an SMC FDC37C669QF Super I/O. */
{
- .name = "[SiS 5511] IBM PC 140 (type 6260)",
- .internal_name = "pc140_6260",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_SIS_5511,
- .init = machine_at_pc140_6260_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5511] IBM PC 140 (type 6260)",
+ .internal_name = "pc140_6260",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_SIS_5511,
+ .init = machine_at_pc140_6260_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_WINCHIP, CPU_WINCHIP2, CPU_Cx6x86, CPU_Cx6x86L, CPU_Cx6x86MX, CPU_PENTIUMMMX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_WINCHIP, CPU_WINCHIP2, CPU_Cx6x86, CPU_Cx6x86L, CPU_Cx6x86MX, CPU_PENTIUMMMX),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &gd5436_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &gd5436_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware (AMIKey-2). */
{
- .name = "[SiS 5511] MSI MS-5124",
- .internal_name = "ms5124",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_SIS_5511,
- .init = machine_at_ms5124_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5511] MSI MS-5124",
+ .internal_name = "ms5124",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_SIS_5511,
+ .init = machine_at_ms5124_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3380,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_MBDMA,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* VLSI Wildcat */
/* KBC firmware is unknown. No PS/2 port is present and no commands outside */
/* of the base AT KBC command set are used. */
{
- .name = "[VLSI Wildcat] Zeos Pantera Wildcat",
- .internal_name = "zeoswildcat",
- .type = MACHINE_TYPE_SOCKET7_3V,
- .chipset = MACHINE_CHIPSET_VLSI_WILDCAT,
- .init = machine_at_zeoswildcat_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VLSI Wildcat] ZEOS Boa 2 (Pantera/Wildcat)",
+ .internal_name = "zeoswildcat",
+ .type = MACHINE_TYPE_SOCKET7_3V,
+ .chipset = MACHINE_CHIPSET_VLSI_WILDCAT,
+ .init = machine_at_zeoswildcat_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86, CPU_PENTIUMMMX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86, CPU_PENTIUMMMX),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 3520,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 2.5
+ .min_multi = 1.5,
+ .max_multi = 2.5
},
.bus_flags = MACHINE_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 393216,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 393216,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000004f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000004f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Socket 7 (Dual Voltage) machines */
/* ALi ALADDiN IV+ */
/* Has the ALi M1543 southbridge with on-chip KBC. */
{
- .name = "[ALi ALADDiN IV+] Biostar M5ATA",
- .internal_name = "m5ata",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_IV_PLUS,
- .init = machine_at_m5ata_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN IV+] Biostar M5ATA",
+ .internal_name = "m5ata",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_IV_PLUS,
+ .init = machine_at_m5ata_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 4.5
+ .min_multi = 1.5,
+ .max_multi = 4.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &m5ata_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &m5ata_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the ALi M1543 southbridge with on-chip KBC. */
{
- .name = "[ALi ALADDiN IV+] MSI MS-5164",
- .internal_name = "ms5164",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_IV_PLUS,
- .init = machine_at_ms5164_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN IV+] MSI MS-5164",
+ .internal_name = "ms5164",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_IV_PLUS,
+ .init = machine_at_ms5164_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 83333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 83333333,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the ALi M1543 southbridge with on-chip KBC. */
{
- .name = "[ALi ALADDiN IV+] PCChips M560",
- .internal_name = "m560",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_IV_PLUS,
- .init = machine_at_m560_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN IV+] PC Chips M560",
+ .internal_name = "m560",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_IV_PLUS,
+ .init = machine_at_m560_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 83333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 83333333,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 430HX */
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i430HX] Acer AcerPower Ultima",
- .internal_name = "acerm3a",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_acerm3a_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Acer AcerPower Ultima",
+ .internal_name = "acerm3a",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_acerm3a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86MX),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86MX),
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal SCSI */
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal SCSI */
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware (AMIKey-2). */
{
- .name = "[i430HX] ASUS P/I-P55T2P4",
- .internal_name = "p55t2p4",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_p55t2p4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] ASUS P/I-P55T2P4",
+ .internal_name = "p55t2p4",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_p55t2p4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 4.0
+ .min_multi = 1.5,
+ .max_multi = 4.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The base board has a Holtek HT6542B which emulates the AMIKey-2 ('H') KBC firmware. */
{
- .name = "[i430HX] ASUS P/I-P65UP5 (C-P55T2D)",
- .internal_name = "p65up5_cp55t2d",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_p65up5_cp55t2d_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] ASUS P/I-P65UP5 (C-P55T2D)",
+ .internal_name = "p65up5_cp55t2d",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_p65up5_cp55t2d_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* Machine has AMB */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* OEM-only Intel CU430HX, has AMI MegaKey KBC firmware on the PC87306 Super I/O chip. */
{
- .name = "[i430HX] Intel CU430HX (Cumberland)",
- .internal_name = "cu430hx",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_cu430hx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Intel CU430HX (Cumberland)",
+ .internal_name = "cu430hx",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_cu430hx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_USB, /* Machine has internal video: ATI Mach64GT 3D Rage and internal NIC: Intel 82557 */
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_USB, /* Machine has internal video: ATI Mach64GT 3D Rage and internal NIC: Intel 82557 */
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &cu430hx_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &sb_vibra16c_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &cu430hx_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &sb_vibra16c_onboard_device,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI . */
{
- .name = "[i430HX] Intel TC430HX (Tucson)",
- .internal_name = "tc430hx",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_tc430hx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Intel TC430HX (Tucson)",
+ .internal_name = "tc430hx",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_tc430hx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_VIDEO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_SOUND | MACHINE_GAMEPORT | MACHINE_USB, /* Has internal sound: Yamaha YMF701-S */
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_VIDEO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_SOUND | MACHINE_GAMEPORT | MACHINE_USB, /* Has internal sound: Yamaha YMF701-S */
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &tc430hx_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_virge_375_pci_device,
- .snd_device = &ymf701_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &tc430hx_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_virge_375_onboard_pci_device,
+ .snd_device = &ymf701_device,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i430HX] Micronics M7S-Hi",
- .internal_name = "m7shi",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_m7shi_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Micronics M7S-Hi",
+ .internal_name = "m7shi",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_m7shi_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &m7shi_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &m7shi_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Unknown PS/2 KBC. */
{
- .name = "[i430HX] Radisys EPC-2102",
- .internal_name = "epc2102",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_epc2102_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Radisys EPC-2102",
+ .internal_name = "epc2102",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_epc2102_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_USE_CONFIG,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_USE_CONFIG,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00005200, /* Guess. */
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI .
Yes, this is an Intel AMI BIOS with a fancy splash screen. */
{
- .name = "[i430HX] Sony Vaio PCV-90",
- .internal_name = "pcv90",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_pcv90_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Sony Vaio PCV-70/90/100/120",
+ .internal_name = "pcv90",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_pcv90_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_SOUND | MACHINE_GAMEPORT, /* Machine has internal video: ATI Mach64GT-B 3D Rage II */
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_SOUND | MACHINE_GAMEPORT, /* Machine has internal video: ATI Mach64GT-B 3D Rage II */
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &ymf701_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &ymf701_device,
+ .net_device = NULL
},
/* [TEST] The board doesn't seem to have a KBC at all, which probably means it's an on-chip one on the PC87306 SIO.
A list on a Danish site shows the BIOS as having a -0 string, indicating non-AMI KBC firmware. */
{
- .name = "[i430HX] Supermicro P55T2S",
- .internal_name = "p55t2s",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430HX,
- .init = machine_at_p55t2s_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430HX] Supermicro P55T2S",
+ .internal_name = "p55t2s",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430HX,
+ .init = machine_at_p55t2s_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 524288,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 430VX */
/* This has the VIA VT82C42N or Holtek HT6542B KBC. */
{
- .name = "[i430VX] AOpen AP5VM",
- .internal_name = "ap5vm",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_ap5vm_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] AOpen AP5VM",
+ .internal_name = "ap5vm",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_ap5vm_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2600,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SCSI | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SCSI | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware (AMIKey-2) on a BestKey KBC. */
{
- .name = "[i430VX] ASUS P/I-P55TVP4",
- .internal_name = "p55tvp4",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_p55tvp4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] ASUS P/I-P55TVP4",
+ .internal_name = "p55tvp4",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_p55tvp4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* Machine has AMB */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The BIOS does not send a single non-standard KBC command, so it must have a standard IBM
PS/2 KBC firmware or a clone thereof. */
{
- .name = "[i430VX] Azza PT-5IV",
- .internal_name = "5ivg",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_5ivg_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Azza PT-5IV",
+ .internal_name = "5ivg",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_5ivg_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device, /* Guess. */
- .kbc_params = KBC_VEN_AMI | 0x00004800, /* Guess. */
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device, /* Guess. */
+ .kbc_params = KBC_VEN_AMI | 0x00004800, /* Guess. */
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* [TEST] Has a VIA VT82C42N KBC. */
{
- .name = "[i430VX] Biostar MB-8500TVX-A",
- .internal_name = "8500tvxa",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_8500tvxa_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Biostar MB-8500TVX-A",
+ .internal_name = "8500tvxa",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_8500tvxa_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2600,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C932QF Super I/O chip with on-chip KBC with AMI
MegaKey (revision '5') KBC firmware. */
{
- .name = "[i430VX] Compaq Presario 224x",
- .internal_name = "presario2240",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_presario2240_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Compaq Presario 224x",
+ .internal_name = "presario2240",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_presario2240_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM | MACHINE_ACPI,
- .ram = {
- .min = 16384,
- .max = 49152,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 16384,
+ .max = 49152,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_trio64v2_dx_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_trio64v2_dx_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C931APM Super I/O chip with on-chip KBC with Compaq
KBC firmware. */
{
- .name = "[i430VX] Compaq Presario 45xx",
- .internal_name = "presario4500",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_presario4500_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Compaq Presario 45xx",
+ .internal_name = "presario4500",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_presario4500_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM | MACHINE_ACPI,
- .ram = {
- .min = 16384,
- .max = 49152,
+ .flags = MACHINE_IDE_DUAL | MACHINE_VIDEO | MACHINE_APM,
+ .ram = {
+ .min = 16384,
+ .max = 49152,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_trio64v2_dx_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_trio64v2_dx_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C932FR Super I/O chip with on-chip KBC with AMI
MegaKey (revision '5') KBC firmware. */
{
- .name = "[i430VX] Dell Dimension XPS Pxxxa/Mxxxa",
- .internal_name = "dellhannibalp",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_dellhannibalp_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Dell Dimension XPS Pxxxa/Mxxxa",
+ .internal_name = "dellhannibalp",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_dellhannibalp_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB, /* Machine has internal video: S3 Trio64V+ */
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB, /* Machine has internal video: S3 Trio64V+ */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has AMIKey H KBC firmware (AMIKey-2). */
{
- .name = "[i430VX] ECS P5VX-B",
- .internal_name = "p5vxb",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_p5vxb_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] ECS P5VX-B",
+ .internal_name = "p5vxb",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_p5vxb_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &p5vxb_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C932FR Super I/O chip with on-chip KBC with AMI
MegaKey (revision '5') KBC firmware. */
{
- .name = "[i430VX] Epox P55-VA",
- .internal_name = "p55va",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_p55va_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Epox P55-VA",
+ .internal_name = "p55va",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_p55va_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C932FR Super I/O chip with on-chip KBC with AMI
MegaKey (revision '5') KBC firmware. */
{
- .name = "[i430VX] Gateway 2000 Hitman",
- .internal_name = "gw2kte",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_gw2kte_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Gateway 2000 Hitman",
+ .internal_name = "gw2kte",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_gw2kte_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2200,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &sb_vibra16c_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &sb_vibra16c_onboard_device,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i430VX] HP Brio 80xx",
- .internal_name = "brio80xx",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_brio80xx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] HP Brio 80xx",
+ .internal_name = "brio80xx",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_brio80xx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 2200,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM, /* Machine has internal video: S3 Trio64V2/DX */
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM, /* Machine has internal video: S3 Trio64V2/DX */
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the AMIKey-2 ('H') KBC firmware. */
{
- .name = "[i430VX] LG IBM Multinet x52 (MSI MS-5136)",
- .internal_name = "lgibmx52",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_lgibmx52_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] LG IBM Multinet x52 (MSI MS-5136)",
+ .internal_name = "lgibmx52",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_lgibmx52_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 4.0
+ .min_multi = 1.5,
+ .max_multi = 4.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &lgibmx52_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &lgibmx52_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI . */
{
- .name = "[i430VX] Packard Bell Multimedia C110 (PB680/PB682/PB685)",
- .internal_name = "pb680",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_pb680_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Packard Bell Orlando/2D/3D/MMX (PB680/PB682/PB683/PB685)",
+ .internal_name = "pb680",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_pb680_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_VIDEO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 131072,
+ .flags = MACHINE_VIDEO | MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_3,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_phoenix_trio64vplus_onboard_pci_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_phoenix_trio64vplus_onboard_pci_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i430VX] Packard Bell Multimedia M415 (PB810)",
- .internal_name = "pb810",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_pb810_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Packard Bell PB810/820 (GVC/BCM FM530)",
+ .internal_name = "pb810",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_pb810_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 4.0
+ .min_multi = 1.5,
+ .max_multi = 4.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM, /* Machine has internal video: S3 Trio64V2/DX */
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM, /* Machine has internal video: S3 Trio64V2/DX */
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the AMIKey 'H' firmware, possibly AMIKey-2. Photos show it with a BestKey, so it
likely clones the behavior of AMIKey 'H'. */
{
- .name = "[i430VX] PCPartner MB520N",
- .internal_name = "mb520n",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_mb520n_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] PC Partner MB520N",
+ .internal_name = "mb520n",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_mb520n_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2600,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a Holtek KBC and the BIOS does not send a single non-standard KBC command, so it
must be an ASIC that clones the standard IBM PS/2 KBC. */
{
- .name = "[i430VX] Shuttle HOT-557",
- .internal_name = "430vx",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430VX,
- .init = machine_at_i430vx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430VX] Shuttle HOT-557",
+ .internal_name = "430vx",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430VX,
+ .init = machine_at_i430vx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_GAMEPORT | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 131072,
+ .flags = MACHINE_IDE_DUAL | MACHINE_GAMEPORT | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 131072,
.step = 4096
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 430TX */
/* The BIOS sends KBC command B8, CA, and CB, so it has an AMI KBC firmware. */
{
- .name = "[i430TX] ADLink NuPRO-591/592",
- .internal_name = "nupro592",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_nupro592_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] ADLink NuPRO-591/592",
+ .internal_name = "nupro592",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_nupro592_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 1900,
.max_voltage = 2800,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_VIDEO,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_VIDEO,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &chips_69000_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &chips_69000_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has the AMIKey KBC firmware, which is type 'F' (YM430TX is based on the TX97). */
{
- .name = "[i430TX] ASUS TX97",
- .internal_name = "tx97",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_tx97_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] ASUS TX97",
+ .internal_name = "tx97",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_tx97_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/*
According to Dell specifications, it can have either National Semiconductor
@@ -15420,138 +15688,183 @@ const machine_t machines[] = {
MultiKey/42i 4.16.
*/
{
- .name = "[i430TX] Dell OptiPlex GN+",
- .internal_name = "optiplexgn",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_optiplexgn_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] Dell OptiPlex GN+",
+ .internal_name = "optiplexgn",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_optiplexgn_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = machine_ap440fx_vs440fx_gpio_handler,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI,
/* Video: S3 86C785 (Trio64V2/GX), ethernet: 3C905. */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_VIDEO | MACHINE_SOUND,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_VIDEO | MACHINE_SOUND,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
/* Stop-gap measure until the Trio64V2/GX is emulated, as both use the same VBIOS. */
- .vid_device = &s3_trio64v2_dx_onboard_pci_device,
- .snd_device = &sb_vibra16xv_onboard_device,
- .net_device = NULL
+ .vid_device = &s3_trio64v2_dx_onboard_pci_device,
+ .snd_device = &sb_vibra16xv_onboard_device,
+ .net_device = NULL
},
/* [TEST] Has AMI Megakey '5' KBC firmware on the SM(S)C FDC37C67x Super I/O chip. */
{
- .name = "[i430TX] Gateway E-1000",
- .internal_name = "tomahawk",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_tomahawk_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] Gateway E-1000 (Tomahawk)",
+ .internal_name = "tomahawk",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_tomahawk_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_NIC | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_VIDEO | MACHINE_SOUND | MACHINE_NIC | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_trio64v2_dx_onboard_pci_device,
- .snd_device = &cs4236b_device,
- .net_device = &pcnet_am79c973_onboard_device
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_trio64v2_dx_onboard_pci_device,
+ .snd_device = &cs4236b_device,
+ .net_device = &pcnet_am79c973_onboard_device
+ },
+ /* This has the Phoenix MultiKey KBC firmware on the NSC Super I/O chip. */
+ {
+ .name = "[i430TX] Intel AN430TX (Anchorage)",
+ .internal_name = "an430tx",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_an430tx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = machine_ap440fx_vs440fx_gpio_handler,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
+ .min_bus = 60000000,
+ .max_bus = 66666667,
+ .min_voltage = 2800,
+ .max_voltage = 3520,
+ .min_multi = 1.5,
+ .max_multi = 3.5
+ },
+ .bus_flags = MACHINE_PS2_PCI,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_SOUND | MACHINE_GAMEPORT, /* Machine has internal video: ATI Mach64GT-B 3D Rage II */
+ .ram = {
+ .min = 8192,
+ .max = 262144,
+ .step = 8192
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &an430tx_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &ymf715_onboard_device,
+ .net_device = NULL
},
/* This has the Winbond W83977 Super I/O Chip with AMIKey-2 KBC firmware, which is type 'H'. */
{
- .name = "[i430TX] Intel YM430TX (Yamamoto)",
- .internal_name = "ym430tx",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_ym430tx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] Intel YM430TX (Yamamoto)",
+ .internal_name = "ym430tx",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_ym430tx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 262144,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/*
PhoenixBIOS 4.0 Rel 6.0 for 430TX, has onboard Yamaha YMF701 which
@@ -15561,3033 +15874,3076 @@ const machine_t machines[] = {
MultiKey/42 (version 1.38) KBC firmware.
*/
{
- .name = "[i430TX] Micronics Thunderbolt",
- .internal_name = "thunderbolt",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_thunderbolt_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] Micronics Thunderbolt",
+ .internal_name = "thunderbolt",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_thunderbolt_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_WINCHIP, CPU_WINCHIP2),
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_WINCHIP, CPU_WINCHIP2),
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
/* Machine has internal sound: Yamaha YMF701-S */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C67x Super I/O chip with on-chip KBC with Phoenix or
AMI MEGAKEY '5' KBC firmware. */
{
- .name = "[i430TX] NEC Mate NX MA23C",
- .internal_name = "ma23c",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_ma23c_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] NEC Mate NX MA23C",
+ .internal_name = "ma23c",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_ma23c_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2700,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCIONLY | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal video: Cirrus Logic CL-GD5465 and internal sound: Yamaha YMF715 */
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal video: Cirrus Logic CL-GD5465 and internal sound: Yamaha YMF715 */
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
- },
- /* This has the Phoenix MultiKey KBC firmware on the NSC Super I/O chip. */
- {
- .name = "[i430TX] Packard Bell PB790",
- .internal_name = "an430tx",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_an430tx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
- .gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_K5, CPU_5K86, CPU_K6, CPU_K6_2, CPU_K6_2C, CPU_K6_3, CPU_K6_2P,
- CPU_K6_3P, CPU_Cx6x86, CPU_Cx6x86MX, CPU_Cx6x86L),
- .min_bus = 60000000,
- .max_bus = 66666667,
- .min_voltage = 2800,
- .max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
- },
- .bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_SOUND | MACHINE_GAMEPORT, /* Machine has internal video: ATI Mach64GT-B 3D Rage II */
- .ram = {
- .min = 8192,
- .max = 262144,
- .step = 8192
- },
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
- .default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &ymf715_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The BIOS sends KBC command BB and expects it to output a byte, which is AMI KBC behavior.
A picture shows a VIA VT82C42N KBC though, so it could be a case of that KBC with AMI firmware. */
{
- .name = "[i430TX] PCPartner MB540N",
- .internal_name = "mb540n",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_mb540n_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] PC Partner MB540N",
+ .internal_name = "mb540n",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_mb540n_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2700,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 262144,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Award BIOS, PS2, EDO, SDRAM, 4 PCI, 4 ISA, VIA VT82C42N KBC */
{
- .name = "[i430TX] Soltek SL-56A5",
- .internal_name = "56a5",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_56a5_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] Soltek SL-56A5",
+ .internal_name = "56a5",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_56a5_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 262144,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* [TEST] Has AMIKey 'H' KBC firmware on the Winbond W83967 Super I/O chip. */
{
- .name = "[i430TX] Supermicro P5MMS98",
- .internal_name = "p5mms98",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_p5mms98_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] Supermicro P5MMS98",
+ .internal_name = "p5mms98",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_p5mms98_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86MX),
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86MX),
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 4096,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 4096,
+ .max = 262144,
.step = 4096
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* [TEST] Has AMIKey 'H' KBC firmware. */
{
- .name = "[i430TX] TriGem RD535 (Richmond)",
- .internal_name = "richmond",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_INTEL_430TX,
- .init = machine_at_richmond_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i430TX] TriGem RD535 (Richmond)",
+ .internal_name = "richmond",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_INTEL_430TX,
+ .init = machine_at_richmond_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.5
+ .min_multi = 1.5,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS 5571 */
/* Has the SiS 5571 chipset with on-chip KBC. */
{
- .name = "[SiS 5571] Daewoo CD520",
- .internal_name = "cb52xsi",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_SIS_5571,
- .init = machine_at_cb52xsi_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5571] Daewoo CD520",
+ .internal_name = "cb52xsi",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_SIS_5571,
+ .init = machine_at_cb52xsi_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the SiS 5571 chipset with on-chip KBC. */
{
- .name = "[SiS 5571] MSI MS-5146",
- .internal_name = "ms5146",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_SIS_5571,
- .init = machine_at_ms5146_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5571] MSI MS-5146",
+ .internal_name = "ms5146",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_SIS_5571,
+ .init = machine_at_ms5146_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 262144,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ms5146_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the SiS 5571 chipset with on-chip KBC. */
{
- .name = "[SiS 5571] Rise R534F",
- .internal_name = "r534f",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_SIS_5571,
- .init = machine_at_r534f_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5571] Rise R534F",
+ .internal_name = "r534f",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_SIS_5571,
+ .init = machine_at_r534f_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 55000000,
- .max_bus = 83333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 55000000,
+ .max_bus = 83333333,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 393216,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 393216,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &r534f_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &r534f_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS 5581 */
/* Has the SiS 5581 chipset with on-chip KBC. */
{
- .name = "[SiS 5581] ASUS SP97-XV",
- .internal_name = "sp97xv",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_SIS_5581,
- .init = machine_at_sp97xv_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5581] ASUS SP97-XV",
+ .internal_name = "sp97xv",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_SIS_5581,
+ .init = machine_at_sp97xv_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the SiS 5581 chipset with on-chip KBC. */
{
- .name = "[SiS 5581] BCM SQ-578",
- .internal_name = "sq578",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_SIS_5581,
- .init = machine_at_sq578_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5581] BCM SQ-578",
+ .internal_name = "sq578",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_SIS_5581,
+ .init = machine_at_sq578_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS 5591 */
/* Has the SiS 5591 chipset with on-chip KBC. */
{
- .name = "[SiS 5591] MSI MS-5172",
- .internal_name = "ms5172",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_SIS_5591,
- .init = machine_at_ms5172_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5591] MSI MS-5172",
+ .internal_name = "ms5172",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_SIS_5591,
+ .init = machine_at_ms5172_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2500,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Apollo VPX */
/* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA VPX] FIC VA-502",
- .internal_name = "ficva502",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_VPX,
- .init = machine_at_ficva502_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA VPX] FIC VA-502",
+ .internal_name = "ficva502",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_VPX,
+ .init = machine_at_ficva502_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2800,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 3.0
+ .min_multi = 1.5,
+ .max_multi = 3.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Apollo VP3 */
/* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA VP3] FIC PA-2012",
- .internal_name = "ficpa2012",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_VP3,
- .init = machine_at_ficpa2012_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA VP3] FIC PA-2012",
+ .internal_name = "ficpa2012",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_VP3,
+ .init = machine_at_ficpa2012_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 55000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 55000000,
+ .max_bus = 75000000,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA VP3] PCPartner VIA809DS",
- .internal_name = "via809ds",
- .type = MACHINE_TYPE_SOCKET7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_VP3,
- .init = machine_at_via809ds_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA VP3] PC Partner VIA809DS",
+ .internal_name = "via809ds",
+ .type = MACHINE_TYPE_SOCKET7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_VP3,
+ .init = machine_at_via809ds_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 75000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 75000000,
.min_voltage = 2100,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Super Socket 7 machines */
/* ALi ALADDiN V */
/* Has the ALi M1543C southbridge with on-chip KBC. */
{
- .name = "[ALi ALADDiN V] ASUS P5A",
- .internal_name = "p5a",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
- .init = machine_at_p5a_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN V] ASUS P5A",
+ .internal_name = "p5a",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
+ .init = machine_at_p5a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 120000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 120000000,
.min_voltage = 2000,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: ESS Solo-1 */
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: ESS Solo-1 */
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* M1534c kbc */
{
- .name = "[ALi ALADDiN V] Gateway Lucas (MSI MS-5185)",
- .internal_name = "gwlucas",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
- .init = machine_at_gwlucas_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN V] Gateway Lucas (MSI MS-5185)",
+ .internal_name = "gwlucas",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
+ .init = machine_at_gwlucas_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
- .min_voltage = 2000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 100000000,
+ .min_voltage = 1300,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
- .bus_flags = MACHINE_PS2_PCIONLY | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Has internal video: ATI 3D Rage Pro Turbo AGP and sound: Ensoniq ES1373 */
- .ram = {
- .min = 8192,
- .max = 262144,
+ .bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Has internal video: ATI 3D Rage Pro Turbo AGP and sound: Ensoniq ES1373 */
+ .ram = {
+ .min = 8192,
+ .max = 262144,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &es1373_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &es1373_onboard_device,
+ .net_device = NULL
},
/* Has the ALi M1543C southbridge with on-chip KBC. */
{
- .name = "[ALi ALADDiN V] Gigabyte GA-5AA",
- .internal_name = "5aa",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
- .init = machine_at_5aa_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN V] Gigabyte GA-5AA",
+ .internal_name = "5aa",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
+ .init = machine_at_5aa_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 140000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 140000000,
.min_voltage = 1300,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the ALi M1543C southbridge with on-chip KBC. */
{
- .name = "[ALi ALADDiN V] Gigabyte GA-5AX",
- .internal_name = "5ax",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
- .init = machine_at_5ax_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN V] Gigabyte GA-5AX",
+ .internal_name = "5ax",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
+ .init = machine_at_g5x_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 140000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 140000000,
.min_voltage = 1300,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &g5x_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Is the exact same as the Matsonic MS6260S. Has the ALi M1543C southbridge
with on-chip KBC. */
{
- .name = "[ALi ALADDiN V] PCChips M579",
- .internal_name = "m579",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
- .init = machine_at_m579_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN V] PC Chips M579",
+ .internal_name = "m579",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_V,
+ .init = machine_at_m579_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 2000,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal sound: C-Media CMI8330 */
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB, /* Machine has internal sound: C-Media CMI8330 */
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS 5591 */
/* Has the SiS 5591 chipset with on-chip KBC. */
{
- .name = "[SiS 5591] Gigabyte GA-5SG100",
- .internal_name = "5sg100",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_SIS_5591,
- .init = machine_at_5sg100_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5591] Gigabyte GA-5SG100",
+ .internal_name = "5sg100",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_SIS_5591,
+ .init = machine_at_5sg100_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 100000000,
.min_voltage = 2000,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Apollo MVP3 */
/* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA MVP3] AOpen AX59 Pro",
- .internal_name = "ax59pro",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
- .init = machine_at_ax59pro_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA MVP3] AOpen AX59 Pro",
+ .internal_name = "ax59pro",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
+ .init = machine_at_ax59pro_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 124242424,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 124242424,
.min_voltage = 1300,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
- },
- /* Has the VIA VT82C596A southbridge with on-chip KBC identical to the VIA
- VT82C42N. Sadly likely abuses cache on Cyrix 6x86MX and MII CPUs (Cyrix MII being what most socket 7 eMachines PCs used) , so they are blocked and it's thus named after the only known eMachines with an AMD K6-2 CPU here */
- {
- .name = "[VIA MVP3] eMachines eTower 300k",
- .internal_name = "delhi3",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
- .init = machine_at_delhi3_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
- .gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK(CPU_Cx6x86MX),
- .min_bus = 66666667,
- .max_bus = 124242424,
- .min_voltage = 2000,
- .max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
- },
- .bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* Has internal video: ATI 3D Rage IIc AGP (Rage 2) */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_SOUND | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
- .step = 8192
- },
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
- .default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &cs4235_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA MVP3] FIC VA-503+",
- .internal_name = "ficva503p",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
- .init = machine_at_mvp3_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA MVP3] DFI K6BV3+ (rev. A+)",
+ .internal_name = "k6bv3p_a",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
+ .init = machine_at_k6bv3p_a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 124242424,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
+ .min_voltage = 2000,
+ .max_voltage = 3500,
+ .min_multi = 1.5,
+ .max_multi = 5.5
+ },
+ .bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 16384,
+ .max = 786432,
+ .step = 16384
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ /* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
+ VT82C42N. */
+ {
+ .name = "[VIA MVP3] FIC VA-503+",
+ .internal_name = "ficva503p",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
+ .init = machine_at_mvp3_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 124242424,
.min_voltage = 2000,
.max_voltage = 3200,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the VIA VT82C686A southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA MVP3] FIC VA-503A",
- .internal_name = "ficva503a",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
- .init = machine_at_ficva503a_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA MVP3] FIC VA-503A",
+ .internal_name = "ficva503a",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
+ .init = machine_at_ficva503a_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 124242424,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 124242424,
.min_voltage = 1800,
.max_voltage = 3100,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_A97 | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the VIA VT82C686A southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA MVP3] Soyo 5EMA PRO",
- .internal_name = "5emapro",
- .type = MACHINE_TYPE_SOCKETS7,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
- .init = machine_at_5emapro_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA MVP3] Soyo 5EMA PRO",
+ .internal_name = "5emapro",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
+ .init = machine_at_5emapro_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET5_7,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 124242424,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 124242424,
.min_voltage = 2000,
.max_voltage = 3520,
- .min_multi = 1.5,
- .max_multi = 5.5
+ .min_multi = 1.5,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ /* Has the VIA VT82C596A southbridge with on-chip KBC identical to the VIA VT82C42N. */
+ {
+ .name = "[VIA MVP3] TriGem Delhi-III",
+ .internal_name = "delhi3",
+ .type = MACHINE_TYPE_SOCKETS7,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_MVP3,
+ .init = machine_at_delhi3_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SOCKET5_7,
+ .block = CPU_BLOCK(CPU_Cx6x86MX), /* Sadly it likely abuses cache if using Cyrix 6x86MX and MII CPUs (the latter being what most Socket 7 eMachines PCs used), so they are blocked. */
+ .min_bus = 66666667,
+ .max_bus = 124242424,
+ .min_voltage = 2000,
+ .max_voltage = 3520,
+ .min_multi = 1.5,
+ .max_multi = 5.5
+ },
+ .bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* Has internal video: ATI 3D Rage IIc AGP (Rage 2) */
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_SOUND | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
+ .step = 8192
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &delhi3_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &cs4235_onboard_device,
+ .net_device = NULL
},
/* Socket 8 machines */
/* 450KX */
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[i450KX] AOpen AP61",
- .internal_name = "ap61",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_450KX,
- .init = machine_at_ap61_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i450KX] AOpen AP61",
+ .internal_name = "ap61",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_450KX,
+ .init = machine_at_ap61_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_DISABLED | MACHINE_DMA_1 | MACHINE_DMA_3,
.default_jumpered_ecp_dma = 3,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x000008f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x000008f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has an AMIKey-2, which is type 'H'. */
{
- .name = "[i450KX] ASUS P/I-P6RP4",
- .internal_name = "p6rp4",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_450KX,
- .init = machine_at_p6rp4_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i450KX] ASUS P/I-P6RP4",
+ .internal_name = "p6rp4",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_450KX,
+ .init = machine_at_p6rp4_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI, /* Machine has AMB */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = MACHINE_DMA_1,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = MACHINE_DMA_1,
.default_jumpered_ecp_dma = 1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a PC87306 with unknown keyboard controller firmware (Phoenix?). */
{
- .name = "[i450KX] FIC PO-6000",
- .internal_name = "ficpo6000",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_450KX,
- .init = machine_at_ficpo6000_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i450KX] FIC PO-6000",
+ .internal_name = "ficpo6000",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_450KX,
+ .init = machine_at_ficpo6000_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI, /* Machine has AMB */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = MACHINE_DMA_1,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = MACHINE_DMA_1,
.default_jumpered_ecp_dma = 1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ficpo6000_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ficpo6000_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 440FX */
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i440FX] Acer V60N",
- .internal_name = "acerv60n",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_acerv60n_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] Acer V60N",
+ .internal_name = "acerv60n",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_acerv60n_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 393216,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 393216,
.step = 8192
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The base board has a Holtek HT6542B with AMIKey-2 ('H') KBC firmware. */
{
- .name = "[i440FX] ASUS P/I-P65UP5 (C-P6ND)",
- .internal_name = "p65up5_cp6nd",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_p65up5_cp6nd_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] ASUS P/I-P65UP5 (C-P6ND)",
+ .internal_name = "p65up5_cp6nd",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_p65up5_cp6nd_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* Machine has AMB */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[i440FX] Biostar MB-8600TTC",
- .internal_name = "8600ttc",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_8600ttc_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] Biostar MB-8600TTC",
+ .internal_name = "8600ttc",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_8600ttc_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 2900,
.max_voltage = 3300,
- .min_multi = 2.0,
- .max_multi = 5.5
+ .min_multi = 2.0,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the AMIKey-2 ('H') KBC firmware. */
{
- .name = "[i440FX] Gigabyte GA-686NX",
- .internal_name = "686nx",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_686nx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] Gigabyte GA-686NX",
+ .internal_name = "686nx",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_686nx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 2.0,
- .max_multi = 5.5
+ .min_multi = 2.0,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI . */
{
- .name = "[i440FX] Intel AP440FX (Apollo)",
- .internal_name = "ap440fx",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_ap440fx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] Intel AP440FX (Apollo)",
+ .internal_name = "ap440fx",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_ap440fx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = machine_ap440fx_vs440fx_gpio_handler,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 2.0,
- .max_multi = 3.5
+ .min_multi = 2.0,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_SOUND | MACHINE_VIDEO | MACHINE_USB, /* Machine has internal video: S3 ViRGE/DX and sound: Crystal CS4236B */
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_SOUND | MACHINE_VIDEO | MACHINE_USB, /* Machine has internal video: S3 ViRGE/DX and sound: Crystal CS4236B */
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &s3_virge_325_onboard_pci_device,
- .snd_device = &cs4236b_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &s3_virge_325_onboard_pci_device,
+ .snd_device = &cs4236b_onboard_device,
+ .net_device = NULL
},
/* According to tests from real hardware: This has AMI MegaKey KBC firmware on the
PC87306 Super I/O chip, command 0xA1 returns '5'.
Command 0xA0 copyright string: (C)1994 AMI . */
{
- .name = "[i440FX] Intel VS440FX (Venus)",
- .internal_name = "vs440fx",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_vs440fx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] Intel VS440FX (Venus)",
+ .internal_name = "vs440fx",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_vs440fx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = machine_ap440fx_vs440fx_gpio_handler,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 2.0,
- .max_multi = 3.5
+ .min_multi = 2.0,
+ .max_multi = 3.5
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &vs440fx_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &cs4236_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &vs440fx_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &cs4236_onboard_device,
+ .net_device = NULL
},
/* Has the AMIKey-2 ('H') KBC firmware. */
{
- .name = "[i440FX] LG IBM Multinet x61 (MSI MS-6106)",
- .internal_name = "lgibmx61",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_lgibmx61_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] LG IBM Multinet x61 (MSI MS-6106)",
+ .internal_name = "lgibmx61",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_lgibmx61_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2500,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB, /* Machine has internal SCSI: Adaptec AIC-7880U */
- .ram = {
- .min = 40960,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB, /* Machine has internal SCSI: Adaptec AIC-7880U */
+ .ram = {
+ .min = 40960, /* does not POST with lower than 40MB; Award and AMI retail BIOSes not affected(?) */
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i440FX] Micronics M6Mi",
- .internal_name = "m6mi",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_m6mi_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] Micronics M6Mi",
+ .internal_name = "m6mi",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_m6mi_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2900,
.max_voltage = 3300,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: Creative Vibra 16C */
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: Creative Vibra 16C */
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a VIA VT82C42N KBC. */
{
- .name = "[i440FX] PCPartner MB600N",
- .internal_name = "mb600n",
- .type = MACHINE_TYPE_SOCKET8,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_mb600n_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] PC Partner MB600N",
+ .internal_name = "mb600n",
+ .type = MACHINE_TYPE_SOCKET8,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_mb600n_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET8,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SOCKET8,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 66666667,
.min_voltage = 2100,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_VIA | 0x00424600,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_VIA | 0x00424600,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Slot 1 machines */
/* ALi ALADDiN-PRO II */
/* Has the ALi M1543C southbridge with on-chip KBC. */
{
- .name = "[ALi ALADDiN-PRO II] PCChips M729",
- .internal_name = "m729",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_ALI_ALADDIN_PRO_II,
- .init = machine_at_m729_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[ALi ALADDiN-PRO II] PC Chips M729",
+ .internal_name = "m729",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_ALI_ALADDIN_PRO_II,
+ .init = machine_at_m729_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: C-Media CMI8330 */
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: C-Media CMI8330 */
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 440FX */
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i440FX] Acer V62X",
- .internal_name = "acerv62x",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_acerv62x_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] Acer V62X",
+ .internal_name = "acerv62x",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_acerv62x_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 83333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 83333333,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 393216,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 393216,
.step = 8192
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* The base board has a Holtek HT6542B KBC which emulates the AMIKEY-2 'H' KBC firmware. */
{
- .name = "[i440FX] ASUS P/I-P65UP5 (C-PKND)",
- .internal_name = "p65up5_cpknd",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_p65up5_cpknd_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] ASUS P/I-P65UP5 (C-PKND)",
+ .internal_name = "p65up5_cpknd",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_p65up5_cpknd_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 66666667,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* This has a Holtek KBC. */
{
- .name = "[i440FX] ASUS KN97",
- .internal_name = "kn97",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440FX,
- .init = machine_at_kn97_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440FX] ASUS KN97",
+ .internal_name = "kn97",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440FX,
+ .init = machine_at_kn97_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 83333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 83333333,
.min_voltage = 2800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 127,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 127,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_HOLTEK | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 440LX */
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440LX] ABIT AB-LX6",
- .internal_name = "lx6",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440LX,
- .init = machine_at_lx6_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440LX] ABIT AB-LX6",
+ .internal_name = "lx6",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440LX,
+ .init = machine_at_lx6_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 60000000,
- .max_bus = 83333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 60000000,
+ .max_bus = 83333333,
.min_voltage = 1500,
.max_voltage = 3500,
- .min_multi = 2.0,
- .max_multi = 5.5
+ .min_multi = 2.0,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &lx6_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &lx6_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a National Semiconductor PC87307 Super I/O with on-chip KBC, which has one of these
firmwares: AMI '5' MegaKey, Phoenix MultiKey/42 1.37, or Phoenix MultiKey/42i 4.16. */
{
- .name = "[i440LX] Dell OptiPlex GXa",
- .internal_name = "optiplexgxa",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440LX,
- .init = machine_at_optiplexgxa_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440LX] Dell OptiPlex GXa",
+ .internal_name = "optiplexgxa",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440LX,
+ .init = machine_at_optiplexgxa_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = machine_ap440fx_vs440fx_gpio_handler,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK(CPU_PENTIUMPRO, CPU_CYRIX3S),
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK(CPU_PENTIUMPRO, CPU_CYRIX3S),
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 5.0
+ .min_multi = 1.5,
+ .max_multi = 5.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Video: ATi 3D Rage Pro, Network: 3Com 3C905, Sound: Crystal CS4236B */
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_USB, /* Video: ATi 3D Rage Pro, Network: 3Com 3C905, Sound: Crystal CS4236B */
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL, /* not yet emulated */
- .snd_device = &cs4236b_device,
- .net_device = NULL /* not yet emulated */
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL, /* not yet emulated */
+ .snd_device = &cs4236b_device,
+ .net_device = NULL /* not yet emulated */
},
/* Has a SM(S)C FDC37C935 Super I/O chip with on-chip KBC with Phoenix
MultiKey/42 (version 1.38) KBC firmware. */
{
- .name = "[i440LX] Micronics Spitfire",
- .internal_name = "spitfire",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440LX,
- .init = machine_at_spitfire_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440LX] Micronics Spitfire",
+ .internal_name = "spitfire",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440LX,
+ .init = machine_at_spitfire_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal sound: Yamaha YMF701 */
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB, /* Machine has internal sound: Yamaha YMF701 */
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a SM(S)C FDC37C67x Super I/O chip with on-chip KBC with Phoenix or
AMIKey-2 KBC firmware. */
{
- .name = "[i440LX] NEC Mate NX MA30D/23D",
- .internal_name = "ma30d",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440LX,
- .init = machine_at_ma30d_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440LX] NEC Mate NX MA30D/23D",
+ .internal_name = "ma30d",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440LX,
+ .init = machine_at_ma30d_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 66666667,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCIONLY | MACHINE_BUS_USB, /* Has internal video: SGS Thompson Riva 128 AGP, network: NEC PK-UG-X006 (Intel 82558B chip) and sound: OAK Audia 3D (OTI-610) for MA23D or YAMAHA YMF724 for MA30D */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x0000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x0000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 440EX */
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440EX] QDI EXCELLENT II",
- .internal_name = "p6i440e2",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440EX,
- .init = machine_at_p6i440e2_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440EX] QDI EXCELLENT II",
+ .internal_name = "p6i440e2",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440EX,
+ .init = machine_at_p6i440e2_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 83333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 83333333,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 3.0,
- .max_multi = 8.0
+ .min_multi = 3.0,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 440BX */
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] ABIT AB-BF6",
- .internal_name = "bf6",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_bf6_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] ABIT AB-BF6",
+ .internal_name = "bf6",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_bf6_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] ABIT AB-BX6",
- .internal_name = "bx6",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_bx6_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] ABIT AB-BX6",
+ .internal_name = "bx6",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_bx6_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1500,
.max_voltage = 3500,
- .min_multi = 2.0,
- .max_multi = 5.5
+ .min_multi = 2.0,
+ .max_multi = 5.5
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &bx6_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &bx6_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] AOpen AX6BC",
- .internal_name = "ax6bc",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_ax6bc_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] AOpen AX6BC",
+ .internal_name = "ax6bc",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_ax6bc_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 112121212,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 112121212,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ax6bc_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] ASUS P2B-LS",
- .internal_name = "p2bls",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_p2bls_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] ASUS P2B-LS",
+ .internal_name = "p2bls",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_p2bls_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 50000000,
- .max_bus = 112121212,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 50000000,
+ .max_bus = 112121212,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal SCSI: Adaptec AIC-7890AB */
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal SCSI: Adaptec AIC-7890AB */
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] ASUS P3B-F",
- .internal_name = "p3bf",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_p3bf_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] ASUS P3B-F",
+ .internal_name = "p3bf",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_p3bf_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 150000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] Gigabyte GA-686BX",
- .internal_name = "686bx",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_686bx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] Gigabyte GA-686BX",
+ .internal_name = "686bx",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_ga686_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ga686_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 (updated 'H') KBC firmware. */
{
- .name = "[i440BX] MSI MS-6119",
- .internal_name = "ms6119",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_ms6119_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] MSI MS-6119",
+ .internal_name = "ms6119",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_ms6119_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = &ms6119_device,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ms6119_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
+ },
+ /* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC firmware. */
+ {
+ .name = "[i440BX] MSI MS-6147",
+ .internal_name = "ms6147",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_ms6147_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
+ .gpio_acpi_handler = NULL,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 116666667,
+ .min_voltage = 1800,
+ .max_voltage = 3500,
+ .min_multi = 1.5,
+ .max_multi = 8.0
+ },
+ .bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB, /* Has internal video: ATI 3D Rage Pro PCI */
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
+ .step = 8192
+ },
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
+ .default_jumpered_ecp_dma = -1,
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &ms6147_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &es1371_onboard_device,
+ .net_device = NULL
},
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] Supermicro P6SBA",
- .internal_name = "p6sba",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_p6sba_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] Supermicro P6SBA",
+ .internal_name = "p6sba",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_p6sba_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &p6sba_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a National Semiconductors PC87309 Super I/O chip with on-chip KBC
with most likely AMIKey-2 KBC firmware. */
{
- .name = "[i440BX] Tyan Tsunami ATX",
- .internal_name = "s1846",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_s1846_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] Tyan Tsunami ATX",
+ .internal_name = "s1846",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_s1846_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 112121212,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 112121212,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal sound: Ensoniq ES1371 */
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal sound: Ensoniq ES1371 */
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &es1371_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &s1846_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &es1371_onboard_device,
+ .net_device = NULL
},
/* 440ZX */
/* Has a SM(S)C FDC37M60x Super I/O chip with on-chip KBC with most likely
AMIKey-2 KBC firmware. */
{
- .name = "[i440ZX] HP Vectra VEi 8",
- .internal_name = "vei8",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440ZX,
- .init = machine_at_vei8_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440ZX] MiTAC/Trigon 6110Zu",
+ .internal_name = "vei8",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440ZX,
+ .init = machine_at_vei8_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal video: Matrox MGA-G200 and sound: Crystal CS4820 */
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal video: Matrox MGA-G200 and sound: Crystal CS4820 */
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &vei8_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440ZX] MSI MS-6168",
- .internal_name = "ms6168",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440ZX,
- .init = machine_at_ms6168_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440ZX] MSI MS-6168",
+ .internal_name = "ms6168",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440ZX,
+ .init = machine_at_ms6168_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* AGP is reserved for the internal video */
- .flags = MACHINE_IDE_DUAL | MACHINE_AV | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_AV | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &voodoo_3_2000_agp_onboard_8m_device,
- .snd_device = &es1373_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &voodoo_3_2000_agp_onboard_8m_device,
+ .snd_device = &es1373_onboard_device,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440ZX] Packard Bell Bora Pro (MSI MS-6168)",
- .internal_name = "borapro",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_INTEL_440ZX,
- .init = machine_at_borapro_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440ZX] Packard Bell Bora/Bora Pro (MSI MS-6168)",
+ .internal_name = "borapro",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_INTEL_440ZX,
+ .init = machine_at_borapro_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* AGP is reserved for the internal video */
- .flags = MACHINE_IDE_DUAL | MACHINE_AV | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_AV | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &voodoo_3_2000_agp_onboard_8m_device,
- .snd_device = &es1373_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &voodoo_3_2000_agp_onboard_8m_device,
+ .snd_device = &es1373_onboard_device,
+ .net_device = NULL
},
/* SiS (5)600 */
/* Has the SiS (5)600 chipset with on-chip KBC. */
{
- .name = "[SiS 5600] Freetech/Flexus P6F99",
- .internal_name = "p6f99",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_SIS_5600,
- .init = machine_at_p6f99_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5600] Freetech/Flexus P6F99",
+ .internal_name = "p6f99",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_SIS_5600,
+ .init = machine_at_p6f99_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: Ensoniq ES1373 */
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: Ensoniq ES1373 */
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &es1373_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &es1373_onboard_device,
+ .net_device = NULL
},
/* Has the SiS (5)600 chipset with on-chip KBC. */
{
- .name = "[SiS 5600] PCChips M747",
- .internal_name = "m747",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_SIS_5600,
- .init = machine_at_m747_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 5600] PC Chips M747",
+ .internal_name = "m747",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_SIS_5600,
+ .init = machine_at_m747_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal video: SiS 6326 and internal sound: C-Media CMI8330 */
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal video: SiS 6326 and internal sound: C-Media CMI8330 */
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SMSC VictoryBX-66 */
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[SMSC VictoryBX-66] A-Trend ATC6310BXII",
- .internal_name = "atc6310bxii",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_SMSC_VICTORYBX_66,
- .init = machine_at_atc6310bxii_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SMSC VictoryBX-66] A-Trend ATC6310BXII",
+ .internal_name = "atc6310bxii",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_SMSC_VICTORYBX_66,
+ .init = machine_at_atc6310bxii_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* VIA Apollo Pro */
/* Has the VIA VT82C596B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA Apollo Pro] FIC KA-6130",
- .internal_name = "ficka6130",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO,
- .init = machine_at_ficka6130_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro] FIC KA-6130",
+ .internal_name = "ficka6130",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO,
+ .init = machine_at_ficka6130_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: ESS ES1938S */
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: ESS ES1938S */
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[VIA Apollo Pro 133] ASUS P3V133",
- .internal_name = "p3v133",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133,
- .init = machine_at_p3v133_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro 133] ASUS P3V133",
+ .internal_name = "p3v133",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133,
+ .init = machine_at_p3v133_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 150000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[VIA Apollo Pro 133A] ASUS P3V4X",
- .internal_name = "p3v4x",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
- .init = machine_at_p3v4x_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro 133A] ASUS P3V4X",
+ .internal_name = "p3v4x",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
+ .init = machine_at_p3v4x_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK(CPU_PENTIUMPRO),
- .min_bus = 66666667,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK(CPU_PENTIUMPRO),
+ .min_bus = 66666667,
+ .max_bus = 150000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 2097152,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 2097152,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[VIA Apollo Pro 133A] BCM GT694VA",
- .internal_name = "gt694va",
- .type = MACHINE_TYPE_SLOT1,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
- .init = machine_at_gt694va_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro 133A] BCM GT694VA",
+ .internal_name = "gt694va",
+ .type = MACHINE_TYPE_SLOT1,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
+ .init = machine_at_gt694va_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: Ensoniq ES1373 */
- .ram = {
- .min = 8192,
- .max = 3145728,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB, /* Machine has internal sound: Ensoniq ES1373 */
+ .ram = {
+ .min = 8192,
+ .max = 3145728,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = &kbc_at_device,
- .kbc_params = KBC_VEN_AMI | 0x00004800,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &es1373_onboard_device,
- .net_device = NULL
+ .kbc_device = &kbc_at_device,
+ .kbc_params = KBC_VEN_AMI | 0x00004800,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &es1373_onboard_device,
+ .net_device = NULL
},
/* Slot 1/2 machines */
@@ -18595,186 +18951,185 @@ const machine_t machines[] = {
/* Has a National Semiconductors PC87309 Super I/O chip with on-chip KBC
with most likely AMIKey-2 KBC firmware. */
{
- .name = "[i440GX] Freeway FW-6400GX",
- .internal_name = "fw6400gx",
- .type = MACHINE_TYPE_SLOT1_2,
- .chipset = MACHINE_CHIPSET_INTEL_440GX,
- .init = machine_at_fw6400gx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440GX] Freeway FW-6400GX",
+ .internal_name = "fw6400gx",
+ .type = MACHINE_TYPE_SLOT1_2,
+ .chipset = MACHINE_CHIPSET_INTEL_440GX,
+ .init = machine_at_fw6400gx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1 | CPU_PKG_SLOT2,
- .block = CPU_BLOCK_NONE,
- .min_bus = 100000000,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1 | CPU_PKG_SLOT2,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 100000000,
+ .max_bus = 150000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 3.0,
- .max_multi = 8.0
+ .min_multi = 3.0,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_NOISA | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 16384,
- .max = 2097152,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 16384,
+ .max = 2097152,
.step = 16384
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x000044f0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x000044f0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Slot 1/Socket 370 machines */
/* 440BX */
- /* OEM version of ECS P6BXT-A+ REV 1.3x/2.2x. Has a Winbond W83977EF Super
- I/O chip with on-chip KBC with AMIKey-2 KBC firmware.*/
+ /* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC firmware.*/
{
- .name = "[i440BX] Compaq ProSignia S316/318 (Intel)",
- .internal_name = "prosignias31x_bx",
- .type = MACHINE_TYPE_SLOT1_370,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133,
- .init = machine_at_prosignias31x_bx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] ECS P6BXT-A+",
+ .internal_name = "prosignias31x_bx",
+ .type = MACHINE_TYPE_SLOT1_370,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_prosignias31x_bx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1 | CPU_PKG_SOCKET370,
- .block = CPU_BLOCK(CPU_PENTIUMPRO, CPU_CYRIX3S), /* Instability issues with PPro, and garbled text in POST with Cyrix */
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT1 | CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK(CPU_PENTIUMPRO), /* Instability issues with PPro, and garbled text in POST with Cyrix (latter supported on unofficial v6.00PG BIOS) */
+ .min_bus = 66666667,
+ .max_bus = 124242424,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &cmi8738_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = &prosignias31x_device,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &cmi8738_onboard_device,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] Tyan Trinity 371",
- .internal_name = "s1857",
- .type = MACHINE_TYPE_SLOT1_370,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_s1857_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] Tyan Trinity 371",
+ .internal_name = "s1857",
+ .type = MACHINE_TYPE_SLOT1_370,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_s1857_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1 | CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1 | CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &es1373_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &es1373_onboard_device,
+ .net_device = NULL
},
/* VIA Apollo Pro */
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[VIA Apollo Pro 133] ECS P6BAT-A+",
- .internal_name = "p6bat",
- .type = MACHINE_TYPE_SLOT1_370,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133,
- .init = machine_at_p6bat_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro 133] ECS P6BAT-A+",
+ .internal_name = "p6bat",
+ .type = MACHINE_TYPE_SLOT1_370,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133,
+ .init = machine_at_p6bat_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1 | CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SLOT1 | CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &cmi8738_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &cmi8738_onboard_device,
+ .net_device = NULL
},
/* Slot 2 machines */
@@ -18782,92 +19137,92 @@ const machine_t machines[] = {
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440GX] Gigabyte GA-6GXU",
- .internal_name = "6gxu",
- .type = MACHINE_TYPE_SLOT2,
- .chipset = MACHINE_CHIPSET_INTEL_440GX,
- .init = machine_at_6gxu_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440GX] Gigabyte GA-6GXU",
+ .internal_name = "6gxu",
+ .type = MACHINE_TYPE_SLOT2,
+ .chipset = MACHINE_CHIPSET_INTEL_440GX,
+ .init = machine_at_6gxu_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT2,
- .block = CPU_BLOCK_NONE,
- .min_bus = 100000000,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT2,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 100000000,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal SCSI */
- .ram = {
- .min = 16384,
- .max = 2097152,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal SCSI */
+ .ram = {
+ .min = 16384,
+ .max = 2097152,
.step = 16384
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440GX] Supermicro S2DGE",
- .internal_name = "s2dge",
- .type = MACHINE_TYPE_SLOT2,
- .chipset = MACHINE_CHIPSET_INTEL_440GX,
- .init = machine_at_s2dge_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440GX] Supermicro S2DGE",
+ .internal_name = "s2dge",
+ .type = MACHINE_TYPE_SLOT2,
+ .chipset = MACHINE_CHIPSET_INTEL_440GX,
+ .init = machine_at_s2dge_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT2,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SLOT2,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 16384,
- .max = 2097152,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 16384,
+ .max = 2097152,
.step = 16384
},
- .nvrmask = 511,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 511,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* PGA370 machines */
@@ -18875,646 +19230,646 @@ const machine_t machines[] = {
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440LX] Supermicro 370SLM",
- .internal_name = "s370slm",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_INTEL_440LX,
- .init = machine_at_s370slm_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440LX] Supermicro 370SLM",
+ .internal_name = "s370slm",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_INTEL_440LX,
+ .init = machine_at_s370slm_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED,
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED,
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 440BX */
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] AEWIN AW-O671R",
- .internal_name = "awo671r",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_awo671r_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] AEWIN AW-O671R",
+ .internal_name = "awo671r",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_awo671r_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0 /* limits assumed */
+ .min_multi = 1.5,
+ .max_multi = 8.0 /* limits assumed */
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB, /* Machine has EISA, possibly for a riser? */
/* Yes, that's a rise slot, not EISA. */
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB | MACHINE_VIDEO, /* Machine has internal video: C&T B69000, sound: ESS ES1938S and NIC: Realtek RTL8139C */
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB | MACHINE_VIDEO, /* Machine has internal video: C&T B69000, sound: ESS ES1938S and NIC: Realtek RTL8139C */
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = &chips_69000_onboard_device,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = &chips_69000_onboard_device,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] AmazePC AM-BX133",
- .internal_name = "ambx133",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_ambx133_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] AmazePC AM-BX133",
+ .internal_name = "ambx133",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_ambx133_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0 /* limits assumed */
+ .min_multi = 1.5,
+ .max_multi = 8.0 /* limits assumed */
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] ASUS CUBX",
- .internal_name = "cubx",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_cubx_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] ASUS CUBX",
+ .internal_name = "cubx",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_cubx_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 150000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_QUAD | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has quad channel IDE with internal controller: CMD PCI-0648 */
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_QUAD | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has quad channel IDE with internal controller: CMD PCI-0648 */
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* 440ZX */
/* Has a Winbond W83977TF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440ZX] Soltek SL-63A1",
- .internal_name = "63a1",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_INTEL_440ZX,
- .init = machine_at_63a1_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440ZX] Soltek SL-63A1",
+ .internal_name = "63a1",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_INTEL_440ZX,
+ .init = machine_at_63a1_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SiS (5)600 */
/* Has the SiS 600 chipset, which is a re-brand of the 5600, with
on-chip KBC. */
{
- .name = "[SiS 600] Soyo SY-7SBB",
- .internal_name = "7sbb",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_SIS_5600,
- .init = machine_at_7sbb_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SiS 600] Soyo SY-7SBB",
+ .internal_name = "7sbb",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_SIS_5600,
+ .init = machine_at_7sbb_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK(CPU_CYRIX3S),
- .min_bus = 60000000,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK(CPU_CYRIX3S),
+ .min_bus = 60000000,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* SMSC VictoryBX-66 */
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[SMSC VictoryBX-66] A-Trend ATC7020BXII",
- .internal_name = "atc7020bxii",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_SMSC_VICTORYBX_66,
- .init = machine_at_atc7020bxii_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SMSC VictoryBX-66] A-Trend ATC7020BXII",
+ .internal_name = "atc7020bxii",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_SMSC_VICTORYBX_66,
+ .init = machine_at_atc7020bxii_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has an ITE IT8671F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[SMSC VictoryBX-66] PCChips M773",
- .internal_name = "m773",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_SMSC_VICTORYBX_66,
- .init = machine_at_m773_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[SMSC VictoryBX-66] PC Chips M773",
+ .internal_name = "m773",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_SMSC_VICTORYBX_66,
+ .init = machine_at_m773_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 133333333,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 133333333,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 524288,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 524288,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &cmi8738_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &cmi8738_onboard_device,
+ .net_device = NULL
},
/* VIA Apollo Pro */
/* Has the VIA VT82C586B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA Apollo Pro] PCPartner APAS3",
- .internal_name = "apas3",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO,
- .init = machine_at_apas3_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro] PC Partner APAS3",
+ .internal_name = "apas3",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO,
+ .init = machine_at_apas3_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 100000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 100000000,
.min_voltage = 1800,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal video: Creative Vibra 16XV */
- .ram = {
- .min = 8192,
- .max = 786432,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB, /* Machine has internal video: Creative Vibra 16XV */
+ .ram = {
+ .min = 8192,
+ .max = 786432,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has a Winbond W83977EF Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[VIA Apollo Pro 133] ECS P6BAP-A+",
- .internal_name = "p6bap",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133,
- .init = machine_at_p6bap_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro 133] ECS P6BAP-A+",
+ .internal_name = "p6bap",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133,
+ .init = machine_at_p6bap_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 150000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_AGP | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB | MACHINE_SOUND,
- .ram = {
- .min = 8192,
- .max = 1572864,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB | MACHINE_SOUND,
+ .ram = {
+ .min = 8192,
+ .max = 1572864,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &cmi8738_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &cmi8738_onboard_device,
+ .net_device = NULL
},
/* Has the VIA VT82C686B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA Apollo Pro 133A] Acorp 6VIA90AP",
- .internal_name = "6via90ap",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
- .init = machine_at_6via90ap_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro 133A] Acorp 6VIA90AP",
+ .internal_name = "6via90ap",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
+ .init = machine_at_6via90ap_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 150000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = MACHINE_MULTIPLIER_FIXED,
- .max_multi = MACHINE_MULTIPLIER_FIXED
+ .min_multi = MACHINE_MULTIPLIER_FIXED,
+ .max_multi = MACHINE_MULTIPLIER_FIXED
},
.bus_flags = MACHINE_PS2_A97 | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_AG | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 16384,
- .max = 3145728,
+ .flags = MACHINE_IDE_DUAL | MACHINE_AG | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 16384,
+ .max = 3145728,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
/* Has the VIA VT82C686B southbridge with on-chip KBC identical to the VIA
VT82C42N. */
{
- .name = "[VIA Apollo Pro 133A] ASUS CUV4X-LS",
- .internal_name = "cuv4xls",
- .type = MACHINE_TYPE_SOCKET370,
- .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
- .init = machine_at_cuv4xls_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[VIA Apollo Pro 133A] ASUS CUV4X-LS",
+ .internal_name = "cuv4xls",
+ .type = MACHINE_TYPE_SOCKET370,
+ .chipset = MACHINE_CHIPSET_VIA_APOLLO_PRO_133A,
+ .init = machine_at_cuv4xls_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SOCKET370,
- .block = CPU_BLOCK_NONE,
- .min_bus = 66666667,
- .max_bus = 150000000,
+ .cpu = {
+ .package = CPU_PKG_SOCKET370,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 66666667,
+ .max_bus = 150000000,
.min_voltage = 1300,
.max_voltage = 3500,
- .min_multi = 1.5,
- .max_multi = 8.0
+ .min_multi = 1.5,
+ .max_multi = 8.0
},
.bus_flags = MACHINE_PS2_NOI97 | MACHINE_BUS_USB, /* Has Asus-proprietary LAN/SCSI slot */
- .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
- .ram = {
- .min = 16384,
- .max = 4194304,
+ .flags = MACHINE_IDE_DUAL | MACHINE_SOUND | MACHINE_APM | MACHINE_ACPI | MACHINE_GAMEPORT | MACHINE_USB,
+ .ram = {
+ .min = 16384,
+ .max = 4194304,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = &cmi8738_onboard_device,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = &cmi8738_onboard_device,
+ .net_device = NULL
},
/* Miscellaneous/Fake/Hypervisor machines */
/* Has a Winbond W83977F Super I/O chip with on-chip KBC with AMIKey-2 KBC
firmware. */
{
- .name = "[i440BX] Microsoft Virtual PC 2007",
- .internal_name = "vpc2007",
- .type = MACHINE_TYPE_MISC,
- .chipset = MACHINE_CHIPSET_INTEL_440BX,
- .init = machine_at_vpc2007_init,
- .p1_handler = machine_generic_p1_handler,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = "[i440BX] Microsoft Virtual PC 2007",
+ .internal_name = "vpc2007",
+ .type = MACHINE_TYPE_MISC,
+ .chipset = MACHINE_CHIPSET_INTEL_440BX,
+ .init = machine_at_vpc2007_init,
+ .p1_handler = machine_generic_p1_handler,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = CPU_PKG_SLOT1,
- .block = CPU_BLOCK(CPU_PENTIUMPRO, CPU_PENTIUM2, CPU_CYRIX3S),
- .min_bus = 0,
- .max_bus = 66666667,
+ .cpu = {
+ .package = CPU_PKG_SLOT1,
+ .block = CPU_BLOCK(CPU_PENTIUMPRO, CPU_PENTIUM2, CPU_CYRIX3S),
+ .min_bus = 0,
+ .max_bus = 66666667,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_PS2_PCI | MACHINE_BUS_USB,
- .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
- .ram = {
- .min = 8192,
- .max = 1048576,
+ .flags = MACHINE_IDE_DUAL | MACHINE_APM | MACHINE_ACPI | MACHINE_USB,
+ .ram = {
+ .min = 8192,
+ .max = 1048576,
.step = 8192
},
- .nvrmask = 255,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 255,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000cf0,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000cf0,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
},
{
- .name = NULL,
- .internal_name = NULL,
- .type = MACHINE_TYPE_NONE,
- .chipset = MACHINE_CHIPSET_NONE,
- .init = NULL,
- .p1_handler = NULL,
- .gpio_handler = NULL,
- .available_flag = MACHINE_AVAILABLE,
+ .name = NULL,
+ .internal_name = NULL,
+ .type = MACHINE_TYPE_NONE,
+ .chipset = MACHINE_CHIPSET_NONE,
+ .init = NULL,
+ .p1_handler = NULL,
+ .gpio_handler = NULL,
+ .available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
- .cpu = {
- .package = 0,
- .block = CPU_BLOCK_NONE,
- .min_bus = 0,
- .max_bus = 0,
+ .cpu = {
+ .package = 0,
+ .block = CPU_BLOCK_NONE,
+ .min_bus = 0,
+ .max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
- .min_multi = 0,
- .max_multi = 0
+ .min_multi = 0,
+ .max_multi = 0
},
.bus_flags = MACHINE_BUS_NONE,
- .flags = MACHINE_FLAGS_NONE,
- .ram = {
- .min = 0,
- .max = 0,
+ .flags = MACHINE_FLAGS_NONE,
+ .ram = {
+ .min = 0,
+ .max = 0,
.step = 0
},
- .nvrmask = 0,
- .jumpered_ecp_dma = 0,
+ .nvrmask = 0,
+ .jumpered_ecp_dma = 0,
.default_jumpered_ecp_dma = -1,
- .kbc_device = NULL,
- .kbc_params = 0x00000000,
- .kbc_p1 = 0x00000000,
- .gpio = 0xffffffff,
- .gpio_acpi = 0xffffffff,
- .device = NULL,
- .kbd_device = NULL,
- .fdc_device = NULL,
- .sio_device = NULL,
- .vid_device = NULL,
- .snd_device = NULL,
- .net_device = NULL
+ .kbc_device = NULL,
+ .kbc_params = 0x00000000,
+ .kbc_p1 = 0x00000000,
+ .gpio = 0xffffffff,
+ .gpio_acpi = 0xffffffff,
+ .device = NULL,
+ .kbd_device = NULL,
+ .fdc_device = NULL,
+ .sio_device = NULL,
+ .vid_device = NULL,
+ .snd_device = NULL,
+ .net_device = NULL
}
- // clang-format on
+ // clang-format on
};
/* This is so Disabled comes first. */
@@ -19532,7 +19887,7 @@ static uint32_t machine_gpio;
static uint32_t machine_gpio_acpi_default;
static uint32_t machine_gpio_acpi;
-static int machine_is_ps2 = 0;
+static int machine_is_ps2 = 0;
void *machine_snd = NULL;
@@ -19964,7 +20319,7 @@ machine_get_nvr_name_ex(int m)
if (dev != NULL) {
device_context(dev);
- const char *bios = device_get_config_string("bios");
+ const char *bios = device_get_config_bios("bios");
if ((bios != NULL) && (strcmp(bios, "") != 0))
ret = bios;
device_context_restore();
diff --git a/src/mem/mem.c b/src/mem/mem.c
index b4225372d..80803e6a2 100644
--- a/src/mem/mem.c
+++ b/src/mem/mem.c
@@ -2316,7 +2316,38 @@ mem_mapping_recalc(uint64_t base, uint64_t size)
if (start < map->base)
start = map->base;
- for (i_c = i_s; i_c <= i_e; i_c += i_a) {
+ if (i_e == 0x00000000ULL) {
+ for (c = start; c < end; c += MEM_GRANULARITY_SIZE) {
+ /* CPU */
+ n = !!in_smm;
+ wp = _mem_wp[c >> MEM_GRANULARITY_BITS];
+
+ if (map->exec && mem_mapping_access_allowed(map->flags,
+ _mem_state[c >> MEM_GRANULARITY_BITS].states[n].x))
+ _mem_exec[c >> MEM_GRANULARITY_BITS] = map->exec + (c - map->base);
+ if (!wp && (map->write_b || map->write_w || map->write_l) &&
+ mem_mapping_access_allowed(map->flags,
+ _mem_state[c >> MEM_GRANULARITY_BITS].states[n].w))
+ write_mapping[c >> MEM_GRANULARITY_BITS] = map;
+ if ((map->read_b || map->read_w || map->read_l) &&
+ mem_mapping_access_allowed(map->flags,
+ _mem_state[c >> MEM_GRANULARITY_BITS].states[n].r))
+ read_mapping[c >> MEM_GRANULARITY_BITS] = map;
+
+ /* Bus */
+ n |= STATE_BUS;
+ wp = _mem_wp_bus[c >> MEM_GRANULARITY_BITS];
+
+ if (!wp && (map->write_b || map->write_w || map->write_l) &&
+ mem_mapping_access_allowed(map->flags,
+ _mem_state[c >> MEM_GRANULARITY_BITS].states[n].w))
+ write_mapping_bus[c >> MEM_GRANULARITY_BITS] = map;
+ if ((map->read_b || map->read_w || map->read_l) &&
+ mem_mapping_access_allowed(map->flags,
+ _mem_state[c >> MEM_GRANULARITY_BITS].states[n].r))
+ read_mapping_bus[c >> MEM_GRANULARITY_BITS] = map;
+ }
+ } else for (i_c = i_s; i_c <= i_e; i_c += i_a) {
for (c = (start + i_c); c < (end + i_c); c += MEM_GRANULARITY_SIZE) {
/* CPU */
n = (!!in_smm) || (is_cxsmm && (ccr1 & CCR1_SMAC));
diff --git a/src/mem/rom.c b/src/mem/rom.c
index 631328913..cee00cb0f 100644
--- a/src/mem/rom.c
+++ b/src/mem/rom.c
@@ -643,27 +643,27 @@ bios_load(const char *fn1, const char *fn2, uint32_t addr, int sz, int off, int
int
bios_load_linear_combined(const char *fn1, const char *fn2, int sz, UNUSED(int off))
{
- return bios_load_linear(fn1, 0x000f0000, 131072, 128) && \
+ return bios_load_linear(fn1, 0x000f0000, 131072, 128) &&
bios_load_aux_linear(fn2, 0x000e0000, sz - 65536, 128);
}
int
bios_load_linear_combined2(const char *fn1, const char *fn2, const char *fn3, const char *fn4, const char *fn5, int sz, int off)
{
- return bios_load_linear(fn3, 0x000f0000, 262144, off) && \
- bios_load_aux_linear(fn1, 0x000d0000, 65536, off) && \
- bios_load_aux_linear(fn2, 0x000c0000, 65536, off) && \
- bios_load_aux_linear(fn4, 0x000e0000, sz - 196608, off) && \
+ return bios_load_linear(fn3, 0x000f0000, 262144, off) &&
+ bios_load_aux_linear(fn1, 0x000d0000, 65536, off) &&
+ bios_load_aux_linear(fn2, 0x000c0000, 65536, off) &&
+ bios_load_aux_linear(fn4, 0x000e0000, sz - 196608, off) &&
(!fn5 || bios_load_aux_linear(fn5, 0x000ec000, 16384, 0));
}
int
bios_load_linear_combined2_ex(const char *fn1, const char *fn2, const char *fn3, const char *fn4, const char *fn5, int sz, int off)
{
- return bios_load_linear(fn3, 0x000e0000, 262144, off) && \
- bios_load_aux_linear(fn1, 0x000c0000, 65536, off) && \
- bios_load_aux_linear(fn2, 0x000d0000, 65536, off) && \
- bios_load_aux_linear(fn4, 0x000f0000, sz - 196608, off) && \
+ return bios_load_linear(fn3, 0x000e0000, 262144, off) &&
+ bios_load_aux_linear(fn1, 0x000c0000, 65536, off) &&
+ bios_load_aux_linear(fn2, 0x000d0000, 65536, off) &&
+ bios_load_aux_linear(fn4, 0x000f0000, sz - 196608, off) &&
(!fn5 || bios_load_aux_linear(fn5, 0x000fc000, 16384, 0));
}
diff --git a/src/mem/sst_flash.c b/src/mem/sst_flash.c
index 5db1e33de..024bcf6a5 100644
--- a/src/mem/sst_flash.c
+++ b/src/mem/sst_flash.c
@@ -127,6 +127,7 @@ static char flash_path[1024];
#define WINBOND 0xda /* Winbond Manufacturer's ID */
#define W29C512 0xc800
#define W29C010 0xc100
+#define W29C011A 0xc100
#define W29C020 0x4500
#define W29C040 0x4600
@@ -622,6 +623,20 @@ const device_t winbond_flash_w29c010_device = {
.config = NULL
};
+const device_t winbond_flash_w29c011a_device = {
+ .name = "Winbond W29C011A Flash BIOS",
+ .internal_name = "winbond_flash_w29c011a",
+ .flags = 0,
+ .local = WINBOND | W29C011A | SIZE_1M,
+ .init = sst_init,
+ .close = sst_close,
+ .reset = NULL,
+ .available = NULL,
+ .speed_changed = NULL,
+ .force_redraw = NULL,
+ .config = NULL
+};
+
const device_t winbond_flash_w29c020_device = {
.name = "Winbond W29C020 Flash BIOS",
.internal_name = "winbond_flash_w29c020",
diff --git a/src/network/net_rtl8139.c b/src/network/net_rtl8139.c
index 5f2c85b03..9cc52417f 100644
--- a/src/network/net_rtl8139.c
+++ b/src/network/net_rtl8139.c
@@ -3257,14 +3257,9 @@ nic_init(const device_t *info)
eep_data[1] = 0x10EC;
eep_data[2] = 0x8139;
- /* XXX: Get proper MAC addresses from real EEPROM dumps. OID taken from net_ne2000.c */
-#ifdef USE_REALTEK_OID
+ /* XXX: Get proper MAC addresses from real EEPROM dumps. OID is generic Realtek */
eep_data[7] = 0xe000;
eep_data[8] = 0x124c;
-#else
- eep_data[7] = 0x1400;
- eep_data[8] = 0x122a;
-#endif
eep_data[9] = 0x1413;
mac_bytes = (uint8_t *) &(eep_data[7]);
diff --git a/src/network/net_tulip.c b/src/network/net_tulip.c
index cbf3b704e..113af5cd4 100644
--- a/src/network/net_tulip.c
+++ b/src/network/net_tulip.c
@@ -910,6 +910,7 @@ tulip_reset(void *priv)
s->subsys_id = eeprom_data[1];
s->subsys_ven_id = eeprom_data[0];
}
+ s->nic->byte_period = NET_PERIOD_10M;
}
static void
@@ -967,6 +968,13 @@ tulip_write(uint32_t addr, uint32_t data, void *opaque)
tulip_update_ts(s, CSR5_TS_STOPPED);
s->csr[5] |= CSR5_TPS;
}
+
+ if (s->device_info->local < 3) {
+ if ((s->csr[6] & 0x00440000) && ((s->csr[6] & 0x00440000) != 0x00440000))
+ s->nic->byte_period = NET_PERIOD_100M;
+ else
+ s->nic->byte_period = NET_PERIOD_10M;
+ }
break;
case CSR(7):
diff --git a/src/qt/86Box-qt.rc b/src/qt/86Box-qt.rc
index 3a92439d8..6ddbffff2 100644
--- a/src/qt/86Box-qt.rc
+++ b/src/qt/86Box-qt.rc
@@ -8,8 +8,6 @@
*
* Application resource script for Windows.
*
- *
- *
* Authors: Miran Grca,
* Fred N. van Kempen,
* David HrdliÄka,
diff --git a/src/qt/CMakeLists.txt b/src/qt/CMakeLists.txt
index 1a004d958..1c61f5559 100644
--- a/src/qt/CMakeLists.txt
+++ b/src/qt/CMakeLists.txt
@@ -48,10 +48,12 @@ set(CMAKE_FIND_PACKAGE_PREFER_CONFIG OFF)
find_package(Threads REQUIRED)
find_package(Qt${QT_MAJOR} COMPONENTS Core Widgets Network OpenGL Gui REQUIRED)
find_package(Qt${QT_MAJOR}LinguistTools REQUIRED NO_CMAKE_FIND_ROOT_PATH)
-if(NOT USE_QT6)
- # For in src/qt/qt_mainwindow.cpp
+if(USE_QT6)
+ set(QT_NO_PRIVATE_MODULE_WARNING ON)
+ find_package(Qt6 COMPONENTS GuiPrivate)
+else()
include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
-endif ()
+endif()
# TODO: Is this the correct way to do this, and is it required on any
# other platforms or with Qt 5?
diff --git a/src/qt/dummy_cdrom_ioctl.c b/src/qt/dummy_cdrom_ioctl.c
index 8dffc6758..af8679ecc 100644
--- a/src/qt/dummy_cdrom_ioctl.c
+++ b/src/qt/dummy_cdrom_ioctl.c
@@ -8,8 +8,6 @@
*
* Win32 CD-ROM support via IOCTL.
*
- *
- *
* Authors: TheCollector1995, ,
* Miran Grca,
*
diff --git a/src/qt/evdev_keyboard.cpp b/src/qt/evdev_keyboard.cpp
index 9bc2ebdb2..0f54775ba 100644
--- a/src/qt/evdev_keyboard.cpp
+++ b/src/qt/evdev_keyboard.cpp
@@ -8,8 +8,6 @@
*
* evdev keyboard input module.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2023 RichardG.
diff --git a/src/qt/evdev_keyboard.hpp b/src/qt/evdev_keyboard.hpp
index 5efe5958d..2943390df 100644
--- a/src/qt/evdev_keyboard.hpp
+++ b/src/qt/evdev_keyboard.hpp
@@ -8,8 +8,6 @@
*
* Definitions for evdev keyboard input module.
*
- *
- *
* Authors: RichardG,
*
* Copyright 2023 RichardG.
diff --git a/src/qt/evdev_mouse.cpp b/src/qt/evdev_mouse.cpp
index b5f68a286..d882e2883 100644
--- a/src/qt/evdev_mouse.cpp
+++ b/src/qt/evdev_mouse.cpp
@@ -8,8 +8,6 @@
*
* Linux/FreeBSD libevdev mouse input module.
*
- *
- *
* Authors: Cacodemon345
*
* Copyright 2021-2022 Cacodemon345
diff --git a/src/qt/languages/86box.pot b/src/qt/languages/86box.pot
index 41b84f5b0..54b328aa1 100644
--- a/src/qt/languages/86box.pot
+++ b/src/qt/languages/86box.pot
@@ -603,9 +603,6 @@ msgstr ""
msgid "ID:"
msgstr ""
-msgid "&Specify..."
-msgstr ""
-
msgid "Sectors:"
msgstr ""
@@ -852,9 +849,18 @@ msgstr ""
msgid "Invalid PCap device"
msgstr ""
+msgid "Generic paddle controller(s)"
+msgstr ""
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr ""
+
msgid "2-axis, 2-button joystick(s)"
msgstr ""
+msgid "2-axis, 3-button joystick"
+msgstr ""
+
msgid "2-axis, 4-button joystick"
msgstr ""
@@ -867,18 +873,99 @@ msgstr ""
msgid "3-axis, 2-button joystick"
msgstr ""
+msgid "3-axis, 3-button joystick"
+msgstr ""
+
msgid "3-axis, 4-button joystick"
msgstr ""
+msgid "4-axis, 2-button joystick"
+msgstr ""
+
+msgid "4-axis, 3-button joystick"
+msgstr ""
+
msgid "4-axis, 4-button joystick"
msgstr ""
+msgid "2-button gamepad(s)"
+msgstr ""
+
+msgid "3-button gamepad"
+msgstr ""
+
+msgid "4-button gamepad"
+msgstr ""
+
+msgid "6-button gamepad"
+msgstr ""
+
+msgid "Gravis PC GamePad"
+msgstr ""
+
+msgid "2-button flight yoke"
+msgstr ""
+
+msgid "3-button flight yoke"
+msgstr ""
+
+msgid "4-button flight yoke"
+msgstr ""
+
+msgid "2-button flight yoke with throttle"
+msgstr ""
+
+msgid "3-button flight yoke with throttle"
+msgstr ""
+
+msgid "4-button flight yoke with throttle"
+msgstr ""
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr ""
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr ""
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr ""
+
+msgid "CH Flightstick"
+msgstr ""
+
+msgid "CH Flightstick + CH Pedals"
+msgstr ""
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr ""
+
msgid "CH Flightstick Pro"
msgstr ""
msgid "CH Flightstick Pro + CH Pedals"
msgstr ""
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr ""
+
+msgid "CH Virtual Pilot"
+msgstr ""
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr ""
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr ""
+
+msgid "CH Virtual Pilot Pro"
+msgstr ""
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr ""
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr ""
+
msgid "Microsoft SideWinder Pad"
msgstr ""
@@ -888,25 +975,10 @@ msgstr ""
msgid "Thrustmaster FCS + Rudder Control System"
msgstr ""
-msgid "2-button gamepad(s)"
+msgid "Thrustmaster Formula T1/T2 with Adaptor"
msgstr ""
-msgid "2-button flight yoke"
-msgstr ""
-
-msgid "4-button gamepad"
-msgstr ""
-
-msgid "4-button flight yoke"
-msgstr ""
-
-msgid "2-button flight yoke with throttle"
-msgstr ""
-
-msgid "4-button flight yoke with throttle"
-msgstr ""
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
+msgid "Thrustmaster Formula T1/T2 without Adaptor"
msgstr ""
msgid "None"
@@ -1782,6 +1854,9 @@ msgstr ""
msgid "VDE Socket:"
msgstr ""
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr ""
@@ -2988,11 +3063,11 @@ msgstr ""
msgid "Color scheme"
msgstr ""
-msgid "System"
-msgstr ""
-
msgid "Light"
msgstr ""
msgid "Dark"
msgstr ""
+
+msgid "Search:"
+msgstr ""
diff --git a/src/qt/languages/cs-CZ.po b/src/qt/languages/cs-CZ.po
index b1864c5c2..7dd1e5d7a 100644
--- a/src/qt/languages/cs-CZ.po
+++ b/src/qt/languages/cs-CZ.po
@@ -603,9 +603,6 @@ msgstr "KanĂ¡l:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Zadat..."
-
msgid "Sectors:"
msgstr "Sektory:"
@@ -852,9 +849,18 @@ msgstr "Nebyla nalezena Å¾Ă¡dnĂ¡ PCap zaÅ™ĂzenĂ"
msgid "Invalid PCap device"
msgstr "NeplatnĂ© PCap zaÅ™ĂzenĂ"
+msgid "Generic paddle controller(s)"
+msgstr "ObecnĂ½ otoÄnĂ½ ovladaÄ"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Joystick s 2 osami a 1 tlaÄĂtkem"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Joystick s 2 osami a 2 tlaÄĂtky"
+msgid "2-axis, 3-button joystick"
+msgstr "Joystick s 2 osami a 3 tlaÄĂtky"
+
msgid "2-axis, 4-button joystick"
msgstr "Joystick s 2 osami a 4 tlaÄĂtky"
@@ -867,11 +873,71 @@ msgstr "Joystick s 2 osami a 8 tlaÄĂtky"
msgid "3-axis, 2-button joystick"
msgstr "Joystick s 3 osami a 2 tlaÄĂtky"
+msgid "3-axis, 3-button joystick"
+msgstr "Joystick s 3 osami a 3 tlaÄĂtky"
+
msgid "3-axis, 4-button joystick"
msgstr "Joystick s 3 osami a 4 tlaÄĂtky"
+msgid "4-axis, 2-button joystick"
+msgstr "Joystick se 4 osami a 2 tlaÄĂtky"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Joystick se 4 osami a 3 tlaÄĂtky"
+
msgid "4-axis, 4-button joystick"
-msgstr "Joystick s 4 osami a 4 tlaÄĂtky"
+msgstr "Joystick se 4 osami a 4 tlaÄĂtky"
+
+msgid "2-button gamepad(s)"
+msgstr "OvladaÄ s 2 tlaÄĂtky"
+
+msgid "3-button gamepad"
+msgstr "OvladaÄ s 3 tlaÄĂtky"
+
+msgid "4-button gamepad"
+msgstr "OvladaÄ se 4 tlaÄĂtky"
+
+msgid "6-button gamepad"
+msgstr "OvladaÄ se 6 tlaÄĂtky"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "LeteckĂ½ knipl s 2 tlaÄĂtky"
+
+msgid "3-button flight yoke"
+msgstr "LeteckĂ½ knipl s 3 tlaÄĂtky"
+
+msgid "4-button flight yoke"
+msgstr "LeteckĂ½ knipl se 4 tlaÄĂtky"
+
+msgid "2-button flight yoke with throttle"
+msgstr "LeteckĂ½ knipl s 2 tlaÄĂtky a pĂ¡kou"
+
+msgid "3-button flight yoke with throttle"
+msgstr "LeteckĂ½ knipl s 3 tlaÄĂtky a pĂ¡kou"
+
+msgid "4-button flight yoke with throttle"
+msgstr "LeteckĂ½ knipl se 4 tlaÄĂtky a pĂ¡kou"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volant (3 osy, 2 tlaÄĂtka)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volant (3 osy, 3 tlaÄĂtka)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volant (3 osy, 4 tlaÄĂtka)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
@@ -879,6 +945,27 @@ msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "OvladaÄ se 2 tlaÄĂtky"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 s adaptérem"
-msgid "2-button flight yoke"
-msgstr "LeteckĂ½ knipl se 2 tlaÄĂtky"
-
-msgid "4-button gamepad"
-msgstr "OvladaÄ se 4 tlaÄĂtky"
-
-msgid "4-button flight yoke"
-msgstr "LeteckĂ½ knipl se 4 tlaÄĂtky"
-
-msgid "2-button flight yoke with throttle"
-msgstr "LeteckĂ½ knipl s 2 tlaÄĂtky a pĂ¡kou"
-
-msgid "4-button flight yoke with throttle"
-msgstr "LeteckĂ½ knipl s 4 tlaÄĂtky a pĂ¡kou"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volant pro Windows 95 (3 osy, 4 tlaÄĂtka)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 bez adaptéru"
msgid "None"
msgstr "ŽadnĂ©"
@@ -1714,7 +1786,7 @@ msgid "Remove"
msgstr "Odstranit"
msgid "Browse..."
-msgstr "Browse..."
+msgstr "ProchĂ¡zet..."
msgid "Couldn't create OpenGL context."
msgstr "Nepodařilo se vytvořit kontext OpenGL."
@@ -1780,7 +1852,10 @@ msgid "Adapter:"
msgstr "Adaptér:"
msgid "VDE Socket:"
-msgstr "ZĂ¡suvka VDE:"
+msgstr "VDE socket:"
+
+msgid "TAP Bridge Device:"
+msgstr "ZaÅ™ĂzenĂ TAP mostu:"
msgid "86Box Unit Tester"
msgstr "86Box Unit Tester"
@@ -2993,3 +3068,6 @@ msgstr "Světlé"
msgid "Dark"
msgstr "Tmavé"
+
+msgid "Search:"
+msgstr "Hledat:"
diff --git a/src/qt/languages/de-DE.po b/src/qt/languages/de-DE.po
index 4984af9fd..fef11a6f5 100644
--- a/src/qt/languages/de-DE.po
+++ b/src/qt/languages/de-DE.po
@@ -603,9 +603,6 @@ msgstr "Kanal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Festlegen..."
-
msgid "Sectors:"
msgstr "Sektoren:"
@@ -852,9 +849,18 @@ msgstr "Keine PCap-Geräte gefunden"
msgid "Invalid PCap device"
msgstr "UngĂ¼ltiges PCap-Gerät"
+msgid "Generic paddle controller(s)"
+msgstr "Generischer Paddel-Controller(s)"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2-Achsen-, 1-Tasten-Joystick(s)"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2-Achsen-, 2-Tasten-Joystick(s)"
+msgid "2-axis, 3-button joystick"
+msgstr "2-Achsen-, 3-Tasten-Joystick"
+
msgid "2-axis, 4-button joystick"
msgstr "2-Achsen-, 4-Tasten-Joystick"
@@ -867,18 +873,99 @@ msgstr "2-Achsen-, 8-Tasten-Joystick"
msgid "3-axis, 2-button joystick"
msgstr "3-Achsen-, 2-Tasten-Joystick"
+msgid "3-axis, 3-button joystick"
+msgstr "3-Achsen-, 3-Tasten-Joystick"
+
msgid "3-axis, 4-button joystick"
msgstr "3-Achsen-, 4-Tasten-Joystick"
+msgid "4-axis, 2-button joystick"
+msgstr "4-Achsen-, 2-Tasten-Joystick"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4-Achsen-, 3-Tasten-Joystick"
+
msgid "4-axis, 4-button joystick"
msgstr "4-Achsen-, 4-Tasten-Joystick"
+msgid "2-button gamepad(s)"
+msgstr "2-Tasten-Gamepad(s)"
+
+msgid "3-button gamepad"
+msgstr "3-Tasten-Gamepad"
+
+msgid "4-button gamepad"
+msgstr "4-Tasten-Gamepad"
+
+msgid "6-button gamepad"
+msgstr "6-Tasten-Gamepad"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2-Tasten-Steuerhorn"
+
+msgid "3-button flight yoke"
+msgstr "3-Tasten-Steuerhorn"
+
+msgid "4-button flight yoke"
+msgstr "4-Tasten-Steuerhorn"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2-Tasten-Steuerhorn mit Schubregler"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3-Tasten-Steuerhorn mit Schubregler"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4-Tasten-Steuerhorn mit Schubregler"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Lenkrad (3-Achsen, 2-Tasten)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Lenkrad (3-Achsen, 3-Tasten)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Lenkrad (3-Achsen, 4-Tasten)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedale"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedale Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedale"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedale Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedale"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedale Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "2-Tasten-Gamepad(s)"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 mit Adapter"
-msgid "2-button flight yoke"
-msgstr "2-Tasten-Steuerhorn"
-
-msgid "4-button gamepad"
-msgstr "4-Tasten-Gamepad"
-
-msgid "4-button flight yoke"
-msgstr "4-Tasten-Steuerhorn"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2-Tasten-Steuerhorn mit Schubregler"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4-Tasten-Steuerhorn mit Schubregler"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 Lenkrad (3-Achsen, 4-Tasten)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 ohne Adapter"
msgid "None"
msgstr "Ohne"
@@ -1782,6 +1854,9 @@ msgstr "Adapter:"
msgid "VDE Socket:"
msgstr "VDE Anschluss:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box-Gerätetester"
@@ -2993,3 +3068,6 @@ msgstr "Licht"
msgid "Dark"
msgstr "Dunkel"
+
+msgid "Search:"
+msgstr "Suche:"
diff --git a/src/qt/languages/es-ES.po b/src/qt/languages/es-ES.po
index 5516b7b6d..6fc268772 100644
--- a/src/qt/languages/es-ES.po
+++ b/src/qt/languages/es-ES.po
@@ -603,9 +603,6 @@ msgstr "Canal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "E&specificar..."
-
msgid "Sectors:"
msgstr "Sectores:"
@@ -852,9 +849,18 @@ msgstr "No se encontraron dispositivos PCap"
msgid "Invalid PCap device"
msgstr "Dispositivo PCap invĂ¡lido"
+msgid "Generic paddle controller(s)"
+msgstr "Controlador(es) de paleta genérico(s)"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Mando(s) de 2 ejes, 1 botones"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Mando(s) de 2 ejes, 2 botones"
+msgid "2-axis, 3-button joystick"
+msgstr "Mando de 2 ejes, 3 botones"
+
msgid "2-axis, 4-button joystick"
msgstr "Mando de 2 ejes, 4 botones"
@@ -867,18 +873,99 @@ msgstr "Mando de 2 ejes, 8 botones"
msgid "3-axis, 2-button joystick"
msgstr "Mando de 3 ejes, 2 botones"
+msgid "3-axis, 3-button joystick"
+msgstr "Mando de 3 ejes, 3 botones"
+
msgid "3-axis, 4-button joystick"
msgstr "Mando de 3 ejes, 4 botones"
+msgid "4-axis, 2-button joystick"
+msgstr "Mando de 4 ejes, 2 botones"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Mando de 4 ejes, 3 botones"
+
msgid "4-axis, 4-button joystick"
msgstr "Mando de 4 ejes, 4 botones"
+msgid "2-button gamepad(s)"
+msgstr "Mando(s) de juegos de 2 botones"
+
+msgid "3-button gamepad"
+msgstr "Mando de juegos de 3 botones"
+
+msgid "4-button gamepad"
+msgstr "Mando de juegos de 4 botones"
+
+msgid "6-button gamepad"
+msgstr "Mando de juegos de 6 botones"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Yugo de vuelo de 2 botones"
+
+msgid "3-button flight yoke"
+msgstr "Yugo de vuelo de 3 botones"
+
+msgid "4-button flight yoke"
+msgstr "Yugo de vuelo de 4 botones"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Yugo de vuelo de 2 botones con acelerador"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Yugo de vuelo de 3 botones con acelerador"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Yugo de vuelo de 4 botones con acelerador"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volante (de 3 ejes, 2 botones)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volante (de 3 ejes, 3 botones)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volante (de 3 ejes, 4 botones)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "Mando(s) de juegos de 2 botones"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 con adaptador"
-msgid "2-button flight yoke"
-msgstr "Yugo de vuelo de 2 botones"
-
-msgid "4-button gamepad"
-msgstr "Mando de juegos de 4 botones"
-
-msgid "4-button flight yoke"
-msgstr "Yugo de vuelo de 4 botones"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Yugo de vuelo de 2 botones con acelerador"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Yugo de vuelo de 4 botones con acelerador"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volante Win95 (de 3 ejes, 4 botones)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 sin adaptador"
msgid "None"
msgstr "Ninguno"
@@ -1782,6 +1854,9 @@ msgstr "Adaptador:"
msgid "VDE Socket:"
msgstr "Toma VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Comprobador de unidad 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Luz"
msgid "Dark"
msgstr "Oscuro"
+
+msgid "Search:"
+msgstr "Buscar:"
diff --git a/src/qt/languages/fi-FI.po b/src/qt/languages/fi-FI.po
index 996762a2d..db85cedb5 100644
--- a/src/qt/languages/fi-FI.po
+++ b/src/qt/languages/fi-FI.po
@@ -603,9 +603,6 @@ msgstr "Kanava:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Määritä..."
-
msgid "Sectors:"
msgstr "Sektorit:"
@@ -852,9 +849,18 @@ msgstr "PCap-laitteita ei löytynyt"
msgid "Invalid PCap device"
msgstr "Virheellinen PCap-laite"
+msgid "Generic paddle controller(s)"
+msgstr "Yleinen melainohjain"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2-akseliset 1-painikkeiset peliohjaimet"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2-akseliset 2-painikkeiset peliohjaimet"
+msgid "2-axis, 3-button joystick"
+msgstr "2-akselinen 3-painikkeinen peliohjain"
+
msgid "2-axis, 4-button joystick"
msgstr "2-akselinen 4-painikkeinen peliohjain"
@@ -867,17 +873,98 @@ msgstr "2-akselinen 8-painikkeinen peliohjain"
msgid "3-axis, 2-button joystick"
msgstr "3-akselinen 2-painikkeinen peliohjain"
+msgid "3-axis, 3-button joystick"
+msgstr "3-akselinen 3-painikkeinen peliohjain"
+
msgid "3-axis, 4-button joystick"
msgstr "3-akselinen 4-painikkeinen peliohjain"
+msgid "4-axis, 2-button joystick"
+msgstr "4-akselinen 2-painikkeinen peliohjain"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4-akselinen 3-painikkeinen peliohjain"
+
msgid "4-axis, 4-button joystick"
msgstr "4-akselinen 4-painikkeinen peliohjain"
+msgid "2-button gamepad(s)"
+msgstr "2-painikkeiset peliohjaimet"
+
+msgid "3-button gamepad"
+msgstr "3-painikkeinen peliohjain"
+
+msgid "4-button gamepad"
+msgstr "4-painikkeinen peliohjain"
+
+msgid "6-button gamepad"
+msgstr "6-painikkeinen peliohjain"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2-painikkeinen lento-ohjain"
+
+msgid "3-button flight yoke"
+msgstr "3-painikkeinen lento-ohjain"
+
+msgid "4-button flight yoke"
+msgstr "4-painikkeinen lento-ohjain"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2-painikkeinen lento-ohjain kaasuvivulla"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3-painikkeinen lento-ohjain kaasuvivulla"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4-painikkeinen lento-ohjain kaasuvivulla"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "ratti (3-akselinen, 2-painikkeinen)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "ratti (3-akselinen, 3-painikkeinen)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "ratti (3-akselinen, 4-painikkeinen)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
-msgstr ""
+msgstr "CH Flightstick Pro + CH Pedals"
+
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -886,28 +973,13 @@ msgid "Thrustmaster Flight Control System"
msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
-msgstr ""
+msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "2-painikkeiset peliohjaimet"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 adapterilla"
-msgid "2-button flight yoke"
-msgstr "2-painikkeinen lento-ohjain"
-
-msgid "4-button gamepad"
-msgstr "4-painikkeinen peliohjain"
-
-msgid "4-button flight yoke"
-msgstr "4-painikkeinen lento-ohjain"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2-painikkeinen lento-ohjain kaasuvivulla"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4-painikkeinen lento-ohjain kaasuvivulla"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95-ratti (3-akselinen, 4-painikkeinen)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 ilman adapteria"
msgid "None"
msgstr "Ei mikään"
@@ -1782,6 +1854,9 @@ msgstr "Sovitin:"
msgid "VDE Socket:"
msgstr "VDE-socket:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box Unit Tester"
@@ -2993,3 +3068,6 @@ msgstr "Vaalea"
msgid "Dark"
msgstr "Tumma"
+
+msgid "Search:"
+msgstr "Hae:"
diff --git a/src/qt/languages/fr-FR.po b/src/qt/languages/fr-FR.po
index 17fdcb1be..90cfcffda 100644
--- a/src/qt/languages/fr-FR.po
+++ b/src/qt/languages/fr-FR.po
@@ -603,9 +603,6 @@ msgstr "Canal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Spécifier..."
-
msgid "Sectors:"
msgstr "Secteurs:"
@@ -852,9 +849,18 @@ msgstr "Aucun dispositif PCap trouvé"
msgid "Invalid PCap device"
msgstr "Dispositif PCap invalide"
+msgid "Generic paddle controller(s)"
+msgstr "Contrôleur(s) à palette générique(s)"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Manette(s) avec 2 axes, 1 boutons"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Manette(s) avec 2 axes, 2 boutons"
+msgid "2-axis, 3-button joystick"
+msgstr "Manette avec 2 axes, 4 boutons"
+
msgid "2-axis, 4-button joystick"
msgstr "Manette avec 2 axes, 4 boutons"
@@ -867,18 +873,99 @@ msgstr "Manette avec 2 axes, 8 boutons"
msgid "3-axis, 2-button joystick"
msgstr "Manette avec 3 axes, 2 boutons"
+msgid "3-axis, 3-button joystick"
+msgstr "Manette avec 3 axes, 3 boutons"
+
msgid "3-axis, 4-button joystick"
msgstr "Manette avec 3 axes, 4 boutons"
+msgid "4-axis, 2-button joystick"
+msgstr "Manette avec 4 axes, 2 boutons"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Manette avec 4 axes, 3 boutons"
+
msgid "4-axis, 4-button joystick"
msgstr "Manette avec 4 axes, 4 boutons"
+msgid "2-button gamepad(s)"
+msgstr "Manette(s) de jeu Ă 2 boutons"
+
+msgid "3-button gamepad"
+msgstr "Manette de jeu Ă 2 boutons"
+
+msgid "4-button gamepad"
+msgstr "Manette de jeu Ă 4 boutons"
+
+msgid "6-button gamepad"
+msgstr "Manette de jeu Ă 6 boutons"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Manette de vol Ă 2 boutons"
+
+msgid "3-button flight yoke"
+msgstr "Manette de vol Ă 3 boutons"
+
+msgid "4-button flight yoke"
+msgstr "Manette de vol Ă 4 boutons"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Manette de vol Ă 2 boutons avec manette des gaz"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Manette de vol Ă 3 boutons avec manette des gaz"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Manette de vol Ă 4 boutons avec manette des gaz"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volant (3 axes, 2 boutons)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volant (3 axes, 3 boutons)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volant (3 axes, 4 boutons)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Système de contrôle de vol Thrustmaster"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "SCV Thrustmaster + Système de commande de gouvernail"
-msgid "2-button gamepad(s)"
-msgstr "Manette(s) de jeu Ă 2 boutons"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 avec adaptateur"
-msgid "2-button flight yoke"
-msgstr "Manette de vol Ă 2 boutons"
-
-msgid "4-button gamepad"
-msgstr "Manette de jeu Ă 2 boutons"
-
-msgid "4-button flight yoke"
-msgstr "Manette de vol Ă 4 boutons"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Manette de vol Ă 2 boutons avec manette des gaz"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Manette de vol Ă 4 boutons avec manette des gaz"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volant Win95 (3 axes, 4 boutons)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 sans adaptateur"
msgid "None"
msgstr "Aucun"
@@ -1782,6 +1854,9 @@ msgstr "Adaptateur:"
msgid "VDE Socket:"
msgstr "Prise VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Testeur d'unité de 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Lumière"
msgid "Dark"
msgstr "Sombre"
+
+msgid "Search:"
+msgstr "Rechercher:"
diff --git a/src/qt/languages/hr-HR.po b/src/qt/languages/hr-HR.po
index 3a2c239b2..4b100612f 100644
--- a/src/qt/languages/hr-HR.po
+++ b/src/qt/languages/hr-HR.po
@@ -603,9 +603,6 @@ msgstr "Kanal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Odredi..."
-
msgid "Sectors:"
msgstr "Sektori:"
@@ -852,9 +849,18 @@ msgstr "Nema PCap uređaja"
msgid "Invalid PCap device"
msgstr "Nevažeći PCap uređaj"
+msgid "Generic paddle controller(s)"
+msgstr "GeneriÄki kontroleri s lopaticama"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Palica za igru s 2 osi, 1 tipke"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Palica za igru s 2 osi, 2 tipke"
+msgid "2-axis, 3-button joystick"
+msgstr "Palica za igru s 2 osi, 3 tipke"
+
msgid "2-axis, 4-button joystick"
msgstr "Palica za igru s 2 osi, 4 tipke"
@@ -867,18 +873,99 @@ msgstr "Palica za igru s 2 osi, 8 tipke"
msgid "3-axis, 2-button joystick"
msgstr "Palica za igru s 3 osi, 2 tipke"
+msgid "3-axis, 3-button joystick"
+msgstr "Palica za igru s 3 osi, 3 tipke"
+
msgid "3-axis, 4-button joystick"
msgstr "Palica za igru s 3 osi, 4 tipke"
+msgid "4-axis, 2-button joystick"
+msgstr "Palica za igru s 4 osi, 2 tipke"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Palica za igru s 4 osi, 3 tipke"
+
msgid "4-axis, 4-button joystick"
msgstr "Palica za igru s 4 osi, 4 tipke"
+msgid "2-button gamepad(s)"
+msgstr "Gamepad(ovi) s 2 tipke"
+
+msgid "3-button gamepad"
+msgstr "Gamepad s 3 tipke"
+
+msgid "4-button gamepad"
+msgstr "Gamepad s 4 tipke"
+
+msgid "6-button gamepad"
+msgstr "Gamepad s 6 tipke"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Jaram za letenje s 2 tipke"
+
+msgid "3-button flight yoke"
+msgstr "Jaram za letenje s 3 tipke"
+
+msgid "4-button flight yoke"
+msgstr "Jaram za letenje s 4 tipke"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Jaram za letenje s 2 tipke i gasom"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Jaram za letenje s 3 tipke i gasom"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Jaram za letenje s 4 tipke i gasom"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volan (3 osi, 2 tipke)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volan (3 osi, 3 tipke)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volan (3 osi, 4 tipke)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "Gamepad(ovi) s 2 tipke"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 s adapterom"
-msgid "2-button flight yoke"
-msgstr "Jaram za letenje s 2 tipke"
-
-msgid "4-button gamepad"
-msgstr "Gamepad s 4 tipke"
-
-msgid "4-button flight yoke"
-msgstr "Jaram za letenje s 4 tipke"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Jaram za letenje s 2 tipke i gasom"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Jaram za letenje s 4 tipke i gasom"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volan Win95 (3 osi, 4 tipke)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 bez adaptera"
msgid "None"
msgstr "Bez"
@@ -1714,7 +1786,7 @@ msgid "Remove"
msgstr "Ukloni"
msgid "Browse..."
-msgstr "Pregledajte..."
+msgstr "Pretraži..."
msgid "Couldn't create OpenGL context."
msgstr "Nije moguće stvoriti kontekst OpenGL."
@@ -1782,6 +1854,9 @@ msgstr "Adapter:"
msgid "VDE Socket:"
msgstr "VDE utiÄnica:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "JediniÄni ispitivaÄ 86Box-a"
@@ -2993,3 +3068,6 @@ msgstr "Svjetlo"
msgid "Dark"
msgstr "Tamno"
+
+msgid "Search:"
+msgstr "Pretrag:"
diff --git a/src/qt/languages/it-IT.po b/src/qt/languages/it-IT.po
index 65c4d83dd..fcefaad62 100644
--- a/src/qt/languages/it-IT.po
+++ b/src/qt/languages/it-IT.po
@@ -603,9 +603,6 @@ msgstr "Canale:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Specifica..."
-
msgid "Sectors:"
msgstr "Settori:"
@@ -852,9 +849,18 @@ msgstr "Nessun dispositivo PCap trovato"
msgid "Invalid PCap device"
msgstr "Dispositivo PCap non valido"
+msgid "Generic paddle controller(s)"
+msgstr "Controller generico/i a paletta"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Joystick a 2 assi, 1 pulsanti"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Joystick a 2 assi, 2 pulsanti"
+msgid "2-axis, 3-button joystick"
+msgstr "Joystick a 2 assi, 3 pulsanti"
+
msgid "2-axis, 4-button joystick"
msgstr "Joystick a 2 assi, 4 pulsanti"
@@ -867,18 +873,99 @@ msgstr "Joystick a 2 assi, 8 pulsanti"
msgid "3-axis, 2-button joystick"
msgstr "Joystick a 3 assi, 2 pulsanti"
+msgid "3-axis, 3-button joystick"
+msgstr "Joystick a 3 assi, 4 pulsanti"
+
msgid "3-axis, 4-button joystick"
msgstr "Joystick a 3 assi, 4 pulsanti"
+msgid "4-axis, 2-button joystick"
+msgstr "Joystick a 4 assi, 2 pulsanti"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Joystick a 4 assi, 3 pulsanti"
+
msgid "4-axis, 4-button joystick"
msgstr "Joystick a 4 assi, 4 pulsanti"
+msgid "2-button gamepad(s)"
+msgstr "Gamepad a 2 pulsanti"
+
+msgid "3-button gamepad"
+msgstr "Gamepad a 3 pulsanti"
+
+msgid "4-button gamepad"
+msgstr "Gamepad a 4 pulsanti"
+
+msgid "6-button gamepad"
+msgstr "Gamepad a 6 pulsanti"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Barra di comando a 2 pulsanti"
+
+msgid "3-button flight yoke"
+msgstr "Barra di comando a 3 pulsanti"
+
+msgid "4-button flight yoke"
+msgstr "Barra di comando a 4 pulsanti"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Barra di comando a 2 pulsanti con acceleratore"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Barra di comando a 4 pulsanti con acceleratore"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Barra di comando a 4 pulsanti con acceleratore"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volante (3 assi, 2 pulsanti)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volante (3 assi, 3 pulsanti)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volante (3 assi, 4 pulsanti)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + Pedali CH"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedali Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedali"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedali Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedali"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedali Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder"
@@ -888,26 +975,11 @@ msgstr "Sistema di controllo Thrustmaster Flight"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Sistema di controllo timone"
-msgid "2-button gamepad(s)"
-msgstr "Gamepad a 2 pulsanti"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 con adattatore"
-msgid "2-button flight yoke"
-msgstr "Barra di comando a 2 pulsanti"
-
-msgid "4-button gamepad"
-msgstr "Gamepad a 4 pulsanti"
-
-msgid "4-button flight yoke"
-msgstr "Barra di comando a 4 pulsanti"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Barra di comando a 2 pulsanti con acceleratore"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Barra di comando a 4 pulsanti con acceleratore"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volante Win95 (3 assi, 4 pulsanti)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 senza adattatore"
msgid "None"
msgstr "Nessuno"
@@ -1782,6 +1854,9 @@ msgstr "Adattatore:"
msgid "VDE Socket:"
msgstr "Presa VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Tester di unitĂ 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Chiara"
msgid "Dark"
msgstr "Scura"
+
+msgid "Search:"
+msgstr "Cerca:"
diff --git a/src/qt/languages/ja-JP.po b/src/qt/languages/ja-JP.po
index 5c1973295..169e4e220 100644
--- a/src/qt/languages/ja-JP.po
+++ b/src/qt/languages/ja-JP.po
@@ -603,9 +603,6 @@ msgstr "ăƒăƒ£ăƒ³ăƒăƒ«:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "å‚ç…§(&S)..."
-
msgid "Sectors:"
msgstr "ă‚»ă‚¯ă‚¿ăƒ¼:"
@@ -852,9 +849,18 @@ msgstr "PCapăƒ‡ăƒă‚¤ă‚¹ăŒă‚ă‚ă¾ă›ă‚“"
msgid "Invalid PCap device"
msgstr "䏿£ăªPCapăƒ‡ăƒă‚¤ă‚¹"
+msgid "Generic paddle controller(s)"
+msgstr "æ±ç”¨ăƒ‘ăƒ‰ăƒ«ă‚³ăƒ³ăƒˆăƒăƒ¼ăƒ©ăƒ¼"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(2軸ă€1ăƒœă‚¿ăƒ³)"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(2軸ă€2ăƒœă‚¿ăƒ³)"
+msgid "2-axis, 3-button joystick"
+msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(2軸ă€3ăƒœă‚¿ăƒ³)"
+
msgid "2-axis, 4-button joystick"
msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(2軸ă€4ăƒœă‚¿ăƒ³)"
@@ -867,18 +873,99 @@ msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(2軸ă€8ăƒœă‚¿ăƒ³)"
msgid "3-axis, 2-button joystick"
msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(3軸ă€2ăƒœă‚¿ăƒ³)"
+msgid "3-axis, 3-button joystick"
+msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(3軸ă€3ăƒœă‚¿ăƒ³)"
+
msgid "3-axis, 4-button joystick"
msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(3軸ă€4ăƒœă‚¿ăƒ³)"
+msgid "4-axis, 2-button joystick"
+msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(4軸ă€2ăƒœă‚¿ăƒ³)"
+
+msgid "4-axis, 3-button joystick"
+msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(4軸ă€3ăƒœă‚¿ăƒ³)"
+
msgid "4-axis, 4-button joystick"
msgstr "ă‚¸ăƒ§ă‚¤ă‚¹ăƒ†ă‚£ăƒƒă‚¯(4軸ă€4ăƒœă‚¿ăƒ³)"
+msgid "2-button gamepad(s)"
+msgstr "2ăƒœă‚¿ăƒ³å¼ă‚²ăƒ¼ăƒ ăƒ‘ăƒƒăƒ‰"
+
+msgid "3-button gamepad"
+msgstr "3ăƒœă‚¿ăƒ³å¼ă‚²ăƒ¼ăƒ ăƒ‘ăƒƒăƒ‰"
+
+msgid "4-button gamepad"
+msgstr "4ăƒœă‚¿ăƒ³å¼ă‚²ăƒ¼ăƒ ăƒ‘ăƒƒăƒ‰"
+
+msgid "6-button gamepad"
+msgstr "6ăƒœă‚¿ăƒ³å¼ă‚²ăƒ¼ăƒ ăƒ‘ăƒƒăƒ‰"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2ăƒœă‚¿ăƒ³å¼æ“縦桿"
+
+msgid "3-button flight yoke"
+msgstr "3ăƒœă‚¿ăƒ³å¼æ“縦桿"
+
+msgid "4-button flight yoke"
+msgstr "4ăƒœă‚¿ăƒ³å¼æ“縦桿"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2ăƒœă‚¿ăƒ³å¼ăƒ•ăƒ©ă‚¤ăƒˆăƒ¨ăƒ¼ă‚¯(ă‚¹ăƒăƒƒăƒˆăƒ«ä»˜ă)"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3ăƒœă‚¿ăƒ³å¼ăƒ•ăƒ©ă‚¤ăƒˆăƒ¨ăƒ¼ă‚¯(ă‚¹ăƒăƒƒăƒˆăƒ«ä»˜ă)"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4ăƒœă‚¿ăƒ³å¼ăƒ•ăƒ©ă‚¤ăƒˆăƒ¨ăƒ¼ă‚¯(ă‚¹ăƒăƒƒăƒˆăƒ«ä»˜ă)"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "ă‚¹ăƒ†ă‚¢ăƒªăƒ³ă‚°ăƒ›ă‚¤ăƒ¼ăƒ«(3軸ă€2ăƒœă‚¿ăƒ³)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "ă‚¹ăƒ†ă‚¢ăƒªăƒ³ă‚°ăƒ›ă‚¤ăƒ¼ăƒ«(3軸ă€3ăƒœă‚¿ăƒ³)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "ă‚¹ăƒ†ă‚¢ăƒªăƒ³ă‚°ăƒ›ă‚¤ăƒ¼ăƒ«(3軸ă€4ăƒœă‚¿ăƒ³)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinderăƒ‘ăƒƒăƒ‰"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "2ăƒœă‚¿ăƒ³å¼ă‚²ăƒ¼ăƒ ăƒ‘ăƒƒăƒ‰"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "ă‚¢ăƒ€ăƒ—ă‚¿ăƒ¼ä»˜ă Thrustmaster Formula T1/T2"
-msgid "2-button flight yoke"
-msgstr "2ăƒœă‚¿ăƒ³å¼æ“縦桿"
-
-msgid "4-button gamepad"
-msgstr "4ăƒœă‚¿ăƒ³å¼ă‚²ăƒ¼ăƒ ăƒ‘ăƒƒăƒ‰"
-
-msgid "4-button flight yoke"
-msgstr "4ăƒœă‚¿ăƒ³å¼æ“縦桿"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2ăƒœă‚¿ăƒ³å¼ăƒ•ăƒ©ă‚¤ăƒˆăƒ¨ăƒ¼ă‚¯(ă‚¹ăƒăƒƒăƒˆăƒ«ä»˜ă)"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4ăƒœă‚¿ăƒ³å¼ăƒ•ăƒ©ă‚¤ăƒˆăƒ¨ăƒ¼ă‚¯(ă‚¹ăƒăƒƒăƒˆăƒ«ä»˜ă)"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 ă‚¹ăƒ†ă‚¢ăƒªăƒ³ă‚°ăƒ›ă‚¤ăƒ¼ăƒ«(3軸ă€4ăƒœă‚¿ăƒ³)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "ă‚¢ăƒ€ăƒ—ă‚¿ăƒ¼ăªă— Thrustmaster Formula T1/T2"
msgid "None"
msgstr "ăªă—"
@@ -1714,7 +1786,7 @@ msgid "Remove"
msgstr "å‰é™¤"
msgid "Browse..."
-msgstr "ăƒ–ăƒ©ă‚¦ă‚º..."
+msgstr "å‚ç…§..."
msgid "Couldn't create OpenGL context."
msgstr "OpenGLă‚³ăƒ³ăƒ†ă‚ă‚¹ăƒˆă‚’ä½œæˆă§ăă¾ă›ă‚“ă§ă—ăŸă€‚"
@@ -1782,6 +1854,9 @@ msgstr "ă‚¢ăƒ€ăƒ—ă‚¿ăƒ¼:"
msgid "VDE Socket:"
msgstr "VDEă‚½ă‚±ăƒƒăƒˆ:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Boxăƒ¦ăƒ‹ăƒƒăƒˆăƒ†ă‚¹ă‚¿ăƒ¼"
@@ -2993,3 +3068,6 @@ msgstr "å…‰"
msgid "Dark"
msgstr "æ—é—‡"
+
+msgid "Search:"
+msgstr "検索:"
diff --git a/src/qt/languages/ko-KR.po b/src/qt/languages/ko-KR.po
index caa87823a..9747390c6 100644
--- a/src/qt/languages/ko-KR.po
+++ b/src/qt/languages/ko-KR.po
@@ -603,9 +603,6 @@ msgstr "́±„ë„:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "́—´ê¸°(&S)..."
-
msgid "Sectors:"
msgstr "́„¹í„°:"
@@ -852,9 +849,18 @@ msgstr "PCap ́¥́¹˜ê°€ ́—†́µë‹ˆë‹¤"
msgid "Invalid PCap device"
msgstr "PCap ́¥́¹˜ê°€ ́˜¬ë°”르́§€ ́•́µë‹ˆë‹¤"
+msgid "Generic paddle controller(s)"
+msgstr "́¼ë°˜ 패들 ́»¨í¸ë¡¤ëŸ¬"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2́¶•, 1ë²„í¼ ́¡°́´́¤í‹±"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2́¶•, 2ë²„í¼ ́¡°́´́¤í‹±"
+msgid "2-axis, 3-button joystick"
+msgstr "2́¶•, 3ë²„í¼ ́¡°́´́¤í‹±"
+
msgid "2-axis, 4-button joystick"
msgstr "2́¶•, 4ë²„í¼ ́¡°́´́¤í‹±"
@@ -867,18 +873,99 @@ msgstr "2́¶•, 8ë²„í¼ ́¡°́´́¤í‹±"
msgid "3-axis, 2-button joystick"
msgstr "3́¶•, 2ë²„í¼ ́¡°́´́¤í‹±"
+msgid "3-axis, 3-button joystick"
+msgstr "3́¶•, 3ë²„í¼ ́¡°́´́¤í‹±"
+
msgid "3-axis, 4-button joystick"
msgstr "3́¶•, 4ë²„í¼ ́¡°́´́¤í‹±"
+msgid "4-axis, 2-button joystick"
+msgstr "4́¶•, 2ë²„í¼ ́¡°́´́¤í‹±"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4́¶•, 3ë²„í¼ ́¡°́´́¤í‹±"
+
msgid "4-axis, 4-button joystick"
msgstr "4́¶•, 4ë²„í¼ ́¡°́´́¤í‹±"
+msgid "2-button gamepad(s)"
+msgstr "2ë²„í¼ ê²Œ́„패드"
+
+msgid "3-button gamepad"
+msgstr "3ë²„í¼ ê²Œ́„패드"
+
+msgid "4-button gamepad"
+msgstr "4ë²„í¼ ê²Œ́„패드"
+
+msgid "6-button gamepad"
+msgstr "6ë²„í¼ ê²Œ́„패드"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„"
+
+msgid "3-button flight yoke"
+msgstr "3ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„"
+
+msgid "4-button flight yoke"
+msgstr "4ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„ê³¼ ́¤ë¡œí‹€"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„ê³¼ ́¤ë¡œí‹€"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„ê³¼ ́¤ë¡œí‹€"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "́¡°íƒ€ë¥œ (3́¶•, 2버í¼)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "́¡°íƒ€ë¥œ (3́¶•, 3버í¼)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "́¡°íƒ€ë¥œ (3́¶•, 4버í¼)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "2ë²„í¼ ê²Œ́„패드"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "́–´ëŒ‘í„° í¬í•¨ Thrustmaster Formula T1/T2"
-msgid "2-button flight yoke"
-msgstr "2ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„"
-
-msgid "4-button gamepad"
-msgstr "4ë²„í¼ ê²Œ́„패드"
-
-msgid "4-button flight yoke"
-msgstr "4ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„ê³¼ ́¤ë¡œí‹€"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4ë²„í¼ ë¹„í–‰ ́¡°́¢…ê°„ê³¼ ́¤ë¡œí‹€"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 ́¡°íƒ€ë¥œ (3́¶•, 4버í¼)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "́–´ëŒ‘í„° 미í¬í•¨ Thrustmaster Formula T1/T2"
msgid "None"
msgstr "́—†́Œ"
@@ -1782,6 +1854,9 @@ msgstr "́–´ëŒ‘í„°:"
msgid "VDE Socket:"
msgstr "VDE ́†Œ́¼“:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box ́œ ë‹› í…Œ́¤í„°"
@@ -2993,3 +3068,6 @@ msgstr "ë¹›"
msgid "Dark"
msgstr "́–´ë‘ "
+
+msgid "Search:"
+msgstr "ê²€́ƒ‰:"
diff --git a/src/qt/languages/nb-NO.po b/src/qt/languages/nb-NO.po
index f883b3fac..4cb843dd3 100644
--- a/src/qt/languages/nb-NO.po
+++ b/src/qt/languages/nb-NO.po
@@ -603,9 +603,6 @@ msgstr "Kanal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Angi..."
-
msgid "Sectors:"
msgstr "Sektorer:"
@@ -852,9 +849,18 @@ msgstr "Ingen PCap-enheter funnet"
msgid "Invalid PCap device"
msgstr "Ugyldig PCap-enhet"
+msgid "Generic paddle controller(s)"
+msgstr "Generisk padle-kontroller(e)"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2-akset, 1-knapps styrespak(er)"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2-akset, 2-knapps styrespak(er)"
+msgid "2-axis, 3-button joystick"
+msgstr "2-akset, 3-knapps styrespak"
+
msgid "2-axis, 4-button joystick"
msgstr "2-akset, 4-knapps styrespak"
@@ -867,18 +873,99 @@ msgstr "2-akset, 8-knapps styrespak"
msgid "3-axis, 2-button joystick"
msgstr "3-akset, 2-knapps styrespak"
+msgid "3-axis, 3-button joystick"
+msgstr "3-akset, 4-knapps styrespak"
+
msgid "3-axis, 4-button joystick"
msgstr "3-akset, 4-knapps styrespak"
+msgid "4-axis, 2-button joystick"
+msgstr "4-akset, 2-knapps styrespak"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4-akset, 3-knapps styrespak"
+
msgid "4-axis, 4-button joystick"
msgstr "4-akset, 4-knapps styrespak"
+msgid "2-button gamepad(s)"
+msgstr "2-knapps gamepad(er)"
+
+msgid "3-button gamepad"
+msgstr "3-knapps gamepad"
+
+msgid "4-button gamepad"
+msgstr "4-knapps gamepad"
+
+msgid "6-button gamepad"
+msgstr "6-knapps gamepad"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2-knapps flystyre"
+
+msgid "3-button flight yoke"
+msgstr "3-knapps flystyre"
+
+msgid "4-button flight yoke"
+msgstr "4-knapps flystyre"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2-knapps flystyre med gass"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3-knapps flystyre med gass"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4-knapps flystyre med gass"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Ratt (3-akset, 3-knapps)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Ratt (3-akset, 3-knapps)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Ratt (3-akset, 4-knapps)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedaler"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedaler Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedaler"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedaler Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedaler"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedaler Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedaler"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedaler Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Ror-kontrollsystem"
-msgid "2-button gamepad(s)"
-msgstr "2-knapps gamepad(er)"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 med adapter"
-msgid "2-button flight yoke"
-msgstr "2-knapps flystyre"
-
-msgid "4-button gamepad"
-msgstr "4-knapps gamepad"
-
-msgid "4-button flight yoke"
-msgstr "4-knapps flystyre"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2-knapps flystyre med gass"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4-knapps flystyre med gass"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 Ratt (3-akset, 4-knapps)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 uten adapter"
msgid "None"
msgstr "Ingen"
@@ -1782,6 +1854,9 @@ msgstr "Adapter:"
msgid "VDE Socket:"
msgstr "VDE-kontakt:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box-enhetstester"
@@ -2993,3 +3068,6 @@ msgstr "Lys"
msgid "Dark"
msgstr "Mørk"
+
+msgid "Search:"
+msgstr "Søk:"
diff --git a/src/qt/languages/nl-NL.po b/src/qt/languages/nl-NL.po
index 763a9192d..e3c5879ec 100644
--- a/src/qt/languages/nl-NL.po
+++ b/src/qt/languages/nl-NL.po
@@ -43,7 +43,7 @@ msgid "&Hide status bar"
msgstr "&Statusbalk verbergen"
msgid "Hide &toolbar"
-msgstr "Verberg &toolbar"
+msgstr "&Toolbar verbergen"
msgid "&Resizeable window"
msgstr "&Venster met aanpasbare grootte"
@@ -109,7 +109,7 @@ msgid "Fi<er method"
msgstr "Filtermethode"
msgid "&Nearest"
-msgstr "&Dichtsbijzijnde"
+msgstr "&Dichtstbijzijnde"
msgid "&Linear"
msgstr "&Lineair"
@@ -220,7 +220,7 @@ msgid "Begin trace"
msgstr "Begin traceren"
msgid "End trace"
-msgstr "Traceren beëindigen"
+msgstr "Beëindig traceren"
msgid "&Help"
msgstr "&Help"
@@ -232,19 +232,19 @@ msgid "&About 86Box..."
msgstr "&Over 86Box..."
msgid "&New image..."
-msgstr "&Nieuw image..."
+msgstr "&Nieuw imagebestand..."
msgid "&Existing image..."
-msgstr "&Bestaande image..."
+msgstr "&Bestaand imagebestand..."
msgid "Existing image (&Write-protected)..."
-msgstr "Bestaande image (&Schrijfbeveiligd)..."
+msgstr "Bestaand imagebestand (&Schrijfbeveiligd)..."
msgid "&Record"
msgstr "&Opnemen"
msgid "&Play"
-msgstr "&Play"
+msgstr "&Afspelen"
msgid "&Rewind to the beginning"
msgstr "&Terugspoelen naar het begin"
@@ -256,19 +256,19 @@ msgid "E&ject"
msgstr "&Uitwerpen"
msgid "&Image..."
-msgstr "&Image..."
+msgstr "&Imagebestand..."
msgid "E&xport to 86F..."
msgstr "E&xporteer naar 86F..."
msgid "&Mute"
-msgstr "&Mute"
+msgstr "&Dempen"
msgid "E&mpty"
-msgstr "E&mpty"
+msgstr "&Leeg"
msgid "Reload previous image"
-msgstr "Herlaad vorige image"
+msgstr "Herlaad vorig imagebestand"
msgid "&Folder..."
msgstr "&Map..."
@@ -301,7 +301,7 @@ msgid "&Select shader..."
msgstr "&Selecteer shader..."
msgid "&Remove shader"
-msgstr "&Remove shader"
+msgstr "&Verwijder shader"
msgid "Preferences"
msgstr "Voorkeuren"
@@ -310,7 +310,7 @@ msgid "Sound Gain"
msgstr "Geluidsversterking"
msgid "New Image"
-msgstr "Nieuw image"
+msgstr "Nieuw imagebestand"
msgid "Settings"
msgstr "Instellingen"
@@ -343,7 +343,7 @@ msgid "RPM mode:"
msgstr "RPM-modus:"
msgid "Progress:"
-msgstr "Vooruitgang:"
+msgstr "Voortgang:"
msgid "Width:"
msgstr "Breedte:"
@@ -352,7 +352,7 @@ msgid "Height:"
msgstr "Hoogte:"
msgid "Lock to this size"
-msgstr "Leg vast op deze grootte"
+msgstr "Vergrendel deze grootte"
msgid "Machine type:"
msgstr "Machinetype:"
@@ -403,10 +403,10 @@ msgid "Dynamic Recompiler"
msgstr "Dynamische Recompiler"
msgid "CPU frame size"
-msgstr "CPU frame grootte"
+msgstr "CPU framegrootte"
msgid "Larger frames (less smooth)"
-msgstr "Groter frames (minder vloeiend)"
+msgstr "Grotere frames (minder vloeiend)"
msgid "Smaller frames (smoother)"
msgstr "Kleinere frames (vloeiender)"
@@ -430,7 +430,7 @@ msgid "IBM PS/55 Display Adapter Graphics"
msgstr "IBM PS/55 Display Adapter Graphics"
msgid "Keyboard:"
-msgstr "Toetsenbord"
+msgstr "Toetsenbord:"
msgid "Keyboard"
msgstr "Toetsenbord"
@@ -472,13 +472,13 @@ msgid "Sound card #4:"
msgstr "Geluidskaart #4:"
msgid "MIDI Out Device:"
-msgstr "MIDI Out-apparaat:"
+msgstr "MIDI Uitvoerapparaat:"
msgid "MIDI In Device:"
-msgstr "MIDI In-apparaat:"
+msgstr "MIDI Invoerapparaat:"
msgid "MIDI Out:"
-msgstr "Midi Out:"
+msgstr "Midi Uit:"
msgid "Standalone MPU-401"
msgstr "Standalone MPU-401"
@@ -603,9 +603,6 @@ msgstr "Kanaal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Specificeer..."
-
msgid "Sectors:"
msgstr "Sectoren:"
@@ -649,7 +646,7 @@ msgid "Removable disks:"
msgstr "Verwisselbare schijven:"
msgid "Removable disk drives:"
-msgstr "Verwisselbare schijfstations"
+msgstr "Verwisselbare schijfstations:"
msgid "ZIP 250"
msgstr "ZIP 250"
@@ -712,13 +709,13 @@ msgid "&Removable disk %1 (%2): %3"
msgstr "&Verwijderbare schijf %1 (%2): %3"
msgid "Removable disk images"
-msgstr "Verwijderbare schijf image"
+msgstr "Verwijderbaar schijfimagebestand"
msgid "Image %1"
msgstr "Image %1"
msgid "86Box could not find any usable ROM images.\n\nPlease download a ROM set and extract it into the \"roms\" directory."
-msgstr "86Box kon geen bruikbare ROM images vinden.\n\nDownload een ROM set en pak deze uit in de map \"roms\"."
+msgstr "86Box kon geen bruikbare ROM imagebestanden vinden.\n\nDownload een ROM set en pak deze uit in de map \"roms\"."
msgid "(empty)"
msgstr "(leeg)"
@@ -814,7 +811,7 @@ msgid "Click to capture mouse"
msgstr "Klik om muis vast te leggen"
msgid "Press %1 to release mouse"
-msgstr "Druk op %1 om de muis los te laten"
+msgstr "Druk op %1 om de muis vrij te geven"
msgid "Press %1 or middle button to release mouse"
msgstr "Druk op %1 of middelste knop om de muis los te laten"
@@ -852,9 +849,18 @@ msgstr "Geen PCap-apparaten gevonden"
msgid "Invalid PCap device"
msgstr "Ongeldig PCap-apparaat"
+msgid "Generic paddle controller(s)"
+msgstr "Generieke peddelcontroller(s)"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Joystick(s) met 2 assen en 1 knoppen"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Joystick(s) met 2 assen en 2 knoppen"
+msgid "2-axis, 3-button joystick"
+msgstr "Joystick met 2 assen en 3 knoppen"
+
msgid "2-axis, 4-button joystick"
msgstr "Joystick met 2 assen en 4 knoppen"
@@ -867,18 +873,99 @@ msgstr "Joystick met 2 assen en 8 knoppen"
msgid "3-axis, 2-button joystick"
msgstr "Joystick met 3 assen en 2 knoppen"
+msgid "3-axis, 3-button joystick"
+msgstr "Joystick met 3 assen en 3 knoppen"
+
msgid "3-axis, 4-button joystick"
msgstr "Joystick met 3 assen en 4 knoppen"
+msgid "4-axis, 2-button joystick"
+msgstr "Joystick met 4 assen en 2 knoppen"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Joystick met 4 assen en 3 knoppen"
+
msgid "4-axis, 4-button joystick"
msgstr "Joystick met 4 assen en 4 knoppen"
+msgid "2-button gamepad(s)"
+msgstr "2-knops gamepad(s)"
+
+msgid "3-button gamepad"
+msgstr "3-knops gamepad"
+
+msgid "4-button gamepad"
+msgstr "4-knops gamepad"
+
+msgid "6-button gamepad"
+msgstr "6-knops gamepad"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2-knops stuurknuppel"
+
+msgid "3-button flight yoke"
+msgstr "3-knops stuurknuppel"
+
+msgid "4-button flight yoke"
+msgstr "4-knops stuurknuppel"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2-kops stuurknuppel met gashendel "
+
+msgid "3-button flight yoke with throttle"
+msgstr "3-kops stuurknuppel met gashendel"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4-kops stuurknuppel met gashendel"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Stuurwiel (3 assen, 2 knoppen)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Stuurwiel (3 assen, 3 knoppen)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Stuurwiel (3 assen, 4 knoppen)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedalen"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedalen Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedalen"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedalen Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedalen"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedalen Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedalen"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedalen Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control systeem"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Roer Control Systeem"
-msgid "2-button gamepad(s)"
-msgstr "2-knops gamepad(s)"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 met adapter"
-msgid "2-button flight yoke"
-msgstr "2-knops stuurknuppel"
-
-msgid "4-button gamepad"
-msgstr "4-knops gamepad"
-
-msgid "4-button flight yoke"
-msgstr "4-knops stuurknuppel"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2-kops stuurknuppel met gashendel "
-
-msgid "4-button flight yoke with throttle"
-msgstr "2-kops stuurknuppel met gashendel"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 Stuurwiel (3 assen, 4 knoppen)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 zonder adapter"
msgid "None"
msgstr "Geen"
@@ -973,7 +1045,7 @@ msgid "Do you want to save the settings?"
msgstr "Wil je de instellingen opslaan?"
msgid "This will hard reset the emulated machine."
-msgstr "Dit zal de geëmuleerde machine een hard reset geven."
+msgstr "Dit zal de geëmuleerde machine een harde reset geven."
msgid "Save"
msgstr "Opslaan"
@@ -1054,10 +1126,10 @@ msgid "Cartridge images"
msgstr "Cartridge-images"
msgid "Resume execution"
-msgstr "Hervat executie"
+msgstr "Hervat uitvoering"
msgid "Pause execution"
-msgstr "Pauze executie"
+msgstr "Pauzeer uitvoering"
msgid "Ctrl+Alt+Del"
msgstr "Ctrl+Alt+Del"
@@ -1084,7 +1156,7 @@ msgid "&Start"
msgstr "&Start"
msgid "Not running"
-msgstr "Niet actied"
+msgstr "Niet actief"
msgid "Running"
msgstr "Actief"
@@ -1093,10 +1165,10 @@ msgid "Paused"
msgstr "Gepauzeerd"
msgid "Waiting"
-msgstr "aan het wachtend"
+msgstr "Aan het wachten"
msgid "Powered Off"
-msgstr "Sluit af"
+msgstr "Uitgeschakeld"
msgid "%n running"
msgstr "%n actief"
@@ -1126,7 +1198,7 @@ msgid "86Box configuration files (86box.cfg)"
msgstr "86Box configuratiebestanden (86box.cfg)"
msgid "Configuration read failed"
-msgstr "Lezen configuratie mislukt"
+msgstr "Lezen van configuratie mislukt"
msgid "Unable to open the selected configuration file for reading: %1"
msgstr "Openen van geselecteerd configuratiebestand voor lezen niet mogelijk: %1"
@@ -1138,7 +1210,7 @@ msgid "%1 machine(s) are currently active. Are you sure you want to exit the VM
msgstr "%1 machine(s) zijn nu actief. Weet je zeker dat je de VM manager wil afsluiten?"
msgid "Add new system wizard"
-msgstr "Assistent voor toevoegen van nieuw systeem"
+msgstr "Wizard toevoegen van nieuw systeem"
msgid "Introduction"
msgstr "Introductie"
@@ -1186,13 +1258,13 @@ msgid "Directory does not exist"
msgstr "Map bestaat niet"
msgid "A new directory for the system will be created in the selected directory above"
-msgstr "Een nieuwe map voor het systeem wordt aangemaakt in de boven geselecteerde map"
+msgstr "Een nieuwe map voor het systeem wordt aangemaakt in de hierboven geselecteerde map"
msgid "System location:"
msgstr "Systeemlocatie:"
msgid "System name and location"
-msgstr "Systeemnaam en -locatie"
+msgstr "Systeemnaam en locatie"
msgid "Enter the name of the system and choose the location"
msgstr "Voer de naam in van het systeem en kies een locatie"
@@ -1252,7 +1324,7 @@ msgid "Failed to create directory for cloned VM"
msgstr "Map aanmaken voor gekloonde VM mislukt"
msgid "Failed to clone VM."
-msgstr "Kolen van VM mislukt."
+msgstr "Klonen van VM mislukt."
msgid "Directory in use"
msgstr "Map in gebruik"
@@ -1303,7 +1375,7 @@ msgid "&Kill"
msgstr "&Gedwongen beëindigen"
msgid "Killing a virtual machine can cause data loss. Only do this if the 86Box process gets stuck.\n\nDo you really wish to kill the virtual machine \"%1\"?"
-msgstr "Gedwongen beëindiging van een virtuele machine kan dataverlies veroorzaken. Doe dit alleen wanneer het 86Box process is vast gelopen.\n\nWeet je zeker dat je de virtuele machine \"%1\" wil beëindigen?"
+msgstr "Gedwongen beëindiging van een virtuele machine kan dataverlies veroorzaken. Doe dit alleen wanneer het 86Box-proces is vast gelopen.\n\nWeet je zeker dat je de virtuele machine \"%1\" wil beëindigen?"
msgid "&Delete"
msgstr "&Verwijderen"
@@ -1345,10 +1417,10 @@ msgid "Audio:"
msgstr "Audio:"
msgid "ACPI shutdown"
-msgstr "ACPI uitschakeling"
+msgstr "ACPI-uitschakeling"
msgid "ACP&I shutdown"
-msgstr "ACP&I uitschakeling"
+msgstr "ACP&I-uitschakeling"
msgid "Hard disk (%1)"
msgstr "Harde schijf (%1)"
@@ -1375,7 +1447,7 @@ msgid "Disk images cannot be larger than 127 GB."
msgstr "Schijfimages kunnen niet groter zijn dan 127 GB."
msgid "Hard disk images"
-msgstr "Harde schijf-image"
+msgstr "Harde schijf-images"
msgid "Unable to read file"
msgstr "Kan bestand niet lezen"
@@ -1384,7 +1456,7 @@ msgid "Unable to write file"
msgstr "Kan bestand niet schrijven"
msgid "HDI or HDX images with a sector size other than 512 are not supported."
-msgstr "HDI- of HDX-image met een andere sectorgrootte dan 512 worden niet ondersteund."
+msgstr "HDI- of HDX-images met een andere sectorgrootte dan 512 worden niet ondersteund."
msgid "Disk image file already exists"
msgstr "Schijfimagebestand bestaat al"
@@ -1432,7 +1504,7 @@ msgid "Fixed-size VHD"
msgstr "VHD met vaste grootte"
msgid "Dynamic-size VHD"
-msgstr "VHD met dynamisch grootte"
+msgstr "VHD met dynamische grootte"
msgid "Differencing VHD"
msgstr "Verschil-VHD"
@@ -1453,7 +1525,7 @@ msgid "Fixed-size VHD (.vhd)"
msgstr "VHD met vaste grootte (.vhd)"
msgid "Dynamic-size VHD (.vhd)"
-msgstr "VHD met dynamisch grootte (.vhd)"
+msgstr "VHD met dynamische grootte (.vhd)"
msgid "Differencing VHD (.vhd)"
msgstr "Verschil-VHD (.vhd)"
@@ -1639,7 +1711,7 @@ msgid "List of MCA devices:"
msgstr "Lijst van MCA-apparaten:"
msgid "&Tablet tool"
-msgstr "Tablet-hulpmiddel"
+msgstr "&Tablet-hulpmiddel"
msgid "About &Qt"
msgstr "Over &Qt"
@@ -1648,10 +1720,10 @@ msgid "&MCA devices..."
msgstr "MCA-apparaten..."
msgid "Show non-&primary monitors"
-msgstr "Toon niet-primaire monitors"
+msgstr "Toon niet-primaire beeldschermen"
msgid "Open screenshots &folder..."
-msgstr "Map met schermafbeeldingen openen..."
+msgstr "&Map met schermafbeeldingen openen..."
msgid "Appl&y fullscreen stretch mode when maximized"
msgstr "Schakel de volledig scherm-uitrekmodus in bij maximaliseren"
@@ -1663,7 +1735,7 @@ msgid "&Pen"
msgstr "&Pen"
msgid "&Host CD/DVD Drive (%1:)"
-msgstr "&Host cd/dvd-station (%1:)"
+msgstr "&Host CD/DVD-station (%1:)"
msgid "&Connected"
msgstr "&Verbonden"
@@ -1672,7 +1744,7 @@ msgid "Clear image &history"
msgstr "Imagegeschiedenis verwijderen(&H)"
msgid "Create..."
-msgstr "Creëer..."
+msgstr "Aanmaken..."
msgid "Host CD/DVD Drive (%1)"
msgstr "Host CD/DVD-station (%1)"
@@ -1717,10 +1789,10 @@ msgid "Browse..."
msgstr "Bladeren..."
msgid "Couldn't create OpenGL context."
-msgstr "Kan OpenGL context niet aanmaken."
+msgstr "Kan OpenGL-context niet aanmaken."
msgid "Couldn't switch to OpenGL context."
-msgstr "Kan niet overschakelen naar OpenGL context."
+msgstr "Kan niet overschakelen naar OpenGL-context."
msgid "OpenGL version 3.0 or greater is required. Current version is %1.%2"
msgstr "OpenGL versie 3.0 of hoger is vereist. De huidige versie is %1.%2"
@@ -1782,8 +1854,11 @@ msgstr "Adapter:"
msgid "VDE Socket:"
msgstr "VDE-socket:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
-msgstr "86Box apparaattester"
+msgstr "86Box Apparaattester"
msgid "Novell NetWare 2.x Key Card"
msgstr "Novell NetWare 2.x Key Card"
@@ -1855,7 +1930,7 @@ msgid "Default Baud rate"
msgstr "Standaard baudrate"
msgid "[COM] Standard Hayes-compliant Modem"
-msgstr "COM] Standaard Hayes-compatibele modem "
+msgstr "[COM] Standaard Hayes-compatibele modem "
msgid "Roland MT-32 Emulation"
msgstr "Roland MT-32-emulatie"
@@ -1939,7 +2014,7 @@ msgid "Parallel port IRQ"
msgstr "Parallelle poort IRQ"
msgid "BIOS Revision"
-msgstr "BIOS Revisie"
+msgstr "BIOS-Revisie"
msgid "BIOS Version"
msgstr "BIOS-versie"
@@ -2557,16 +2632,16 @@ msgid "Apply overscan deltas"
msgstr "Overscan-delta’s toepassen"
msgid "Mono Interlaced"
-msgstr "Mono geĂ¯nterlaced "
+msgstr "Mono Interlaced "
msgid "Mono Non-Interlaced"
-msgstr "Mono niet geĂ¯nterlaced"
+msgstr "Mono Niet-Interlaced"
msgid "Color Interlaced"
-msgstr "Kleur interlaced"
+msgstr "Kleur Interlaced"
msgid "Color Non-Interlaced"
-msgstr "Kleur niet geĂ¯nterlaced"
+msgstr "Kleur Niet-Interlaced"
msgid "3Dfx Voodoo Graphics"
msgstr "3Dfx Voodoo Graphics"
@@ -2653,7 +2728,7 @@ msgid "E&ject %1"
msgstr "&Uitwerpen %1"
msgid "&Unmute"
-msgstr "&Geluid aanzetten"
+msgstr "&Dempen opheffen"
msgid "Softfloat FPU"
msgstr "Softfloat FPU"
@@ -2779,7 +2854,7 @@ msgid "Keybind"
msgstr "Toetskoppeling"
msgid "Clear binding"
-msgstr "Wis koppelinh"
+msgstr "Wis koppeling"
msgid "Bind"
msgstr "Koppel"
@@ -2794,7 +2869,7 @@ msgid "Bind conflict"
msgstr "Koppelconflict"
msgid "This key combo is already in use."
-msgstr "Deze toetsencombinatie is al in gebruik"
+msgstr "Deze toetsencombinatie is al in gebruik."
msgid "Send Control+Alt+Del"
msgstr "Stuur Control+Alt+Del"
@@ -2812,7 +2887,7 @@ msgid "Release mouse pointer"
msgstr "Geef muis vrij"
msgid "Toggle pause"
-msgstr "Pause omschakelen"
+msgstr "Pauzeren omschakelen"
msgid "Toggle mute"
msgstr "Geluiddemping omschakelen"
@@ -2833,13 +2908,13 @@ msgid "Remote Switch"
msgstr "Externe Switch"
msgid "Switch:"
-msgstr "Switch"
+msgstr "Switch:"
msgid "Hub Mode"
msgstr "Hub-modus"
msgid "Hostname:"
-msgstr "Hostname"
+msgstr "Hostnaam"
msgid "ISA RAM:"
msgstr "ISA RAM:"
@@ -2863,10 +2938,10 @@ msgid "An error occurred trying to wipe the NVRAM contents of the virtual machin
msgstr "Fout bij Wissen van NVRAM-inhoud van de virtuele machine \"%1\""
msgid "%1 VM Manager"
-msgstr "%1 VM Manager"
+msgstr "%1 VM Beheerder"
msgid "%n disk(s)"
-msgstr "%n schijf(en)"
+msgstr "%n schijf/schijven"
msgid "Unknown Status"
msgstr "Onbekende Status"
@@ -2875,7 +2950,7 @@ msgid "No Machines Found!"
msgstr "Geen Machines Gevonden!"
msgid "Check for updates on startup"
-msgstr "Controleer op updates bij start"
+msgstr "Controleer op updates bij starten"
msgid "Unable to determine release information"
msgstr "Kan release-informatie niet bepalen"
@@ -2993,3 +3068,6 @@ msgstr "Licht"
msgid "Dark"
msgstr "Donker"
+
+msgid "Search:"
+msgstr "Zoeken:"
diff --git a/src/qt/languages/pl-PL.po b/src/qt/languages/pl-PL.po
index a46abb6ce..2383a1c1b 100644
--- a/src/qt/languages/pl-PL.po
+++ b/src/qt/languages/pl-PL.po
@@ -603,9 +603,6 @@ msgstr "Kanał:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Określ..."
-
msgid "Sectors:"
msgstr "Sektory:"
@@ -852,8 +849,17 @@ msgstr "Nie znaleziono urządzeń PCap"
msgid "Invalid PCap device"
msgstr "Nieprawidłowe urządzenie PCap"
+msgid "Generic paddle controller(s)"
+msgstr "Generyczny kontroler paddle"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Joystick(i) 2-osiowe, 1-przyciskowe"
+
msgid "2-axis, 2-button joystick(s)"
-msgstr "Joysticki 2-osiowe, 2-przyciskowe"
+msgstr "Joystick(i) 2-osiowe, 2-przyciskowe"
+
+msgid "2-axis, 3-button joystick"
+msgstr "Joystick 2-osiowy, 3-przyciskowy"
msgid "2-axis, 4-button joystick"
msgstr "Joystick 2-osiowy, 4-przyciskowy"
@@ -867,18 +873,99 @@ msgstr "Joystick 2-osiowy, 8-przyciskowy"
msgid "3-axis, 2-button joystick"
msgstr "Joystick 3-osiowy, 2-przyciskowy"
+msgid "3-axis, 3-button joystick"
+msgstr "Joystick 3-osiowy, 2-przyciskowy"
+
msgid "3-axis, 4-button joystick"
msgstr "Joystick 3-osiowy, 4-przyciskowy"
+msgid "4-axis, 2-button joystick"
+msgstr "Joystick 4-osiowy, 2-przyciskowy"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Joystick 4-osiowy, 3-przyciskowy"
+
msgid "4-axis, 4-button joystick"
msgstr "Joystick 4-osiowy, 4-przyciskowy"
+msgid "2-button gamepad(s)"
+msgstr "Pad(y) z dwoma przyciskami"
+
+msgid "3-button gamepad"
+msgstr "Pad z trzema przyciskami"
+
+msgid "4-button gamepad"
+msgstr "Pad z czterema przyciskami"
+
+msgid "6-button gamepad"
+msgstr "Pad z sześcioma przyciskami"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Wolant z dwoma przyciskami"
+
+msgid "3-button flight yoke"
+msgstr "Wolant z trzema guzikami"
+
+msgid "4-button flight yoke"
+msgstr "Wolant z czterema przyciskami"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Wolant z dwoma przyciskami i przepustnicÄ…"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Wolant z trzema przyciskami i przepustnicÄ…"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Wolant z czterema przyciskami i przepustnicÄ…"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Kierownica (3 osie, 2 przyciski)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Kierownica (3 osie, 3 przyciski)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Kierownica (3 osie, 4 przyciski)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "Pad(y) z dwoma przyciskami"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 z adapterem"
-msgid "2-button flight yoke"
-msgstr "Wolant z dwoma przyciskami"
-
-msgid "4-button gamepad"
-msgstr "Pad z czterema przyciskami"
-
-msgid "4-button flight yoke"
-msgstr "Wolant z czterema przyciskami"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Wolant z dwoma przyciskami i przepustnicÄ…"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Wolant z czterema przyciskami i przepustnicÄ…"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Kierownica Win95 (3 osie, 4 przyciski)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 bez adaptera"
msgid "None"
msgstr "Żaden"
@@ -1782,6 +1854,9 @@ msgstr "Adapter:"
msgid "VDE Socket:"
msgstr "Gniazdo VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Tester urządzeń 86Box"
@@ -2977,19 +3052,22 @@ msgid "Export EDID"
msgstr "Eksportuj EDID"
msgid "EDID file \"%ls\" is too large."
-msgstr "Plik EDID \"%ls\" jest zbyt duży."
+msgstr "Plik EDID â€%ls†jest zbyt duży."
msgid "OpenGL input scale"
-msgstr "Skala wejściowa OpenGL"
+msgstr "Skala wejścia OpenGL"
msgid "OpenGL input stretch mode"
-msgstr "Tryb rozciągania wejściowego OpenGL"
+msgstr "Tryb rozciągania wejścia OpenGL"
msgid "Color scheme"
msgstr "Schemat kolorĂ³w"
msgid "Light"
-msgstr "ÅwiatÅ‚o"
+msgstr "Jasny"
msgid "Dark"
msgstr "Ciemny"
+
+msgid "Search:"
+msgstr "Szukanie:"
diff --git a/src/qt/languages/pt-BR.po b/src/qt/languages/pt-BR.po
index 1a49ace23..f7f9dee2e 100644
--- a/src/qt/languages/pt-BR.po
+++ b/src/qt/languages/pt-BR.po
@@ -603,9 +603,6 @@ msgstr "Canal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Especificar..."
-
msgid "Sectors:"
msgstr "Setores:"
@@ -852,9 +849,18 @@ msgstr "Nenhum dispositivo PCap encontrado"
msgid "Invalid PCap device"
msgstr "Dispositivo PCap invĂ¡lido"
+msgid "Generic paddle controller(s)"
+msgstr "Controlador(es) genĂ©rico(s) de pĂ¡"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Joystick(s) de 2 eixos, 1 botões"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Joystick(s) de 2 eixos, 2 botões"
+msgid "2-axis, 3-button joystick"
+msgstr "Joystick de 2 eixos, 3 botões"
+
msgid "2-axis, 4-button joystick"
msgstr "Joystick de 2 eixos, 4 botões"
@@ -867,18 +873,99 @@ msgstr "Joystick de 2 eixos, 8 botões"
msgid "3-axis, 2-button joystick"
msgstr "Joystick de 3 eixos, 2 botões"
+msgid "3-axis, 3-button joystick"
+msgstr "Joystick de 3 eixos, 3 botões"
+
msgid "3-axis, 4-button joystick"
msgstr "Joystick de 3 eixos, 4 botões"
+msgid "4-axis, 2-button joystick"
+msgstr "Joystick de 4 eixos, 2 botões"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Joystick de 4 eixos, 3 botões"
+
msgid "4-axis, 4-button joystick"
msgstr "Joystick de 4 eixos, 4 botões"
+msgid "2-button gamepad(s)"
+msgstr "Gamepad(s) de 2 botões"
+
+msgid "3-button gamepad"
+msgstr "Gamepad de 3 botões"
+
+msgid "4-button gamepad"
+msgstr "Gamepad de 4 botões"
+
+msgid "6-button gamepad"
+msgstr "Gamepad de 6 botões"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Manche de voo de 2 botões"
+
+msgid "3-button flight yoke"
+msgstr "Manche de voo de 3 botões"
+
+msgid "4-button flight yoke"
+msgstr "Manche de voo de 4 botões"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Manche de voo de 2 botões com acelerador"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Manche de voo de 3 botões com acelerador"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Manche de voo de 4 botões com acelerador"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volante (3 eixos, 2 botões)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volante (3 eixos, 3 botões)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volante (3 eixos, 4 botões)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + Pedais CH"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + Pedais CH Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + Pedais CH"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + Pedais CH Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + Pedais CH"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + Pedais CH Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Sistema de Controle de Voo Thrustmaster"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "SCV Thrustmaster + Sistema de Controle de Leme"
-msgid "2-button gamepad(s)"
-msgstr "Gamepad(s) de 2 botões"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 com adaptador"
-msgid "2-button flight yoke"
-msgstr "Manche de voo de 2 botões"
-
-msgid "4-button gamepad"
-msgstr "Gamepad de 4 botões"
-
-msgid "4-button flight yoke"
-msgstr "Manche de voo de 4 botões"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Manche de voo de 2 botões com acelerador"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Manche de voo de 4 botões com acelerador"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volante Win95 (3 eixos, 4 botões)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 sem adaptador"
msgid "None"
msgstr "Nenhum"
@@ -1318,7 +1390,7 @@ msgid "No screenshot"
msgstr "Nenhuma captura de tela"
msgid "Search"
-msgstr "Procurar"
+msgstr "Pesquisar"
msgid "Searching for VMs..."
msgstr "Procurando por MVs..."
@@ -1782,6 +1854,9 @@ msgstr "Adaptador:"
msgid "VDE Socket:"
msgstr "Soquete VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Testador de unidade 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Claro"
msgid "Dark"
msgstr "Escuro"
+
+msgid "Search:"
+msgstr "Pesquisar:"
diff --git a/src/qt/languages/pt-PT.po b/src/qt/languages/pt-PT.po
index cdbf065f6..7f2e56d64 100644
--- a/src/qt/languages/pt-PT.po
+++ b/src/qt/languages/pt-PT.po
@@ -603,9 +603,6 @@ msgstr "Canal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Especificar..."
-
msgid "Sectors:"
msgstr "Sectores:"
@@ -852,9 +849,18 @@ msgstr "NĂ£o foi encontrado um dispositivo PCap"
msgid "Invalid PCap device"
msgstr "Dispositivo PCap invĂ¡lido"
+msgid "Generic paddle controller(s)"
+msgstr "COntrolador(es) genĂ©rico(s) tipo pĂ¡"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Joystick(s) de 2 eixos, 1 botões"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Joystick(s) de 2 eixos, 2 botões"
+msgid "2-axis, 3-button joystick"
+msgstr "Joystick de 2 eixos, 3 botões"
+
msgid "2-axis, 4-button joystick"
msgstr "Joystick de 2 eixos, 4 botões"
@@ -867,18 +873,99 @@ msgstr "Joystick de 2 eixos, 8 botões"
msgid "3-axis, 2-button joystick"
msgstr "Joystick de 3 eixos, 2 botões"
+msgid "3-axis, 3-button joystick"
+msgstr "Joystick de 3 eixos, 3 botões"
+
msgid "3-axis, 4-button joystick"
msgstr "Joystick de 3 eixos, 4 botões"
+msgid "4-axis, 2-button joystick"
+msgstr "Joystick de 4 eixos, 2 botões"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Joystick de 4 eixos, 3 botões"
+
msgid "4-axis, 4-button joystick"
msgstr "Joystick de 4 eixos, 4 botões"
+msgid "2-button gamepad(s)"
+msgstr "ManĂpulo(s) de jogos de 2 botões"
+
+msgid "3-button gamepad"
+msgstr "ManĂpulo(s) de jogos de 3 botões"
+
+msgid "4-button gamepad"
+msgstr "ManĂpulo(s) de jogos de 4 botões"
+
+msgid "6-button gamepad"
+msgstr "ManĂpulo(s) de jogos de 6 botões"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "ManĂpulo de voo de 2 botões"
+
+msgid "3-button flight yoke"
+msgstr "ManĂpulo de voo de 2 botões"
+
+msgid "4-button flight yoke"
+msgstr "ManĂpulo de voo de 4 botões"
+
+msgid "2-button flight yoke with throttle"
+msgstr "ManĂpulo de voo de 2 botões com acelerador"
+
+msgid "3-button flight yoke with throttle"
+msgstr "ManĂpulo de voo de 3 botões com acelerador"
+
+msgid "4-button flight yoke with throttle"
+msgstr "ManĂpulo de voo de 4 botões com acelerador"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volante (de 3 eixos, 2 botões)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volante (de 3 eixos, 3 botões)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volante (de 3 eixos, 4 botões)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "ManĂpulo(s) de jogos de 2 botões"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 com adaptador"
-msgid "2-button flight yoke"
-msgstr "ManĂpulo de voo de 2 botões"
-
-msgid "4-button gamepad"
-msgstr "ManĂpulo(s) de jogos de 4 botões"
-
-msgid "4-button flight yoke"
-msgstr "ManĂpulo de voo de 4 botões"
-
-msgid "2-button flight yoke with throttle"
-msgstr "ManĂpulo de voo de 2 botões com acelerador"
-
-msgid "4-button flight yoke with throttle"
-msgstr "ManĂpulo de voo de 4 botões com acelerador"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volante Win95 (de 3 eixos, 4 botões)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 sem adaptador"
msgid "None"
msgstr "Nenhum"
@@ -1782,6 +1854,9 @@ msgstr "Adaptador:"
msgid "VDE Socket:"
msgstr "Tomada VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Testador de unidades 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Claro"
msgid "Dark"
msgstr "Escuro"
+
+msgid "Search:"
+msgstr "Procurar:"
diff --git a/src/qt/languages/ru-RU.po b/src/qt/languages/ru-RU.po
index 20a25371f..9ea4a6a0e 100644
--- a/src/qt/languages/ru-RU.po
+++ b/src/qt/languages/ru-RU.po
@@ -603,9 +603,6 @@ msgstr "ĐĐ°Đ½Đ°Đ»:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Đ£ĐºĐ°Đ·Đ°Ñ‚ÑŒ..."
-
msgid "Sectors:"
msgstr "Đ¡ĐµĐºÑ‚Đ¾Ñ€Ñ‹:"
@@ -852,9 +849,18 @@ msgstr "Đ£ÑÑ‚Ñ€Đ¾Đ¹ÑÑ‚Đ²Đ° PCap Đ½Đµ Đ½Đ°Đ¹Đ´ĐµĐ½Ñ‹"
msgid "Invalid PCap device"
msgstr "ĐĐµĐ²ĐµÑ€Đ½Đ¾Đµ уÑÑ‚Ñ€Đ¾Đ¹ÑÑ‚Đ²Đ¾ PCap"
+msgid "Generic paddle controller(s)"
+msgstr "Đ¡Ñ‚Đ°Đ½Đ´Đ°Ñ€Ñ‚Đ½Ñ‹Đ¹ ĐºĐ¾Đ½Ñ‚Ñ€Đ¾Đ»Đ»ĐµÑ€-ĐºĐ¾Đ»ĐµÑĐ¾"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2-Đ¾ÑĐµĐ²Đ¾Đ¹, 1-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2-Đ¾ÑĐµĐ²Đ¾Đ¹, 2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "2-axis, 3-button joystick"
+msgstr "2-Đ¾ÑĐµĐ²Đ¾Đ¹, 3-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "2-axis, 4-button joystick"
msgstr "2-Đ¾ÑĐµĐ²Đ¾Đ¹, 4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
@@ -867,18 +873,99 @@ msgstr "2-Đ¾ÑĐµĐ²Đ¾Đ¹, 8-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
msgid "3-axis, 2-button joystick"
msgstr "3-Đ¾ÑĐµĐ²Đ¾Đ¹, 2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "3-axis, 3-button joystick"
+msgstr "3-Đ¾ÑĐµĐ²Đ¾Đ¹, 3-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "3-axis, 4-button joystick"
msgstr "3-Đ¾ÑĐµĐ²Đ¾Đ¹, 4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "4-axis, 2-button joystick"
+msgstr "4-Đ¾ÑĐµĐ²Đ¾Đ¹, 2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4-Đ¾ÑĐµĐ²Đ¾Đ¹, 3-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "4-axis, 4-button joystick"
msgstr "4-Đ¾ÑĐµĐ²Đ¾Đ¹, 4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "2-button gamepad(s)"
+msgstr "2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "3-button gamepad"
+msgstr "3-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "4-button gamepad"
+msgstr "4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "6-button gamepad"
+msgstr "6-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ ÑˆÑ‚ÑƒÑ€Đ²Đ°Đ»"
+
+msgid "3-button flight yoke"
+msgstr "3-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ ÑˆÑ‚ÑƒÑ€Đ²Đ°Đ»"
+
+msgid "4-button flight yoke"
+msgstr "4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ ÑˆÑ‚ÑƒÑ€Đ²Đ°Đ»"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ ÑˆÑ‚ÑƒÑ€Đ²Đ°Đ» Ñ Đ´Ñ€Đ¾ÑÑĐµĐ»ĐµĐ¼"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ ÑˆÑ‚ÑƒÑ€Đ²Đ°Đ» Ñ Đ´Ñ€Đ¾ÑÑĐµĐ»ĐµĐ¼"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ ÑˆÑ‚ÑƒÑ€Đ²Đ°Đ» Ñ Đ´Ñ€Đ¾ÑÑĐµĐ»ĐµĐ¼"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Đ ÑƒĐ»ÑŒ (3-Đ¾ÑĐµĐ²Đ¾Đ¹, 2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Đ ÑƒĐ»ÑŒ (3-Đ¾ÑĐµĐ²Đ¾Đ¹, 3-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Đ ÑƒĐ»ÑŒ (3-Đ¾ÑĐµĐ²Đ¾Đ¹, 4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH ĐŸĐµĐ´Đ°Đ»Đ¸"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH ĐŸĐµĐ´Đ°Đ»Đ¸ Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH ĐŸĐµĐ´Đ°Đ»Đ¸"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH ĐŸĐµĐ´Đ°Đ»Đ¸ Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH ĐŸĐµĐ´Đ°Đ»Đ¸"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH ĐŸĐµĐ´Đ°Đ»Đ¸ Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH ĐŸĐµĐ´Đ°Đ»Đ¸"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH ĐŸĐµĐ´Đ°Đ»Đ¸ Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Đ¡Đ¸ÑÑ‚ĐµĐ¼Đ° ÑƒĐ¿Ñ€Đ°Đ²Đ»ĐµĐ½Đ¸Ñ Đ¿Đ¾Đ»Ñ‘Ñ‚Đ¾Đ¼ Thrustmaster"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Đ¡Đ¸ÑÑ‚ĐµĐ¼Đ° ÑƒĐ¿Ñ€Đ°Đ²Đ»ĐµĐ½Đ¸Ñ Ñ€ÑƒĐ»ĐµĐ¼"
-msgid "2-button gamepad(s)"
-msgstr "2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 Ñ Đ°Đ´Đ°Đ¿Ñ‚ĐµÑ€Đ¾Đ¼"
-msgid "2-button flight yoke"
-msgstr "2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ flight yoke"
-
-msgid "4-button gamepad"
-msgstr "4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
-
-msgid "4-button flight yoke"
-msgstr "4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ flight yoke"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ flight yoke Ñ Đ´Ñ€Đ¾ÑÑĐµĐ»ĐµĐ¼"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹ flight yoke Ñ Đ´Ñ€Đ¾ÑÑĐµĐ»ĐµĐ¼"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Đ ÑƒĐ»ÑŒ Win95 (3-Đ¾ÑĐµĐ²Đ¾Đ¹, 4-ĐºĐ½Đ¾Đ¿Đ¾Ñ‡Đ½Ñ‹Đ¹)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 без Đ°Đ´Đ°Đ¿Ñ‚ĐµÑ€Đ°"
msgid "None"
msgstr "ĐĐµÑ‚"
@@ -1782,6 +1854,9 @@ msgstr "ĐĐ´Đ°Đ¿Ñ‚ĐµÑ€:"
msgid "VDE Socket:"
msgstr "VDE ÑĐ¾ĐºĐµÑ‚:"
+msgid "TAP Bridge Device:"
+msgstr "Đ£ÑÑ‚Ñ€Đ¾Đ¹ÑÑ‚Đ²Đ¾ Đ¼Đ¾ÑÑ‚Đ° TAP:"
+
msgid "86Box Unit Tester"
msgstr "ĐœĐ¾Đ´ÑƒĐ»ÑŒĐ½Ñ‹Đ¹ Đ¢ĐµÑÑ‚ĐµÑ€ 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Đ¡Đ²ĐµÑ‚Đ»Đ°Ñ"
msgid "Dark"
msgstr "Đ¢Ñ‘Đ¼Đ½Đ°Ñ"
+
+msgid "Search:"
+msgstr "ĐŸĐ¾Đ¸ÑĐº:"
diff --git a/src/qt/languages/sk-SK.po b/src/qt/languages/sk-SK.po
index 399bee502..f8d53d19c 100644
--- a/src/qt/languages/sk-SK.po
+++ b/src/qt/languages/sk-SK.po
@@ -603,9 +603,6 @@ msgstr "KanĂ¡l:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Zadať..."
-
msgid "Sectors:"
msgstr "Sektory:"
@@ -852,9 +849,18 @@ msgstr "Neboli nĂ¡jdenĂ© žiadne PCap zariadenia"
msgid "Invalid PCap device"
msgstr "Neplatné PCap zariadenie"
+msgid "Generic paddle controller(s)"
+msgstr "GenerickĂ½ ovlĂ¡daÄ pĂ¡dla"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2-osovĂ½, 1-tlaÄidlovĂ½ joystick"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2-osovĂ½, 2-tlaÄidlovĂ½ joystick"
+msgid "2-axis, 3-button joystick"
+msgstr "2-osovĂ½, 4-tlaÄidlovĂ½ joystick"
+
msgid "2-axis, 4-button joystick"
msgstr "2-osovĂ½, 4-tlaÄidlovĂ½ joystick"
@@ -867,18 +873,99 @@ msgstr "2-osovĂ½, 8-tlaÄidlovĂ½ joystick"
msgid "3-axis, 2-button joystick"
msgstr "3-osovĂ½, 2-tlaÄidlovĂ½ joystick"
+msgid "3-axis, 3-button joystick"
+msgstr "3-osovĂ½, 3-tlaÄidlovĂ½ joystick"
+
msgid "3-axis, 4-button joystick"
msgstr "3-osovĂ½, 4-tlaÄidlovĂ½ joystick"
+msgid "4-axis, 2-button joystick"
+msgstr "4-osovĂ½, 2-tlaÄidlovĂ½ joystick"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4-osovĂ½, 3-tlaÄidlovĂ½ joystick"
+
msgid "4-axis, 4-button joystick"
msgstr "4-osovĂ½, 4-tlaÄidlovĂ½ joystick"
+msgid "2-button gamepad(s)"
+msgstr "OvlĂ¡daÄ s 2 tlaÄidlami"
+
+msgid "3-button gamepad"
+msgstr "OvlĂ¡daÄ so 3 tlaÄidlami"
+
+msgid "4-button gamepad"
+msgstr "OvlĂ¡daÄ so 4 tlaÄidlami"
+
+msgid "6-button gamepad"
+msgstr "OvlĂ¡daÄ so 6 tlaÄidlami"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "LeteckĂ½ knipl s 2 tlaÄidlami"
+
+msgid "3-button flight yoke"
+msgstr "LeteckĂ½ knipl s 3 tlaÄidlami"
+
+msgid "4-button flight yoke"
+msgstr "LeteckĂ½ knipl so 4 tlaÄidlami"
+
+msgid "2-button flight yoke with throttle"
+msgstr "LeteckĂ½ knipl s 2 tlaÄidlami a pĂ¡kou"
+
+msgid "3-button flight yoke with throttle"
+msgstr "LeteckĂ½ knipl s 3 tlaÄidlami a pĂ¡kou"
+
+msgid "4-button flight yoke with throttle"
+msgstr "LeteckĂ½ knipl s 4 tlaÄidlami a pĂ¡kou"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volant (3 osy, 2 tlaÄĂtka)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volant (3 osy, 3 tlaÄĂtka)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volant (3 osy, 4 tlaÄĂtka)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "OvlĂ¡daÄ s 2 tlaÄidlami"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 s adaptérom"
-msgid "2-button flight yoke"
-msgstr "LeteckĂ½ knipl s 2 tlaÄidlami"
-
-msgid "4-button gamepad"
-msgstr "OvlĂ¡daÄ so 4 tlaÄidlami"
-
-msgid "4-button flight yoke"
-msgstr "LeteckĂ½ knipl so 4 tlaÄidlami"
-
-msgid "2-button flight yoke with throttle"
-msgstr "LeteckĂ½ knipl s 2 tlaÄidlami a pĂ¡kou"
-
-msgid "4-button flight yoke with throttle"
-msgstr "LeteckĂ½ knipl s 4 tlaÄidlami a pĂ¡kou"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volant pre Windows 95 (3 osy, 4 tlaÄĂtka)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 bez adaptéru"
msgid "None"
msgstr "Žiadne"
@@ -1782,6 +1854,9 @@ msgstr "Adaptér:"
msgid "VDE Socket:"
msgstr "ZĂ¡suvka VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box Unit Tester"
@@ -2993,3 +3068,6 @@ msgstr "Svetlo"
msgid "Dark"
msgstr "TmavĂ¡"
+
+msgid "Search:"
+msgstr "Hľadať:"
diff --git a/src/qt/languages/sl-SI.po b/src/qt/languages/sl-SI.po
index 31cb1e303..fcd12d638 100644
--- a/src/qt/languages/sl-SI.po
+++ b/src/qt/languages/sl-SI.po
@@ -603,9 +603,6 @@ msgstr "Kanal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&DoloÄi..."
-
msgid "Sectors:"
msgstr "Sektorji:"
@@ -852,9 +849,18 @@ msgstr "Najdena ni bila nobena naprava PCap"
msgid "Invalid PCap device"
msgstr "Neveljavna naprava PCap"
+msgid "Generic paddle controller(s)"
+msgstr "GeneriÄni krmilnik z lopatico"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Igralna palica z 2 osema, 1 gumboma"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Igralna palica z 2 osema, 2 gumboma"
+msgid "2-axis, 3-button joystick"
+msgstr "Igralna palica z 2 osema, 3 gumbi"
+
msgid "2-axis, 4-button joystick"
msgstr "Igralna palica z 2 osema, 4 gumbi"
@@ -865,20 +871,101 @@ msgid "2-axis, 8-button joystick"
msgstr "Igralna palica z 2 osema, 8 gumbi"
msgid "3-axis, 2-button joystick"
-msgstr "Igralna palica s 3 osmi, 2 gumboma"
+msgstr "Igralna palica s 3 osmi, 2 gumbi"
+
+msgid "3-axis, 3-button joystick"
+msgstr "Igralna palica s 3 osmi, 3 gumbi"
msgid "3-axis, 4-button joystick"
msgstr "Igralna palica s 3 osmi, 4 gumbi"
+msgid "4-axis, 2-button joystick"
+msgstr "Igralna palica s 4 osmi, 2 gumbi"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Igralna palica s 4 osmi, 3 gumbi"
+
msgid "4-axis, 4-button joystick"
msgstr "Igralna palica s 4 osmi, 4 gumbi"
+msgid "2-button gamepad(s)"
+msgstr "Igralna ploÅ¡Äica z 2 gumboma"
+
+msgid "3-button gamepad"
+msgstr "Igralna ploÅ¡Äica s 3 gumbi"
+
+msgid "4-button gamepad"
+msgstr "Igralna ploÅ¡Äica s 4 gumbi"
+
+msgid "6-button gamepad"
+msgstr "Igralna ploÅ¡Äica s 6 gumbi"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Letalski krmilni drog z 2 gumbi"
+
+msgid "3-button flight yoke"
+msgstr "Letalski krmilni drog z 3 gumbi"
+
+msgid "4-button flight yoke"
+msgstr "Letalski krmilni drog s 4 gumbi"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Letalski krmilni drog z 2 gumbi gumboma roÄico za plin"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Letalski krmilni drog s 3 gumbi z roÄico za plin"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Letalski krmilni drog s 4 gumbi z roÄico za plin"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "Volan s 3 osmi, 2 gumbi"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "Volan s 3 osmi, 3 gumbi"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "Volan s 3 osmi, 4 gumbi"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "Igralna ploÅ¡Äica z 2 gumboma"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 s pretvornikom"
-msgid "2-button flight yoke"
-msgstr "Letalski krmilni drog z 2 gumbi"
-
-msgid "4-button gamepad"
-msgstr "Igralna ploÅ¡Äica s 4 gumbi"
-
-msgid "4-button flight yoke"
-msgstr "Letalski krmilni drog s 4 gumbi"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Letalski krmilni drog z 2 gumbi gumboma roÄico za plin"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Letalski krmilni drog s 4 gumbi z roÄico za plin"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Volan Win95 s 3 osmi, 4 gumbi"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 brez pretvornika"
msgid "None"
msgstr "Brez"
@@ -1782,6 +1854,9 @@ msgstr "Mrežna kartica:"
msgid "VDE Socket:"
msgstr "VtiÄnica VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Tester enote 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Svetloba"
msgid "Dark"
msgstr "Temno"
+
+msgid "Search:"
+msgstr "IÅ¡Äi:"
diff --git a/src/qt/languages/sv-SE.po b/src/qt/languages/sv-SE.po
index 890bc18eb..ce701efbb 100644
--- a/src/qt/languages/sv-SE.po
+++ b/src/qt/languages/sv-SE.po
@@ -603,9 +603,6 @@ msgstr "Kanal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Specificera..."
-
msgid "Sectors:"
msgstr "Sektorer:"
@@ -852,9 +849,18 @@ msgstr "Inga PCap-enheter hittade"
msgid "Invalid PCap device"
msgstr "Ogiltig PCap-enhet"
+msgid "Generic paddle controller(s)"
+msgstr "Generisk paddelkontroll(er)"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Styrspak med 2 axlar och 1 knappar"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Styrspak med 2 axlar och 2 knappar"
+msgid "2-axis, 3-button joystick"
+msgstr "Styrspak med 2 axlar och 3 knappar"
+
msgid "2-axis, 4-button joystick"
msgstr "Styrspak med 2 axlar och 4 knappar"
@@ -867,18 +873,99 @@ msgstr "Styrspak med 2 axlar och 8 knappar"
msgid "3-axis, 2-button joystick"
msgstr "Styrspak med 3 axlar och 2 knappar"
+msgid "3-axis, 3-button joystick"
+msgstr "Styrspak med 3 axlar och 2 knappar"
+
msgid "3-axis, 4-button joystick"
msgstr "Styrspak med 3 axlar och 4 knappar"
+msgid "4-axis, 2-button joystick"
+msgstr "Styrspak med 4 axlar och 2 knappar"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Styrspak med 4 axlar och 3 knappar"
+
msgid "4-axis, 4-button joystick"
msgstr "Styrspak med 4 axlar och 4 knappar"
+msgid "2-button gamepad(s)"
+msgstr "Handkontroll(er) med tvĂ¥ knappar"
+
+msgid "3-button gamepad"
+msgstr "Handkontroll med tre knappar"
+
+msgid "4-button gamepad"
+msgstr "Handkontroll med fyra knappar"
+
+msgid "6-button gamepad"
+msgstr "Handkontroll med sex knappar"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "Styrspak med tvĂ¥ knappar"
+
+msgid "3-button flight yoke"
+msgstr "Styrspak med tre knappar"
+
+msgid "4-button flight yoke"
+msgstr "Styrspak med fyra knappar"
+
+msgid "2-button flight yoke with throttle"
+msgstr "Styrspak med tvĂ¥ knappar och gas"
+
+msgid "3-button flight yoke with throttle"
+msgstr "Styrspak med tre knappar och gas"
+
+msgid "4-button flight yoke with throttle"
+msgstr "Styrspak med fyra knappar och gas"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "ratt (tre axlar, tvĂ¥ knappar)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "ratt (tre axlar, tre knappar)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "ratt (tre axlar, fyra knappar)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH-pedaler"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH-pedaler Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH-pedaler"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH-pedaler Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH-pedaler"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH-pedaler Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH-pedaler"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH-pedaler Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "Handkontroll(er) med tvĂ¥ knappar"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 med adapter"
-msgid "2-button flight yoke"
-msgstr "Styrspak med tvĂ¥ knappar"
-
-msgid "4-button gamepad"
-msgstr "Handkontroll med fyra knappar"
-
-msgid "4-button flight yoke"
-msgstr "Styrspak med fyra knappar"
-
-msgid "2-button flight yoke with throttle"
-msgstr "Styrspak med tvĂ¥ knappar och gas"
-
-msgid "4-button flight yoke with throttle"
-msgstr "Styrspak med fyra knappar och gas"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95-ratt (tre axlar, fyra knappar)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 utan adapter"
msgid "None"
msgstr "Ingen"
@@ -1782,6 +1854,9 @@ msgstr "Adapter:"
msgid "VDE Socket:"
msgstr "VDE-sockel:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box enhetsprövare"
@@ -2993,3 +3068,6 @@ msgstr "Ljus"
msgid "Dark"
msgstr "Mörk"
+
+msgid "Search:"
+msgstr "Sök:"
diff --git a/src/qt/languages/tr-TR.po b/src/qt/languages/tr-TR.po
index 3df51363c..8dda1d362 100644
--- a/src/qt/languages/tr-TR.po
+++ b/src/qt/languages/tr-TR.po
@@ -603,9 +603,6 @@ msgstr "Kanal:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Belirle..."
-
msgid "Sectors:"
msgstr "Sektörler:"
@@ -852,9 +849,18 @@ msgstr "Herhangi bir PCap cihazı bulunamadı"
msgid "Invalid PCap device"
msgstr "Geçersiz PCap cihazı"
+msgid "Generic paddle controller(s)"
+msgstr "Genel kĂ¼rek kontrol cihazları"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2 eksenli, 1 dĂ¼ÄŸmeli oyun kolları"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2 eksenli, 2 dĂ¼ÄŸmeli oyun kolları"
+msgid "2-axis, 3-button joystick"
+msgstr "2 eksenli, 3 dĂ¼ÄŸmeli oyun kolu"
+
msgid "2-axis, 4-button joystick"
msgstr "2 eksenli, 4 dĂ¼ÄŸmeli oyun kolu"
@@ -867,18 +873,99 @@ msgstr "2 eksenli, 8 dĂ¼ÄŸmeli oyun kolu"
msgid "3-axis, 2-button joystick"
msgstr "3 eksenli, 2 dĂ¼ÄŸmeli oyun kollu"
+msgid "3-axis, 3-button joystick"
+msgstr "3 eksenli, 3 dĂ¼ÄŸmeli oyun kolu"
+
msgid "3-axis, 4-button joystick"
msgstr "3 eksenli, 4 dĂ¼ÄŸmeli oyun kolu"
+msgid "4-axis, 2-button joystick"
+msgstr "4 eksenli, 2 dĂ¼ÄŸmeli oyun kolu"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4 eksenli, 3 dĂ¼ÄŸmeli oyun kolu"
+
msgid "4-axis, 4-button joystick"
msgstr "4 eksenli, 4 dĂ¼ÄŸmeli oyun kolu"
+msgid "2-button gamepad(s)"
+msgstr "2 dĂ¼ÄŸmeli oyun tablası"
+
+msgid "3-button gamepad"
+msgstr "3 dĂ¼ÄŸmeli oyun tablası"
+
+msgid "4-button gamepad"
+msgstr "4 dĂ¼ÄŸmeli oyun tablası"
+
+msgid "6-button gamepad"
+msgstr "6 dĂ¼ÄŸmeli oyun tablası"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2 dĂ¼ÄŸmeli uçuÅŸ dĂ¼meni"
+
+msgid "3-button flight yoke"
+msgstr "3 dĂ¼ÄŸmeli uçuÅŸ dĂ¼meni"
+
+msgid "4-button flight yoke"
+msgstr "4 dĂ¼ÄŸmeli uçuÅŸ dĂ¼meni"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2 dĂ¼ÄŸmeli, gaz kollu uçuÅŸ dĂ¼meni"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3 dĂ¼ÄŸmeli, gaz kollu uçuÅŸ dĂ¼meni"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4 dĂ¼ÄŸmeli, gaz kollu uçuÅŸ dĂ¼meni"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "direksiyonu (3 eksenli, 2 dĂ¼ÄŸmeli)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "direksiyonu (3 eksenli, 3 dĂ¼ÄŸmeli)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "direksiyonu (3 eksenli, 4 dĂ¼ÄŸmeli)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "2 dĂ¼ÄŸmeli oyun tablası"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "AdaptörlĂ¼ Thrustmaster Formula T1/T2"
-msgid "2-button flight yoke"
-msgstr "2 dĂ¼ÄŸmeli uçuÅŸ dĂ¼meni"
-
-msgid "4-button gamepad"
-msgstr "4 dĂ¼ÄŸmeli oyun tablası"
-
-msgid "4-button flight yoke"
-msgstr "4 dĂ¼ÄŸmeli uçuÅŸ dĂ¼meni"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2 dĂ¼ÄŸmeli, gaz kollu uçuÅŸ dĂ¼meni"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4 dĂ¼ÄŸmeli, gaz kollu uçuÅŸ dĂ¼meni"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 direksiyonu (3 eksenli, 4 dĂ¼ÄŸmeli)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "AdaptörsĂ¼z Thrustmaster Formula T1/T2"
msgid "None"
msgstr "Hiçbiri"
@@ -1782,6 +1854,9 @@ msgstr "Adaptör:"
msgid "VDE Socket:"
msgstr "VDE Soketi:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box Test Cihazı"
@@ -2993,3 +3068,6 @@ msgstr "Işık"
msgid "Dark"
msgstr "Karanlık"
+
+msgid "Search:"
+msgstr "Ara:"
diff --git a/src/qt/languages/uk-UA.po b/src/qt/languages/uk-UA.po
index 5e2dc7a1e..1c6017b51 100644
--- a/src/qt/languages/uk-UA.po
+++ b/src/qt/languages/uk-UA.po
@@ -603,9 +603,6 @@ msgstr "ĐĐ°Đ½Đ°Đ»:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "&Đ’ĐºĐ°Đ·Đ°Ñ‚Đ¸..."
-
msgid "Sectors:"
msgstr "Đ¡ĐµĐºÑ‚Đ¾Ñ€Đ°:"
@@ -852,9 +849,18 @@ msgstr "ĐŸÑ€Đ¸ÑÑ‚Ñ€Đ¾Ñ— PCap Đ½Đµ Đ·Đ½Đ°Đ¹Đ´ĐµĐ½Ñ–"
msgid "Invalid PCap device"
msgstr "ĐĐµĐ²Ñ–Ñ€Đ½Đ¸Đ¹ Đ¿Ñ€Đ¸ÑÑ‚Ñ€Ñ–Đ¹ PCap"
+msgid "Generic paddle controller(s)"
+msgstr "Đ—Đ°Đ³Đ°Đ»ÑŒĐ½Đ¸Đ¹ ĐºĐ¾Đ½Ñ‚Ñ€Đ¾Đ»ĐµÑ€(и) Đ²ĐµÑла"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 1-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "2-axis, 3-button joystick"
+msgstr "2-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 3-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "2-axis, 4-button joystick"
msgstr "2-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
@@ -867,18 +873,99 @@ msgstr "2-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 8-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
msgid "3-axis, 2-button joystick"
msgstr "3-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "3-axis, 3-button joystick"
+msgstr "3-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 3-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "3-axis, 4-button joystick"
msgstr "3-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "4-axis, 2-button joystick"
+msgstr "4-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 3-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+
msgid "4-axis, 4-button joystick"
msgstr "4-Đ¾ÑÑŒĐ¾Đ²Đ¸Đ¹, 4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ´Đ¶Đ¾Đ¹ÑÑ‚Đ¸Đº"
+msgid "2-button gamepad(s)"
+msgstr "2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "3-button gamepad"
+msgstr "3-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "4-button gamepad"
+msgstr "4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "6-button gamepad"
+msgstr "6-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke"
+
+msgid "3-button flight yoke"
+msgstr "3-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+
+msgid "4-button flight yoke"
+msgstr "4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke Đ· Đ´Ñ€Đ¾ÑĐµĐ»ĐµĐ¼"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke Đ· Đ´Ñ€Đ¾ÑĐµĐ»ĐµĐ¼"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke Đ· Đ´Ñ€Đ¾ÑĐµĐ»ĐµĐ¼"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "ĐĐµÑ€Đ¼Đ¾ (3-Đ¾ÑÑŒĐ¾Đ²Đµ, 2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đµ)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "ĐĐµÑ€Đ¼Đ¾ (3-Đ¾ÑÑŒĐ¾Đ²Đµ, 3-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đµ)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "ĐĐµÑ€Đ¼Đ¾ (3-Đ¾ÑÑŒĐ¾Đ²Đµ, 4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đµ)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH ĐŸĐµĐ´Đ°Đ»Ñ–"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH ĐŸĐµĐ´Đ°Đ»Ñ– Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH ĐŸĐµĐ´Đ°Đ»Ñ–"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH ĐŸĐµĐ´Đ°Đ»Ñ– Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH ĐŸĐµĐ´Đ°Đ»Ñ–"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH ĐŸĐµĐ´Đ°Đ»Ñ– Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH ĐŸĐµĐ´Đ°Đ»Ñ–"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH ĐŸĐµĐ´Đ°Đ»Ñ– Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Đ¡Đ¸ÑÑ‚ĐµĐ¼Đ° ÑƒĐ¿Ñ€Đ°Đ²Đ»Ñ–Đ½Đ½Ñ Đ¿Đ¾Đ»ÑŒĐ¾Ñ‚Đ¾Đ¼ Thrustmaster"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Đ¡Đ¸ÑÑ‚ĐµĐ¼Đ° ÑƒĐ¿Ñ€Đ°Đ²Đ»Ñ–Đ½Đ½Ñ ĐºĐµÑ€Đ¼Đ¾Đ¼"
-msgid "2-button gamepad(s)"
-msgstr "4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 Đ· Đ°Đ´Đ°Đ¿Ñ‚ĐµÑ€Đ¾Đ¼"
-msgid "2-button flight yoke"
-msgstr "2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke"
-
-msgid "4-button gamepad"
-msgstr "4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ Đ³ĐµĐ¹Đ¼Đ¿Đ°Đ´"
-
-msgid "4-button flight yoke"
-msgstr "4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke Đ· Đ´Ñ€Đ¾ÑĐµĐ»ĐµĐ¼"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đ¸Đ¹ flight yoke Đ· Đ´Ñ€Đ¾ÑĐµĐ»ĐµĐ¼"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "ĐĐµÑ€Đ¼Đ¾ Win95 (3-Đ¾ÑÑŒĐ¾Đ²Đµ, 4-ĐºĐ½Đ¾Đ¿ĐºĐ¾Đ²Đµ)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 без Đ°Đ´Đ°Đ¿Ñ‚ĐµÑ€Đ°"
msgid "None"
msgstr "ĐÑ–"
@@ -1714,7 +1786,7 @@ msgid "Remove"
msgstr "Đ’Đ¸Đ´Đ°Đ»Đ¸Ñ‚Đ¸"
msgid "Browse..."
-msgstr "ĐŸĐµÑ€ĐµĐ³Đ»ÑĐ½ÑƒÑ‚Đ¸..."
+msgstr "ĐĐ³Đ»ÑĐ´..."
msgid "Couldn't create OpenGL context."
msgstr "Đе Đ²Đ´Đ°Đ»Đ¾ÑÑ ÑÑ‚Đ²Đ¾Ñ€Đ¸Ñ‚Đ¸ ĐºĐ¾Đ½Ñ‚ĐµĐºÑÑ‚ OpenGL."
@@ -1782,6 +1854,9 @@ msgstr "ĐĐ´Đ°Đ¿Ñ‚ĐµÑ€:"
msgid "VDE Socket:"
msgstr "VDE ÑĐ¾ĐºĐµÑ‚:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Đ¢ĐµÑÑ‚ĐµÑ€ Đ±Đ»Đ¾ĐºÑ–Đ² 86Box"
@@ -2993,3 +3068,6 @@ msgstr "Đ¡Đ²Ñ–Ñ‚Đ»Đ¾"
msgid "Dark"
msgstr "Đ¢ĐµĐ¼Đ½Đ¸Đ¹"
+
+msgid "Search:"
+msgstr "ĐŸĐ¾ÑˆÑƒĐº:"
diff --git a/src/qt/languages/vi-VN.po b/src/qt/languages/vi-VN.po
index 632c43c12..7edddb94d 100644
--- a/src/qt/languages/vi-VN.po
+++ b/src/qt/languages/vi-VN.po
@@ -603,9 +603,6 @@ msgstr "KĂªnh:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "Chỉ &rõ..."
-
msgid "Sectors:"
msgstr "Sector:"
@@ -852,9 +849,18 @@ msgstr "KhĂ´ng tìm thấy thiết bị PCap"
msgid "Invalid PCap device"
msgstr "Thiết bị PCap khĂ´ng hợp quy"
+msgid "Generic paddle controller(s)"
+msgstr "Bá»™ Ä‘iá»u khiển dạng mĂ¡i chèo thĂ´ng dụng"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "Cần Ä‘iá»u khiển hai trục, má»™t nĂºt"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "Cần Ä‘iá»u khiển hai trục, hai nĂºt"
+msgid "2-axis, 3-button joystick"
+msgstr "Cần Ä‘iá»u khiển hai trục, ba nĂºt"
+
msgid "2-axis, 4-button joystick"
msgstr "Cần Ä‘iá»u khiển hai trục, bốn nĂºt"
@@ -867,18 +873,99 @@ msgstr "Cần Ä‘iá»u khiển hai trục, tĂ¡m nĂºt"
msgid "3-axis, 2-button joystick"
msgstr "Cần Ä‘iá»u khiển ba trục, hai nĂºt"
+msgid "3-axis, 3-button joystick"
+msgstr "Cần Ä‘iá»u khiển ba trục, ba nĂºt"
+
msgid "3-axis, 4-button joystick"
msgstr "Cần Ä‘iá»u khiển ba trục, bốn nĂºt"
+msgid "4-axis, 2-button joystick"
+msgstr "Cần Ä‘iá»u khiển bốn trục, hai nĂºt"
+
+msgid "4-axis, 3-button joystick"
+msgstr "Cần Ä‘iá»u khiển bốn trục, ba nĂºt"
+
msgid "4-axis, 4-button joystick"
msgstr "Cần Ä‘iá»u khiển bốn trục, bốn nĂºt"
+msgid "2-button gamepad(s)"
+msgstr "Tay cầm game hai nĂºt"
+
+msgid "3-button gamepad"
+msgstr "Tay cầm game ba nĂºt"
+
+msgid "4-button gamepad"
+msgstr "Tay cầm game bốn nĂºt"
+
+msgid "6-button gamepad"
+msgstr "Tay cầm game sĂ¡u nĂºt"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "VĂ´ lăng mĂ¡y bay hai nĂºt"
+
+msgid "3-button flight yoke"
+msgstr "VĂ´ lăng mĂ¡y bay ba nĂºt"
+
+msgid "4-button flight yoke"
+msgstr "VĂ´ lăng mĂ¡y bay bốn nĂºt"
+
+msgid "2-button flight yoke with throttle"
+msgstr "VĂ´ lăng mĂ¡y bay hai nĂºt cĂ³ cần ga"
+
+msgid "3-button flight yoke with throttle"
+msgstr "VĂ´ lăng mĂ¡y bay ba nĂºt cĂ³ cần ga"
+
+msgid "4-button flight yoke with throttle"
+msgstr "VĂ´ lăng mĂ¡y bay bốn nĂºt cĂ³ cần ga"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "VĂ´ lăng (ba trục, hai nĂºt)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "VĂ´ lăng (ba trục, ba nĂºt)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "VĂ´ lăng (ba trục, bốn nĂºt)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + bĂ n giáºm CH"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + bĂ n giáºm CH Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + bĂ n giáºm CH"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + bĂ n giáºm CH Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + bĂ n giáºm CH"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + bĂ n giáºm CH Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + bĂ n giáºm CH"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + bĂ n giáºm CH Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Hệ thống bĂ¡nh lĂ¡i"
-msgid "2-button gamepad(s)"
-msgstr "Tay cầm game hai nĂºt"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "Thrustmaster Formula T1/T2 kèm bá»™ chuyển đổi"
-msgid "2-button flight yoke"
-msgstr "VĂ´ lăng mĂ¡y bay hai nĂºt"
-
-msgid "4-button gamepad"
-msgstr "Tay cầm game bốn nĂºt"
-
-msgid "4-button flight yoke"
-msgstr "VĂ´ lăng mĂ¡y bay bốn nĂºt"
-
-msgid "2-button flight yoke with throttle"
-msgstr "VĂ´ lăng mĂ¡y bay hai nĂºt cĂ³ cần ga"
-
-msgid "4-button flight yoke with throttle"
-msgstr "VĂ´ lăng mĂ¡y bay bốn nĂºt cĂ³ cần ga"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "VĂ´ lăng Win95 (ba trục, bốn nĂºt)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "Thrustmaster Formula T1/T2 khĂ´ng kèm bá»™ chuyển đổi"
msgid "None"
msgstr "KhĂ´ng cĂ³"
@@ -1782,6 +1854,9 @@ msgstr "Bộ chuyển đổi:"
msgid "VDE Socket:"
msgstr "Ổ cắm VDE:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "Trình kiểm tra đơn vị 86box"
@@ -2993,3 +3068,6 @@ msgstr "Ănh sĂ¡ng"
msgid "Dark"
msgstr "Tối"
+
+msgid "Search:"
+msgstr "Tìm:"
diff --git a/src/qt/languages/zh-CN.po b/src/qt/languages/zh-CN.po
index 7e92f9aee..58a98fc0c 100644
--- a/src/qt/languages/zh-CN.po
+++ b/src/qt/languages/zh-CN.po
@@ -403,7 +403,7 @@ msgid "Dynamic Recompiler"
msgstr "卿€é‡ç¼–译器"
msgid "CPU frame size"
-msgstr "CPU 执行帧长度"
+msgstr "CPU 执行帧大å°"
msgid "Larger frames (less smooth)"
msgstr "大执行帧 (æ“ä½œæ¬ å¹³æ»‘)"
@@ -603,9 +603,6 @@ msgstr "é€é“:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "指å®(&S)..."
-
msgid "Sectors:"
msgstr "扇区(S):"
@@ -778,10 +775,10 @@ msgid "Ports"
msgstr "端å£"
msgid "Serial ports:"
-msgstr "串行端å£:"
+msgstr "串å£:"
msgid "Parallel ports:"
-msgstr "并行端å£:"
+msgstr "å¹¶å£:"
msgid "Storage controllers"
msgstr "å˜å‚¨æ§åˆ¶å™¨"
@@ -852,9 +849,18 @@ msgstr "未找到 PCap 设备"
msgid "Invalid PCap device"
msgstr "æ— æ•ˆ PCap 设备"
+msgid "Generic paddle controller(s)"
+msgstr "é€ç”¨æ¡¨å¼æ§åˆ¶å™¨"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2 è½´, 1 é”®æ“纵æ†"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2 è½´, 2 é”®æ“纵æ†"
+msgid "2-axis, 3-button joystick"
+msgstr "2 è½´, 3 é”®æ“纵æ†"
+
msgid "2-axis, 4-button joystick"
msgstr "2 è½´, 4 é”®æ“纵æ†"
@@ -867,18 +873,99 @@ msgstr "2 è½´, 8 é”®æ“纵æ†"
msgid "3-axis, 2-button joystick"
msgstr "3 è½´, 2 é”®æ“纵æ†"
+msgid "3-axis, 3-button joystick"
+msgstr "3 è½´, 3 é”®æ“纵æ†"
+
msgid "3-axis, 4-button joystick"
msgstr "3 è½´, 4 é”®æ“纵æ†"
+msgid "4-axis, 2-button joystick"
+msgstr "4 è½´, 2 é”®æ“纵æ†"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4 è½´, 3 é”®æ“纵æ†"
+
msgid "4-axis, 4-button joystick"
msgstr "4 è½´, 4 é”®æ“纵æ†"
+msgid "2-button gamepad(s)"
+msgstr "2 æŒ‰é’®æ¸¸æˆæ‰‹æŸ„"
+
+msgid "3-button gamepad"
+msgstr "3 æŒ‰é’®æ¸¸æˆæ‰‹æŸ„"
+
+msgid "4-button gamepad"
+msgstr "4 æŒ‰é’®æ¸¸æˆæ‰‹æŸ„"
+
+msgid "6-button gamepad"
+msgstr "6 æŒ‰é’®æ¸¸æˆæ‰‹æŸ„"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2 按钮é£è¡Œæ‘‡æ†"
+
+msgid "3-button flight yoke"
+msgstr "3 按钮é£è¡Œæ‘‡æ†"
+
+msgid "4-button flight yoke"
+msgstr "4 按钮é£è¡Œæ‘‡æ†"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2 按钮带油门é£è¡Œæ‘‡æ†"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3 按钮带油门é£è¡Œæ‘‡æ†"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4 按钮带油门é£è¡Œæ‘‡æ†"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "æ–¹å‘盘 (3 è½´, 2 é”®)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "æ–¹å‘盘 (3 è½´, 3 é”®)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "æ–¹å‘盘 (3 è½´, 4 é”®)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "2 æŒ‰é’®æ¸¸æˆæ‰‹æŸ„"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "带适é…器 Thrustmaster Formula T1/T2"
-msgid "2-button flight yoke"
-msgstr "2 按钮é£è¡Œæ‘‡æ†"
-
-msgid "4-button gamepad"
-msgstr "4 æŒ‰é’®æ¸¸æˆæ‰‹æŸ„"
-
-msgid "4-button flight yoke"
-msgstr "4 按钮é£è¡Œæ‘‡æ†"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2 按钮带油门é£è¡Œæ‘‡æ†"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4 按钮带油门é£è¡Œæ‘‡æ†"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 æ–¹å‘盘 (3 è½´, 4 é”®)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "ä¸å¸¦é€‚é…器 Thrustmaster Formula T1/T2"
msgid "None"
msgstr "æ— "
@@ -1138,7 +1210,7 @@ msgid "%1 machine(s) are currently active. Are you sure you want to exit the VM
msgstr "%1 计算机当å‰å¤„äºæ´»å¨ç¶æ€ă€‚您确å®è¦é€€å‡ºè™æ‹Ÿæœºç®¡ç†å™¨å—?"
msgid "Add new system wizard"
-msgstr "æ–°å¢ç³»ç»Ÿå‘导"
+msgstr "æ·»å æ–°ç³»ç»Ÿå‘导"
msgid "Introduction"
msgstr "介ç»"
@@ -1159,7 +1231,7 @@ msgid "Use existing configuration"
msgstr "ä½¿ç”¨ç°æœ‰é…ç½®"
msgid "Type some notes here"
-msgstr "在æ¤å¤„键入一些备注"
+msgstr "在æ¤å¤„键入备注"
msgid "Paste the contents of the existing configuration file into the box below."
msgstr "å°†ç°æœ‰é…置文件内容粘贴到下é¢ç„框ä¸ă€‚"
@@ -1782,6 +1854,9 @@ msgstr "适é…器:"
msgid "VDE Socket:"
msgstr "VDE 套æ¥å—:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box 装置测试仪"
@@ -1789,16 +1864,16 @@ msgid "Novell NetWare 2.x Key Card"
msgstr "Novell NetWare 2.x 密钥å¡"
msgid "Serial port passthrough 1"
-msgstr "串行端å£ç›´é€ 1"
+msgstr "串å£ç›´é€ 1"
msgid "Serial port passthrough 2"
-msgstr "串行端å£ç›´é€ 2"
+msgstr "串å£ç›´é€ 2"
msgid "Serial port passthrough 3"
-msgstr "串行端å£ç›´é€ 3"
+msgstr "串å£ç›´é€ 3"
msgid "Serial port passthrough 4"
-msgstr "串行端å£ç›´é€ 4"
+msgstr "串å£ç›´é€ 4"
msgid "Renderer &options..."
msgstr "渲染器选项...(&O)"
@@ -1849,7 +1924,7 @@ msgid "PS/2 QuickPort Mouse"
msgstr "PS/2 QuickPort é¼ æ ‡"
msgid "3M MicroTouch (Serial)"
-msgstr "3M MicroTouch (串行)"
+msgstr "3M MicroTouch (串å£)"
msgid "Default Baud rate"
msgstr "默认波特ç‡"
@@ -1936,7 +2011,7 @@ msgid "Serial port IRQ"
msgstr "串å£ç„ IRQ"
msgid "Parallel port IRQ"
-msgstr "并行端å£ç„ IRQ"
+msgstr "å¹¶å£ç„ IRQ"
msgid "BIOS Revision"
msgstr "BIOS 修订版"
@@ -2074,7 +2149,7 @@ msgid "Buttons"
msgstr "按钮"
msgid "Serial Port"
-msgstr "串行端å£"
+msgstr "串å£"
msgid "RTS toggle"
msgstr "RTS 切æ¢"
@@ -2620,13 +2695,13 @@ msgid "Protection Dongle for Savage Quest"
msgstr "Savage Quest ä¿æ¤å 密狗"
msgid "Serial Passthrough Device"
-msgstr "串行端å£ç›´é€è®¾å¤‡"
+msgstr "串å£ç›´é€è®¾å¤‡"
msgid "Passthrough Mode"
msgstr "ç›´é€æ¨¡å¼"
msgid "Host Serial Device"
-msgstr "主机串行设备"
+msgstr "主机串å£è®¾å¤‡"
msgid "Name of pipe"
msgstr "管é“åç§°"
@@ -2647,7 +2722,7 @@ msgid "Named Pipe (Client)"
msgstr "命åç®¡é“ (客户端) "
msgid "Host Serial Passthrough"
-msgstr "主机串行端å£ç›´é€"
+msgstr "主机串å£ç›´é€"
msgid "E&ject %1"
msgstr "弹出 %1(&J)"
@@ -2993,3 +3068,6 @@ msgstr "亮色"
msgid "Dark"
msgstr "æ—色"
+
+msgid "Search:"
+msgstr "æœç´¢:"
diff --git a/src/qt/languages/zh-TW.po b/src/qt/languages/zh-TW.po
index fff385f34..69055e9f0 100644
--- a/src/qt/languages/zh-TW.po
+++ b/src/qt/languages/zh-TW.po
@@ -403,13 +403,13 @@ msgid "Dynamic Recompiler"
msgstr "å‹•æ…‹é‡ç·¨è¯å™¨"
msgid "CPU frame size"
-msgstr "CPU 框æ¶å¤§å°"
+msgstr "CPU 執行幀大å°"
msgid "Larger frames (less smooth)"
-msgstr "è¼ƒå¤§ç„æ¡†æ¶ (較ä¸å¹³æ»‘)"
+msgstr "大執行幀 (æ“ä½œæ¬ å¹³æ»‘)"
msgid "Smaller frames (smoother)"
-msgstr "æ›´å°ç„æ¡†æ¶ (更平滑)"
+msgstr "å°åŸ·è¡Œå¹€ (æ“作更平滑)"
msgid "Video:"
msgstr "顯示å¡:"
@@ -603,9 +603,6 @@ msgstr "é€é“:"
msgid "ID:"
msgstr "ID:"
-msgid "&Specify..."
-msgstr "指å®(&S)..."
-
msgid "Sectors:"
msgstr "ç£å€(S):"
@@ -643,7 +640,7 @@ msgid "MO drives:"
msgstr "ç£å…‰ç¢Ÿæ©Ÿ:"
msgid "MO:"
-msgstr "ç£å…‰:"
+msgstr "ç£å…‰ç¢Ÿ:"
msgid "Removable disks:"
msgstr "å¯ç§»é™¤:"
@@ -778,10 +775,10 @@ msgid "Ports"
msgstr "連æ¥åŸ "
msgid "Serial ports:"
-msgstr "åºåˆ—連æ¥åŸ :"
+msgstr "åºåˆ—åŸ :"
msgid "Parallel ports:"
-msgstr "å¹³è¡ŒåŸ :"
+msgstr "ä¸¦åˆ—åŸ :"
msgid "Storage controllers"
msgstr "å˜å„²æ§åˆ¶å™¨"
@@ -793,7 +790,7 @@ msgid "Disks:"
msgstr "ç£ç¢Ÿ:"
msgid "Floppy:"
-msgstr "軟盤:"
+msgstr "軟碟:"
msgid "Controllers:"
msgstr "æ§åˆ¶å™¨:"
@@ -852,9 +849,18 @@ msgstr "未找到 PCap è£ç½®"
msgid "Invalid PCap device"
msgstr "無效 PCap è£ç½®"
+msgid "Generic paddle controller(s)"
+msgstr "é€ç”¨æ§³å¼æ§åˆ¶å™¨"
+
+msgid "2-axis, 1-button joystick(s)"
+msgstr "2 軸, 1 鵿–æ¡¿"
+
msgid "2-axis, 2-button joystick(s)"
msgstr "2 軸, 2 鵿–æ¡¿"
+msgid "2-axis, 3-button joystick"
+msgstr "2 軸, 3 鵿–æ¡¿"
+
msgid "2-axis, 4-button joystick"
msgstr "2 軸, 4 鵿–æ¡¿"
@@ -867,18 +873,99 @@ msgstr "2 軸, 8 鵿–æ¡¿"
msgid "3-axis, 2-button joystick"
msgstr "3 軸, 2 鵿–æ¡¿"
+msgid "3-axis, 3-button joystick"
+msgstr "3 軸, 3 鵿–æ¡¿"
+
msgid "3-axis, 4-button joystick"
msgstr "3 軸, 4 鵿–æ¡¿"
+msgid "4-axis, 2-button joystick"
+msgstr "4 軸, 2 鵿–æ¡¿"
+
+msgid "4-axis, 3-button joystick"
+msgstr "4 軸, 3 鵿–æ¡¿"
+
msgid "4-axis, 4-button joystick"
msgstr "4 軸, 4 鵿–æ¡¿"
+msgid "2-button gamepad(s)"
+msgstr "2 éµé戲手柄"
+
+msgid "3-button gamepad"
+msgstr "3 éµé戲手柄"
+
+msgid "4-button gamepad"
+msgstr "4 éµé戲手柄"
+
+msgid "6-button gamepad"
+msgstr "6 éµé戲手柄"
+
+msgid "Gravis PC GamePad"
+msgstr "Gravis PC GamePad"
+
+msgid "2-button flight yoke"
+msgstr "2 æŒ‰éˆ•é£›è¡Œæ–æ¡¿"
+
+msgid "3-button flight yoke"
+msgstr "3 æŒ‰éˆ•é£›è¡Œæ–æ¡¿"
+
+msgid "4-button flight yoke"
+msgstr "4 æŒ‰éˆ•é£›è¡Œæ–æ¡¿"
+
+msgid "2-button flight yoke with throttle"
+msgstr "2 æŒ‰éˆ•å¸¶æ²¹é–€é£›è¡Œæ–æ¡¿"
+
+msgid "3-button flight yoke with throttle"
+msgstr "3 æŒ‰éˆ•å¸¶æ²¹é–€é£›è¡Œæ–æ¡¿"
+
+msgid "4-button flight yoke with throttle"
+msgstr "4 æŒ‰éˆ•å¸¶æ²¹é–€é£›è¡Œæ–æ¡¿"
+
+msgid "Steering wheel (3-axis, 2-button)"
+msgstr "æ–¹å‘盤 (3 軸, 2 鵿–æ¡¿)"
+
+msgid "Steering wheel (3-axis, 3-button)"
+msgstr "æ–¹å‘盤 (3 軸, 3 鵿–æ¡¿)"
+
+msgid "Steering wheel (3-axis, 4-button)"
+msgstr "æ–¹å‘盤 (3 軸, 4 鵿–æ¡¿)"
+
+msgid "CH Flightstick"
+msgstr "CH Flightstick"
+
+msgid "CH Flightstick + CH Pedals"
+msgstr "CH Flightstick + CH Pedals"
+
+msgid "CH Flightstick + CH Pedals Pro"
+msgstr "CH Flightstick + CH Pedals Pro"
+
msgid "CH Flightstick Pro"
msgstr "CH Flightstick Pro"
msgid "CH Flightstick Pro + CH Pedals"
msgstr "CH Flightstick Pro + CH Pedals"
+msgid "CH Flightstick Pro + CH Pedals Pro"
+msgstr "CH Flightstick Pro + CH Pedals Pro"
+
+msgid "CH Virtual Pilot"
+msgstr "CH Virtual Pilot"
+
+msgid "CH Virtual Pilot + CH Pedals"
+msgstr "CH Virtual Pilot + CH Pedals"
+
+msgid "CH Virtual Pilot + CH Pedals Pro"
+msgstr "CH Virtual Pilot + CH Pedals Pro"
+
+msgid "CH Virtual Pilot Pro"
+msgstr "CH Virtual Pilot Pro"
+
+msgid "CH Virtual Pilot Pro + CH Pedals"
+msgstr "CH Virtual Pilot Pro + CH Pedals"
+
+msgid "CH Virtual Pilot Pro + CH Pedals Pro"
+msgstr "CH Virtual Pilot Pro + CH Pedals Pro"
+
msgid "Microsoft SideWinder Pad"
msgstr "Microsoft SideWinder Pad"
@@ -888,26 +975,11 @@ msgstr "Thrustmaster Flight Control System"
msgid "Thrustmaster FCS + Rudder Control System"
msgstr "Thrustmaster FCS + Rudder Control System"
-msgid "2-button gamepad(s)"
-msgstr "2 éµé戲手柄"
+msgid "Thrustmaster Formula T1/T2 with adapter"
+msgstr "附轉æ¥å™¨ Thrustmaster Formula T1/T2"
-msgid "2-button flight yoke"
-msgstr "2 æŒ‰éˆ•é£›è¡Œæ–æ¡¿"
-
-msgid "4-button gamepad"
-msgstr "4 éµé戲手柄"
-
-msgid "4-button flight yoke"
-msgstr "4 æŒ‰éˆ•é£›è¡Œæ–æ¡¿"
-
-msgid "2-button flight yoke with throttle"
-msgstr "2 æŒ‰éˆ•é£›è¡Œæ–æ¡¿ï¼Œå«ç¯€æµé–¥"
-
-msgid "4-button flight yoke with throttle"
-msgstr "4 æŒ‰éˆ•é£›è¡Œæ–æ¡¿ï¼Œå«ç¯€æµé–¥"
-
-msgid "Win95 Steering Wheel (3-axis, 4-button)"
-msgstr "Win95 æ–¹å‘盤 (3 軸, 4 鵿–æ¡¿)"
+msgid "Thrustmaster Formula T1/T2 without adapter"
+msgstr "ä¸é™„轉æ¥å™¨ Thrustmaster Formula T1/T2"
msgid "None"
msgstr "ç„¡"
@@ -1120,10 +1192,10 @@ msgid "Choose directory"
msgstr "鏿“‡ç›®éŒ„"
msgid "Choose configuration file"
-msgstr "鏿“‡çµ„態檔案"
+msgstr "鏿“‡è¨å®æª”"
msgid "86Box configuration files (86box.cfg)"
-msgstr "86Box é…置檔案 (86box.cfg)"
+msgstr "86Box è¨å®æª” (86box.cfg)"
msgid "Configuration read failed"
msgstr "è¨å®è®€å–失敗"
@@ -1147,22 +1219,22 @@ msgid "This will help you add a new system to 86Box."
msgstr "é€™å°‡æœ‰å©æ–¼æ‚¨åœ¨ 86Box ä¸å å…¥æ–°ç³»çµ±ă€‚"
msgid "New configuration"
-msgstr "æ–°é…ç½®"
+msgstr "æ–°å¢è¨å®"
msgid "Complete"
msgstr "完æˆ"
msgid "The wizard will now launch the configuration for the new system."
-msgstr "ç²¾éˆç¾åœ¨æœƒå•Ÿå‹•新系統ç„çµ„æ…‹ă€‚"
+msgstr "ç²¾éˆç¾åœ¨æœƒå•Ÿå‹•新系統ç„è¨å®ă€‚"
msgid "Use existing configuration"
-msgstr "ä½¿ç”¨ç¾æœ‰çµ„æ…‹"
+msgstr "ä½¿ç”¨ç¾æœ‰è¨å®"
msgid "Type some notes here"
-msgstr "在æ¤è¼¸å…¥ä¸€äº›å‚™è¨»"
+msgstr "在æ¤è¼¸å…¥å‚™è¨»"
msgid "Paste the contents of the existing configuration file into the box below."
-msgstr "å°‡ç¾æœ‰çµ„態檔案ç„內容貼到下é¢ç„æ–¹å¡ä¸ă€‚"
+msgstr "å°‡ç¾æœ‰è¨å®æª”ç„內容貼到下é¢ç„æ–¹å¡ä¸ă€‚"
msgid "Load configuration from file"
msgstr "徿ª”案載入è¨å®"
@@ -1225,7 +1297,7 @@ msgid "&Open folder..."
msgstr "開啟資料夾(&O)..."
msgid "Open p&rinter tray..."
-msgstr "打開å°è¡¨æ©Ÿæ‰˜ç›¤(&R)..."
+msgstr "開啟å°è¡¨æ©Ÿæ‰˜ç›¤(&R)..."
msgid "Set &icon..."
msgstr "è¨å®åœ–示(&I)..."
@@ -1782,11 +1854,14 @@ msgstr "é…æ¥å™¨:"
msgid "VDE Socket:"
msgstr "VDE æ’座:"
+msgid "TAP Bridge Device:"
+msgstr ""
+
msgid "86Box Unit Tester"
msgstr "86Box 單元測試器"
msgid "Novell NetWare 2.x Key Card"
-msgstr "Novell NetWare 2.x 密鑰å¡"
+msgstr "Novell NetWare 2.x 金鑰å¡"
msgid "Serial port passthrough 1"
msgstr "åºåˆ—åŸ ç„ç›´é€ 1"
@@ -1819,7 +1894,7 @@ msgid "PS/55 Keyboard"
msgstr "PS/55 éµç›¤"
msgid "Keys"
-msgstr "鑰匙"
+msgstr "按éµ"
msgid "Logitech/Microsoft Bus Mouse"
msgstr "Logitech/Microsoft åŒ¯æµæ’æ»‘é¼ "
@@ -1849,7 +1924,7 @@ msgid "PS/2 QuickPort Mouse"
msgstr "PS/2 QuickPort æ»‘é¼ "
msgid "3M MicroTouch (Serial)"
-msgstr "3M MicroTouch (åºåˆ—)"
+msgstr "3M MicroTouch (åºåˆ—åŸ )"
msgid "Default Baud rate"
msgstr "é è¨æ³¢ç‰¹ç‡"
@@ -1936,7 +2011,7 @@ msgid "Serial port IRQ"
msgstr "åºåˆ—åŸ ç„ IRQ"
msgid "Parallel port IRQ"
-msgstr "å¹³è¡ŒåŸ ç„ IRQ"
+msgstr "ä¸¦åˆ—åŸ ç„ IRQ"
msgid "BIOS Revision"
msgstr "BIOS 版本"
@@ -2074,7 +2149,7 @@ msgid "Buttons"
msgstr "按鈕"
msgid "Serial Port"
-msgstr "ä¸²åˆ—åŸ "
+msgstr "åºåˆ—åŸ "
msgid "RTS toggle"
msgstr "RTS 切æ›"
@@ -2620,13 +2695,13 @@ msgid "Protection Dongle for Savage Quest"
msgstr "用於 Savage Quest ç„ä¿è·å 密狗"
msgid "Serial Passthrough Device"
-msgstr "åºåˆ—åŸ ç„ç›´é€è£ç½®"
+msgstr "åºåˆ—åŸ ç›´é€è£ç½®"
msgid "Passthrough Mode"
msgstr "ç›´é€æ¨¡å¼"
msgid "Host Serial Device"
-msgstr "主機串列è£ç½®"
+msgstr "主機åºåˆ—è£ç½®"
msgid "Name of pipe"
msgstr "管é“å稱"
@@ -2647,7 +2722,7 @@ msgid "Named Pipe (Client)"
msgstr "已命åç®¡é“ (用戶端)"
msgid "Host Serial Passthrough"
-msgstr "主機åºåˆ—åŸ ç„ç›´é€"
+msgstr "主機åºåˆ—åŸ ç›´é€"
msgid "E&ject %1"
msgstr "退出 %1(&J)"
@@ -2755,7 +2830,7 @@ msgid "Shader Manager"
msgstr "著色器管ç†å“¡"
msgid "Shader Configuration"
-msgstr "著色器組態"
+msgstr "著色器è¨å®"
msgid "Add"
msgstr "æ–°å¢"
@@ -2923,7 +2998,7 @@ msgid "Update check"
msgstr "更新檢查"
msgid "Checking for updates..."
-msgstr "檢查更新..."
+msgstr "æ£åœ¨æª¢æŸ¥æ›´æ–°..."
msgid "86Box Update"
msgstr "86Box æ›´æ–°"
@@ -2941,7 +3016,7 @@ msgid "The virtual machine \"%1\"'s process has unexpectedly terminated with exi
msgstr "虛擬機 \"%1\" ç„進程以退出代碼 %2 æ„外終æ¢ă€‚"
msgid "The system will not be added."
-msgstr "ç³»çµ±å°‡ä¸æœƒæ–°å¢ă€‚"
+msgstr "ç³»çµ±å°‡ä¸æœƒè¢«æ–°å¢ă€‚"
msgid "&Update mouse every CPU frame"
msgstr "æ¯ CPU å¹€æ›´æ–°æ»‘é¼ (&U)"
@@ -2953,7 +3028,7 @@ msgid "Saturation"
msgstr "飽和度"
msgid "Contrast"
-msgstr "å°æ¯”"
+msgstr "å°æ¯”度"
msgid "Brightness"
msgstr "亮度"
@@ -2971,7 +3046,7 @@ msgid "Monitor EDID"
msgstr "ç›£è¦–å™¨ç„ EDID"
msgid "Export..."
-msgstr "出å£..."
+msgstr "匯出..."
msgid "Export EDID"
msgstr "匯出 EDID"
@@ -2989,7 +3064,10 @@ msgid "Color scheme"
msgstr "é…色方案"
msgid "Light"
-msgstr "å…‰"
+msgstr "亮色"
msgid "Dark"
-msgstr "黑æ—"
+msgstr "æ—色"
+
+msgid "Search:"
+msgstr "æœå°‹:"
diff --git a/src/qt/qt.c b/src/qt/qt.c
index e19cf1aac..4da6a7c57 100644
--- a/src/qt/qt.c
+++ b/src/qt/qt.c
@@ -6,8 +6,6 @@
*
* This file is part of the 86Box distribution.
*
- *
- *
* Authors: Joakim L. Gilje
*
* Copyright 2021 Joakim L. Gilje
diff --git a/src/qt/qt_about.cpp b/src/qt/qt_about.cpp
index 6c34c2add..a85ab54d5 100644
--- a/src/qt/qt_about.cpp
+++ b/src/qt/qt_about.cpp
@@ -8,8 +8,6 @@
*
* About dialog module.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
* Teemu Korhonen
diff --git a/src/qt/qt_cgasettingsdialog.ui b/src/qt/qt_cgasettingsdialog.ui
index 7367b2099..dc5acb0fc 100644
--- a/src/qt/qt_cgasettingsdialog.ui
+++ b/src/qt/qt_cgasettingsdialog.ui
@@ -15,84 +15,15 @@
- QLayout::SizeConstraint::SetFixedSize
+ QLayout::SetFixedSize
- -
-
-
- -100
-
-
- 100
-
-
- Qt::Orientation::Horizontal
-
-
-
- -
-
-
- 360
-
-
- 100
-
-
- Qt::Orientation::Horizontal
-
-
-
-
-
+
Hue
- -
-
-
- -50
-
-
- 50
-
-
- Qt::Orientation::Horizontal
-
-
-
- -
-
-
- Qt::Orientation::Horizontal
-
-
- QDialogButtonBox::StandardButton::Apply|QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok|QDialogButtonBox::StandardButton::Reset
-
-
-
- -
-
-
- 360
-
-
- 100
-
-
- Qt::Orientation::Horizontal
-
-
-
- -
-
-
- Contrast
-
-
-
-
@@ -102,31 +33,100 @@
360
- Qt::Orientation::Horizontal
-
-
-
- -
-
-
- Sharpness
+ Qt::Horizontal
-
-
+
Saturation
+ -
+
+
+ 360
+
+
+ 100
+
+
+ Qt::Horizontal
+
+
+
-
-
+
Brightness
+ -
+
+
+ -100
+
+
+ 100
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Contrast
+
+
+
+ -
+
+
+ 360
+
+
+ 100
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Sharpness
+
+
+
+ -
+
+
+ -50
+
+
+ 50
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+ QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok|QDialogButtonBox::Reset
+
+
+
diff --git a/src/qt/qt_deviceconfig.cpp b/src/qt/qt_deviceconfig.cpp
index 33572c99c..880539fe4 100644
--- a/src/qt/qt_deviceconfig.cpp
+++ b/src/qt/qt_deviceconfig.cpp
@@ -8,8 +8,6 @@
*
* Device configuration UI code.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
*
diff --git a/src/qt/qt_downloader.cpp b/src/qt/qt_downloader.cpp
index 49f8a2e55..d88eca57a 100644
--- a/src/qt/qt_downloader.cpp
+++ b/src/qt/qt_downloader.cpp
@@ -8,13 +8,10 @@
*
* Downloader module
*
- *
- *
* Authors: cold-brewed
*
* Copyright 2024 cold-brewed
*/
-
#include
#include
#include
diff --git a/src/qt/qt_downloader.hpp b/src/qt/qt_downloader.hpp
index 2164ba59c..942da3c49 100644
--- a/src/qt/qt_downloader.hpp
+++ b/src/qt/qt_downloader.hpp
@@ -8,13 +8,10 @@
*
* Header for the downloader module
*
- *
- *
* Authors: cold-brewed
*
* Copyright 2024 cold-brewed
*/
-
#ifndef QT_DOWNLOADER_HPP
#define QT_DOWNLOADER_HPP
diff --git a/src/qt/qt_filefield.cpp b/src/qt/qt_filefield.cpp
index 9272e31a1..aeda899aa 100644
--- a/src/qt/qt_filefield.cpp
+++ b/src/qt/qt_filefield.cpp
@@ -8,8 +8,6 @@
*
* File field widget.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
*
diff --git a/src/qt/qt_filefield.ui b/src/qt/qt_filefield.ui
index 3a1e3e753..91000af50 100644
--- a/src/qt/qt_filefield.ui
+++ b/src/qt/qt_filefield.ui
@@ -51,7 +51,7 @@
- &Specify...
+ Browse...
diff --git a/src/qt/qt_harddiskdialog.cpp b/src/qt/qt_harddiskdialog.cpp
index ae1c60971..66ab3e59b 100644
--- a/src/qt/qt_harddiskdialog.cpp
+++ b/src/qt/qt_harddiskdialog.cpp
@@ -8,8 +8,6 @@
*
* Hard disk dialog code.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
*
diff --git a/src/qt/qt_harddiskdialog.ui b/src/qt/qt_harddiskdialog.ui
index e2dea0220..6de39375f 100644
--- a/src/qt/qt_harddiskdialog.ui
+++ b/src/qt/qt_harddiskdialog.ui
@@ -33,7 +33,7 @@
-
-
+
File name:
@@ -43,7 +43,7 @@
-
-
+
Cylinders:
@@ -66,7 +66,7 @@
-
-
+
Heads:
@@ -92,7 +92,7 @@
-
-
+
Sectors:
@@ -118,7 +118,7 @@
-
-
+
Size (MB):
@@ -141,7 +141,7 @@
-
-
+
Type:
@@ -155,7 +155,7 @@
-
-
+
Bus:
@@ -169,7 +169,7 @@
-
-
+
Channel:
@@ -183,7 +183,7 @@
-
-
+
Model:
diff --git a/src/qt/qt_harddrive_common.cpp b/src/qt/qt_harddrive_common.cpp
index b0c8e0ea9..9e48a627e 100644
--- a/src/qt/qt_harddrive_common.cpp
+++ b/src/qt/qt_harddrive_common.cpp
@@ -8,8 +8,6 @@
*
* Common storage devices module.
*
- *
- *
* Authors: Joakim L. Gilje
*
* Copyright 2021 Joakim L. Gilje
diff --git a/src/qt/qt_joystickconfiguration.cpp b/src/qt/qt_joystickconfiguration.cpp
index 2d8910f4a..7011a2882 100644
--- a/src/qt/qt_joystickconfiguration.cpp
+++ b/src/qt/qt_joystickconfiguration.cpp
@@ -8,8 +8,6 @@
*
* Joystick configuration UI module.
*
- *
- *
* Authors: Joakim L. Gilje
*
* Copyright 2021 Joakim L. Gilje
diff --git a/src/qt/qt_joystickconfiguration.ui b/src/qt/qt_joystickconfiguration.ui
index 139b99ca5..f5f2773b3 100644
--- a/src/qt/qt_joystickconfiguration.ui
+++ b/src/qt/qt_joystickconfiguration.ui
@@ -32,7 +32,7 @@
-
-
+
Device
diff --git a/src/qt/qt_keybind.cpp b/src/qt/qt_keybind.cpp
index e6e87a5e2..1862f4aa8 100644
--- a/src/qt/qt_keybind.cpp
+++ b/src/qt/qt_keybind.cpp
@@ -8,8 +8,6 @@
*
* Keybind dialog
*
- *
- *
* Authors: Cathode Ray Dude
* Cacodemon345
*
diff --git a/src/qt/qt_machinestatus.cpp b/src/qt/qt_machinestatus.cpp
index 6ff25d60f..b9d4c4385 100644
--- a/src/qt/qt_machinestatus.cpp
+++ b/src/qt/qt_machinestatus.cpp
@@ -8,8 +8,6 @@
*
* Joystick configuration UI module.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
*
diff --git a/src/qt/qt_main.cpp b/src/qt/qt_main.cpp
index d667cfdb9..90b4b6e59 100644
--- a/src/qt/qt_main.cpp
+++ b/src/qt/qt_main.cpp
@@ -8,7 +8,6 @@
*
* Main entry point module
*
- *
* Authors: Joakim L. Gilje
* Cacodemon345
* Teemu Korhonen
@@ -98,6 +97,7 @@ extern "C" {
#include <86box/timer.h>
#include <86box/nvr.h>
extern int qt_nvr_save(void);
+extern void exit_pause(void);
bool cpu_thread_running = false;
}
@@ -442,7 +442,7 @@ main_thread_fn()
int frames;
QThread::currentThread()->setPriority(QThread::HighestPriority);
- plat_set_thread_name(nullptr, "main_thread_fn");
+ plat_set_thread_name(nullptr, "main_thread");
framecountx = 0;
// title_update = 1;
uint64_t old_time = elapsed_timer.elapsed();
@@ -459,32 +459,34 @@ main_thread_fn()
drawits += static_cast(new_time - old_time);
old_time = new_time;
if (drawits > 0 && !dopause) {
- /* Yes, so do one frame now. */
- drawits -= force_10ms ? 10 : 1;
- if (drawits > 50)
- drawits = 0;
+ /* Yes, so run frames now. */
+ do {
+#ifdef USE_INSTRUMENT
+ uint64_t start_time = elapsed_timer.nsecsElapsed();
+#endif
+ /* Run a block of code. */
+ pc_run();
#ifdef USE_INSTRUMENT
- uint64_t start_time = elapsed_timer.nsecsElapsed();
+ if (instru_enabled) {
+ uint64_t elapsed_us = (elapsed_timer.nsecsElapsed() - start_time) / 1000;
+ uint64_t total_elapsed_ms = (uint64_t) ((double) tsc / cpu_s->rspeed * 1000);
+ printf("[instrument] %llu, %llu\n", total_elapsed_ms, elapsed_us);
+ if (instru_run_ms && total_elapsed_ms >= instru_run_ms)
+ break;
+ }
#endif
- /* Run a block of code. */
- pc_run();
-
-#ifdef USE_INSTRUMENT
- if (instru_enabled) {
- uint64_t elapsed_us = (elapsed_timer.nsecsElapsed() - start_time) / 1000;
- uint64_t total_elapsed_ms = (uint64_t) ((double) tsc / cpu_s->rspeed * 1000);
- printf("[instrument] %llu, %llu\n", total_elapsed_ms, elapsed_us);
- if (instru_run_ms && total_elapsed_ms >= instru_run_ms)
- break;
- }
-#endif
- /* Every 2 emulated seconds we save the machine status. */
- if (++frames >= (force_10ms ? 200 : 2000) && nvr_dosave) {
- qt_nvr_save();
- nvr_dosave = 0;
- frames = 0;
- }
+ /* Every 2 emulated seconds we save the machine status. */
+ if (++frames >= (force_10ms ? 200 : 2000) && nvr_dosave) {
+ qt_nvr_save();
+ nvr_dosave = 0;
+ frames = 0;
+ }
+
+ drawits -= force_10ms ? 10 : 1;
+ if (drawits > 50)
+ drawits = 0;
+ } while (drawits > 0);
} else {
/* Just so we dont overload the host OS. */
@@ -562,7 +564,6 @@ main(int argc, char *argv[])
if (QFile(QApplication::applicationDirPath() + "/opengl32.dll").exists()) {
qputenv("QT_OPENGL_DLL", QFileInfo(QApplication::applicationDirPath() + "/opengl32.dll").absoluteFilePath().toUtf8());
}
- QApplication::setAttribute(Qt::AA_NativeWindows);
if (!util::isWindowsLightTheme()) {
QFile f(":qdarkstyle/dark/darkstyle.qss");
@@ -754,6 +755,14 @@ main(int argc, char *argv[])
discord_load();
#endif
+#ifdef Q_OS_WINDOWS
+ // On Win32 the accuracy of Sleep() depends on the timer resolution, which can be set by calling timeBeginPeriod
+ // https://learn.microsoft.com/en-us/windows/win32/api/timeapi/nf-timeapi-timebeginperiod
+ exit_pause();
+ timeBeginPeriod(1);
+ atexit([] () -> void { timeEndPeriod(1); });
+#endif
+
main_window = new MainWindow();
if (startMaximized) {
main_window->showMaximized();
@@ -894,6 +903,8 @@ main(int argc, char *argv[])
/* Initialize the rendering window, or fullscreen. */
QTimer::singleShot(0, &app, [] {
+ plat_set_thread_name(nullptr, "qt_thread");
+
#ifdef Q_OS_WINDOWS
extern bool NewDarkMode;
NewDarkMode = util::isWindowsLightTheme();
diff --git a/src/qt/qt_mainwindow.cpp b/src/qt/qt_mainwindow.cpp
index e88bedd90..e41f36c57 100644
--- a/src/qt/qt_mainwindow.cpp
+++ b/src/qt/qt_mainwindow.cpp
@@ -8,8 +8,6 @@
*
* Main window module.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
* Teemu Korhonen
@@ -84,7 +82,6 @@ extern bool cpu_thread_running;
#include
#include
#include
-#include
#include
#include
#include
@@ -932,18 +929,11 @@ MainWindow::closeEvent(QCloseEvent *event)
}
}
if (window_remember) {
- // If maximized, persist the normal (restorable) geometry
- const bool wasMax = isMaximized();
- QRect normal = wasMax ? this->normalGeometry() : this->geometry();
- // Save WINDOW size (not the content widget’s 4:3 box)
- const int chromeHeight = geometry().height() - ui->stackedWidget->height();
- window_w = normal.width();
- window_h = normal.height() - chromeHeight;
- if (window_h < 0)
- window_h = 0;
+ window_w = ui->stackedWidget->width();
+ window_h = ui->stackedWidget->height();
if (!QApplication::platformName().contains("wayland")) {
- window_x = normal.x();
- window_y = normal.y();
+ window_x = this->geometry().x();
+ window_y = this->geometry().y();
}
for (int i = 1; i < MONITORS_NUM; i++) {
if (renderers[i]) {
@@ -1027,68 +1017,31 @@ void MainWindow::updateShortcuts()
seq = QKeySequence::fromString(acc_keys[accID].seq);
ui->actionMute_Unmute->setShortcut(seq);
}
-
-void
-MainWindow::applyContentLayoutForCurrentState()
-{
- auto applyFill = [this](const QRect& r){
- ui->stackedWidget->setGeometry(r);
- ui->stackedWidget->onResize(r.width(), r.height());
- if (monitors[0].mon_scrnsz_x != r.width() || monitors[0].mon_scrnsz_y != r.height()) {
- monitors[0].mon_scrnsz_x = r.width();
- monitors[0].mon_scrnsz_y = r.height();
- plat_resize_request(r.width(), r.height(), 0);
- }
- };
-
- auto apply43 = [this](const QRect& area){
- int areaW = area.width();
- int areaH = area.height();
- if (areaW <= 0 || areaH <= 0) return;
-
- int targetW = areaW;
- int targetH = (areaW * 3) / 4;
- if (targetH > areaH) {
- targetH = areaH;
- targetW = (areaH * 4) / 3;
- }
-
- const int x = area.x() + (areaW - targetW) / 2;
- const int y = area.y() + (areaH - targetH) / 2;
-
- ui->stackedWidget->setGeometry(x, y, targetW, targetH);
- ui->stackedWidget->onResize(targetW, targetH);
-
- if (monitors[0].mon_scrnsz_x != targetW || monitors[0].mon_scrnsz_y != targetH) {
- monitors[0].mon_scrnsz_x = targetW;
- monitors[0].mon_scrnsz_y = targetH;
- plat_resize_request(targetW, targetH, 0);
- }
- };
-
- QWidget *cw = this->centralWidget();
- if (!cw) return;
-
- const QRect area = cw->contentsRect();
-
- // Fullscreen always fills (legacy behavior)
- if (video_fullscreen) { applyFill(area); return; }
-
- // Windowed: enforce 4:3 only when requested, otherwise fill
- if (force_43 > 0) apply43(area);
- else applyFill(area);
-}
-
+
void
MainWindow::resizeEvent(QResizeEvent *event)
{
+#ifdef MOVE_WINDOW
//qDebug() << pos().x() + event->size().width();
//qDebug() << pos().y() + event->size().height();
-
- // Always let QMainWindow do its layout first
- QMainWindow::resizeEvent(event);
+ if (vid_resize == 1 || video_fullscreen)
+ return;
- applyContentLayoutForCurrentState();
+ int newX = pos().x();
+ int newY = pos().y();
+
+ if (((frameGeometry().x() + event->size().width() + 1) > util::screenOfWidget(this)->availableGeometry().right())) {
+ //move(util::screenOfWidget(this)->availableGeometry().right() - size().width() - 1, pos().y());
+ newX = util::screenOfWidget(this)->availableGeometry().right() - frameGeometry().width() - 1;
+ if (newX < 1) newX = 1;
+ }
+
+ if (((frameGeometry().y() + event->size().height() + 1) > util::screenOfWidget(this)->availableGeometry().bottom())) {
+ newY = util::screenOfWidget(this)->availableGeometry().bottom() - frameGeometry().height() - 1;
+ if (newY < 1) newY = 1;
+ }
+ move(newX, newY);
+#endif
}
void
@@ -1182,25 +1135,12 @@ MainWindow::showEvent(QShowEvent *event)
monitors[0].mon_scrnsz_y = fixed_size_y;
}
if (window_remember && vid_resize == 1) {
- const QSize target(window_w, window_h);
- const QSize prevMin = ui->stackedWidget->minimumSize();
- const QSize prevMax = ui->stackedWidget->maximumSize();
-
- ui->stackedWidget->setMinimumSize(target);
- ui->stackedWidget->setMaximumSize(target);
+ ui->stackedWidget->setFixedSize(window_w, window_h);
#ifndef Q_OS_MACOS
QApplication::processEvents();
#endif
this->adjustSize();
-
- ui->stackedWidget->setMinimumSize(prevMin);
- ui->stackedWidget->setMaximumSize(prevMax);
- ui->stackedWidget->resize(target);
}
-
- QTimer::singleShot(0, this, [this]{
- applyContentLayoutForCurrentState();
- });
}
void
@@ -1503,7 +1443,6 @@ MainWindow::on_actionFullscreen_triggered()
{
if (video_fullscreen > 0) {
showNormal();
- QTimer::singleShot(0, this, [this]{ applyContentLayoutForCurrentState(); });
ui->menubar->show();
if (!hide_status_bar)
ui->statusbar->show();
@@ -2140,8 +2079,15 @@ void
MainWindow::on_actionForce_4_3_display_ratio_triggered()
{
video_toggle_option(ui->actionForce_4_3_display_ratio, &force_43);
+ if (vid_resize) {
+ const auto widget = ui->stackedWidget->currentWidget();
+ ui->stackedWidget->onResize(widget->width(), widget->height());
- QTimer::singleShot(0, this, [this]{ applyContentLayoutForCurrentState(); });
+ for (int i = 1; i < MONITORS_NUM; i++) {
+ if (renderers[i])
+ renderers[i]->onResize(renderers[i]->width(), renderers[i]->height());
+ }
+ }
}
void
@@ -2362,7 +2308,14 @@ MainWindow::changeEvent(QEvent *event)
{
#ifdef Q_OS_WINDOWS
if (event->type() == QEvent::LanguageChange) {
+ auto size = this->centralWidget()->size();
QApplication::setFont(QFont(ProgSettings::getFontName(lang_id), 9));
+ QApplication::processEvents();
+ main_window->centralWidget()->setFixedSize(size);
+ QApplication::processEvents();
+ if (vid_resize == 1) {
+ main_window->centralWidget()->setFixedSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX);
+ }
}
#endif
QWidget::changeEvent(event);
@@ -2510,3 +2463,4 @@ void MainWindow::on_actionCGA_composite_settings_triggered()
isNonPause = false;
config_save();
}
+
diff --git a/src/qt/qt_mainwindow.hpp b/src/qt/qt_mainwindow.hpp
index 77e8fe7c4..26585ddaf 100644
--- a/src/qt/qt_mainwindow.hpp
+++ b/src/qt/qt_mainwindow.hpp
@@ -178,9 +178,6 @@ private:
std::unique_ptr status;
std::shared_ptr mm;
- static bool s_adjustingForce43; // guard against recursion
- void applyContentLayoutForCurrentState();
-
void updateShortcuts();
void processKeyboardInput(bool down, uint32_t keycode);
#ifdef Q_OS_MACOS
diff --git a/src/qt/qt_mainwindow.ui b/src/qt/qt_mainwindow.ui
index ca7aca2ca..45c4f70ae 100644
--- a/src/qt/qt_mainwindow.ui
+++ b/src/qt/qt_mainwindow.ui
@@ -260,7 +260,7 @@
- Qt::ContextMenuPolicy::PreventContextMenu
+ Qt::PreventContextMenu
toolBar
@@ -272,7 +272,7 @@
false
- Qt::ToolBarArea::TopToolBarArea
+ Qt::TopToolBarArea
@@ -281,7 +281,7 @@
- Qt::ToolButtonStyle::ToolButtonIconOnly
+ Qt::ToolButtonIconOnly
false
@@ -396,7 +396,7 @@
E&xit
- QAction::MenuRole::QuitRole
+ QAction::QuitRole
@@ -408,7 +408,7 @@
&Settings...
- QAction::MenuRole::NoRole
+ QAction::NoRole
false
@@ -710,7 +710,7 @@
false
- QAction::MenuRole::AboutQtRole
+ QAction::AboutQtRole
@@ -718,7 +718,7 @@
&About 86Box...
- QAction::MenuRole::AboutRole
+ QAction::AboutRole
@@ -771,7 +771,7 @@
&Preferences...
- QAction::MenuRole::PreferencesRole
+ QAction::PreferencesRole
@@ -844,7 +844,7 @@
Renderer &options...
- QAction::MenuRole::NoRole
+ QAction::NoRole
@@ -1053,7 +1053,7 @@
RendererStack
- QStackedWidget
+ QWidget
1
diff --git a/src/qt/qt_mediahistorymanager.cpp b/src/qt/qt_mediahistorymanager.cpp
index ff9f1cf1c..a7892af31 100644
--- a/src/qt/qt_mediahistorymanager.cpp
+++ b/src/qt/qt_mediahistorymanager.cpp
@@ -8,13 +8,10 @@
*
* Media history management module
*
- *
- *
* Authors: cold-brewed
*
* Copyright 2022 The 86Box development team
*/
-
#include
#include
#include
diff --git a/src/qt/qt_mediahistorymanager.hpp b/src/qt/qt_mediahistorymanager.hpp
index 92b5939d3..fcde55fa8 100644
--- a/src/qt/qt_mediahistorymanager.hpp
+++ b/src/qt/qt_mediahistorymanager.hpp
@@ -8,13 +8,10 @@
*
* Header for the media history management module
*
- *
- *
* Authors: cold-brewed
*
* Copyright 2022 The 86Box development team
*/
-
#ifndef QT_MEDIAHISTORYMANAGER_HPP
#define QT_MEDIAHISTORYMANAGER_HPP
diff --git a/src/qt/qt_mediamenu.cpp b/src/qt/qt_mediamenu.cpp
index b42812ad6..e63327fd8 100644
--- a/src/qt/qt_mediamenu.cpp
+++ b/src/qt/qt_mediamenu.cpp
@@ -8,8 +8,6 @@
*
* Media menu UI module.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
* Teemu Korhonen
diff --git a/src/qt/qt_midi.cpp b/src/qt/qt_midi.cpp
index 2ea8ad3b1..40fbfb460 100644
--- a/src/qt/qt_midi.cpp
+++ b/src/qt/qt_midi.cpp
@@ -5,21 +5,25 @@ extern "C" {
void
plat_midi_play_msg(uint8_t *msg)
{
+ //
}
void
plat_midi_play_sysex(uint8_t *sysex, unsigned int len)
{
+ //
}
void
plat_midi_input_init(void)
{
+ //
}
void
plat_midi_input_close(void)
{
+ //
}
int
@@ -31,11 +35,13 @@ plat_midi_write(uint8_t val)
void
plat_midi_init()
{
+ //
}
void
plat_midi_close()
{
+ //
}
int
@@ -63,4 +69,5 @@ plat_midi_in_get_dev_name(int num, char *s)
s[0] = ' ';
s[1] = 0;
}
+
}
diff --git a/src/qt/qt_models_common.cpp b/src/qt/qt_models_common.cpp
index ed6aeaa7d..0f1ce81c9 100644
--- a/src/qt/qt_models_common.cpp
+++ b/src/qt/qt_models_common.cpp
@@ -8,8 +8,6 @@
*
* Common storage devices module.
*
- *
- *
* Authors: Joakim L. Gilje
*
* Copyright 2021 Joakim L. Gilje
diff --git a/src/qt/qt_models_common.hpp b/src/qt/qt_models_common.hpp
index 98674a68f..7e116523f 100644
--- a/src/qt/qt_models_common.hpp
+++ b/src/qt/qt_models_common.hpp
@@ -3,5 +3,5 @@
class QString;
class QAbstractItemModel;
namespace Models {
-int AddEntry(QAbstractItemModel *model, const QString &displayRole, int userRole);
+ int AddEntry(QAbstractItemModel *model, const QString &displayRole, int userRole);
};
diff --git a/src/qt/qt_newfloppydialog.cpp b/src/qt/qt_newfloppydialog.cpp
index d9ae09d0c..6712b22f3 100644
--- a/src/qt/qt_newfloppydialog.cpp
+++ b/src/qt/qt_newfloppydialog.cpp
@@ -8,8 +8,6 @@
*
* Common storage devices module.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
* Teemu Korhonen
diff --git a/src/qt/qt_newfloppydialog.ui b/src/qt/qt_newfloppydialog.ui
index c0437d810..98bfd8be4 100644
--- a/src/qt/qt_newfloppydialog.ui
+++ b/src/qt/qt_newfloppydialog.ui
@@ -27,7 +27,7 @@
-
-
+
File name:
@@ -44,7 +44,7 @@
-
-
+
Disk size:
diff --git a/src/qt/qt_openglrenderer.cpp b/src/qt/qt_openglrenderer.cpp
index 492acb630..c5d1d0484 100644
--- a/src/qt/qt_openglrenderer.cpp
+++ b/src/qt/qt_openglrenderer.cpp
@@ -8,8 +8,6 @@
*
* OpenGL renderer for Qt, mostly ported over from PCem.
*
- *
- *
* Authors: Teemu Korhonen
* Cacodemon345
* bit
@@ -20,7 +18,6 @@
* Copyright 2017 Bit
* Copyright 2017-2020 Sarah Walker
*/
-
#include "qt_renderercommon.hpp"
#include "qt_mainwindow.hpp"
@@ -45,6 +42,8 @@ extern MainWindow* main_window;
#include
#include
+#include
+#define HAVE_STDARG_H
#include "qt_openglrenderer.hpp"
#include "qt_openglshadermanagerdialog.hpp"
@@ -155,7 +154,7 @@ ogl3_log(const char *fmt, ...)
if (ogl3_do_log) {
va_start(ap, fmt);
- ogl3_log_ex(fmt, ap);
+ pclog_ex(fmt, ap);
va_end(ap);
}
}
@@ -222,7 +221,14 @@ OpenGLRenderer::compile_shader(GLenum shader_type, const char *prepend, const ch
snprintf(version, 49, "%s\n", versionRegex.match(progSource).captured(1).toLatin1().data());
progSource.remove(versionRegex);
} else {
- snprintf(version, 49, "%s\n", this->glslVersion.toLatin1().data());
+ int ver = gl_version[0] * 100 + gl_version[1] * 10;
+ if (ver == 300)
+ ver = 130;
+ else if (ver == 310)
+ ver = 140;
+ else if (ver == 320)
+ ver = 150;
+ snprintf(version, 49, "#version %d\n", ver);
}
/* Remove parameter lines. */
@@ -476,8 +482,8 @@ OpenGLRenderer::create_fbo(struct shader_fbo *fbo)
void
OpenGLRenderer::setup_fbo(struct shader *shader, struct shader_fbo *fbo)
{
- fbo->texture.internal_format = GL_RGBA8;
- fbo->texture.format = GL_RGBA;
+ fbo->texture.internal_format = GL_RGB8;
+ fbo->texture.format = GL_RGB;
fbo->texture.min_filter = fbo->texture.mag_filter = shader->filter_linear ? GL_LINEAR : GL_NEAREST;
fbo->texture.width = 2048;
fbo->texture.height = 2048;
@@ -492,10 +498,10 @@ OpenGLRenderer::setup_fbo(struct shader *shader, struct shader_fbo *fbo)
fbo->texture.wrap_mode = GL_CLAMP_TO_BORDER;
fbo->srgb = 0;
if (shader->srgb_framebuffer) {
- fbo->texture.internal_format = GL_SRGB8_ALPHA8;
+ fbo->texture.internal_format = GL_SRGB8;
fbo->srgb = 1;
} else if (shader->float_framebuffer) {
- fbo->texture.internal_format = GL_RGBA32F;
+ fbo->texture.internal_format = GL_RGB32F;
fbo->texture.type = GL_FLOAT;
}
@@ -589,7 +595,7 @@ load_texture(const char *f, struct shader_texture *tex)
width = img.size().width();
height = img.size().height();
- img.convertTo(QImage::Format_RGBA8888);
+ img.convertTo(QImage::Format_RGB888);
const GLubyte *rgb = img.constBits();
@@ -610,8 +616,8 @@ load_texture(const char *f, struct shader_texture *tex)
tex->width = width;
tex->height = height;
- tex->internal_format = GL_RGBA8;
- tex->format = GL_RGBA;
+ tex->internal_format = GL_RGB8;
+ tex->format = GL_RGB;
tex->type = GL_UNSIGNED_BYTE;
tex->data = data;
return 1;
@@ -809,7 +815,7 @@ OpenGLRenderer::read_shader_config()
}
OpenGLRenderer::OpenGLRenderer(QWidget *parent)
- : QWindow(parent->windowHandle())
+ : QWindow((QWindow*)nullptr)
, renderTimer(new QTimer(this))
{
connect(renderTimer, &QTimer::timeout, this, [this]() { this->render(); } );
@@ -868,11 +874,11 @@ OpenGLRenderer::initialize()
glw.initializeOpenGLFunctions();
ogl3_log("OpenGL information: [%s] %s (%s)\n", glw.glGetString(GL_VENDOR), glw.glGetString(GL_RENDERER), glw.glGetString(GL_VERSION));
- glsl_version[0] = glsl_version[1] = -1;
- glw.glGetIntegerv(GL_MAJOR_VERSION, &glsl_version[0]);
- glw.glGetIntegerv(GL_MINOR_VERSION, &glsl_version[1]);
- if (glsl_version[0] < 3) {
- throw opengl_init_error(tr("OpenGL version 3.0 or greater is required. Current GLSL version is %1.%2").arg(glsl_version[0]).arg(glsl_version[1]));
+ gl_version[0] = gl_version[1] = -1;
+ glw.glGetIntegerv(GL_MAJOR_VERSION, &gl_version[0]);
+ glw.glGetIntegerv(GL_MINOR_VERSION, &gl_version[1]);
+ if (gl_version[0] < 3) {
+ throw opengl_init_error(tr("OpenGL version 3.0 or greater is required. Current GLSL version is %1.%2").arg(gl_version[0]).arg(gl_version[1]));
}
ogl3_log("Using OpenGL %s\n", glw.glGetString(GL_VERSION));
ogl3_log("Using Shading Language %s\n", glw.glGetString(GL_SHADING_LANGUAGE_VERSION));
@@ -899,8 +905,8 @@ OpenGLRenderer::initialize()
scene_texture.data = NULL;
scene_texture.width = 2048;
scene_texture.height = 2048;
- scene_texture.internal_format = GL_RGBA8;
- scene_texture.format = GL_BGRA;
+ scene_texture.internal_format = GL_RGB8;
+ scene_texture.format = GL_BGR;
scene_texture.type = GL_UNSIGNED_INT_8_8_8_8_REV;
scene_texture.wrap_mode = GL_CLAMP_TO_BORDER;
scene_texture.min_filter = scene_texture.mag_filter = video_filter_method ? GL_LINEAR : GL_NEAREST;
@@ -1151,7 +1157,7 @@ OpenGLRenderer::onBlit(int buf_idx, int x, int y, int w, int h)
if (source.width() != w || source.height() != h) {
glw.glBindTexture(GL_TEXTURE_2D, scene_texture.id);
- glw.glTexImage2D(GL_TEXTURE_2D, 0, (GLenum) QOpenGLTexture::RGBA8_UNorm, w, h, 0, (GLenum) QOpenGLTexture::BGRA, (GLenum) QOpenGLTexture::UInt32_RGBA8_Rev, NULL);
+ glw.glTexImage2D(GL_TEXTURE_2D, 0, (GLenum) QOpenGLTexture::RGB8_UNorm, w, h, 0, (GLenum) QOpenGLTexture::BGRA, (GLenum) QOpenGLTexture::UInt32_RGBA8_Rev, NULL);
glw.glBindTexture(GL_TEXTURE_2D, 0);
}
@@ -1709,12 +1715,12 @@ OpenGLRenderer::render()
plat_tempfile(fn, NULL, (char*)".png");
strcat(path, fn);
- unsigned char *rgb = (unsigned char *) calloc(1, (size_t) width * height * 3);
+ unsigned char *rgb = (unsigned char *) calloc(1, (size_t) width * height * 4);
glw.glFinish();
glw.glReadPixels(window_rect.x, window_rect.y, width, height, GL_RGB, GL_UNSIGNED_BYTE, rgb);
- QImage image(rgb, width, height, QImage::Format_RGB888);
+ QImage image((uchar*)rgb, width, height, width * 3, QImage::Format_RGB888);
image.mirrored(false, true).save(path, "png");
monitors[r_monitor_index].mon_screenshots--;
free(rgb);
@@ -1725,3 +1731,4 @@ OpenGLRenderer::render()
frameCounter++;
context->swapBuffers(this);
}
+
diff --git a/src/qt/qt_openglrenderer.hpp b/src/qt/qt_openglrenderer.hpp
index 776a2f53e..22a8a17d3 100644
--- a/src/qt/qt_openglrenderer.hpp
+++ b/src/qt/qt_openglrenderer.hpp
@@ -8,15 +8,12 @@
*
* Header file for OpenGL renderer
*
- *
- *
* Authors: Teemu Korhonen
* Cacodemon345
*
* Copyright 2022 Teemu Korhonen
* Copyright 2025 Cacodemon345
*/
-
#ifndef QT_OpenGLRenderer_HPP
#define QT_OpenGLRenderer_HPP
@@ -105,7 +102,7 @@ private:
void *unpackBuffer = nullptr;
- int glsl_version[2] = { 0, 0 };
+ int gl_version[2] = { 0, 0 };
void initialize();
void initializeExtensions();
diff --git a/src/qt/qt_openglshaderconfig.cpp b/src/qt/qt_openglshaderconfig.cpp
index 25f9d38a8..66bd9eb52 100644
--- a/src/qt/qt_openglshaderconfig.cpp
+++ b/src/qt/qt_openglshaderconfig.cpp
@@ -27,6 +27,7 @@ OpenGLShaderConfig::OpenGLShaderConfig(QWidget *parent, glslp_t* shader)
for (int i = 0; i < currentShader->num_parameters; i++) {
auto spinBox = new QDoubleSpinBox;
+ spinBox->setDecimals(3);
spinBox->setObjectName(currentShader->parameters[i].id);
spinBox->setRange(currentShader->parameters[i].min, currentShader->parameters[i].max);
spinBox->setValue(currentShader->parameters[i].value);
@@ -82,4 +83,3 @@ void OpenGLShaderConfig::on_OpenGLShaderConfig_accepted()
endblit();
main_window->reloadAllRenderers();
}
-
diff --git a/src/qt/qt_openglshadermanagerdialog.cpp b/src/qt/qt_openglshadermanagerdialog.cpp
index 90f38f40f..ac252c092 100644
--- a/src/qt/qt_openglshadermanagerdialog.cpp
+++ b/src/qt/qt_openglshadermanagerdialog.cpp
@@ -263,4 +263,3 @@ void OpenGLShaderManagerDialog::on_targetFrameRate_valueChanged(int arg1)
if (ui->horizontalSliderFramerate->value() != ui->targetFrameRate->value())
ui->horizontalSliderFramerate->setValue(ui->targetFrameRate->value());
}
-
diff --git a/src/qt/qt_platform.cpp b/src/qt/qt_platform.cpp
index ad49e5e7c..d276dc8bd 100644
--- a/src/qt/qt_platform.cpp
+++ b/src/qt/qt_platform.cpp
@@ -8,8 +8,6 @@
*
* Common platform functions.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
* Teemu Korhonen
@@ -18,7 +16,6 @@
* Copyright 2021-2022 Cacodemon345
* Copyright 2021-2022 Teemu Korhonen
*/
-
#ifdef __HAIKU__
#include
#endif
@@ -453,6 +450,65 @@ plat_munmap(void *ptr, size_t size)
}
extern bool cpu_thread_running;
+
+#ifdef Q_OS_WINDOWS
+/* SetThreadDescription was added in 14393 and SetProcessInformation in 8. Revisit if we ever start requiring 10. */
+static void *kernel32_handle = NULL;
+static HRESULT(WINAPI *pSetThreadDescription)(HANDLE hThread, PCWSTR lpThreadDescription) = NULL;
+static HRESULT(WINAPI *pSetProcessInformation)(HANDLE hProcess, PROCESS_INFORMATION_CLASS ProcessInformationClass, LPVOID ProcessInformation, DWORD ProcessInformationSize) = NULL;
+static dllimp_t kernel32_imports[] = {
+ // clang-format off
+ { "SetThreadDescription", &pSetThreadDescription },
+ { "SetProcessInformation", &pSetProcessInformation },
+ { NULL, NULL }
+ // clang-format on
+};
+
+static void
+enter_pause(void)
+{
+ PROCESS_POWER_THROTTLING_STATE state{};
+ state.Version = PROCESS_POWER_THROTTLING_CURRENT_VERSION;
+ state.ControlMask = PROCESS_POWER_THROTTLING_EXECUTION_SPEED | PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION;
+ state.StateMask = PROCESS_POWER_THROTTLING_EXECUTION_SPEED | PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION;
+
+ if (!kernel32_handle) {
+ kernel32_handle = dynld_module("kernel32.dll", kernel32_imports);
+ if (!kernel32_handle) {
+ kernel32_handle = kernel32_imports; /* store dummy pointer to avoid trying again */
+ pSetThreadDescription = NULL;
+ pSetProcessInformation = NULL;
+ }
+ }
+
+ if (pSetProcessInformation) {
+ pSetProcessInformation(GetCurrentProcess(), ProcessPowerThrottling, (LPVOID)&state, sizeof(state));
+ }
+}
+
+void
+exit_pause(void)
+{
+ PROCESS_POWER_THROTTLING_STATE state{};
+ state.Version = PROCESS_POWER_THROTTLING_CURRENT_VERSION;
+ state.ControlMask = PROCESS_POWER_THROTTLING_EXECUTION_SPEED | PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION;
+ state.StateMask = 0;
+
+ if (!kernel32_handle) {
+ kernel32_handle = dynld_module("kernel32.dll", kernel32_imports);
+ if (!kernel32_handle) {
+ kernel32_handle = kernel32_imports; /* store dummy pointer to avoid trying again */
+ pSetThreadDescription = NULL;
+ pSetProcessInformation = NULL;
+ }
+ }
+
+ if (pSetProcessInformation) {
+ pSetProcessInformation(GetCurrentProcess(), ProcessPowerThrottling, (LPVOID)&state, sizeof(state));
+ }
+}
+#endif
+
void
plat_pause(int p)
{
@@ -477,6 +533,14 @@ plat_pause(int p)
if ((p == 0) && (time_sync & TIME_SYNC_ENABLED))
nvr_time_sync();
+#ifdef Q_OS_WINDOWS
+ if (p) {
+ enter_pause();
+ } else {
+ exit_pause();
+ }
+#endif
+
do_pause(p);
if (p) {
if (mouse_capture)
@@ -842,21 +906,12 @@ void
plat_set_thread_name(void *thread, const char *name)
{
#ifdef Q_OS_WINDOWS
- /* SetThreadDescription was added in 14393. Revisit if we ever start requiring 10. */
- static void *kernel32_handle = NULL;
- static HRESULT(WINAPI *pSetThreadDescription)(HANDLE hThread, PCWSTR lpThreadDescription) = NULL;
- static dllimp_t kernel32_imports[] = {
- // clang-format off
- { "SetThreadDescription", &pSetThreadDescription },
- { NULL, NULL }
- // clang-format on
- };
-
if (!kernel32_handle) {
kernel32_handle = dynld_module("kernel32.dll", kernel32_imports);
if (!kernel32_handle) {
kernel32_handle = kernel32_imports; /* store dummy pointer to avoid trying again */
pSetThreadDescription = NULL;
+ pSetProcessInformation = NULL;
}
}
diff --git a/src/qt/qt_progsettings.cpp b/src/qt/qt_progsettings.cpp
index 7efeba377..ac1d6478f 100644
--- a/src/qt/qt_progsettings.cpp
+++ b/src/qt/qt_progsettings.cpp
@@ -8,8 +8,6 @@
*
* Program settings UI module.
*
- *
- *
* Authors: Cacodemon345
*
* Copyright 2021-2022 Cacodemon345
@@ -22,6 +20,7 @@
#include "ui_qt_mainwindow.h"
#include "qt_machinestatus.hpp"
+#include
#include
#include
#include
@@ -38,6 +37,7 @@ extern "C" {
#include <86box/plat.h>
#include <86box/mem.h>
#include <86box/rom.h>
+#include <86box/video.h>
}
extern MainWindow *main_window;
@@ -109,6 +109,7 @@ ProgSettings::ProgSettings(QWidget *parent)
void
ProgSettings::accept()
{
+ auto size = main_window->centralWidget()->size();
lang_id = ui->comboBoxLanguage->currentData().toInt();
open_dir_usr_path = ui->openDirUsrPath->isChecked() ? 1 : 0;
confirm_exit = ui->checkBoxConfirmExit->isChecked() ? 1 : 0;
@@ -139,6 +140,13 @@ ProgSettings::accept()
connect(main_window, &MainWindow::statusBarMessage, main_window->status.get(), &MachineStatus::message, Qt::QueuedConnection);
mouse_sensitivity = mouseSensitivity;
config_save_global();
+ QTimer::singleShot(200, [size] () {
+ main_window->centralWidget()->setFixedSize(size);
+ QApplication::processEvents();
+ if (vid_resize == 1) {
+ main_window->centralWidget()->setFixedSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX);
+ }
+ });
QDialog::accept();
}
diff --git a/src/qt/qt_progsettings.ui b/src/qt/qt_progsettings.ui
index ca33726b1..6d5f80830 100644
--- a/src/qt/qt_progsettings.ui
+++ b/src/qt/qt_progsettings.ui
@@ -27,49 +27,15 @@
- QLayout::SizeConstraint::SetFixedSize
+ QLayout::SetFixedSize
-
-
+
Language:
- -
-
-
- Qt::Orientation::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
- Inhibit multimedia keys
-
-
-
- -
-
-
- Mouse sensitivity:
-
-
-
- -
-
-
- Default
-
-
-
-
@@ -82,10 +48,30 @@
- -
-
+
-
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
- Ask for confirmation before saving settings
+ Default
+
+
+
+ -
+
+
+ Mouse sensitivity:
@@ -107,31 +93,14 @@
100
- Qt::Orientation::Horizontal
-
-
-
- -
-
-
- <html><head/><body><p>When selecting media images (CD-ROM, floppy, etc.) the open dialog will start in the same directory as the 86Box configuration file. This setting will likely only make a difference on macOS.</p></body></html>
-
-
- Select media images from program working directory
-
-
-
- -
-
-
- Default
+ Qt::Horizontal
-
- Qt::Orientation::Horizontal
+ Qt::Horizontal
@@ -141,58 +110,106 @@
- -
+
-
+
+
+ Default
+
+
+
+ -
+
+
+ <html><head/><body><p>When selecting media images (CD-ROM, floppy, etc.) the open dialog will start in the same directory as the 86Box configuration file. This setting will likely only make a difference on macOS.</p></body></html>
+
+
+ Select media images from program working directory
+
+
+
+ -
+
+
+ Inhibit multimedia keys
+
+
+
+ -
+
+
+ Ask for confirmation before saving settings
+
+
+
+ -
Ask for confirmation before quitting
- -
-
-
- Qt::Orientation::Horizontal
-
-
- QDialogButtonBox::StandardButton::Cancel|QDialogButtonBox::StandardButton::Ok
-
-
-
- -
+
-
Ask for confirmation before hard resetting
- -
-
-
- Color scheme
+
-
+
+
-
+
+
+ Color scheme
+
+
+
-
+
+
+ System
+
+
+
+ -
+
+
+ Light
+
+
+
+ -
+
+
+ Dark
+
+
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+ QDialogButtonBox::Cancel|QDialogButtonBox::Ok
-
-
-
-
-
- System
-
-
-
- -
-
-
- Light
-
-
-
- -
-
-
- Dark
-
-
-
-
diff --git a/src/qt/qt_renderercommon.cpp b/src/qt/qt_renderercommon.cpp
index b71e19e75..25d3a5c28 100644
--- a/src/qt/qt_renderercommon.cpp
+++ b/src/qt/qt_renderercommon.cpp
@@ -8,13 +8,10 @@
*
* Program settings UI module.
*
- *
- *
* Authors: Joakim L. Gilje
*
* Copyright 2021 Joakim L. Gilje
*/
-
#include "qt_renderercommon.hpp"
#include "qt_mainwindow.hpp"
@@ -129,9 +126,10 @@ RendererCommon::onResize(int width, int height)
width = round(pixelRatio * width);
height = round(pixelRatio * height);
- if (is_fs && (video_fullscreen_scale_maximized ? (parent_max && main_is_max) : 1))
+ if (is_fs && (video_fullscreen_scale_maximized ? (parent_max && main_is_max) : 1) && !(force_43 && vid_resize))
destination.setRect(0, 0, width, height);
else {
+ auto temp_fullscreen_scale = video_fullscreen_scale;
double dx;
double dy;
double dw;
@@ -144,13 +142,18 @@ RendererCommon::onResize(int width, int height)
double gh = source.height();
double hsr = hw / hh;
double r43 = 4.0 / 3.0;
+
+ if (force_43 && is_fs && vid_resize) {
+ if (!video_fullscreen_scale_maximized || (video_fullscreen_scale_maximized && parent_max && main_is_max))
+ temp_fullscreen_scale = FULLSCR_SCALE_43;
+ }
- switch (video_fullscreen_scale) {
+ switch (temp_fullscreen_scale) {
case FULLSCR_SCALE_INT:
case FULLSCR_SCALE_INT43:
gsr = gw / gh;
- if (video_fullscreen_scale == FULLSCR_SCALE_INT43) {
+ if (temp_fullscreen_scale == FULLSCR_SCALE_INT43) {
gh = gw / r43;
// gw = gw;
@@ -174,7 +177,7 @@ RendererCommon::onResize(int width, int height)
break;
case FULLSCR_SCALE_43:
case FULLSCR_SCALE_KEEPRATIO:
- if (video_fullscreen_scale == FULLSCR_SCALE_43)
+ if (temp_fullscreen_scale == FULLSCR_SCALE_43)
gsr = r43;
else
gsr = gw / gh;
@@ -217,10 +220,12 @@ RendererCommon::eventDelegate(QEvent *event, bool &result)
case QEvent::MouseButtonPress:
case QEvent::MouseMove:
case QEvent::MouseButtonRelease:
+#ifdef TOUCH_PR
case QEvent::TouchBegin:
case QEvent::TouchEnd:
case QEvent::TouchCancel:
case QEvent::TouchUpdate:
+#endif
case QEvent::Wheel:
case QEvent::Enter:
case QEvent::Leave:
diff --git a/src/qt/qt_rendererstack.cpp b/src/qt/qt_rendererstack.cpp
index 4a2e39bbe..b95fe3b73 100644
--- a/src/qt/qt_rendererstack.cpp
+++ b/src/qt/qt_rendererstack.cpp
@@ -8,8 +8,6 @@
*
* Program settings UI module.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
* Teemu Korhonen
@@ -37,7 +35,9 @@
#include
#include
+#ifdef TOUCH_PR
#include
+#endif
#include
#include
@@ -75,9 +75,9 @@ extern "C" {
}
struct mouseinputdata {
- atomic_bool mouse_tablet_in_proximity;
+ atomic_bool mouse_tablet_in_proximity;
- char *mouse_type;
+ char *mouse_type;
};
static mouseinputdata mousedata;
@@ -88,10 +88,18 @@ HWND rw_hwnd;
#endif
RendererStack::RendererStack(QWidget *parent, int monitor_index)
- : QStackedWidget(parent)
+ : QWidget(parent)
+ , boxLayout(new QBoxLayout(QBoxLayout::TopToBottom, this))
, ui(new Ui::RendererStack)
{
+ boxLayout->setContentsMargins(0, 0, 0, 0);
+#ifdef TOUCH_PR
setAttribute(Qt::WA_AcceptTouchEvents, true);
+#endif
+#ifdef Q_OS_WINDOWS
+ setAttribute(Qt::WA_NativeWindow, true);
+ (void)winId();
+#endif
rendererTakesScreenshots = false;
#ifdef Q_OS_WINDOWS
int raw = 1;
@@ -187,6 +195,7 @@ RendererStack::mouseReleaseEvent(QMouseEvent *event)
rw_hwnd = (HWND) this->winId();
#endif
+ event->accept();
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
if (!dopause && this->geometry().contains(m_monitor_index >= 1 ? event->globalPosition().toPoint() : event->position().toPoint()) &&
#else
@@ -346,7 +355,7 @@ RendererStack::switchRenderer(Renderer renderer)
switchInProgress = true;
if (current) {
rendererWindow->finalize();
- removeWidget(current.get());
+ boxLayout->removeWidget(current.get());
disconnect(this, &RendererStack::blitToRenderer, nullptr, nullptr);
/* Create new renderer only after previous is destroyed! */
@@ -372,7 +381,7 @@ RendererStack::createRenderer(Renderer renderer)
#ifdef __HAIKU__
current.reset(sw);
#else
- current.reset(this->createWindowContainer(sw, this));
+ current.reset(this->createWindowContainer(sw));
#endif
}
break;
@@ -394,7 +403,7 @@ RendererStack::createRenderer(Renderer renderer)
imagebufs = {};
QTimer::singleShot(0, this, [this]() { switchRenderer(Renderer::Software); });
});
- current.reset(this->createWindowContainer(hw, this));
+ current.reset(this->createWindowContainer(hw));
break;
}
#if QT_CONFIG(vulkan)
@@ -429,7 +438,7 @@ RendererStack::createRenderer(Renderer renderer)
imagebufs = {};
QTimer::singleShot(0, this, [this]() { switchRenderer(Renderer::Software); });
});
- current.reset(this->createWindowContainer(hw, this));
+ current.reset(this->createWindowContainer(hw));
break;
}
#endif
@@ -440,11 +449,11 @@ RendererStack::createRenderer(Renderer renderer)
current->setFocusPolicy(Qt::NoFocus);
current->setFocusProxy(this);
current->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
- current->setStyleSheet("background-color: black");
current->setAttribute(Qt::WA_AlwaysStackOnTop);
- addWidget(current.get());
+ current->setStyleSheet("background-color: black");
this->setStyleSheet("background-color: black");
+ boxLayout->addWidget(current.get());
rendererWindow->r_monitor_index = m_monitor_index;
@@ -515,12 +524,22 @@ RendererStack::event(QEvent* event)
if (m_monitor_index >= 1) {
if (mouse_input_mode >= 1) {
+#ifdef TOUCH_PR
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
mouse_x_abs = (mouse_event->position().x()) / (double)width();
mouse_y_abs = (mouse_event->position().y()) / (double)height();
#else
mouse_x_abs = (mouse_event->localPos().x()) / (double)width();
mouse_y_abs = (mouse_event->localPos().y()) / (double)height();
+#endif
+#else
+#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
+ mouse_x_abs = (mouse_event->position().x()) / (long double)width();
+ mouse_y_abs = (mouse_event->position().y()) / (long double)height();
+#else
+ mouse_x_abs = (mouse_event->localPos().x()) / (long double)width();
+ mouse_y_abs = (mouse_event->localPos().y()) / (long double)height();
+#endif
#endif
if (!mouse_tablet_in_proximity)
mouse_tablet_in_proximity = mousedata.mouse_tablet_in_proximity;
@@ -536,9 +555,10 @@ RendererStack::event(QEvent* event)
if (mouse_x_abs > 1) mouse_x_abs = 1;
if (mouse_y_abs > 1) mouse_y_abs = 1;
}
- return QStackedWidget::event(event);
+ return QWidget::event(event);
}
+#ifdef TOUCH_PR
#ifdef Q_OS_WINDOWS
if (mouse_input_mode == 0) {
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
@@ -559,7 +579,7 @@ RendererStack::event(QEvent* event)
if (mouse_x_abs > 1) mouse_x_abs = 1;
if (mouse_y_abs > 1) mouse_y_abs = 1;
- return QStackedWidget::event(event);
+ return QWidget::event(event);
}
#endif
@@ -569,6 +589,39 @@ RendererStack::event(QEvent* event)
#else
mouse_x_abs = (mouse_event->localPos().x()) / (double)width();
mouse_y_abs = (mouse_event->localPos().y()) / (double)height();
+#endif
+#else
+#ifdef Q_OS_WINDOWS
+ if (mouse_input_mode == 0) {
+#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
+ mouse_x_abs = (mouse_event->position().x()) / (long double)width();
+ mouse_y_abs = (mouse_event->position().y()) / (long double)height();
+#else
+ mouse_x_abs = (mouse_event->localPos().x()) / (long double)width();
+ mouse_y_abs = (mouse_event->localPos().y()) / (long double)height();
+#endif
+ mouse_x_abs -= rendererWindow->destinationF.left();
+ mouse_y_abs -= rendererWindow->destinationF.top();
+
+ if (mouse_x_abs < 0) mouse_x_abs = 0;
+ if (mouse_y_abs < 0) mouse_y_abs = 0;
+
+ mouse_x_abs /= rendererWindow->destinationF.width();
+ mouse_y_abs /= rendererWindow->destinationF.height();
+
+ if (mouse_x_abs > 1) mouse_x_abs = 1;
+ if (mouse_y_abs > 1) mouse_y_abs = 1;
+ return QWidget::event(event);
+ }
+#endif
+
+#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
+ mouse_x_abs = (mouse_event->position().x()) / (long double)width();
+ mouse_y_abs = (mouse_event->position().y()) / (long double)height();
+#else
+ mouse_x_abs = (mouse_event->localPos().x()) / (long double)width();
+ mouse_y_abs = (mouse_event->localPos().y()) / (long double)height();
+#endif
#endif
mouse_x_abs -= rendererWindow->destinationF.left();
mouse_y_abs -= rendererWindow->destinationF.top();
@@ -582,6 +635,7 @@ RendererStack::event(QEvent* event)
if (mouse_x_abs > 1) mouse_x_abs = 1;
if (mouse_y_abs > 1) mouse_y_abs = 1;
mouse_tablet_in_proximity = mousedata.mouse_tablet_in_proximity;
+#ifdef TOUCH_PR
} else switch (event->type()) {
case QEvent::TouchBegin:
case QEvent::TouchUpdate:
@@ -679,10 +733,11 @@ RendererStack::event(QEvent* event)
}
default:
- return QStackedWidget::event(event);
+ return QWidget::event(event);
+#endif
}
- return QStackedWidget::event(event);
+ return QWidget::event(event);
}
void
diff --git a/src/qt/qt_rendererstack.hpp b/src/qt/qt_rendererstack.hpp
index 99de85c99..a3a8d47f7 100644
--- a/src/qt/qt_rendererstack.hpp
+++ b/src/qt/qt_rendererstack.hpp
@@ -4,7 +4,8 @@
#include
#include
#include
-#include
+#include
+#include
#include
#include
#include
@@ -29,7 +30,7 @@ extern "C"
}
class RendererCommon;
-class RendererStack : public QStackedWidget {
+class RendererStack : public QWidget {
Q_OBJECT
public:
@@ -98,6 +99,8 @@ public:
void setFocusRenderer();
void onResize(int width, int height);
+ QWidget* currentWidget() { return current.get(); }
+
void (*mouse_capture_func)(QWindow *window) = nullptr;
void (*mouse_uncapture_func)() = nullptr;
@@ -113,6 +116,8 @@ public slots:
private:
void createRenderer(Renderer renderer);
+ QBoxLayout* boxLayout = nullptr;
+
Ui::RendererStack *ui;
int x;
diff --git a/src/qt/qt_rendererstack.ui b/src/qt/qt_rendererstack.ui
index 634784714..2b47af25a 100644
--- a/src/qt/qt_rendererstack.ui
+++ b/src/qt/qt_rendererstack.ui
@@ -1,7 +1,7 @@
RendererStack
-
+
0
@@ -11,7 +11,7 @@
- StackedWidget
+ RendererWidget
diff --git a/src/qt/qt_settings.cpp b/src/qt/qt_settings.cpp
index e15015403..d892053f8 100644
--- a/src/qt/qt_settings.cpp
+++ b/src/qt/qt_settings.cpp
@@ -8,8 +8,6 @@
*
* Program settings UI module.
*
- *
- *
* Authors: Joakim L. Gilje
* Cacodemon345
*
diff --git a/src/qt/qt_settings_bus_tracking.cpp b/src/qt/qt_settings_bus_tracking.cpp
index c811cc7c0..9cfe6c8ac 100644
--- a/src/qt/qt_settings_bus_tracking.cpp
+++ b/src/qt/qt_settings_bus_tracking.cpp
@@ -8,8 +8,6 @@
*
* Program settings UI module.
*
- *
- *
* Authors: Miran Grca
* Cacodemon345
*
diff --git a/src/qt/qt_settingsdisplay.cpp b/src/qt/qt_settingsdisplay.cpp
index ed9ba220c..89a2530be 100644
--- a/src/qt/qt_settingsdisplay.cpp
+++ b/src/qt/qt_settingsdisplay.cpp
@@ -8,8 +8,6 @@
*
* Display settings UI module.
*
- *
- *
* Authors: Joakim L. Gilje
*
* Copyright 2021 Joakim L. Gilje
@@ -48,7 +46,7 @@ SettingsDisplay::SettingsDisplay(QWidget *parent)
for (uint8_t i = 0; i < GFXCARD_MAX; i ++)
videoCard[i] = gfxcard[i];
- ui->lineEdit->setFilter(tr("EDID") % util::DlgFilter({ "bin", "dat", "edid", "txt" }) % tr("All files") % util::DlgFilter({ "*" }, true));
+ ui->lineEditCustomEDID->setFilter(tr("EDID") % util::DlgFilter({ "bin", "dat", "edid", "txt" }) % tr("All files") % util::DlgFilter({ "*" }, true));
onCurrentMachineChanged(machine);
}
@@ -79,7 +77,7 @@ SettingsDisplay::save()
da2_standalone_enabled = ui->checkBoxDa2->isChecked() ? 1 : 0;
monitor_edid = ui->radioButtonCustom->isChecked() ? 1 : 0;
- strncpy(monitor_edid_path, ui->lineEdit->fileName().toUtf8().data(), sizeof(monitor_edid_path) - 1);
+ strncpy(monitor_edid_path, ui->lineEditCustomEDID->fileName().toUtf8().data(), sizeof(monitor_edid_path) - 1);
}
void
@@ -137,8 +135,8 @@ SettingsDisplay::onCurrentMachineChanged(int machineId)
ui->radioButtonDefault->setChecked(monitor_edid == 0);
ui->radioButtonCustom->setChecked(monitor_edid == 1);
- ui->lineEdit->setFileName(monitor_edid_path);
- ui->lineEdit->setEnabled(monitor_edid == 1);
+ ui->lineEditCustomEDID->setFileName(monitor_edid_path);
+ ui->lineEditCustomEDID->setEnabled(monitor_edid == 1);
}
void
@@ -328,7 +326,7 @@ void SettingsDisplay::on_radioButtonDefault_clicked()
{
ui->radioButtonDefault->setChecked(true);
ui->radioButtonCustom->setChecked(false);
- ui->lineEdit->setEnabled(false);
+ ui->lineEditCustomEDID->setEnabled(false);
}
@@ -336,7 +334,7 @@ void SettingsDisplay::on_radioButtonCustom_clicked()
{
ui->radioButtonDefault->setChecked(false);
ui->radioButtonCustom->setChecked(true);
- ui->lineEdit->setEnabled(true);
+ ui->lineEditCustomEDID->setEnabled(true);
}
void SettingsDisplay::on_pushButtonExportDefault_clicked()
diff --git a/src/qt/qt_settingsdisplay.ui b/src/qt/qt_settingsdisplay.ui
index 6e4c14152..5ab71f4c0 100644
--- a/src/qt/qt_settingsdisplay.ui
+++ b/src/qt/qt_settingsdisplay.ui
@@ -26,27 +26,45 @@
0
- -
-
+
-
+
+
+
+ 0
+ 0
+
+
- Voodoo 1 or 2 Graphics
+ Video:
- -
-
+
-
+
+
+