Merge pull request #6019 from 86Box/obattler

Changes from the obattler branch
This commit is contained in:
Miran Grča
2025-08-23 20:35:27 +02:00
committed by GitHub
48 changed files with 2673 additions and 2567 deletions

View File

@@ -27,6 +27,7 @@
#include <86box/nvr.h>
#include <86box/apm.h>
#include <86box/acpi.h>
#include <86box/keyboard.h>
#include <86box/hdd.h>
#include <86box/hdc.h>
#include <86box/hdc_ide.h>
@@ -166,6 +167,8 @@ sis_5571_init(UNUSED(const device_t *info))
dev->ide = device_add_linked(&sis_5572_ide_device, dev->sis);
dev->usb = device_add_linked(&sis_5572_usb_device, dev->sis);
device_add_params(&kbc_at_device, (void *) KBC_VEN_SIS);
return dev;
}

View File

@@ -27,6 +27,7 @@
#include <86box/nvr.h>
#include <86box/apm.h>
#include <86box/acpi.h>
#include <86box/keyboard.h>
#include <86box/hdd.h>
#include <86box/hdc.h>
#include <86box/hdc_ide.h>
@@ -166,6 +167,8 @@ sis_5581_init(UNUSED(const device_t *info))
dev->ide = device_add_linked(&sis_5582_ide_device, dev->sis);
dev->usb = device_add_linked(&sis_5582_usb_device, dev->sis);
device_add_params(&kbc_at_device, (void *) KBC_VEN_SIS);
return dev;
}

View File

@@ -27,6 +27,7 @@
#include <86box/nvr.h>
#include <86box/apm.h>
#include <86box/acpi.h>
#include <86box/keyboard.h>
#include <86box/hdd.h>
#include <86box/hdc.h>
#include <86box/hdc_ide.h>
@@ -178,6 +179,8 @@ sis_5591_init(UNUSED(const device_t *info))
else
dev->pmu = device_add_linked(&sis_5595_pmu_device, dev->sis);
device_add_params(&kbc_at_device, (void *) KBC_VEN_SIS);
return dev;
}

View File

@@ -27,6 +27,7 @@
#include <86box/nvr.h>
#include <86box/apm.h>
#include <86box/acpi.h>
#include <86box/keyboard.h>
#include <86box/hdd.h>
#include <86box/hdc.h>
#include <86box/hdc_ide.h>
@@ -178,6 +179,8 @@ sis_5600_init(UNUSED(const device_t *info))
else
dev->pmu = device_add_linked(&sis_5595_pmu_device, dev->sis);
device_add_params(&kbc_at_device, (void *) KBC_VEN_SIS);
return dev;
}

View File

@@ -419,6 +419,9 @@ umc_8886_init(const device_t *info)
device_add(&ide_um8673f_device);
}
if (machine_get_kbc_device(machine) == NULL)
device_add_params(&kbc_at_device, (void *) KBC_VEN_UMC);
umc_8886_reset(dev);
return dev;

View File

@@ -43,6 +43,7 @@
#include <86box/hdc.h>
#include <86box/hdc_ide.h>
#include <86box/hdc_ide_sff8038i.h>
#include <86box/keyboard.h>
#include <86box/usb.h>
#include <86box/machine.h>
#include <86box/smbus.h>
@@ -1774,6 +1775,38 @@ pipc_init(const device_t *info)
acpi_set_irq_mode(dev->acpi, 0);
}
uint32_t kbc_params = 0x00424600;
/*
NOTE: The VIA VT82C42N returns 0x46 ('F') in command 0xA1 (so it
emulates the AMI KF/AMIKey KBC firmware), and 0x42 ('B') in
command 0xAF.
The version on the VIA VT82C686B southbridge also returns
'F' in command 0xA1, but 0x45 ('E') in command 0xAF.
The version on the VIA VT82C586B southbridge also returns
'F' in command 0xA1, but 0x44 ('D') in command 0xAF.
The version on the VIA VT82C586A southbridge also returns
'F' in command 0xA1, but 0x43 ('C') in command 0xAF.
*/
switch (dev->local) {
/* 596A, 596B, 686B, and 8231 are guesses because we have no probes yet. */
case VIA_PIPC_586A: case VIA_PIPC_596A:
kbc_params = 0x00434600;
break;
case VIA_PIPC_586B: case VIA_PIPC_596B:
kbc_params = 0x00444600;
break;
case VIA_PIPC_686A: case VIA_PIPC_686B:
case VIA_PIPC_8231:
kbc_params = 0x00454600;
break;
}
kbc_params |= KBC_VEN_VIA;
if (machine_get_kbc_device(machine) == NULL)
device_add_params(&kbc_at_device, (void *) (uintptr_t) kbc_params);
return dev;
}

File diff suppressed because it is too large Load Diff

View File

@@ -118,101 +118,42 @@ typedef struct scancode {
const uint8_t brk[4];
} scancode;
#define STATE_SHIFT_MASK 0x22
#define STATE_RSHIFT 0x20
#define STATE_LSHIFT 0x02
#define STATE_SHIFT_MASK 0x22
#define STATE_RSHIFT 0x20
#define STATE_LSHIFT 0x02
#define FAKE_LSHIFT_ON 0x100
#define FAKE_LSHIFT_OFF 0x101
#define LSHIFT_ON 0x102
#define LSHIFT_OFF 0x103
#define RSHIFT_ON 0x104
#define RSHIFT_OFF 0x105
#define FAKE_LSHIFT_ON 0x100
#define FAKE_LSHIFT_OFF 0x101
#define LSHIFT_ON 0x102
#define LSHIFT_OFF 0x103
#define RSHIFT_ON 0x104
#define RSHIFT_OFF 0x105
/* KBC #define's */
/* IBM-style controllers */
#define KBC_IBM_PC_XT 0x0000 /* IBM PC/XT */
#define KBC_IBM_PCJR 0x0001 /* IBM PCjr */
#define KBC_IBM_TYPE_1 0x0002 /* IBM AT / PS/2 Type 1 */
#define KBC_IBM_TYPE_2 0x0003 /* IBM PS/2 Type 2 */
#define KBC_AMI_ACCESS_METHODS 0x0004 /* Access Methods AMI */
#define KBC_JU_JET 0x0005 /* Ju-Jet */
/* OEM proprietary */
#define KBC_TANDY 0x0011 /* Tandy 1000/1000HX */
#define KBC_TANDY_SL2 0x0012 /* Tandy 1000SL2 */
#define KBC_AMSTRAD 0x0013 /* Amstrad */
#define KBC_OLIVETTI_XT 0x0014 /* Olivetti XT */
#define KBC_OLIVETTI 0x0015 /* Olivetti AT */
#define KBC_TOSHIBA 0x0016 /* Toshiba AT */
#define KBC_COMPAQ 0x0017 /* Compaq */
#define KBC_NCR 0x0018 /* NCR */
#define KBC_QUADTEL 0x0019 /* Quadtel */
#define KBC_SIEMENS 0x001A /* Siemens */
/* Phoenix MultiKey/42 */
#define PHOENIX_MK42_105 0x0521 /* Phoenix MultiKey/42 1.05 */
#define PHOENIX_MK42_129 0x2921 /* Phoenix MultiKey/42 1.29 */
#define PHOENIX_MK42_138 0x3821 /* Phoenix MultiKey/42 1.38 */
#define PHOENIX_MK42_140 0x3821 /* Phoenix MultiKey/42 1.40 */
#define PHOENIX_MKC42_214 0x1422 /* Phoenix MultiKey/C42 2.14 */
#define PHOENIX_MK42I_416 0x1624 /* Phoenix MultiKey/42i 4.16 */
#define PHOENIX_MK42I_419 0x1924 /* Phoenix MultiKey/42i 4.19 */
/* AMI 0x3x */
#define KBC_ACER_V30 0x0030 /* Acer (0xA1 returns nothing, 0xAF returns 0x00) */
#define KBC_AMI_MEGAKEY_SUPER_IO 0x0035 /* AMI '5' MegaKey 1994 NSC (and SM(S)C?) */
#define KBC_AMI_8 0x0038 /* AMI '8' */
/* AMI 0x4x */
#define KBC_AMI_B 0x0042 /* AMI 'B' */
#define KBC_AMI_D 0x0044 /* AMI 'D' */
#define KBC_AMI_E 0x0045 /* AMI 'E' */
#define KBC_AMIKEY 0x0046 /* AMI 'F'/AMIKEY */
#define KBC_AMIKEY_2 0x0048 /* AMI 'H'/AMIEY-2 */
#define KBC_MR 0x004D /* MR 'M' - Temporary classification until we get a dump */
/* AMI 0x5x */
#define KBC_AMI_MEGAKEY_1993 0x0050 /* AMI 'P' MegaKey 1993 */
#define KBC_AMI_MEGAKEY_1994 0x0052 /* AMI 'R' MegaKey 1994 - 0xA0 returns 1993 copyright */
#define KBC_AMI_TRIGEM 0x005A /* TriGem AMI 'Z' (1990 AMI copyright) */
/* AMI 0x6x */
#define KBC_TANDON 0x0061 /* Tandon 'a' - Temporary classification until we get a dump */
/* Holtek */
#define KBC_HT_REGIONAL_6542 0x1046 /* Holtek 'F' (Regional 6542) */
#define KBC_HT_HT6542B_BESTKEY 0x1048 /* Holtek 'H' (Holtek HT6542B, BestKey) */
/* AMI 0x0x clone without command 0xA0 */
#define KBC_UNK_00 0x2000 /* Unknown 0x00 */
#define KBC_UNK_01 0x2001 /* Unknown 0x01 */
/* AMI 0x3x clone without command 0xA0 */
#define KBC_UNK_7 0x2037 /* Unknown '7' - Temporary classification until we get a dump */
#define KBC_UNK_9 0x2037 /* Unknown '9' - Temporary classification until we get a dump */
#define KBC_JETKEY_NO_VER 0x2038 /* No-version JetKey '8' */
/* AMI 0x4x clone without command 0xA0 */
#define KBC_UNK_A 0x2041 /* Unknown 'A' - Temporary classification until we get a dump */
#define KBC_JETKEY_5_W83C42 0x2046 /* JetKey 5.0 'F' and Winbond W83C42 */
#define KBC_UNK_G 0x2047 /* Unknown 'G' - Temporary classification until we get a dump */
#define KBC_MB_300E_SIS 0x2048 /* MB-300E Non-VIA 'H' and SiS 5582/559x */
#define KBC_UNK_L 0x204C /* Unknown 'L' - Temporary classification until we get a dump */
/* AMI 0x0x clone with command 0xA0 (Get Copyright String) only returning 0x00 */
#define KBC_VPC_2007 0x3000 /* Microsoft Virtual PC 2007 - everything returns 0x00 */
/* AMI 0x4x clone with command 0xA0 (Get Copyright String) only returning 0x00 */
#define KBC_ALI_M148X 0x3045 /* ALi M148x 'E'/'U' (0xA1 actually returns 'F' but BIOS shows 'E' or 'U') */
#define KBC_LANCE_UTRON 0x3046 /* Lance LT38C41 'F', Utron */
/* AMI 0x5x clone with command 0xA0 (Get Copyright String) only returning 0x00 */
#define KBC_SARC_6042 0x3055 /* SARC 6042 'U' */
/* Award and clones */
#define KBC_AWARD 0x4200 /* Award (0xA1 returns 0x00) - Temporary classification until we get \
the real 0xAF return */
#define KBC_VIA_VT82C4XN 0x4246 /* VIA VT82C41N, VT82C4N (0xA1 returns 'F') */
#define KBC_VIA_VT82C586A 0x4346 /* VIA VT82C586A (0xA1 returns 'F') */
#define KBC_VIA_VT82C586B 0x4446 /* VIA VT82C586B (0xA1 returns 'F') */
#define KBC_VIA_VT82C686B 0x4546 /* VIA VT82C686B (0xA1 returns 'F') */
/* UMC */
#define KBC_UMC_UM8886 0x5048 /* UMC UM8886 'H' */
/* IBM-style controllers with inverted P1 video type bit polarity */
#define KBC_IBM_TYPE_1_XI8088 0x8000 /* Xi8088: IBM Type 1 */
/* AMI (this is the 0xA1 revision byte) with inverted P1 video type bit polarity */
#define KBC_ACER_V30_INV 0x8030 /* Acer (0xA1 returns nothing, 0xAF returns 0x00) */
/* Holtek with inverted P1 video type bit polarity */
#define KBC_HT_HT6542B_XI8088 0x9048 /* Xi8088: Holtek 'H' (Holtek HT6542B, BestKey) */
/* Award and clones with inverted P1 video type bit polarity */
#define KBC_VIA_VT82C4XN_XI8088 0xC246 /* Xi8088: VIA VT82C41N, VT82C4N (0xA1 returns 'F') */
#define KBC_VEN_GENERIC 0x00
#define KBC_VEN_ACER 0x01
#define KBC_VEN_ALI 0x02
#define KBC_VEN_AMI 0x03
#define KBC_VEN_AMI_TRIGEM 0x04
#define KBC_VEN_AWARD 0x05
#define KBC_VEN_CHIPS 0x06
#define KBC_VEN_COMPAQ 0x07
#define KBC_VEN_HOLTEK 0x08
#define KBC_VEN_IBM 0x09
#define KBC_VEN_NCR 0x0a
#define KBC_VEN_OLIVETTI 0x0b
#define KBC_VEN_QUADTEL 0x0c
#define KBC_VEN_PHOENIX 0x0d
#define KBC_VEN_SIEMENS 0x0e
#define KBC_VEN_TOSHIBA 0x0f
#define KBC_VEN_VIA 0x10
#define KBC_VEN_UMC 0x11
#define KBC_VEN_SIS 0x12
#define KBC_VEN_MASK 0x1f
#define KBC_FLAG_IS_ASIC 0x80000000
#define KBC_FLAG_IS_CLONE 0x40000000
#define KBC_FLAG_IS_GREEN 0x20000000
#define KBC_FLAG_IS_TYPE2 0x10000000
#ifdef __cplusplus
extern "C" {
@@ -256,47 +197,8 @@ extern const device_t kbc_xt_zenith_device;
extern const device_t kbc_xt_hyundai_device;
extern const device_t kbc_xt_fe2010_device;
extern const device_t kbc_xtclone_device;
extern const device_t kbc_at_device;
extern const device_t kbc_at_ami_device;
extern const device_t kbc_at_award_device;
extern const device_t kbc_at_chips_device;
extern const device_t kbc_at_holtek_device;
extern const device_t kbc_at_phoenix_device;
extern const device_t kbc_at_quadtel_device;
extern const device_t kbc_at_compaq_device;
extern const device_t kbc_at_umc_device;
extern const device_t kbc_at_via_device;
extern const device_t kbc_at_phoenix_device;
extern const device_t kbc_at_ncr_device;
extern const device_t kbc_at_olivetti_device;
extern const device_t kbc_at_siemens_device;
extern const device_t kbc_at_tg_ami_device;
extern const device_t kbc_at_toshiba_device;
extern const device_t kbc_ps2_device;
extern const device_t kbc_ps2_ps1_device;
extern const device_t kbc_ps2_ps1_pci_device;
extern const device_t kbc_ps2_xi8088_device;
extern const device_t kbc_ps2_acer_device;
extern const device_t kbc_ps2_ami_device;
extern const device_t kbc_ps2_award_device;
extern const device_t kbc_ps2_compaq_device;
extern const device_t kbc_ps2_holtek_device;
extern const device_t kbc_ps2_mca_1_device;
extern const device_t kbc_ps2_mca_2_device;
extern const device_t kbc_ps2_olivetti_device;
extern const device_t kbc_ps2_phoenix_device;
extern const device_t kbc_ps2_quadtel_device;
extern const device_t kbc_ps2_umc_device;
extern const device_t kbc_ps2_via_device;
extern const device_t kbc_ps2_tg_ami_device;
extern const device_t kbc_ps2_tg_ami_green_device;
extern const device_t kbc_ps2_pci_device;
extern const device_t kbc_ps2_ami_pci_device;
extern const device_t kbc_ps2_intel_ami_pci_device;
extern const device_t kbc_ps2_acer_pci_device;
extern const device_t kbc_ps2_ali_pci_device;
extern const device_t kbc_ps2_phoenix_pci_device;
extern const device_t kbc_ps2_tg_ami_pci_device;
extern const device_t keyboard_pc_xt_device;
extern const device_t keyboard_at_device;

View File

@@ -8,15 +8,15 @@
*
* Handling of the emulated machines.
*
*
*
* Authors: Sarah Walker, <https://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
* Fred N. van Kempen, <decwiz@yahoo.com>
* Jasmine Iwanek, <jriwanek@gmail.com>
*
* Copyright 2008-2020 Sarah Walker.
* Copyright 2016-2020 Miran Grca.
* Copyright 2016-2025 Miran Grca.
* Copyright 2017-2020 Fred N. van Kempen.
* Copyright 2025 Jasmine Iwanek.
*/
#ifndef EMU_MACHINE_H
@@ -338,7 +338,7 @@ typedef struct _machine_ {
uint32_t type;
uintptr_t chipset;
int (*init)(const struct _machine_ *);
uint8_t (*p1_handler)(uint8_t write, uint8_t val);
uint8_t (*p1_handler)(void);
uint32_t (*gpio_handler)(uint8_t write, uint32_t val);
uintptr_t available_flag;
uint32_t (*gpio_acpi_handler)(uint8_t write, uint32_t val);
@@ -409,6 +409,9 @@ extern const char * machine_get_internal_name_ex(int m);
extern const char * machine_get_nvr_name_ex(int m);
extern int machine_get_nvrmask(int m);
extern int machine_has_flags(int m, int flags);
extern void machine_set_ps2(void);
extern void machine_force_ps2(int is_ps2);
extern int machine_has_flags_ex(int flags);
extern int machine_has_bus(int m, int bus_flags);
extern int machine_has_cartridge(int m);
extern int machine_has_jumpered_ecp_dma(int m, int dma);
@@ -424,13 +427,19 @@ extern void machine_close(void);
extern int machine_has_mouse(void);
extern int machine_is_sony(void);
extern uint8_t machine_compaq_p1_handler(void);
extern uint8_t machine_generic_p1_handler(void);
extern uint8_t machine_ncr_p1_handler(void);
extern uint8_t machine_ps1_p1_handler(void);
extern uint8_t machine_t3100e_p1_handler(void);
extern uint8_t machine_get_p1_default(void);
extern uint8_t machine_get_p1(void);
extern void machine_set_p1_default(uint8_t val);
extern void machine_set_p1(uint8_t val);
extern void machine_and_p1(uint8_t val);
extern void machine_init_p1(void);
extern uint8_t machine_handle_p1(uint8_t write, uint8_t val);
extern uint8_t machine_get_p1(uint8_t kbc_p1);
extern uint32_t machine_get_gpio_default(void);
extern uint32_t machine_get_gpio(void);
extern void machine_set_gpio_default(uint32_t val);

View File

@@ -136,7 +136,7 @@ machine_at_ibm_common_init(const machine_t *model)
{
machine_at_common_init_ex(model, 1);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
mem_remap_top(384);
@@ -285,7 +285,7 @@ machine_at_portableii_init(const machine_t *model)
device_add(&compaq_device);
machine_at_common_init(model);
device_add(&kbc_at_compaq_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -316,7 +316,7 @@ machine_at_portableiii_init(const machine_t *model)
device_add(&compaq_device);
machine_at_common_init(model);
device_add(&kbc_at_compaq_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -333,7 +333,7 @@ machine_at_grid1520_init(const machine_t *model) {
machine_at_common_ide_init(model);
mem_remap_top(384);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
// for now just select CGA with amber monitor
//device_add(&cga_device);
@@ -358,7 +358,7 @@ machine_at_mr286_init(const machine_t *model)
return ret;
machine_at_common_ide_init(model);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -366,6 +366,23 @@ machine_at_mr286_init(const machine_t *model)
return ret;
}
uint8_t
machine_ncr_p1_handler(void)
{
/* switch settings
* bit 7: keyboard disable
* bit 6: display type (0 color, 1 mono)
* bit 5: power-on default speed (0 high, 1 low)
* bit 4: sense RAM size (0 unsupported, 1 512k on system board)
* bit 3: coprocessor detect
* bit 2: unused
* bit 1: high/auto speed
* bit 0: dma mode
*/
/* (B0 or F0) | 0x04 | (display on bit 6) | (fpu on bit 3) */
return (video_is_mda() ? 0x40 : 0x00) | (hasfpu ? 0x08 : 0x00) | 0x90;
}
/*
* Current bugs:
* - ctrl-alt-del produces an 8042 error
@@ -383,7 +400,7 @@ machine_at_pc8_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&kbc_at_ncr_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -411,7 +428,7 @@ machine_at_m290_init(const machine_t *model)
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_at_olivetti_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -482,7 +499,7 @@ machine_at_mbc17_init(const machine_t *model)
machine_at_common_ide_init(model);
device_add(&sanyo_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -503,7 +520,7 @@ machine_at_ax286_init(const machine_t *model)
return ret;
machine_at_common_ide_init(model);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -524,7 +541,7 @@ machine_at_siemens_init(const machine_t *model)
machine_at_common_init_ex(model, 1);
device_add(&kbc_at_siemens_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
mem_remap_top(384);
@@ -545,7 +562,7 @@ machine_at_ctat_common_init(const machine_t *model)
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_at_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
}
int
@@ -578,7 +595,7 @@ machine_at_super286c_init(const machine_t *model)
machine_at_common_init(model);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -652,7 +669,7 @@ machine_at_quadt286_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -665,7 +682,7 @@ machine_at_quadt286_init(const machine_t *model)
void
machine_at_headland_common_init(const machine_t *model, int type)
{
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if ((type != 2) && (fdc_current[0] == FDC_INTERNAL))
device_add(&fdc_at_device);
@@ -718,7 +735,7 @@ machine_at_ataripc4_init(const machine_t *model)
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -741,7 +758,7 @@ machine_at_neat_ami_init(const machine_t *model)
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -771,7 +788,7 @@ machine_at_3302_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
device_add(&kbc_at_ncr_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -788,7 +805,7 @@ machine_at_px286_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -829,17 +846,7 @@ machine_at_scat_init(const machine_t *model, int is_v4, int is_ami)
{
machine_at_common_init(model);
if ((machines[machine].bus_flags & MACHINE_BUS_PS2) && (strcmp(machine_get_internal_name(), "pc5286"))) {
if (is_ami)
device_add(&kbc_ps2_ami_device);
else
device_add(&kbc_ps2_device);
} else {
if (is_ami)
device_add(&kbc_at_ami_device);
else
device_add(&kbc_at_device);
}
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (is_v4)
device_add(&scat_4_device);

View File

@@ -51,6 +51,12 @@
#include <86box/sound.h>
/* ISA */
uint8_t
machine_compaq_p1_handler(void)
{
return machine_generic_p1_handler() | (hasfpu ? 0x00 : 0x04);
}
static void
machine_at_deskpro386_common_init(const machine_t *model)
{
@@ -62,7 +68,8 @@ machine_at_deskpro386_common_init(const machine_t *model)
device_add(&compaq_386_device);
machine_at_common_init(model);
device_add(&kbc_at_compaq_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
}
int
@@ -122,7 +129,8 @@ machine_at_portableiii386_init(const machine_t *model)
device_add(&compaq_386_device);
machine_at_common_init(model);
device_add(&kbc_at_compaq_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -140,6 +148,7 @@ machine_at_micronics386_init(const machine_t *model)
return ret;
machine_at_init(model);
device_add(&port_92_device);
if (fdc_current[0] == FDC_INTERNAL)
@@ -161,6 +170,7 @@ machine_at_micronics386px_init(const machine_t *model)
return ret;
machine_at_init(model);
device_add(&port_92_device);
if (fdc_current[0] == FDC_INTERNAL)
@@ -182,8 +192,10 @@ machine_at_acc386_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&acc2168_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -205,12 +217,13 @@ machine_at_ecs386_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&cs8230_device);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -228,12 +241,13 @@ machine_at_spc6000a_init(const machine_t *model)
return ret;
machine_at_common_init_ex(model, 1);
device_add(&cs8230_device);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -250,8 +264,10 @@ machine_at_tandy4000_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&cs8230_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -269,11 +285,13 @@ machine_at_ecs386v_init(const machine_t *model)
0x000f0000, 65536, 0);
if (bios_only || !ret)
return ret;
return ret;
machine_at_common_init(model);
device_add(&ali1429_device);
device_add(&kbc_ps2_intel_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -296,7 +314,8 @@ machine_at_dataexpert386wb_init(const machine_t *model)
machine_at_common_init(model);
device_add(&opti391_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -320,7 +339,7 @@ machine_at_opti495_init(const machine_t *model)
device_add(&opti495slc_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -341,8 +360,10 @@ machine_at_asus3863364k_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&rabbit_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -362,8 +383,10 @@ machine_at_asus386_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&rabbit_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);

View File

@@ -63,10 +63,12 @@ machine_at_exp4349_init(const machine_t *model)
machine_at_common_init(model);
device_add(&ali1429g_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
return ret;
}
@@ -91,7 +93,8 @@ machine_at_c747_init(const machine_t *model)
No idea what KBC it actually has but this produces the
desired behavior: command A9 does absolutely nothing.
*/
device_add(&kbc_at_siemens_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um866x_device, (void *) (UM82C862F | UM866X_IDE_PRI));
return ret;
@@ -104,7 +107,7 @@ machine_at_opti495_ami_common_init(const machine_t *model)
device_add(&opti495sx_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);

View File

@@ -62,7 +62,7 @@ machine_at_pc916sx_init(const machine_t *model)
machine_at_common_init(model);
device_add(&kbc_at_ncr_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
mem_remap_top(384);
if (fdc_current[0] == FDC_INTERNAL)
@@ -84,7 +84,7 @@ machine_at_quadt386sx_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -152,7 +152,7 @@ machine_at_pbl300sx_init(const machine_t *model)
machine_at_common_init(model);
device_add(&acc2036_device);
device_add(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um866x_device, (void *) (UM82C862F | UM866X_IDE_PRI));
if (gfxcard[0] == VID_INTERNAL)
@@ -178,7 +178,8 @@ machine_at_arb1374_init(const machine_t *model)
device_add(&ali1217_device);
device_add(&ide_isa_device);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0 | W83XX7_IDE_PRI));
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -199,7 +200,8 @@ machine_at_sbc350a_init(const machine_t *model)
device_add(&ali1217_device);
device_add(&ide_isa_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_PRI));
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -224,7 +226,7 @@ machine_at_flytech386_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(&tvga8900d_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -244,7 +246,8 @@ machine_at_325ax_init(const machine_t *model)
device_add(&ali1217_device);
device_add(&fdc_at_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -264,7 +267,8 @@ machine_at_mr1217_init(const machine_t *model)
device_add(&ali1217_device);
device_add(&fdc_at_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -284,6 +288,7 @@ machine_at_acer100t_init(const machine_t *model)
machine_at_ps2_ide_init(model);
device_add(&ali1409_device);
if (gfxcard[0] == VID_INTERNAL)
device_add(&oti077_acer100t_device);
@@ -333,7 +338,7 @@ machine_at_adi386sx_init(const machine_t *model)
device_add(&amstrad_megapc_nvr_device); /* NVR that is initialized to all 0x00's. */
device_add(&intel_82335_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -356,7 +361,7 @@ machine_at_shuttle386sx_init(const machine_t *model)
machine_at_common_init(model);
device_add(&intel_82335_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -379,7 +384,7 @@ machine_at_cmdsl386sx16_init(const machine_t *model)
machine_at_common_init(model);
device_add(&kbc_ps2_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -429,7 +434,7 @@ machine_at_if386sx_init(const machine_t *model)
machine_at_common_init_ex(model, 2);
device_add(&amstrad_megapc_nvr_device); /* NVR that is initialized to all 0x00's. */
device_add(&kbc_at_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&neat_sx_device);
@@ -462,7 +467,7 @@ machine_at_svc386sxp1_init(const machine_t *model)
machine_at_common_init(model);
device_add(&opti283_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -524,10 +529,7 @@ machine_at_scamp_common_init(const machine_t *model, int is_ps2)
{
machine_at_common_ide_init(model);
if (is_ps2)
device_add(&kbc_ps2_ami_device);
else
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -645,7 +647,7 @@ machine_at_scatsx_init(const machine_t *model)
{
machine_at_common_init(model);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -687,7 +689,7 @@ machine_at_wd76c10_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(&paradise_wd90c11_megapc_device);
device_add(&kbc_ps2_quadtel_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&wd76c10_device);

View File

@@ -63,7 +63,7 @@ machine_at_rycleopardlx_init(const machine_t *model)
machine_at_common_init(model);
device_add(&opti283_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);

View File

@@ -93,7 +93,7 @@ machine_at_init(const machine_t *model)
{
machine_at_common_init(model);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
}
void
@@ -101,7 +101,7 @@ machine_at_ps2_init(const machine_t *model)
{
machine_at_common_init(model);
device_add(&kbc_ps2_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
}
void

View File

@@ -59,7 +59,7 @@ machine_at_pja511m_init(const machine_t *model)
device_add_inst_params(&fdc37c669_device, 1, (void *) FDC37C6XX_IDE_PRI);
device_add_inst_params(&fdc37c669_device, 2, (void *) 0);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ali6117d_device);
device_add(&sst_flash_29ee010_device);
@@ -80,7 +80,7 @@ machine_at_prox1332_init(const machine_t *model)
machine_at_common_init(model);
device_add_params(&fdc37c669_device, (void *) FDC37C6XX_370);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ali6117d_device);
device_add(&sst_flash_29ee010_device);

View File

@@ -140,7 +140,7 @@ machine_at_kn97_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&intel_flash_bxt_device);
device_add(&lm78_device); /* fans: Chassis, CPU, Power; temperature: MB */
@@ -772,7 +772,6 @@ machine_at_ficka6130_init(const machine_t *model)
device_add(&via_apro_device);
device_add(&via_vt82c596a_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&kbc_ps2_ami_pci_device);
device_add(&sst_flash_29ee020_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
@@ -916,7 +915,6 @@ machine_at_p6f99_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add(&it8661f_device);
device_add(&winbond_flash_w29c020_device);
@@ -949,7 +947,6 @@ machine_at_m747_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add(&it8661f_device);
device_add(&winbond_flash_w29c020_device);

View File

@@ -61,8 +61,10 @@ machine_at_cs4031_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&cs4031_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -83,8 +85,10 @@ machine_at_ga486l_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&opti381_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -108,7 +112,7 @@ machine_at_svc486wb_init(const machine_t *model)
device_add(&opti493_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_isa_device);
return ret;
@@ -130,7 +134,7 @@ machine_at_mvi486_init(const machine_t *model)
device_add(&opti498_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_isa_device);
device_add_params(&pc873xx_device, (void *) (PCX73XX_IDE_PRI | PCX730X_398));
@@ -143,8 +147,10 @@ static void
machine_at_sis401_common_init(const machine_t *model)
{
machine_at_common_init(model);
device_add(&sis_85c401_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -195,8 +201,10 @@ machine_at_av4_init(const machine_t *model)
return ret;
machine_at_common_init(model);
device_add(&sis_85c460_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -222,7 +230,7 @@ machine_at_advantage40xxd_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
device_add(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um866x_device, (void *) (UM82C863F | UM866X_IDE_PRI));
device_add(&intel_flash_bxt_device);
@@ -244,7 +252,7 @@ machine_at_dtk461_init(const machine_t *model)
machine_at_common_init(model);
device_add(&sl82c461_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -267,7 +275,8 @@ machine_at_486vchd_init(const machine_t *model)
machine_at_common_init(model);
device_add(&via_vt82c49x_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -386,7 +395,7 @@ machine_at_isa486c_init(const machine_t *model)
device_add(&isa486c_device);
device_add(&port_92_key_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -410,7 +419,7 @@ machine_at_genoa486_init(const machine_t *model)
device_add(&compaq_genoa_device);
device_add(&port_92_key_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);

View File

@@ -62,7 +62,7 @@ machine_at_pb410a_init(const machine_t *model)
machine_at_ibm_common_ide_init(model);
device_add(&kbc_ps2_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&acc3221_device);
device_add(&acc2168_device);
@@ -93,7 +93,7 @@ machine_at_acera1g_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(&gd5428_onboard_device);
device_add(&kbc_ps2_acer_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&pc87310_device, (void *) (PC87310_ALI));
device_add(&ide_ali5213_device);
@@ -111,7 +111,7 @@ machine_at_ali1429_common_init(const machine_t *model, int is_green)
else
device_add(&ali1429_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -170,8 +170,11 @@ machine_at_pci400ca_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(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_device);
device_add(&intel_flash_bxt_ami_device);
device_add(&i420tx_device);
@@ -203,7 +206,8 @@ machine_at_g486ip_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 03 = Slot 1 */
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 04 = Slot 2 */
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4); /* 05 = Slot 3 */
device_add(&kbc_ps2_ami_pci_device); /* AMI Megakey 1993 stanalone ('P') */
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ims8848_device);
@@ -232,7 +236,7 @@ machine_at_cobalt_init(const machine_t *model)
device_add(&ide_isa_sec_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -257,7 +261,7 @@ machine_at_cougar_init(const machine_t *model)
device_add(&opti499_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_PRI));
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -284,7 +288,7 @@ machine_at_decpclpv_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
device_add(&kbc_ps2_phoenix_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_isa_2ch_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C663 | FDC37C6XX_IDE_PRI));
@@ -315,7 +319,7 @@ machine_at_dell466np_init(const machine_t *model)
mem_mapping_set_addr(&bios_mapping, 0x0c0000, 0x40000);
mem_mapping_set_exec(&bios_mapping, rom);
device_add(&kbc_ps2_phoenix_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_isa_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C661 | FDC37C6XX_IDE_PRI));
@@ -340,7 +344,8 @@ machine_at_valuepoint433_init(const machine_t *model) // hangs without the PS/2
device_add(&et4000w32_onboard_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C661 | FDC37C6XX_IDE_PRI));
device_add(&kbc_ps2_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);

View File

@@ -62,7 +62,8 @@ machine_at_atc1762_init(const machine_t *model)
machine_at_common_init(model);
device_add(&ali1429g_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -84,7 +85,8 @@ machine_at_ecsal486_init(const machine_t *model)
machine_at_common_init(model);
device_add(&ali1429g_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -107,7 +109,9 @@ machine_at_ap4100aa_init(const machine_t *model)
device_add(&ami_1994_nvr_device);
device_add(&ali1429g_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_vlb_device);
device_add_params(&um866x_device, (void *) UM8663BF);
@@ -133,7 +137,7 @@ machine_at_4gpv5_init(const machine_t *model)
device_add(&contaq_82c596a_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -157,7 +161,7 @@ machine_at_greenb_init(const machine_t *model)
device_add(&contaq_82c597_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -174,7 +178,7 @@ machine_at_403tg_common_init(const machine_t *model, int nvr_hack)
device_add(&opti895_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -243,7 +247,9 @@ machine_at_acerv10_init(const machine_t *model)
machine_at_common_init(model);
device_add(&sis_85c461_device);
device_add(&kbc_ps2_acer_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_isa_device);
if (fdc_current[0] == FDC_INTERNAL)
@@ -276,7 +282,8 @@ machine_at_win471_init(const machine_t *model)
return ret;
machine_at_sis_85c471_common_init(model);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -293,7 +300,8 @@ machine_at_vi15g_init(const machine_t *model)
return ret;
machine_at_sis_85c471_common_init(model);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -310,7 +318,8 @@ machine_at_vli486sv2g_init(const machine_t *model)
return ret;
machine_at_sis_85c471_common_init(model);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -330,7 +339,8 @@ machine_at_dvent4xx_init(const machine_t *model)
device_add(&sis_85c471_device);
device_add(&ide_cmd640_vlb_pri_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_SEC));
device_add(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -350,7 +360,8 @@ machine_at_dtk486_init(const machine_t *model)
return ret;
machine_at_sis_85c471_common_init(model);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -367,7 +378,8 @@ machine_at_ami471_init(const machine_t *model)
return ret;
machine_at_sis_85c471_common_init(model);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -384,8 +396,10 @@ machine_at_px471_init(const machine_t *model)
return ret;
machine_at_sis_85c471_common_init(model);
device_add(&ide_vlb_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -406,7 +420,8 @@ machine_at_tg486g_init(const machine_t *model)
device_add(&sis_85c471_device);
device_add(&ide_isa_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C651 | FDC37C6XX_IDE_PRI));
device_add(&kbc_ps2_tg_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (gfxcard[0] != VID_INTERNAL) {
for (uint16_t i = 0; i < 32768; i++)

View File

@@ -266,7 +266,6 @@ machine_at_m773_init(const machine_t *model)
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
device_add(&i440bx_device);
device_add(&slc90e66_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&it8671f_device);
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 256);
@@ -307,7 +306,6 @@ machine_at_apas3_init(const machine_t *model)
device_add(&via_apro_device);
device_add(&via_vt82c586b_device);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&kbc_ps2_ami_pci_device);
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
@@ -374,7 +372,6 @@ machine_at_6via90ap_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add(ics9xxx_get(ICS9250_18));
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 1024);
@@ -415,7 +412,6 @@ machine_at_cuv4xls_init(const machine_t *model)
pci_register_slot(0x01, PCI_CARD_AGPBRIDGE, 1, 2, 3, 4);
device_add(&via_apro133a_device);
device_add(&via_vt82c686b_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(ics9xxx_get(ICS9250_18));
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0xF, 1024);
@@ -449,7 +445,6 @@ machine_at_7sbb_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add(&it8661f_device);
device_add(&sst_flash_29ee020_device); /* assumed */

View File

@@ -78,7 +78,7 @@ machine_at_ms4134_init(const machine_t *model)
device_add(&ali1435_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -111,7 +111,7 @@ machine_at_tg486gp_init(const machine_t *model)
device_add(&ali1435_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_ps2_tg_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -143,7 +143,9 @@ machine_at_sbc490_init(const machine_t *model)
device_add(&ali1489_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sst_flash_29ee010_device);
return ret;
@@ -170,7 +172,7 @@ machine_at_abpb4_init(const machine_t *model)
device_add(&ali1489_device);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sst_flash_29ee010_device);
return ret;
@@ -193,7 +195,9 @@ machine_at_arb1476_init(const machine_t *model)
device_add(&ali1489_device);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&kbc_ps2_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sst_flash_29ee010_device);
return ret;
@@ -220,7 +224,7 @@ machine_at_win486pci_init(const machine_t *model)
device_add(&ali1489_device);
device_add_params(&gm82c803ab_device, (void *) GM82C803B);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -243,7 +247,9 @@ machine_at_tf486_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add(&ali1489_device);
device_add(&kbc_at_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83977_device, (void *) (W83977EF | W83977_NO_NVR));
device_add(&sst_flash_29ee010_device);
@@ -272,7 +278,9 @@ machine_at_ms4145_init(const machine_t *model)
device_add(&ali1489_device);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sst_flash_29ee010_device);
return ret;
@@ -301,7 +309,9 @@ machine_at_pc330_6573_common_init(const machine_t *model)
device_add(&opti602_device);
device_add(&opti802g_device);
device_add(&opti822_device);
device_add(&kbc_ps2_ami_device);
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_opti611_vlb_device);
device_add(&intel_flash_bxt_device);
@@ -410,7 +420,7 @@ machine_at_pb450_init(const machine_t *model)
device_add(&opti895_device);
device_add(&opti602_device);
device_add(&opti822_device);
device_add(&kbc_ps2_phoenix_device);
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_opti611_vlb_device);
device_add(&intel_flash_bxt_device);
@@ -439,7 +449,8 @@ machine_at_486pi_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 2, 1);
pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 1, 2);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&i420ex_device);
@@ -467,7 +478,9 @@ machine_at_bat4ip3e_init(const machine_t *model)
pci_register_slot(0x0a, PCI_CARD_NORMAL, 1, 2, 1, 2);
device_add(&phoenix_486_jumper_pci_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i420ex_device);
device_add(&ide_cmd640_pci_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
@@ -495,7 +508,8 @@ machine_at_486ap4_init(const machine_t *model)
pci_register_slot(0x0a, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 0a = Slot 2 */
pci_register_slot(0x0b, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 0b = Slot 3 */
pci_register_slot(0x0c, PCI_CARD_NORMAL, 4, 1, 2, 3); /* 0c = Slot 4 */
device_add(&kbc_ps2_ami_pci_device); /* Uses the AMIKEY KBC */
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -524,7 +538,9 @@ machine_at_ninja_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 1, 2, 1, 2);
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 2, 1);
pci_register_slot(0x0B, PCI_CARD_NORMAL, 2, 1, 2, 1);
device_add(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&intel_flash_bxt_ami_device);
device_add(&i420ex_device);
@@ -551,7 +567,8 @@ machine_at_sb486p_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 1, 2);
pci_register_slot(0x13, PCI_CARD_NORMAL, 2, 1, 2, 1);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&i82091aa_device, (void *) I82091AA_022);
device_add(&i420ex_device);
@@ -577,7 +594,9 @@ machine_at_amis76_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(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_ami_device);
@@ -611,7 +630,9 @@ machine_at_486sp3_init(const machine_t *model)
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 05 = Slot 3 */
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3); /* 06 = Slot 4 */
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&kbc_at_ami_device); /* Uses the AMIKEY KBC */
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C663 | FDC37C6XX_IDE_PRI));
device_add(&sst_flash_29ee010_device);
@@ -645,7 +666,9 @@ machine_at_alfredo_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(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C663);
device_add(&intel_flash_bxt_ami_device);
@@ -677,7 +700,9 @@ machine_at_486sp3g_init(const machine_t *model)
pci_register_slot(0x05, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 05 = Slot 2 */
pci_register_slot(0x04, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 04 = Slot 3 */
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&kbc_ps2_ami_pci_device); /* Uses the AMIKEY KBC */
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX73XX_IDE_PRI | PCX730X_398));
device_add(&sst_flash_29ee010_device);
@@ -755,7 +780,7 @@ machine_at_sb486pv_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
device_add(&kbc_ps2_ami_pci_device);
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);
device_add_params(&i82091aa_device, (void *) I82091AA_26E);
@@ -790,8 +815,8 @@ machine_at_pci400cb_init(const machine_t *model)
pci_register_slot(0x0E, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 0E = Slot 2 */
pci_register_slot(0x0D, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 0D = Slot 3 */
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 2, 3, 4); /* 0C = Slot 4 */
device_add(&kbc_ps2_ami_pci_device); /* Assume AMI Megakey 1993 standalone ('P')
because of the Tekram machine below. */
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ims8848_device);
@@ -814,6 +839,8 @@ machine_at_sis_85c496_common_init(UNUSED(const machine_t *model))
pci_set_irq_routing(PCI_INTB, PCI_IRQ_DISABLED);
pci_set_irq_routing(PCI_INTC, PCI_IRQ_DISABLED);
pci_set_irq_routing(PCI_INTD, PCI_IRQ_DISABLED);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
}
int
@@ -838,7 +865,7 @@ machine_at_acerp3_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_PRI));
device_add(&kbc_ps2_acer_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_cmd640_pci_legacy_only_device);
if (gfxcard[0] == VID_INTERNAL)
@@ -869,7 +896,7 @@ machine_at_486sp3c_init(const machine_t *model)
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&intel_flash_bxt_device);
@@ -897,7 +924,7 @@ machine_at_ls486e_init(const machine_t *model)
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -923,7 +950,7 @@ machine_at_m4li_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -948,7 +975,7 @@ machine_at_ms4144_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sst_flash_29ee010_device);
@@ -976,7 +1003,7 @@ machine_at_r418_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1002,7 +1029,7 @@ machine_at_4saw2_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add_params(&w837x7_device, (void *) (W83777F | W837X7_KEY_89));
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&intel_flash_bxt_device);
@@ -1030,7 +1057,7 @@ machine_at_4dps_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add_params(&w837x7_device, (void *) (W83787IF | W837X7_KEY_89));
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&intel_flash_bxt_device);
@@ -1061,7 +1088,6 @@ machine_at_atc1415_init(const machine_t *model)
device_add(&umc_hb4_device);
device_add(&umc_8886bf_device);
device_add(&intel_flash_bxt_device);
device_add(&kbc_at_ami_device);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -1093,7 +1119,6 @@ machine_at_84xxuuda_init(const machine_t *model)
device_add(&umc_8886bf_device);
device_add_params(&um866x_device, (void *) UM8663BF);
device_add(&winbond_flash_w29c010_device);
device_add(&kbc_ps2_ami_device);
return ret;
}
@@ -1124,7 +1149,7 @@ machine_at_pl4600c_init(const machine_t *model)
device_add(&umc_8886af_device);
device_add_params(&um866x_device, (void *) UM8663AF);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (gfxcard[0] == VID_INTERNAL)
device_add(&gd5430_onboard_pci_device);
@@ -1166,7 +1191,8 @@ machine_at_ecs486_init(const machine_t *model)
device_add(&ide_cmd640_pci_legacy_only_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1195,7 +1221,8 @@ machine_at_actionpc2600_init(const machine_t *model)
device_add(&umc_8886bf_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);
device_add(&kbc_ps2_tg_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -1228,7 +1255,9 @@ machine_at_actiontower8400_init(const machine_t *model)
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&ide_cmd640_pci_device);
device_add(&intel_flash_bxt_device); // The ActionPC 2600 has this so I'm gonna assume this does too.
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (gfxcard[0] == VID_INTERNAL)
device_add(machine_get_vid_device(machine));
@@ -1259,7 +1288,6 @@ machine_at_m919_init(const machine_t *model)
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);
device_add(&kbc_at_ami_device);
return ret;
}
@@ -1288,7 +1316,7 @@ machine_at_spc7700plw_init(const machine_t *model)
device_add(&umc_8886af_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1370,9 +1398,10 @@ machine_at_hot433a_init(const machine_t *model)
device_add_params(&um8669f_device, (void *) 0);
device_add(&winbond_flash_w29c010_device);
if (is_award)
device_add(&kbc_ps2_ami_device);
machine_force_ps2(1);
else
device_add(&kbc_at_ami_device);
machine_force_ps2(0);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
pic_toggle_latch(is_award);
@@ -1403,7 +1432,7 @@ machine_at_g486vpa_init(const machine_t *model)
device_add(&via_vt82c49x_pci_ide_device);
device_add(&via_vt82c505_device);
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX73XX_IDE_SEC | PCX730X_398));
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sst_flash_29ee010_device);
return ret;
@@ -1432,7 +1461,9 @@ machine_at_486vipio2_init(const machine_t *model)
device_add(&via_vt82c49x_pci_ide_device);
device_add(&via_vt82c505_device);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&winbond_flash_w29c010_device);
return ret;

View File

@@ -102,7 +102,7 @@ machine_at_v12p_init(const machine_t *model)
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(&kbc_ps2_acer_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add_params(&pc87310_device, (void *) (PC87310_ALI));
device_add(&amd_am28f010_flash_device);
@@ -134,7 +134,7 @@ machine_at_ambradp60_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(&kbc_ps2_phoenix_device);
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));
device_add(&intel_flash_bxt_ami_device);
@@ -165,7 +165,7 @@ machine_at_excaliburpci_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_cmd640_pci_legacy_only_device);
device_add(&i430lx_device);
@@ -195,7 +195,7 @@ machine_at_p5mp3_init(const machine_t *model)
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(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430lx_device);
device_add(&sio_zb_device);
@@ -230,7 +230,7 @@ machine_at_dellxp60_init(const machine_t *model)
pci_register_slot(0x06, PCI_CARD_NORMAL, 2, 1, 3, 4);
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430lx_device);
device_add(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_ami_device);
@@ -261,7 +261,7 @@ machine_at_opti560l_init(const machine_t *model)
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(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add_params(&i82091aa_device, (void *) I82091AA_022);
device_add(&intel_flash_bxt_ami_device);
@@ -286,7 +286,7 @@ machine_at_award_common_init(const machine_t *model)
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add(&intel_flash_bxt_device);
}
@@ -332,7 +332,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(&kbc_ps2_ps1_pci_device);
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));
device_add(&intel_flash_bxt_ami_device);
@@ -360,7 +360,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(&kbc_ps2_phoenix_device);
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);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_SEC));
@@ -408,7 +408,7 @@ machine_at_m5pi_init(const machine_t *model)
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430lx_device);
device_add(&sio_zb_device);
device_add(&kbc_ps2_phoenix_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
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);
@@ -444,7 +444,7 @@ machine_at_pb520r_init(const machine_t *model)
if (gfxcard[0] == VID_INTERNAL)
device_add(&gd5434_onboard_pci_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sio_zb_device);
device_add_params(&i82091aa_device, (void *) (I82091AA_022 | I82091AA_IDE_PRI));
device_add(&intel_flash_bxt_ami_device);
@@ -469,7 +469,7 @@ machine_at_excalibur_init(const machine_t *model)
device_add(&opti5x7_device);
device_add(&ide_opti611_vlb_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C661);
device_add(&kbc_ps2_intel_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -497,7 +497,7 @@ machine_at_globalyst330_p5_init(const machine_t *model)
device_add(&opti5x7_pci_device);
device_add(&opti822_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -528,7 +528,7 @@ machine_at_p5vl_init(const machine_t *model)
device_add(&opti5x7_pci_device);
device_add(&opti822_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -560,7 +560,7 @@ machine_at_excaliburpci2_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_cmd640_pci_legacy_only_device);
device_add(&sis_85c50x_device);
@@ -587,7 +587,7 @@ machine_at_sp4_common_init(const machine_t *model)
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&sis_85c50x_device);
device_add(&ide_cmd640_pci_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);
}
@@ -631,7 +631,7 @@ machine_at_ecs50x_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);

View File

@@ -63,7 +63,7 @@ machine_at_pci56001_init(const machine_t *model)
device_add(&opti5x7_pci_device);
device_add(&opti822_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);

View File

@@ -83,7 +83,7 @@ machine_at_p54np4_init(const machine_t *model)
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430nx_device);
device_add(&sio_zb_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_PRI));
device_add(&intel_flash_bxt_device);
@@ -215,7 +215,7 @@ machine_at_d842_init(const machine_t *model)
pci_register_slot(0x0C, PCI_CARD_NORMAL, 1, 3, 2, 4); /* Slot 01 */
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 1, 3, 4); /* Slot 02 */
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430nx_device);
device_add(&sio_zb_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
@@ -244,7 +244,7 @@ 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);
device_add(&kbc_ps2_intel_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430nx_device);
device_add(&sio_zb_device);
device_add(&ide_vlb_device);
@@ -277,7 +277,7 @@ machine_at_acerv30_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i430fx_device);
device_add(&piix_device);
device_add(&kbc_ps2_acer_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&sst_flash_29ee010_device);
@@ -306,7 +306,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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX730X_398));
@@ -342,7 +342,7 @@ machine_at_optiplexgxl_init(const machine_t *model)
if (sound_card_current[0] == SOUND_INTERNAL)
machine_snd = device_add(machine_get_snd_device(machine));
device_add(&kbc_ps2_phoenix_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX730X_02E));
@@ -405,8 +405,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);
/* Should be VIA, but we do not emulate that yet. */
device_add(&kbc_ps2_holtek_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX730X_398));
@@ -463,7 +462,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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
@@ -492,7 +491,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(&kbc_ps2_tg_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
@@ -524,7 +523,7 @@ machine_at_ncselp90_init(const machine_t *model)
device_add(&opti5x7_pci_device);
device_add(&opti822_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&ide_opti611_vlb_device);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_SEC));
device_add(&ide_vlb_2ch_device);
@@ -554,7 +553,7 @@ machine_at_hot543_init(const machine_t *model)
device_add(&opti5x7_pci_device);
device_add(&opti822_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_at_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -576,7 +575,7 @@ machine_at_pat54pv_init(const machine_t *model)
machine_at_common_init(model);
device_add(&opti5x7_device);
device_add(&kbc_ps2_intel_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
@@ -625,7 +624,7 @@ machine_at_sq588_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) (FDC37C665 | FDC37C6XX_IDE_SEC));
device_add(&sst_flash_29ee010_device);
@@ -654,7 +653,7 @@ machine_at_p54sps_init(const machine_t *model)
pci_register_slot(0x09, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&sis_85c50x_device);
device_add(&ide_pci_2ch_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&sst_flash_29ee010_device);
@@ -685,7 +684,7 @@ machine_at_ms5109_init(const machine_t *model)
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(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&sst_flash_29ee010_device);
@@ -720,7 +719,7 @@ machine_at_torino_init(const machine_t *model)
device_add(&sis_550x_85c503_device);
device_add(&ide_um8673f_device);
device_add(&kbc_ps2_tg_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_ami_device);
@@ -753,7 +752,7 @@ machine_at_hot539_init(const machine_t *model)
device_add(&umc_8890_device);
device_add(&umc_8886af_device);
device_add(&sst_flash_29ee010_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um866x_device, (void *) UM8663AF);
return ret;

View File

@@ -96,7 +96,7 @@ machine_at_p55t2p4_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&intel_flash_bxt_device);
@@ -118,7 +118,7 @@ machine_at_p65up5_common_init(const machine_t *model, const device_t *northbridg
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(northbridge);
device_add(&piix3_ioapic_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
device_add(&ioapic_device);
@@ -333,7 +333,7 @@ machine_at_epc2102_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_intel_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&i82091aa_device, (void *) I82091AA_022);
device_add(&radisys_config_device);
device_add(&sst_flash_39sf010_device);
@@ -492,7 +492,7 @@ machine_at_ap5vm_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&ncr53c810_onboard_pci_device);
device_add(&intel_flash_bxt_device);
@@ -522,7 +522,7 @@ machine_at_p55tvp4_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device); // It uses the AMIKEY KBC
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&intel_flash_bxt_device);
@@ -550,7 +550,7 @@ machine_at_5ivg_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&gm82c803c_device, (void *) 0);
device_add(&intel_flash_bxt_device);
@@ -579,7 +579,7 @@ machine_at_8500tvxa_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 3, 2, 1);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um8669f_device, (void *) 0);
device_add(&sst_flash_29ee010_device);
@@ -701,7 +701,7 @@ machine_at_p5vxb_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 4);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -863,7 +863,7 @@ machine_at_lgibmx52_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&winbond_flash_w29c010_device);
@@ -964,7 +964,7 @@ machine_at_mb520n_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&intel_flash_bxt_device);
@@ -993,7 +993,7 @@ machine_at_i430vx_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
device_add(&i430vx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um8669f_device, (void *) 0);
device_add(&intel_flash_bxt_device);
@@ -1065,7 +1065,7 @@ machine_at_tx97_init(const machine_t *model)
pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add(&i430tx_device);
device_add(&piix4_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
@@ -1319,7 +1319,7 @@ machine_at_mb540n_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4); /* PIIX4 */
device_add(&i430tx_device);
device_add(&piix4_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um8669f_device, (void *) 0);
device_add(&sst_flash_29ee010_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
@@ -1350,7 +1350,7 @@ machine_at_56a5_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 1, 2, 3, 4);
device_add(&i430tx_device);
device_add(&piix4_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
@@ -1412,7 +1412,7 @@ machine_at_richmond_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i430tx_device);
device_add(&piix4_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&it8671f_device);
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 128);
@@ -1445,7 +1445,6 @@ machine_at_ficva502_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
device_add(&via_vpx_device);
device_add(&via_vt82c586b_device);
device_add(&kbc_ps2_pci_device);
device_add_params(&fdc37c669_device, (void *) FDC37C6XX_370);
device_add(&sst_flash_29ee010_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 256);
@@ -1478,7 +1477,6 @@ machine_at_ficpa2012_init(const machine_t *model)
device_add(&via_vp3_device);
device_add(&via_vt82c586b_device);
device_add(&kbc_ps2_pci_device);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 512);
@@ -1510,7 +1508,6 @@ machine_at_via809ds_init(const machine_t *model)
device_add(&via_vp3_device);
device_add(&via_vt82c586b_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 512);
@@ -1541,7 +1538,6 @@ machine_at_cb52xsi_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&sis_5571_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(&fdc37c669_device, (void *) FDC37C6XX_370);
device_add(&sst_flash_29ee010_device);
@@ -1570,7 +1566,6 @@ machine_at_ms5146_init(const machine_t *model)
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&sis_5571_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -1599,7 +1594,6 @@ machine_at_r534f_init(const machine_t *model)
pci_register_slot(0x11, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&sis_5571_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -1629,7 +1623,6 @@ machine_at_sp97xv_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(&w83877_device, (void *) (W83877F | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -1656,7 +1649,6 @@ machine_at_sq578_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&sst_flash_29ee010_device);
@@ -1685,7 +1677,6 @@ machine_at_ms5172_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&sst_flash_29ee010_device);

View File

@@ -54,7 +54,7 @@ machine_at_p54tp4xe_common_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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
@@ -113,7 +113,7 @@ machine_at_exp8551_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(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_device);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
@@ -419,7 +419,7 @@ machine_at_ms5119_init(const machine_t *model)
device_add(&i430fx_device);
device_add(&piix_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&sst_flash_29ee010_device);
@@ -512,7 +512,7 @@ machine_at_mb500n_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(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&i430fx_device);
device_add(&piix_no_mirq_device);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
@@ -544,7 +544,7 @@ machine_at_fmb_init(const machine_t *model)
device_add(&i430fx_device);
device_add(&piix_no_mirq_device);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
device_add(&intel_flash_bxt_device);
@@ -604,7 +604,7 @@ machine_at_ap53_init(const machine_t *model)
pci_register_slot(0x06, PCI_CARD_VIDEO, 1, 2, 3, 4);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&intel_flash_bxt_device);
@@ -633,7 +633,7 @@ machine_at_8500tuc_init(const machine_t *model)
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 1, 2, 3, 4);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um8669f_device, (void *) 0);
device_add(&intel_flash_bxt_device);
@@ -707,7 +707,7 @@ machine_at_d943_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 3, 2, 4);
device_add(&i430hx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);
spd_register(SPD_TYPE_EDO, 0x7, 256);
@@ -824,7 +824,7 @@ machine_at_5sbm2_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);
device_add(&kbc_at_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&sis_550x_device);
device_add_params(&um866x_device, (void *) UM8663AF);
device_add(&sst_flash_29ee010_device);
@@ -855,7 +855,7 @@ machine_at_amis727_init(const machine_t *model)
pci_register_slot(0x0D, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&sis_5511_device);
device_add(&kbc_ps2_intel_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);
@@ -926,7 +926,7 @@ machine_at_ap5s_init(const machine_t *model)
pci_register_slot(0x13, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&sis_5511_device);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&sst_flash_29ee010_device);
@@ -957,7 +957,7 @@ machine_at_pc140_6260_init(const machine_t *model)
device_add(&gd5436_onboard_pci_device);
device_add(&sis_5511_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&sst_flash_29ee010_device);
@@ -986,7 +986,7 @@ machine_at_ms5124_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 2, 3, 4, 1);
device_add(&sis_5511_device);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_88));
device_add(&sst_flash_29ee010_device);

View File

@@ -64,7 +64,7 @@ machine_at_ap61_init(const machine_t *model)
device_add(&i450kx_device);
device_add(&sio_zb_device);
device_add(&ide_cmd646_device);
device_add(&kbc_ps2_acer_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&sst_flash_29ee010_device);
@@ -98,7 +98,7 @@ machine_at_p6rp4_init(const machine_t *model)
device_add(&sio_zb_device);
device_add(&ide_cmd646_device);
/* Input port bit 2 must be 1 or CMOS Setup is disabled. */
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c6xx_device, (void *) FDC37C665);
device_add(&intel_flash_bxt_device);
@@ -246,7 +246,7 @@ machine_at_8600ttc_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&intel_flash_bxt_device);
@@ -347,7 +347,7 @@ machine_at_686nx_init(const machine_t *model)
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device); // Uses the AMIKEY keyboard controller
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&um8669f_device, (void *) 0);
device_add(&intel_flash_bxt_device);
@@ -450,7 +450,7 @@ machine_at_lgibmx61_init(const machine_t *model)
pci_register_slot(0x0F, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&w83877_device, (void *) (W83877F | W83877_250));
device_add(&sst_flash_29ee010_device);
@@ -507,7 +507,7 @@ machine_at_mb600n_init(const machine_t *model)
pci_register_slot(0x14, PCI_CARD_NORMAL, 4, 1, 2, 3);
device_add(&i440fx_device);
device_add(&piix3_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add_params(&fdc37c669_device, (void *) 0);
device_add(&intel_flash_bxt_device);

View File

@@ -231,7 +231,6 @@ machine_at_ax59pro_init(const machine_t *model)
device_add(&via_mvp3_device);
device_add(&via_vt82c586b_device);
device_add(&kbc_ps2_pci_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_250));
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
@@ -260,7 +259,6 @@ machine_at_delhi3_init(const machine_t *model)
device_add(&via_mvp3_device);
device_add(&via_vt82c596a_device);
device_add(&kbc_ps2_ami_pci_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_250));
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 256);
@@ -294,7 +292,6 @@ machine_at_mvp3_init(const machine_t *model)
device_add(&via_mvp3_device);
device_add(&via_vt82c586b_device);
device_add(&kbc_ps2_pci_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&sst_flash_39sf010_device);
spd_register(SPD_TYPE_SDRAM, 0x3, 256);
@@ -326,7 +323,6 @@ machine_at_ficva503a_init(const machine_t *model)
device_add(&via_mvp3_device);
device_add(&via_vt82c686a_device); /* fans: CPU1, Chassis; temperatures: CPU, System, unused */
device_add(&kbc_ps2_ami_pci_device);
device_add(&sst_flash_39sf020_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
hwm_values.temperatures[0] += 2; /* CPU offset */
@@ -364,7 +360,6 @@ machine_at_5emapro_init(const machine_t *model)
device_add(&via_mvp3_device); /* Rebranded as EQ82C6638 */
device_add(&via_vt82c686a_device);
device_add(&kbc_ps2_ami_pci_device);
device_add(&sst_flash_39sf010_device);
spd_register(SPD_TYPE_SDRAM, 0x7, 256);
device_add(&via_vt82c686_hwm_device); /* fans: CPU1, Chassis; temperatures: CPU, System, unused */
@@ -398,7 +393,6 @@ machine_at_5sg100_init(const machine_t *model)
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(&kbc_ps2_ami_pci_device);
device_add_params(&w83877_device, (void *) (W83877TF | W83877_3F0));
device_add(&sst_flash_29ee010_device);

View File

@@ -794,6 +794,12 @@ upper_write_raml(uint32_t addr, uint32_t val, void *priv)
*(uint32_t *) &ram[addr] = val;
}
uint8_t
machine_t3100e_p1_handler(void)
{
return (t3100e_mono_get() & 1) ? 0xff : 0xbf;
}
int
machine_at_t3100e_init(const machine_t *model)
{
@@ -811,11 +817,10 @@ machine_at_t3100e_init(const machine_t *model)
machine_at_common_ide_init(model);
device_add(&kbc_at_toshiba_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
if (fdc_current[0] == FDC_INTERNAL) {
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
}
/* Hook up system control port */
io_sethandler(0x8084, 0x0001,

View File

@@ -395,13 +395,22 @@ ps1_common_init(const machine_t *model)
dma16_init();
pic2_init();
device_add(&kbc_ps2_ps1_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&port_6x_device);
/* Audio uses ports 200h and 202-207h, so only initialize gameport on 201h. */
standalone_gameport_type = &gameport_201_device;
}
uint8_t
machine_ps1_p1_handler(void)
{
const uint8_t current_drive = fdc_get_current_drive();
/* (B0 or F0) | (fdd_is_525(current_drive) on bit 6) */
return 0xb0 | (fdd_is_525(current_drive) ? 0x40 : 0x00);
}
int
machine_ps1_m2011_init(const machine_t *model)
{

View File

@@ -201,7 +201,7 @@ ps2_isa_common_init(const machine_t *model)
dma16_init();
pic2_init();
device_add(&kbc_ps2_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&port_6x_ps2_device);
}

View File

@@ -1160,7 +1160,6 @@ ps2_mca_board_model_50_init(void)
mem_remap_top(384);
mca_init(4);
device_add(&kbc_ps2_mca_2_device);
ps2.planar_read = model_50_read;
ps2.planar_write = model_50_write;
@@ -1181,7 +1180,6 @@ ps2_mca_board_model_60_init(void)
mem_remap_top(384);
mca_init(8);
device_add(&kbc_ps2_mca_2_device);
ps2.planar_read = model_50_read;
ps2.planar_write = model_50_write;
@@ -1241,7 +1239,6 @@ ps2_mca_board_model_55sx_init(int has_sec_nvram, int slots)
}
mca_init(slots);
device_add(&kbc_ps2_mca_1_device);
if (has_sec_nvram)
device_add(&ps2_nvr_55ls_device);
@@ -1420,7 +1417,6 @@ ps2_mca_board_model_70_type34_init(int is_type4, int slots)
ps2.split_addr = mem_size * 1024;
mca_init(slots);
device_add(&kbc_ps2_mca_1_device);
ps2.planar_read = model_70_type3_read;
ps2.planar_write = model_70_type3_write;
@@ -1513,7 +1509,6 @@ ps2_mca_board_model_80_type2_init(void)
ps2.split_addr = mem_size * 1024;
mca_init(8);
device_add(&kbc_ps2_mca_1_device);
ps2.planar_read = model_80_read;
ps2.planar_write = model_80_write;
@@ -1628,6 +1623,8 @@ machine_ps2_model_50_init(const machine_t *model)
ps2.planar_id = 0xfbff;
ps2_mca_board_model_50_init();
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1651,6 +1648,8 @@ machine_ps2_model_60_init(const machine_t *model)
ps2.planar_id = 0xf7ff;
ps2_mca_board_model_60_init();
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1671,6 +1670,8 @@ machine_ps2_model_55sx_init(const machine_t *model)
ps2.planar_id = 0xfbff;
ps2_mca_board_model_55sx_init(0, 4);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1691,6 +1692,8 @@ machine_ps2_model_65sx_init(const machine_t *model)
ps2.planar_id = 0xe3ff;
ps2_mca_board_model_55sx_init(1, 8);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1711,6 +1714,8 @@ machine_ps2_model_70_type3_init(const machine_t *model)
ps2.planar_id = 0xf9ff;
ps2_mca_board_model_70_type34_init(0, 4);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1731,6 +1736,8 @@ machine_ps2_model_80_init(const machine_t *model)
ps2.planar_id = 0xfdff;
ps2_mca_board_model_80_type2_init();
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1751,6 +1758,8 @@ machine_ps2_model_80_axx_init(const machine_t *model)
ps2.planar_id = 0xfff9;
ps2_mca_board_model_70_type34_init(0, 8);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1771,6 +1780,8 @@ machine_ps2_model_70_type4_init(const machine_t *model)
ps2.planar_id = 0xf9ff;
ps2_mca_board_model_70_type34_init(1, 4);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
@@ -1782,7 +1793,6 @@ ps55_mca_board_model_50t_init(void)
ps2.split_addr = mem_size * 1024;
/* The slot 5 is reserved for the Integrated Fixed Disk II (an internal ESDI hard drive). */
mca_init(5);
device_add(&kbc_ps2_mca_1_device);
ps2.planar_read = ps55_model_50t_read;
ps2.planar_write = ps55_model_50tv_write;
@@ -1826,7 +1836,6 @@ ps55_mca_board_model_50v_init(void)
ps2.split_addr = mem_size * 1024;
/* The slot 5 is reserved for the Integrated Fixed Disk II (an internal ESDI hard drive). */
mca_init(5);
device_add(&kbc_ps2_mca_1_device);
ps2.planar_read = ps55_model_50v_read;
ps2.planar_write = ps55_model_50tv_write;
@@ -1878,7 +1887,7 @@ ps55_mca_board_model_50v_init(void)
}
int
machine_ps55_model_50t_init(const machine_t* model)
machine_ps55_model_50t_init(const machine_t *model)
{
int ret;
@@ -1903,11 +1912,13 @@ machine_ps55_model_50t_init(const machine_t* model)
ps2.planar_id = 0xffee;
ps55_mca_board_model_50t_init();
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}
int
machine_ps55_model_50v_init(const machine_t* model)
machine_ps55_model_50v_init(const machine_t *model)
{
int ret;
@@ -1928,5 +1939,7 @@ machine_ps55_model_50v_init(const machine_t* model)
ps2.planar_id = 0xf1ff;
ps55_mca_board_model_50v_init();
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
return ret;
}

View File

@@ -734,7 +734,7 @@ machine_xt_compaq_portable_init(const machine_t *model)
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_xt_device);
nmi_init();
if (joystick_type)
if (joystick_type[0])
device_add(&gameport_200_device);
lpt_t *lpt = device_add_inst(&lpt_port_device, 1);

View File

@@ -204,7 +204,7 @@ machine_xt_xi8088_init(const machine_t *model)
if (fdc_current[0] == FDC_INTERNAL)
device_add(&fdc_at_device);
device_add(&kbc_ps2_xi8088_device);
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
device_add(&port_6x_xi8088_device);
nmi_init();
device_add(&ibmat_nvr_device);

View File

@@ -139,6 +139,10 @@ void
machine_init(void)
{
bios_only = 0;
machine_set_p1_default(machines[machine].kbc_p1);
machine_set_ps2();
(void) machine_init_ex(machine);
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -530,7 +530,7 @@ ali5123_init(const device_t *info)
io_sethandler(FDC_PRIMARY_ADDR, 0x0002,
ali5123_read, NULL, NULL, ali5123_write, NULL, NULL, dev);
device_add(&kbc_ps2_ali_pci_device);
device_add_params(&kbc_at_device, (void *) KBC_VEN_ALI);
return dev;
}

View File

@@ -764,20 +764,20 @@ fdc37c67x_init(const device_t *info)
switch (dev->kbc_type) {
case FDC37XXX1:
dev->kbc = device_add(&kbc_ps2_compaq_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) KBC_VEN_COMPAQ);
break;
case FDC37XXX2:
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00003500));
break;
case FDC37XXX3:
default:
dev->kbc = device_add(&kbc_ps2_pci_device);
dev->kbc = device_add(&kbc_at_device);
break;
case FDC37XXX5:
dev->kbc = device_add(&kbc_ps2_phoenix_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00013800));
break;
case FDC37XXX7:
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00041600));
break;
}

View File

@@ -1919,20 +1919,20 @@ fdc37c93x_init(const device_t *info)
switch (dev->kbc_type) {
case FDC37XXX1:
dev->kbc = device_add(&kbc_ps2_compaq_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) KBC_VEN_COMPAQ);
break;
case FDC37XXX2:
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00003500));
break;
case FDC37XXX3:
default:
dev->kbc = device_add(&kbc_ps2_pci_device);
dev->kbc = device_add(&kbc_at_device);
break;
case FDC37XXX5:
dev->kbc = device_add(&kbc_ps2_phoenix_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00013800));
break;
case FDC37XXX7:
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00041600));
break;
}

View File

@@ -655,20 +655,20 @@ fdc37m60x_init(const device_t *info)
switch (dev->kbc_type) {
case FDC37XXX1:
dev->kbc = device_add(&kbc_ps2_compaq_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) KBC_VEN_COMPAQ);
break;
case FDC37XXX2:
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00003500));
break;
case FDC37XXX3:
default:
dev->kbc = device_add(&kbc_ps2_pci_device);
dev->kbc = device_add(&kbc_at_device);
break;
case FDC37XXX5:
dev->kbc = device_add(&kbc_ps2_phoenix_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00013800));
break;
case FDC37XXX7:
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00041600));
break;
}

View File

@@ -32,6 +32,7 @@
#include <86box/fdd.h>
#include <86box/fdc.h>
#include <86box/gameport.h>
#include <86box/keyboard.h>
#include <86box/sio.h>
#include <86box/isapnp.h>
#include <86box/plat_fallthrough.h>
@@ -854,6 +855,9 @@ it86x1f_init(UNUSED(const device_t *info))
dev->unlock_id = it86x1f_models[i].unlock_id;
io_sethandler(0x279, 1, NULL, NULL, NULL, it86x1f_write_unlock, NULL, NULL, dev);
if (info->local == ITE_IT8671F)
device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00004800));
it86x1f_reset(dev);
return dev;

View File

@@ -537,13 +537,13 @@ pc87306_init(UNUSED(const device_t *info))
switch (dev->kbc_type) {
case PCX730X_AMI:
default:
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00003500));
break;
case PCX730X_PHOENIX_42:
dev->kbc = device_add(&kbc_ps2_phoenix_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00013700));
break;
case PCX730X_PHOENIX_42I:
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00041600));
break;
}

View File

@@ -902,16 +902,16 @@ pc87307_init(const device_t *info)
lpt_set_cnfga_readout(dev->lpt, 0x14);
switch (info->local & PCX730X_KBC) {
default:
case PCX730X_AMI:
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
default:
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00003500));
break;
/* Optiplex! */
case PCX730X_PHOENIX_42:
dev->kbc = device_add(&kbc_ps2_phoenix_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00013700));
break;
case PCX730X_PHOENIX_42I:
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00041600));
break;
}

View File

@@ -737,16 +737,16 @@ pc87309_init(const device_t *info)
lpt_set_cnfga_readout(dev->lpt, 0x14);
switch (info->local & PCX730X_KBC) {
default:
case PCX730X_AMI:
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
default:
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00003500));
break;
/* Optiplex! */
case PCX730X_PHOENIX_42:
dev->kbc = device_add(&kbc_ps2_phoenix_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00013700));
break;
case PCX730X_PHOENIX_42I:
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00041600));
break;
}

View File

@@ -408,6 +408,8 @@ w83877_write(uint16_t port, uint8_t val, void *priv)
case 0x26:
if (valxor & 0x0f)
w83877_lpt_handler(dev);
if (valxor & 0xf0)
w83877_fdc_handler(dev);
break;
case 0x27:
if (valxor & 0xef)

View File

@@ -1294,10 +1294,10 @@ w83977_init(const device_t *info)
switch (dev->kbc_type) {
case W83977_AMI:
dev->kbc = device_add(&kbc_ps2_ami_pci_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_AMI | 0x00004800));
break;
case W83977_PHOENIX:
dev->kbc = device_add(&kbc_ps2_phoenix_device);
dev->kbc = device_add_params(&kbc_at_device, (void *) (KBC_VEN_PHOENIX | 0x00041900));
break;
}