mirror of
https://github.com/86Box/86Box.git
synced 2026-02-28 01:44:22 -07:00
AT NVR clean-ups and manually applied the pull requests by Toggo9 and Kotochi.
This commit is contained in:
@@ -1614,7 +1614,7 @@ ali1543_init(const device_t *info)
|
||||
|
||||
/* ACPI */
|
||||
dev->acpi = device_add(&acpi_ali_device);
|
||||
dev->nvr = device_add(&piix4_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_PIIX4);
|
||||
|
||||
/* DMA */
|
||||
dma_alias_set();
|
||||
|
||||
@@ -1581,11 +1581,11 @@ piix_init(const device_t *info)
|
||||
|
||||
if (dev->type > 3) {
|
||||
if (info->local & PIIX4_NVR_AMI_1995J)
|
||||
dev->nvr = device_add(&piix4_ami_1995j_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_PIIX4_AMI_1995J);
|
||||
else if (info->local & PIIX4_NVR_AMI_1995)
|
||||
dev->nvr = device_add(&piix4_ami_1995_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_PIIX4_AMI_1995);
|
||||
else
|
||||
dev->nvr = device_add(&piix4_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_PIIX4);
|
||||
dev->smbus = device_add(&piix4_smbus_device);
|
||||
|
||||
dev->acpi = device_add(&acpi_intel_device);
|
||||
|
||||
@@ -203,7 +203,7 @@ opti602_init(UNUSED(const device_t *info))
|
||||
io_sethandler(0x0022, 0x0001, opti602_read, NULL, NULL, opti602_write, NULL, NULL, dev);
|
||||
io_sethandler(0x0024, 0x0001, opti602_read, NULL, NULL, opti602_write, NULL, NULL, dev);
|
||||
|
||||
dev->nvr = device_add(&at_mb_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_MB);
|
||||
|
||||
opti602_reset(dev);
|
||||
|
||||
|
||||
@@ -44,6 +44,7 @@ typedef struct opti895_t {
|
||||
static uint8_t masks[0x10] = { 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe,
|
||||
0xe3, 0xff, 0xe3, 0xff, 0x00, 0xff, 0xff, 0xff };
|
||||
|
||||
#define ENABLE_OPTI895_LOG 1
|
||||
#ifdef ENABLE_OPTI895_LOG
|
||||
int opti895_do_log = ENABLE_OPTI895_LOG;
|
||||
|
||||
@@ -159,6 +160,8 @@ opti895_write(uint16_t addr, uint8_t val, void *priv)
|
||||
((dev->idx >= 0xe0) && (dev->idx <= 0xef))) {
|
||||
if (dev->idx > 0x2f)
|
||||
dev->regs[dev->idx] = val;
|
||||
else if (dev->idx == 0x28)
|
||||
dev->regs[dev->idx] = (val & masks[dev->idx - 0x20]) | 0x18;
|
||||
else
|
||||
dev->regs[dev->idx] = val & masks[dev->idx - 0x20];
|
||||
opti895_log("dev->regs[%04x] = %08x\n", dev->idx, val);
|
||||
@@ -247,7 +250,11 @@ opti895_read(uint16_t addr, void *priv)
|
||||
if (((dev->idx >= 0x20) && (dev->idx <= 0x2f) && (dev->idx != 0x2c)) ||
|
||||
((dev->idx >= 0xe0) && (dev->idx <= 0xef))) {
|
||||
ret = dev->regs[dev->idx];
|
||||
if (dev->idx == 0xe0)
|
||||
if (dev->idx == 0x21)
|
||||
ret |= 0x1c;
|
||||
else if (dev->idx == 0x28)
|
||||
ret |= 0x18;
|
||||
else if (dev->idx == 0xe0)
|
||||
ret = (ret & 0xf6) | (in_smm ? 0x00 : 0x08) | !!dev->forced_green;
|
||||
}
|
||||
break;
|
||||
@@ -291,7 +298,7 @@ opti895_init(const device_t *info)
|
||||
|
||||
dev->regs[0x01] = 0xc0;
|
||||
|
||||
dev->regs[0x22] = 0xc4;
|
||||
dev->regs[0x22] = 0xe4;
|
||||
dev->regs[0x25] = 0x7c;
|
||||
dev->regs[0x26] = 0x10;
|
||||
dev->regs[0x27] = 0xde;
|
||||
@@ -304,7 +311,7 @@ opti895_init(const device_t *info)
|
||||
dev->regs[0xe8] = 0x08;
|
||||
dev->regs[0xe9] = 0x08;
|
||||
dev->regs[0xeb] = 0xff;
|
||||
dev->regs[0xef] = 0x40;
|
||||
dev->regs[0xef] = 0x41;
|
||||
|
||||
opti895_recalc(dev);
|
||||
|
||||
|
||||
@@ -1238,7 +1238,7 @@ sis_5513_pci_to_isa_init(UNUSED(const device_t *info))
|
||||
dev->pit_read_reg = pit_is_fast ? pitf_read_reg : pit_read_reg;
|
||||
|
||||
/* NVR */
|
||||
dev->nvr = device_add(&at_mb_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_MB);
|
||||
|
||||
switch (dev->rev) {
|
||||
case 0x00:
|
||||
|
||||
@@ -673,9 +673,9 @@ static void
|
||||
ide_sec_disable();
|
||||
|
||||
if (info->local)
|
||||
dev->nvr = device_add(&ami_1994_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AMI_1994);
|
||||
else
|
||||
dev->nvr = device_add(&at_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT);
|
||||
|
||||
dma_high_page_init();
|
||||
|
||||
|
||||
@@ -667,7 +667,7 @@ sis_85c50x_init(UNUSED(const device_t *info))
|
||||
dev->pit_read_reg = pit_is_fast ? pitf_read_reg : pit_read_reg;
|
||||
|
||||
/* NVR */
|
||||
dev->nvr = device_add(&at_mb_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_MB);
|
||||
|
||||
device_add(&ide_pci_2ch_device);
|
||||
}
|
||||
|
||||
@@ -1722,7 +1722,7 @@ pipc_init(const device_t *info)
|
||||
else if (dev->local >= VIA_PIPC_596A)
|
||||
dev->smbus = device_add(&piix4_smbus_device);
|
||||
|
||||
dev->nvr = device_add(&via_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_VIA);
|
||||
|
||||
if (dev->local >= VIA_PIPC_596A) {
|
||||
dev->acpi = device_add(&acpi_via_596b_device);
|
||||
|
||||
@@ -622,7 +622,7 @@ vl82c59x_init(UNUSED(const device_t *info))
|
||||
dev->port_92 = device_add(&port_92_device);
|
||||
|
||||
/* NVR */
|
||||
dev->nvr = device_add(&at_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT);
|
||||
|
||||
dev->smram[0] = smram_add();
|
||||
dev->smram[1] = smram_add();
|
||||
|
||||
@@ -1393,7 +1393,7 @@ wd76c10_init(UNUSED(const device_t *info))
|
||||
dev->mem_pages[i] = i - 0x20;
|
||||
|
||||
device_add(&port_92_inv_device);
|
||||
dev->nvr = device_add(&amstrad_megapc_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_ZERO_DEFAULT);
|
||||
dev->uart[0] = device_add_inst(&ns16450_device, 1);
|
||||
dev->uart[1] = device_add_inst(&ns16450_device, 2);
|
||||
dev->lpt = device_add_inst(&lpt_port_device, 1);
|
||||
|
||||
@@ -245,6 +245,7 @@ enum {
|
||||
MACHINE_CHIPSET_INTEL_430VX,
|
||||
MACHINE_CHIPSET_INTEL_430TX,
|
||||
MACHINE_CHIPSET_INTEL_450KX,
|
||||
MACHINE_CHIPSET_INTEL_450GX,
|
||||
MACHINE_CHIPSET_INTEL_440FX,
|
||||
MACHINE_CHIPSET_INTEL_440EX,
|
||||
MACHINE_CHIPSET_INTEL_440LX,
|
||||
@@ -353,6 +354,18 @@ typedef struct _machine_ {
|
||||
void *kbc_device;
|
||||
#endif /* EMU_DEVICE_H */
|
||||
uintptr_t kbc_params;
|
||||
#ifdef EMU_DEVICE_H
|
||||
const device_t *nvr_device;
|
||||
#else
|
||||
void *nvr_device;
|
||||
#endif /* EMU_DEVICE_H */
|
||||
uintptr_t nvr_params;
|
||||
#ifdef EMU_DEVICE_H
|
||||
const device_t *sio_device;
|
||||
#else
|
||||
void *sio_device;
|
||||
#endif /* EMU_DEVICE_H */
|
||||
uintptr_t sio_params;
|
||||
/* Bits 23-16: XOR mask, bits 15-8: OR mask, bits 7-0: AND mask. */
|
||||
uint32_t kbc_p1;
|
||||
uint32_t gpio;
|
||||
@@ -361,7 +374,6 @@ typedef struct _machine_ {
|
||||
const device_t *device;
|
||||
const device_t *kbd_device;
|
||||
const device_t *fdc_device;
|
||||
const device_t *sio_device;
|
||||
const device_t *vid_device;
|
||||
const device_t *snd_device;
|
||||
const device_t *net_device;
|
||||
@@ -369,7 +381,6 @@ typedef struct _machine_ {
|
||||
void *device;
|
||||
void *kbd_device;
|
||||
void *fdc_device;
|
||||
void *sio_device;
|
||||
void *vid_device;
|
||||
void *snd_device;
|
||||
void *net_device;
|
||||
@@ -394,9 +405,10 @@ extern int machine_get_machine_from_internal_name(const char *s);
|
||||
extern void machine_init(void);
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t *machine_get_kbc_device(int m);
|
||||
extern const device_t *machine_get_nvr_device(int m);
|
||||
extern const device_t *machine_get_sio_device(int m);
|
||||
extern const device_t *machine_get_device(int m);
|
||||
extern const device_t *machine_get_fdc_device(int m);
|
||||
extern const device_t *machine_get_sio_device(int m);
|
||||
extern const device_t *machine_get_vid_device(int m);
|
||||
extern const device_t *machine_get_snd_device(int m);
|
||||
extern const device_t *machine_get_net_device(int m);
|
||||
@@ -528,6 +540,7 @@ extern int machine_at_px286_init(const machine_t *);
|
||||
extern int machine_at_ataripc4_init(const machine_t *);
|
||||
extern int machine_at_neat_ami_init(const machine_t *);
|
||||
extern int machine_at_3302_init(const machine_t *);
|
||||
extern int machine_at_n8810m30_init(const machine_t *);
|
||||
|
||||
/* SCAMP */
|
||||
extern int machine_at_pc7286_init(const machine_t *);
|
||||
@@ -579,6 +592,7 @@ extern int machine_at_shuttle386sx_init(const machine_t *);
|
||||
/* NEAT */
|
||||
extern int machine_at_cmdsl386sx16_init(const machine_t *);
|
||||
extern int machine_at_neat_init(const machine_t *);
|
||||
extern int machine_at_p3345_init(const machine_t *);
|
||||
|
||||
/* NEATsx */
|
||||
extern int machine_at_if386sx_init(const machine_t *);
|
||||
@@ -659,12 +673,10 @@ extern const device_t opti495_ami_device;
|
||||
extern int machine_at_opti495_ami_init(const machine_t *);
|
||||
|
||||
/* m_at_common.c */
|
||||
extern void machine_at_common_init_ex(const machine_t *, int type);
|
||||
extern void machine_at_common_init(const machine_t *);
|
||||
extern void machine_at_init(const machine_t *);
|
||||
extern void machine_at_ps2_init(const machine_t *);
|
||||
extern void machine_at_common_ide_init(const machine_t *);
|
||||
extern void machine_at_ibm_common_ide_init(const machine_t *);
|
||||
extern void machine_at_ide_init(const machine_t *);
|
||||
extern void machine_at_ps2_ide_init(const machine_t *);
|
||||
|
||||
@@ -965,12 +977,12 @@ extern int machine_at_hot539_init(const machine_t *);
|
||||
|
||||
/* VLSI SuperCore */
|
||||
extern int machine_at_bravoms586_init(const machine_t *);
|
||||
extern int machine_at_g586vpmc_init(const machine_t *);
|
||||
extern int machine_at_m54si_init(const machine_t *);
|
||||
extern int machine_at_pb600_init(const machine_t *);
|
||||
|
||||
/* VLSI Wildcat */
|
||||
extern int machine_at_globalyst620_init(const machine_t *);
|
||||
extern int machine_at_g586vpmc_init(const machine_t *);
|
||||
|
||||
/* m_at_socket7_3v.c */
|
||||
/* i430FX */
|
||||
@@ -986,6 +998,7 @@ extern const device_t vectra52_device;
|
||||
extern int machine_at_vectra52_init(const machine_t *);
|
||||
extern int machine_at_vectra500mt_init(const machine_t *);
|
||||
extern int machine_at_vectra54_init(const machine_t *);
|
||||
extern int machine_at_atlantis_init(const machine_t *);
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t thor_device;
|
||||
#endif
|
||||
@@ -994,7 +1007,6 @@ extern uint32_t machine_at_monaco_gpio_handler(uint8_t write, uint32_t va
|
||||
extern int machine_at_monaco_init(const machine_t *);
|
||||
extern uint32_t machine_at_endeavor_gpio_handler(uint8_t write, uint32_t val);
|
||||
extern int machine_at_endeavor_init(const machine_t *);
|
||||
extern int machine_at_atlantis_init(const machine_t *);
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t monaco_device;
|
||||
#endif
|
||||
@@ -1177,6 +1189,8 @@ extern int machine_at_5sg100_init(const machine_t *);
|
||||
/* m_at_socket8.c */
|
||||
/* i450KX */
|
||||
extern int machine_at_ap61_init(const machine_t *);
|
||||
|
||||
/* i450GX */
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t ficpo6000_device;
|
||||
#endif
|
||||
|
||||
@@ -57,6 +57,76 @@
|
||||
#define TIME_SYNC_ENABLED 1
|
||||
#define TIME_SYNC_UTC 2
|
||||
|
||||
/* Century register for the AT, etc. */
|
||||
#define RTC_CENTURY_AT 0x32
|
||||
/* Century register for the PS/1 and the PS/2. */
|
||||
#define RTC_CENTURY_PS 0x37
|
||||
/* Century register for the Epson Equity LT. */
|
||||
#define RTC_CENTURY_ELT 0x1a
|
||||
/* century register for VIA VT82C586B. */
|
||||
#define RTC_CENTURY_VIA 0x7f
|
||||
/* No century register. */
|
||||
#define RTC_CENTURY_NONE 0xff
|
||||
|
||||
#define FLAG_ZERO_DEFAULT 0x0001
|
||||
#define FLAG_NO_NMI 0x0002
|
||||
#define FLAG_MULTI_ADDRESS 0x0004
|
||||
#define FLAG_MULTI_BANK 0x0008
|
||||
#define FLAG_PIIX4 0x0010
|
||||
#define FLAG_FIXED_SIZE 0x0020
|
||||
#define FLAG_MARTIN_HACK 0x0040
|
||||
#define FLAG_AMI_1992_HACK 0x0080
|
||||
#define FLAG_AMI_1994_HACK 0x0100
|
||||
#define FLAG_P6RP4_HACK 0x0200
|
||||
#define FLAG_AMI_1995_HACK 0x0400
|
||||
#define FLAG_AMI_1999_HACK 0x0800
|
||||
#define FLAG_AMI_1999J_HACK 0x1000
|
||||
#define FLAG_SPITFIRE_HACK 0x2000
|
||||
#define FLAG_BX6_HACK 0x4000
|
||||
|
||||
#define NVR_CENTURY_AT (RTC_CENTURY_AT << 16)
|
||||
#define NVR_CENTURY_PS (RTC_CENTURY_PS << 16)
|
||||
#define NVR_CENTURY_VIA (RTC_CENTURY_VIA << 16)
|
||||
#define NVR_CENTURY_ELT (RTC_CENTURY_ELT << 16)
|
||||
#define NVR_CENTURY_NONE (0xff << 16)
|
||||
|
||||
#define NVR_ADDR_STANDARD (0x0070ULL << 24)
|
||||
#define NVR_ADDR_ELT (0x11b4ULL << 24)
|
||||
#define NVR_ADDR_CONFIG (0xfffeULL << 24)
|
||||
#define NVR_ADDR_NONE (0xffffULL << 24)
|
||||
|
||||
#define NVR_IRQ_STANDARD (0x0008ULL << 40)
|
||||
#define NVR_IRQ_AMSTRAD (0x0001ULL << 40)
|
||||
#define NVR_IRQ_CONFIG (0xfffeULL << 40)
|
||||
#define NVR_IRQ_NONE (0xffffULL << 40)
|
||||
|
||||
#define NVR_AT_STANDARD NVR_IRQ_STANDARD | NVR_ADDR_STANDARD
|
||||
#define NVR_AT_STANDARD_MA NVR_AT_STANDARD | FLAG_MULTI_ADDRESS
|
||||
#define NVR_AT_STANDARD_ZERO NVR_AT_STANDARD | FLAG_ZERO_DEFAULT
|
||||
|
||||
#define NVR_AT_OLD (NVR_AT_STANDARD | NVR_CENTURY_NONE)
|
||||
#define NVR_AT (NVR_AT_STANDARD | NVR_CENTURY_AT)
|
||||
#define NVR_AT_ZERO_DEFAULT (NVR_AT_STANDARD_ZERO | NVR_CENTURY_AT)
|
||||
#define NVR_AT_MA (NVR_AT | FLAG_MULTI_ADDRESS)
|
||||
#define NVR_AT_MA_ZERO (NVR_AT_ZERO_DEFAULT | FLAG_MULTI_ADDRESS)
|
||||
#define NVR_AT_MB (NVR_AT_ZERO_DEFAULT | FLAG_MULTI_BANK)
|
||||
#define NVR_PS (NVR_AT_STANDARD_ZERO | NVR_CENTURY_PS)
|
||||
#define NVR_PS_NO_NMI (NVR_PS | FLAG_NO_NMI)
|
||||
#define NVR_AMSTRAD (NVR_IRQ_AMSTRAD | NVR_ADDR_STANDARD | NVR_CENTURY_AT)
|
||||
#define NVR_AMSTRAD_NO_NMI (NVR_AMSTRAD | FLAG_NO_NMI)
|
||||
#define NVR_PIIX4 (NVR_AT_MA_ZERO | FLAG_PIIX4)
|
||||
#define NVR_AMI_1992 (NVR_AT_ZERO_DEFAULT | FLAG_AMI_1992_HACK)
|
||||
#define NVR_AMI_1994 (NVR_AT_ZERO_DEFAULT | FLAG_AMI_1994_HACK)
|
||||
#define NVR_AMI_1995 (NVR_AT_ZERO_DEFAULT | FLAG_AMI_1995_HACK)
|
||||
#define NVR_P6RP4 (NVR_AT_MA_ZERO | FLAG_P6RP4_HACK)
|
||||
#define NVR_PIIX4_AMI_1995 (NVR_PIIX4 | FLAG_AMI_1999_HACK)
|
||||
#define NVR_PIIX4_AMI_1995J (NVR_PIIX4 | FLAG_AMI_1999J_HACK)
|
||||
#define NVR_VIA (NVR_AT_STANDARD_MA | NVR_CENTURY_VIA)
|
||||
#define NVR_MARTIN (NVR_AT_MB | FLAG_MARTIN_HACK)
|
||||
#define NVR_ELT (NVR_IRQ_NONE | NVR_ADDR_ELT | NVR_CENTURY_ELT)
|
||||
#define NVR_RTC8088 (NVR_IRQ_CONFIG | NVR_ADDR_CONFIG | \
|
||||
NVR_CENTURY_ALT | FLAG_NO_NMI | FLAG_FIXED_SIZE)
|
||||
|
||||
#ifdef _TIMER_H_
|
||||
/* Define a generic RTC/NVRAM device. */
|
||||
typedef struct _nvr_ {
|
||||
@@ -80,26 +150,9 @@ typedef struct _nvr_ {
|
||||
} nvr_t;
|
||||
|
||||
extern int nvr_dosave;
|
||||
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t at_nvr_old_device;
|
||||
extern const device_t at_nvr_device;
|
||||
extern const device_t at_mb_nvr_device;
|
||||
extern const device_t ps_nvr_device;
|
||||
extern const device_t amstrad_nvr_device;
|
||||
extern const device_t amstrad_megapc_nvr_device;
|
||||
extern const device_t ibmat_nvr_device;
|
||||
extern const device_t piix4_nvr_device;
|
||||
extern const device_t ps_no_nmi_nvr_device;
|
||||
extern const device_t amstrad_no_nmi_nvr_device;
|
||||
extern const device_t ami_1992_nvr_device;
|
||||
extern const device_t ami_1994_nvr_device;
|
||||
extern const device_t ami_1995_nvr_device;
|
||||
extern const device_t via_nvr_device;
|
||||
extern const device_t piix4_ami_1995_nvr_device;
|
||||
extern const device_t piix4_ami_1995j_nvr_device;
|
||||
extern const device_t p6rp4_nvr_device;
|
||||
extern const device_t martin_nvr_device;
|
||||
extern const device_t elt_nvr_device;
|
||||
extern const device_t nvr_at_device;
|
||||
#endif
|
||||
|
||||
extern void rtc_tick(void);
|
||||
|
||||
@@ -2971,17 +2971,6 @@ machine_amstrad_init(const machine_t *model, int type)
|
||||
ams->type = type;
|
||||
amstrad_latch = 0x80000000;
|
||||
|
||||
switch (type) {
|
||||
case AMS_PC200:
|
||||
case AMS_PPC512:
|
||||
device_add(&amstrad_no_nmi_nvr_device);
|
||||
break;
|
||||
|
||||
default:
|
||||
device_add(&amstrad_nvr_device);
|
||||
break;
|
||||
}
|
||||
|
||||
machine_common_init(model);
|
||||
|
||||
nmi_init();
|
||||
|
||||
@@ -140,7 +140,7 @@ const device_t ibmat_device = {
|
||||
static void
|
||||
machine_at_ibm_common_init(const machine_t *model)
|
||||
{
|
||||
machine_at_common_init_ex(model, 1);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
@@ -510,8 +510,7 @@ machine_at_m290_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 6);
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&olivetti_eva_device);
|
||||
device_add(&port_6x_olivetti_device);
|
||||
@@ -630,7 +629,7 @@ machine_at_siemens_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 1);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
@@ -923,6 +922,29 @@ machine_at_3302_init(const machine_t *model)
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_n8810m30_init(const machine_t *model) /* Onboard SCSI not yet emulated */
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/n8810m30/at286bios_53889.00.0.17jr.BIN",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&neat_device);
|
||||
|
||||
if (fdc_current[0] == FDC_INTERNAL)
|
||||
device_add(&fdc_at_device);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* SCAMP */
|
||||
int
|
||||
machine_at_pc7286_init(const machine_t *model)
|
||||
@@ -935,7 +957,7 @@ machine_at_pc7286_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
@@ -272,7 +272,7 @@ machine_at_spc6000a_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 1);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&cs8230_device);
|
||||
|
||||
|
||||
@@ -409,8 +409,7 @@ machine_at_adi386sx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&amstrad_megapc_nvr_device); /* NVR that is initialized to all 0x00's. */
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&intel_82335_device);
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
@@ -494,6 +493,31 @@ machine_at_neat_init(const machine_t *model)
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_p3345_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_interleaved("roms/machines/p3345/BIOS_EVEN.BIN",
|
||||
"roms/machines/p3345/BIOS_ODD.BIN",
|
||||
0x000f0000, 65536, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
device_add(&neat_device);
|
||||
device_add(&ide_isa_device);
|
||||
|
||||
if (fdc_current[0] == FDC_INTERNAL)
|
||||
device_add(&fdc_at_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* NEATsx */
|
||||
int
|
||||
machine_at_if386sx_init(const machine_t *model)
|
||||
@@ -507,8 +531,7 @@ machine_at_if386sx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&amstrad_megapc_nvr_device); /* NVR that is initialized to all 0x00's. */
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
@@ -588,7 +611,7 @@ machine_at_cmdsl386sx25_init(const machine_t *model)
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(&gd5402_onboard_commodore_device);
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&ide_isa_device);
|
||||
|
||||
@@ -700,7 +723,7 @@ machine_at_dells333sl_init(const machine_t *model)
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&ide_isa_device);
|
||||
|
||||
@@ -774,7 +797,7 @@ machine_at_wd76c10_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
@@ -60,7 +60,7 @@ machine_at_itoxstar_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -90,7 +90,7 @@ machine_at_arb1423c_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -117,7 +117,7 @@ machine_at_arb1479_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -144,7 +144,7 @@ machine_at_iach488_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -169,7 +169,7 @@ machine_at_pcm9340_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -198,7 +198,7 @@ machine_at_pcm5330_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
#include <86box/machine.h>
|
||||
|
||||
void
|
||||
machine_at_common_init_ex(const machine_t *model, int type)
|
||||
machine_at_common_init(const machine_t *model)
|
||||
{
|
||||
machine_common_init(model);
|
||||
|
||||
@@ -70,24 +70,12 @@ machine_at_common_init_ex(const machine_t *model, int type)
|
||||
pic2_init();
|
||||
dma16_init();
|
||||
|
||||
if (!(type & 4))
|
||||
if (model->init != machine_at_m290_init)
|
||||
device_add(&port_6x_device);
|
||||
type &= 3;
|
||||
|
||||
if (type == 1)
|
||||
device_add(&ibmat_nvr_device);
|
||||
else if (type == 0)
|
||||
device_add(&at_nvr_device);
|
||||
|
||||
standalone_gameport_type = &gameport_device;
|
||||
}
|
||||
|
||||
void
|
||||
machine_at_common_init(const machine_t *model)
|
||||
{
|
||||
machine_at_common_init_ex(model, 0);
|
||||
}
|
||||
|
||||
void
|
||||
machine_at_init(const machine_t *model)
|
||||
{
|
||||
@@ -112,14 +100,6 @@ machine_at_common_ide_init(const machine_t *model)
|
||||
device_add(&ide_isa_device);
|
||||
}
|
||||
|
||||
void
|
||||
machine_at_ibm_common_ide_init(const machine_t *model)
|
||||
{
|
||||
machine_at_common_init_ex(model, 1);
|
||||
|
||||
device_add(&ide_isa_device);
|
||||
}
|
||||
|
||||
void
|
||||
machine_at_ide_init(const machine_t *model)
|
||||
{
|
||||
|
||||
@@ -47,7 +47,7 @@ machine_at_vpc2007_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
is_vpc = 1;
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
|
||||
@@ -50,7 +50,7 @@ machine_at_m729_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -83,7 +83,7 @@ machine_at_acerv62x_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -220,7 +220,7 @@ machine_at_lx6_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -251,7 +251,7 @@ machine_at_optiplexgxa_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 4);
|
||||
@@ -442,7 +442,7 @@ machine_at_ms6117_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -479,7 +479,7 @@ machine_at_ma30d_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -516,7 +516,7 @@ machine_at_brio83xx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
// Actual settings!
|
||||
@@ -610,7 +610,7 @@ machine_at_como_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -643,7 +643,7 @@ machine_at_p6i440e2_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -676,7 +676,7 @@ machine_at_bf6_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -792,7 +792,7 @@ machine_at_bx6_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -823,7 +823,7 @@ machine_at_p2bls_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -862,7 +862,7 @@ machine_at_p3bf_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -962,7 +962,7 @@ machine_at_ax6bc_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1059,7 +1059,7 @@ machine_at_ga686_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1178,7 +1178,7 @@ machine_at_ms6119_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1273,7 +1273,7 @@ machine_at_ms6147_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1363,7 +1363,7 @@ machine_at_p6sba_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1453,7 +1453,7 @@ machine_at_s1846_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1556,7 +1556,7 @@ machine_at_vei8_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1580,7 +1580,7 @@ machine_at_vei8_init(const machine_t *model)
|
||||
static void
|
||||
machine_at_ms6168_common_init(const machine_t *model)
|
||||
{
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1651,7 +1651,7 @@ machine_at_atc6310bxii_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1683,7 +1683,7 @@ machine_at_ficka6130_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1715,7 +1715,7 @@ machine_at_p3v133_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1825,7 +1825,7 @@ machine_at_ms6199va_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1866,7 +1866,7 @@ machine_at_p3v4x_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1901,7 +1901,7 @@ machine_at_gt694va_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1944,7 +1944,7 @@ machine_at_p6f99_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1979,7 +1979,7 @@ machine_at_m747_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -51,7 +51,7 @@ machine_at_fw6400gx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -114,7 +114,7 @@ machine_at_prosignias31x_bx_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -154,7 +154,7 @@ machine_at_s1857_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -193,7 +193,7 @@ machine_at_p6bat_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -50,7 +50,7 @@ machine_at_6gxu_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -85,7 +85,7 @@ machine_at_s2dge_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -304,7 +304,7 @@ machine_at_vect486vl_init(const machine_t *model) // has HDC problems
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&vl82c480_device);
|
||||
|
||||
@@ -342,7 +342,7 @@ machine_at_d824_init(const machine_t *model)
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&vl82c480_device);
|
||||
|
||||
@@ -379,7 +379,7 @@ machine_at_pcs44c_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&vl82c486_device);
|
||||
device_add(&tulip_jumper_device);
|
||||
@@ -437,7 +437,7 @@ machine_at_tuliptc38_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&vl82c486_device);
|
||||
device_add(&tulip_jumper_device);
|
||||
|
||||
@@ -61,7 +61,7 @@ machine_at_pb410a_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_ibm_common_ide_init(model);
|
||||
machine_at_common_ide_init(model);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
@@ -199,8 +199,7 @@ machine_at_g486ip_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1992_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -380,7 +379,7 @@ machine_at_monsoon_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&vl82c480_device);
|
||||
device_add(&vl82c113_device);
|
||||
@@ -408,7 +407,7 @@ machine_at_martin_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&vl82c480_device);
|
||||
device_add(&vl82c113_device);
|
||||
|
||||
@@ -105,15 +105,14 @@ machine_at_ap4100aa_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&ami_1994_nvr_device);
|
||||
device_add(&ali1429g_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);
|
||||
device_add_params(&um866x_device, (void *) (uintptr_t) UM8663BF);
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -265,11 +264,8 @@ machine_at_403tg_init(const machine_t *model)
|
||||
fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
|
||||
ret = bios_load_linear(fn, 0x000f0000, 65536, 0);
|
||||
|
||||
if (nvr_hack) {
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1994_nvr_device);
|
||||
} else
|
||||
machine_at_common_init(model);
|
||||
machine_at_common_init(model);
|
||||
device_add_params(&nvr_at_device, (void *) (uintptr_t) (nvr_hack ? (NVR_AMI_1994) : (NVR_AT)));
|
||||
|
||||
device_add(&opti895_device);
|
||||
|
||||
@@ -482,8 +478,7 @@ machine_at_tg486g_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
device_add(&sis_85c471_device);
|
||||
device_add(&ide_isa_device);
|
||||
device_add_params(&fdc37c6xx_device, (void *) (FDC37C651 | FDC37C6XX_IDE_PRI));
|
||||
|
||||
@@ -50,7 +50,7 @@ machine_at_s370slm_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -85,7 +85,7 @@ machine_at_awo671r_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -120,7 +120,7 @@ machine_at_ambx133_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -156,7 +156,7 @@ machine_at_cubx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -194,7 +194,7 @@ machine_at_63a1_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -227,7 +227,7 @@ machine_at_7sbb_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -256,7 +256,7 @@ machine_at_atc7020bxii_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -288,7 +288,7 @@ machine_at_m773_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -329,7 +329,7 @@ machine_at_apas3_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -361,7 +361,7 @@ machine_at_p6bap_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -397,7 +397,7 @@ machine_at_6via90ap_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -435,7 +435,7 @@ machine_at_cuv4xls_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -565,7 +565,7 @@ machine_at_ms6318_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -602,7 +602,7 @@ machine_at_cairo5_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -350,7 +350,7 @@ machine_at_pc330_6573_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
device_add(&ide_vlb_2ch_device);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -458,7 +458,7 @@ machine_at_pb450_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
device_add(&ide_vlb_2ch_device);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -582,8 +582,7 @@ machine_at_ninja_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x05, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -707,9 +706,8 @@ machine_at_alfredo_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
device_add(&ide_pci_device);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_2 | PCI_NO_IRQ_STEERING);
|
||||
@@ -881,8 +879,7 @@ machine_at_pci400cb_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1994_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -929,7 +926,7 @@ machine_at_acerp3_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_device);
|
||||
@@ -963,7 +960,7 @@ machine_at_486sp3c_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_device);
|
||||
@@ -991,7 +988,7 @@ machine_at_ls486e_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_ls486e_device);
|
||||
@@ -1018,7 +1015,7 @@ machine_at_m4li_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_device);
|
||||
@@ -1045,7 +1042,7 @@ machine_at_ms4144_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_ls486e_device);
|
||||
@@ -1073,7 +1070,7 @@ machine_at_r418_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_device);
|
||||
@@ -1100,7 +1097,7 @@ machine_at_4saw2_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_device);
|
||||
@@ -1129,7 +1126,7 @@ machine_at_4dps_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
machine_at_sis_85c496_common_init(model);
|
||||
device_add(&sis_85c496_device);
|
||||
@@ -1471,11 +1468,8 @@ machine_at_hot433a_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
if (is_award)
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
else
|
||||
device_add(&ami_1994_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
device_add_params(&nvr_at_device, (void *) (uintptr_t) (is_award ? (NVR_AT_ZERO_DEFAULT) : (NVR_AMI_1994)));
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x10, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -254,9 +254,8 @@ machine_at_opti560l_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
device_add(&ide_pci_device);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_2);
|
||||
@@ -434,9 +433,8 @@ machine_at_batman_init(const machine_t *model)
|
||||
}
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
device_add(&ide_pci_device);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_2);
|
||||
@@ -466,9 +464,8 @@ machine_at_batman_init(const machine_t *model)
|
||||
void
|
||||
machine_at_premiere_common_init(const machine_t *model, int pci_switch)
|
||||
{
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
device_add(&ide_pci_2ch_device);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_2 | pci_switch);
|
||||
@@ -669,8 +666,7 @@ machine_at_excaliburpci2_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1994_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -83,7 +83,7 @@ machine_at_celebris5xx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -371,8 +371,7 @@ machine_at_apollo_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1995_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -402,8 +401,7 @@ machine_at_optiplexgxl_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 4);
|
||||
@@ -428,6 +426,91 @@ machine_at_optiplexgxl_init(const machine_t *model)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static const device_config_t pt2000_config[] = {
|
||||
// clang-format off
|
||||
{
|
||||
.name = "bios",
|
||||
.description = "BIOS Version",
|
||||
.type = CONFIG_BIOS,
|
||||
.default_string = "pt2000",
|
||||
.default_int = 0,
|
||||
.file_filter = NULL,
|
||||
.spinner = { 0 },
|
||||
.selection = { { 0 } },
|
||||
.bios = {
|
||||
{
|
||||
.name = "Award Modular BIOS v4.50GP - Revision T1.01",
|
||||
.internal_name = "pt2000",
|
||||
.bios_type = BIOS_NORMAL,
|
||||
.files_no = 1,
|
||||
.local = 0,
|
||||
.size = 131072,
|
||||
.files = { "roms/machines/ficpt2000/PT2000_v1.01.BIN", "" }
|
||||
},
|
||||
{
|
||||
.name = "Award Modular BIOS v4.51PG - Revision 3.072C806",
|
||||
.internal_name = "pt2000_451pg",
|
||||
.bios_type = BIOS_NORMAL,
|
||||
.files_no = 1,
|
||||
.local = 0,
|
||||
.size = 131072,
|
||||
.files = { "roms/machines/ficpt2000/3072c806.bin", "" }
|
||||
},
|
||||
{ .files_no = 0 }
|
||||
},
|
||||
},
|
||||
{ .name = "", .description = "", .type = CONFIG_END }
|
||||
// clang-format on
|
||||
};
|
||||
|
||||
const device_t pt2000_device = {
|
||||
.name = "FIC PT-2000",
|
||||
.internal_name = "pt2000_device",
|
||||
.flags = 0,
|
||||
.local = 0,
|
||||
.init = NULL,
|
||||
.close = NULL,
|
||||
.reset = NULL,
|
||||
.available = NULL,
|
||||
.speed_changed = NULL,
|
||||
.force_redraw = NULL,
|
||||
.config = pt2000_config
|
||||
};
|
||||
|
||||
int
|
||||
machine_at_pt2000_init(const machine_t *model)
|
||||
{
|
||||
int ret = 0;
|
||||
const char *fn;
|
||||
|
||||
/* No ROMs available */
|
||||
if (!device_available(model->device))
|
||||
return ret;
|
||||
|
||||
device_context(model->device);
|
||||
fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
device_add(&i430fx_device);
|
||||
device_add(&piix_device);
|
||||
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX730X_398));
|
||||
device_add(&intel_flash_bxt_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
machine_at_morrison32_gpio_init(void)
|
||||
{
|
||||
@@ -476,7 +559,7 @@ machine_at_morrison32_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_morrison32_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -571,7 +654,7 @@ machine_at_pc330_65x6_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_morrison64_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -625,91 +708,6 @@ machine_at_zappa_gpio_init(void)
|
||||
machine_set_gpio_default(gpio);
|
||||
}
|
||||
|
||||
static const device_config_t pt2000_config[] = {
|
||||
// clang-format off
|
||||
{
|
||||
.name = "bios",
|
||||
.description = "BIOS Version",
|
||||
.type = CONFIG_BIOS,
|
||||
.default_string = "pt2000",
|
||||
.default_int = 0,
|
||||
.file_filter = NULL,
|
||||
.spinner = { 0 },
|
||||
.selection = { { 0 } },
|
||||
.bios = {
|
||||
{
|
||||
.name = "Award Modular BIOS v4.50GP - Revision T1.01",
|
||||
.internal_name = "pt2000",
|
||||
.bios_type = BIOS_NORMAL,
|
||||
.files_no = 1,
|
||||
.local = 0,
|
||||
.size = 131072,
|
||||
.files = { "roms/machines/ficpt2000/PT2000_v1.01.BIN", "" }
|
||||
},
|
||||
{
|
||||
.name = "Award Modular BIOS v4.51PG - Revision 3.072C806",
|
||||
.internal_name = "pt2000_451pg",
|
||||
.bios_type = BIOS_NORMAL,
|
||||
.files_no = 1,
|
||||
.local = 0,
|
||||
.size = 131072,
|
||||
.files = { "roms/machines/ficpt2000/3072c806.bin", "" }
|
||||
},
|
||||
{ .files_no = 0 }
|
||||
},
|
||||
},
|
||||
{ .name = "", .description = "", .type = CONFIG_END }
|
||||
// clang-format on
|
||||
};
|
||||
|
||||
const device_t pt2000_device = {
|
||||
.name = "FIC PT-2000",
|
||||
.internal_name = "pt2000_device",
|
||||
.flags = 0,
|
||||
.local = 0,
|
||||
.init = NULL,
|
||||
.close = NULL,
|
||||
.reset = NULL,
|
||||
.available = NULL,
|
||||
.speed_changed = NULL,
|
||||
.force_redraw = NULL,
|
||||
.config = pt2000_config
|
||||
};
|
||||
|
||||
int
|
||||
machine_at_pt2000_init(const machine_t *model)
|
||||
{
|
||||
int ret = 0;
|
||||
const char *fn;
|
||||
|
||||
/* No ROMs available */
|
||||
if (!device_available(model->device))
|
||||
return ret;
|
||||
|
||||
device_context(model->device);
|
||||
fn = device_get_bios_file(machine_get_device(machine), device_get_config_bios("bios"), 0);
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x08, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x09, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x0A, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
pci_register_slot(0x0B, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
device_add(&i430fx_device);
|
||||
device_add(&piix_device);
|
||||
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX730X_398));
|
||||
device_add(&intel_flash_bxt_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static const device_config_t zappa_config[] = {
|
||||
// clang-format off
|
||||
{
|
||||
@@ -778,7 +776,7 @@ machine_at_zappa_init(const machine_t *model)
|
||||
ret = bios_load_linear_combined(fn, fn2, 0x20000, 128);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_zappa_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -894,8 +892,7 @@ machine_at_hawk_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1994_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1088,8 +1085,7 @@ machine_at_ms5109_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1994_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1121,8 +1117,7 @@ machine_at_torino_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&ami_1994_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1189,7 +1184,7 @@ machine_at_bravoms586_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1216,36 +1211,6 @@ machine_at_bravoms586_init(const machine_t *model)
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_g586vpmc_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/g586vpmc/Vpm_c3.bin",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x02, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x04, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x06, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
pci_register_slot(0x08, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
pci_register_slot(0x0A, PCI_CARD_IDE, 0, 0, 0, 0);
|
||||
|
||||
device_add(&vl82c59x_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX730X_398));
|
||||
device_add(&ide_cmd646_device);
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_m54si_init(const machine_t *model)
|
||||
{
|
||||
@@ -1257,7 +1222,7 @@ machine_at_m54si_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1288,7 +1253,7 @@ machine_at_pb600_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1324,7 +1289,7 @@ machine_at_globalyst620_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1346,3 +1311,33 @@ machine_at_globalyst620_init(const machine_t *model)
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_g586vpmc_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/g586vpmc/Vpm_c3.bin",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x01, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x02, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x04, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x06, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
pci_register_slot(0x08, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
pci_register_slot(0x0A, PCI_CARD_IDE, 0, 0, 0, 0);
|
||||
|
||||
device_add(&vl82c59x_wildcat_device);
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
device_add_params(&pc873xx_device, (void *) (PC87332 | PCX730X_398));
|
||||
device_add(&ide_cmd646_device);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ machine_at_acerm3a_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -190,7 +190,7 @@ machine_at_rubyusb_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_rubyusb_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -326,7 +326,7 @@ machine_at_cu430hx_init(const machine_t *model)
|
||||
ret = bios_load_linear_combined2(fn[0], fn[1], fn[2], fn[3], fn[4], 0x3a000, 128);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_cu430hx_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -452,7 +452,7 @@ machine_at_tc430hx_init(const machine_t *model)
|
||||
ret = bios_load_linear_combined2(fn[0], fn[1], fn[2], fn[3], fn[4], 0x3a000, 128);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_tc430hx_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -544,7 +544,7 @@ machine_at_m7shi_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -573,8 +573,7 @@ machine_at_epc2102_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add_params(&at_nvr_device, (void *) 0x20);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -613,7 +612,7 @@ machine_at_pcv90_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_ag430hx_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -647,7 +646,7 @@ machine_at_p55t2s_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -801,7 +800,7 @@ machine_at_presario2240_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_NO_BRIDGES);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -831,7 +830,7 @@ machine_at_presario4500_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_NO_BRIDGES);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -865,7 +864,7 @@ machine_at_dellhannibalp_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -980,7 +979,7 @@ machine_at_p55va_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1013,7 +1012,7 @@ machine_at_gw2kte_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1046,7 +1045,7 @@ machine_at_brio80xx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1168,7 +1167,7 @@ machine_at_pb680_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_nv430vx_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -1201,7 +1200,7 @@ machine_at_pb810_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1293,7 +1292,7 @@ machine_at_nupro592_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1333,7 +1332,7 @@ machine_at_tx97_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1383,7 +1382,7 @@ machine_at_optiplexgn_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 4);
|
||||
@@ -1421,7 +1420,7 @@ machine_at_tomahawk_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1463,7 +1462,7 @@ machine_at_ym430tx_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1495,7 +1494,7 @@ machine_at_tx97xv_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 4);
|
||||
@@ -1648,7 +1647,7 @@ machine_at_ms5156_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1684,7 +1683,7 @@ machine_at_ma23c_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1775,7 +1774,7 @@ machine_at_an430tx_init(const machine_t *model)
|
||||
ret = bios_load_linear_combined2(fn[0], fn[1], fn[2], fn[3], fn[4], 0x3a000, 160);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1814,7 +1813,7 @@ machine_at_mb540n_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1845,7 +1844,7 @@ machine_at_56a5_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1877,7 +1876,7 @@ machine_at_p5mms98_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1910,7 +1909,7 @@ machine_at_richmond_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1944,7 +1943,7 @@ machine_at_ficva502_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1975,7 +1974,7 @@ machine_at_ficpa2012_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2006,7 +2005,7 @@ machine_at_via809ds_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2038,7 +2037,7 @@ machine_at_cb52xsi_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2121,7 +2120,7 @@ machine_at_ms5146_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2204,7 +2203,7 @@ machine_at_r534f_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2233,7 +2232,7 @@ machine_at_sp97xv_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2262,7 +2261,7 @@ machine_at_sq578_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2290,7 +2289,7 @@ machine_at_ms5172_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2374,7 +2373,7 @@ machine_at_m5ata_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 4);
|
||||
@@ -2403,7 +2402,7 @@ machine_at_ms5164_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -2436,7 +2435,7 @@ machine_at_m560_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -204,7 +204,7 @@ machine_at_holly_init(const machine_t *model) /* HP Pavilion Holly, 7070/7090/51
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_holly_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -228,6 +228,38 @@ machine_at_holly_init(const machine_t *model) /* HP Pavilion Holly, 7070/7090/51
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_vectra500mt_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/vectra500mt/GJ0718.FUL",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x0D, PCI_CARD_VIDEO, 0, 0, 0, 0);
|
||||
pci_register_slot(0x06, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x07, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
device_add(&i430fx_device);
|
||||
device_add(&piix_device);
|
||||
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_NORMAL));
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
machine_at_vectra52_gpio_init(void)
|
||||
{
|
||||
@@ -308,7 +340,7 @@ const device_t vectra52_device = {
|
||||
int
|
||||
machine_at_vectra52_init(const machine_t *model)
|
||||
{
|
||||
int ret = 0;
|
||||
int ret = 0;
|
||||
const char *fn;
|
||||
|
||||
/* No ROMs available */
|
||||
@@ -320,8 +352,8 @@ machine_at_vectra52_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_vectra52_gpio_init();
|
||||
machine_at_common_init(model);
|
||||
machine_at_vectra52_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -335,40 +367,9 @@ machine_at_vectra52_init(const machine_t *model)
|
||||
device_add_params(&pc87306_device, (void *) PCX730X_PHOENIX_42);
|
||||
device_add(&intel_flash_bxt_device);
|
||||
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
return ret;
|
||||
}
|
||||
int
|
||||
machine_at_vectra500mt_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear("roms/machines/vectra500mt/GJ0718.FUL",
|
||||
0x000e0000, 131072, 0);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x0F, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x0D, PCI_CARD_VIDEO, 0, 0, 0, 0);
|
||||
pci_register_slot(0x06, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x07, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x08, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
device_add(&i430fx_device);
|
||||
device_add(&piix_device);
|
||||
device_add_params(&fdc37c93x_device, (void *) (FDC37XXX2 | FDC37C93X_NORMAL));
|
||||
device_add(&sst_flash_29ee010_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -383,7 +384,7 @@ machine_at_vectra54_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -404,6 +405,80 @@ machine_at_vectra54_init(const machine_t *model)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
machine_at_atlantis_gpio_init(void)
|
||||
{
|
||||
uint32_t gpio = 0xffffe0cf;
|
||||
|
||||
/* Register 0x0079: */
|
||||
/* Bit 7: 0 = Clear password, 1 = Keep password. */
|
||||
/* Bit 6: 0 = NVRAM cleared by jumper, 1 = NVRAM normal. */
|
||||
/* Bit 5: 0 = CMOS Setup disabled, 1 = CMOS Setup enabled. */
|
||||
/* Bit 4: External CPU clock (Switch 8). */
|
||||
/* Bit 3: External CPU clock (Switch 7). */
|
||||
/* 50 MHz: Switch 7 = Off, Switch 8 = Off. */
|
||||
/* 60 MHz: Switch 7 = On, Switch 8 = Off. */
|
||||
/* 66 MHz: Switch 7 = Off, Switch 8 = On. */
|
||||
/* Bit 2: 0 = On-board audio absent, 1 = On-board audio present. */
|
||||
/* Bit 1: 0 = Soft-off capable power supply present, 1 = Soft-off capable power supply absent. */
|
||||
/* Bit 0: 0 = 2x multiplier, 1 = 1.5x multiplier (Switch 6). */
|
||||
/* NOTE: A bit is read as 1 if switch is off, and as 0 if switch is on. */
|
||||
if (cpu_busspeed <= 50000000)
|
||||
gpio |= 0xffff0000;
|
||||
else if ((cpu_busspeed > 50000000) && (cpu_busspeed <= 60000000))
|
||||
gpio |= 0xffff0800;
|
||||
else if (cpu_busspeed > 60000000)
|
||||
gpio |= 0xffff1000;
|
||||
|
||||
if (sound_card_current[0] == SOUND_INTERNAL)
|
||||
gpio |= 0xffff0400;
|
||||
|
||||
if (cpu_dmulti <= 1.5)
|
||||
gpio |= 0xffff0100;
|
||||
else
|
||||
gpio |= 0xffff0000;
|
||||
|
||||
machine_set_gpio_default(gpio);
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_atlantis_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear_combined("roms/machines/atlantis/1007CL0_.BIO",
|
||||
"roms/machines/atlantis/1007CL0_.BI1",
|
||||
0x20000, 128);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init(model);
|
||||
machine_at_atlantis_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x08, PCI_CARD_VIDEO, 4, 0, 0, 0);
|
||||
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
if (sound_card_current[0] == SOUND_INTERNAL)
|
||||
machine_snd = device_add(machine_get_snd_device(machine));
|
||||
|
||||
device_add(&i430fx_device);
|
||||
device_add(&piix_device);
|
||||
device_add_params(&pc87306_device, (void *) PCX730X_AMI);
|
||||
device_add(&intel_flash_bxt_ami_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static const device_config_t thor_config[] = {
|
||||
// clang-format off
|
||||
{
|
||||
@@ -535,7 +610,7 @@ machine_at_thor_init(const machine_t *model)
|
||||
}
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_thor_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -648,58 +723,6 @@ machine_at_endeavor_gpio_handler(uint8_t write, uint32_t val)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
machine_at_monaco_gpio_init(void)
|
||||
{
|
||||
uint32_t gpio = 0xffffe0cf;
|
||||
|
||||
/* Register 0x0079: */
|
||||
/* Bit 7: 0 = Clear password, 1 = Keep password. */
|
||||
/* Bit 6: 0 = NVRAM cleared by jumper, 1 = NVRAM normal. */
|
||||
/* Bit 5: 0 = CMOS Setup disabled, 1 = CMOS Setup enabled. */
|
||||
/* Bit 4: External CPU clock (Switch 8). */
|
||||
/* Bit 3: External CPU clock (Switch 7). */
|
||||
/* 50 MHz: Switch 7 = Off, Switch 8 = Off. */
|
||||
/* 60 MHz: Switch 7 = On, Switch 8 = Off. */
|
||||
/* 66 MHz: Switch 7 = Off, Switch 8 = On. */
|
||||
/* Bit 2: 0 = On-board audio absent, 1 = On-board audio present. */
|
||||
/* Bit 1: 0 = Soft-off capable power supply present, 1 = Soft-off capable power supply absent. */
|
||||
/* Bit 0: 0 = 2x multiplier, 1 = 1.5x multiplier (Switch 6). */
|
||||
/* NOTE: A bit is read as 1 if switch is off, and as 0 if switch is on. */
|
||||
if (cpu_busspeed <= 50000000)
|
||||
gpio |= 0xffff0000;
|
||||
else if ((cpu_busspeed > 50000000) && (cpu_busspeed <= 60000000))
|
||||
gpio |= 0xffff0800;
|
||||
else if (cpu_busspeed > 60000000)
|
||||
gpio |= 0xffff1000;
|
||||
|
||||
if (sound_card_current[0] == SOUND_INTERNAL)
|
||||
gpio |= 0xffff0400;
|
||||
|
||||
if (cpu_dmulti <= 1.5)
|
||||
gpio |= 0xffff0100;
|
||||
else
|
||||
gpio |= 0xffff0000;
|
||||
|
||||
machine_set_gpio_default(gpio);
|
||||
}
|
||||
|
||||
uint32_t
|
||||
machine_at_monaco_gpio_handler(uint8_t write, uint32_t val)
|
||||
{
|
||||
uint32_t ret = machine_get_gpio_default();
|
||||
|
||||
if (write) {
|
||||
ret &= ((val & 0xffffffcf) | 0xffff0000);
|
||||
ret |= (val & 0x00000030);
|
||||
|
||||
machine_set_gpio(ret);
|
||||
} else
|
||||
ret = machine_get_gpio();
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_endeavor_init(const machine_t *model)
|
||||
{
|
||||
@@ -712,7 +735,7 @@ machine_at_endeavor_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_endeavor_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -739,45 +762,7 @@ machine_at_endeavor_init(const machine_t *model)
|
||||
}
|
||||
|
||||
/* The Monaco and Atlantis share the same GPIO config */
|
||||
#define machine_at_atlantis_gpio_init machine_at_monaco_gpio_init
|
||||
|
||||
int
|
||||
machine_at_atlantis_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
ret = bios_load_linear_combined("roms/machines/atlantis/1007CL0_.BIO",
|
||||
"roms/machines/atlantis/1007CL0_.BI1",
|
||||
0x20000, 128);
|
||||
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_atlantis_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||
pci_register_slot(0x08, PCI_CARD_VIDEO, 4, 0, 0, 0);
|
||||
pci_register_slot(0x0D, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||
pci_register_slot(0x0E, PCI_CARD_NORMAL, 2, 3, 4, 1);
|
||||
pci_register_slot(0x0F, PCI_CARD_NORMAL, 3, 4, 1, 2);
|
||||
pci_register_slot(0x10, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
|
||||
if (gfxcard[0] == VID_INTERNAL)
|
||||
device_add(machine_get_vid_device(machine));
|
||||
|
||||
if (sound_card_current[0] == SOUND_INTERNAL)
|
||||
machine_snd = device_add(machine_get_snd_device(machine));
|
||||
|
||||
device_add(&i430fx_device);
|
||||
device_add(&piix_device);
|
||||
device_add_params(&pc87306_device, (void *) PCX730X_AMI);
|
||||
device_add(&intel_flash_bxt_ami_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
#define machine_at_monaco_gpio_init machine_at_atlantis_gpio_init
|
||||
|
||||
static const device_config_t monaco_config[] = {
|
||||
// clang-format off
|
||||
@@ -830,6 +815,22 @@ const device_t monaco_device = {
|
||||
.config = monaco_config
|
||||
};
|
||||
|
||||
uint32_t
|
||||
machine_at_monaco_gpio_handler(uint8_t write, uint32_t val)
|
||||
{
|
||||
uint32_t ret = machine_get_gpio_default();
|
||||
|
||||
if (write) {
|
||||
ret &= ((val & 0xffffffcf) | 0xffff0000);
|
||||
ret |= (val & 0x00000030);
|
||||
|
||||
machine_set_gpio(ret);
|
||||
} else
|
||||
ret = machine_get_gpio();
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_at_monaco_init(const machine_t *model)
|
||||
{
|
||||
@@ -847,7 +848,7 @@ machine_at_monaco_init(const machine_t *model)
|
||||
ret = bios_load_linear_combined(fn, fn2, 0x20000, 128);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_monaco_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -999,7 +1000,7 @@ machine_at_pb640_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
machine_at_pb640_gpio_init();
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
@@ -1148,7 +1149,7 @@ machine_at_acerv35n_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1313,8 +1314,7 @@ machine_at_d943_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1356,7 +1356,7 @@ machine_at_gw2kma_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1456,7 +1456,7 @@ machine_at_5sbm2_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1485,7 +1485,7 @@ machine_at_amis727_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1578,7 +1578,7 @@ machine_at_ap5s_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1607,7 +1607,7 @@ machine_at_fm562_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 4);
|
||||
@@ -1638,7 +1638,7 @@ machine_at_pc140_6260_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 4);
|
||||
@@ -1724,7 +1724,7 @@ machine_at_ms5124_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1 | FLAG_TRC_CONTROLS_CPURST);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -1754,7 +1754,7 @@ machine_at_zeoswildcat_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -72,6 +72,7 @@ machine_at_ap61_init(const machine_t *model)
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* i450GX */
|
||||
int
|
||||
machine_at_p6rp4_init(const machine_t *model)
|
||||
{
|
||||
@@ -83,8 +84,7 @@ machine_at_p6rp4_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
device_add(&p6rp4_nvr_device);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x19, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -173,7 +173,7 @@ machine_at_ficpo6000_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x19, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -207,7 +207,7 @@ machine_at_acerv60n_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -496,7 +496,7 @@ machine_at_m6mi_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -50,7 +50,7 @@ machine_at_p5a_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -86,7 +86,7 @@ machine_at_m579_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -118,7 +118,7 @@ machine_at_gwlucas_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -156,7 +156,7 @@ machine_at_5aa_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -243,7 +243,7 @@ machine_at_g5x_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000e0000, 131072, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -278,7 +278,7 @@ machine_at_ax59pro_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -364,7 +364,7 @@ machine_at_delhi3_init(const machine_t *model)
|
||||
ret = bios_load_linear(fn, 0x000c0000, 262144, 0);
|
||||
device_context_restore();
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -395,7 +395,7 @@ machine_at_mvp3_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -425,7 +425,7 @@ machine_at_ficva503a_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -461,7 +461,7 @@ machine_at_5emapro_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
@@ -496,7 +496,7 @@ machine_at_k6bv3p_a_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 1, 2, 3, 5);
|
||||
@@ -528,7 +528,7 @@ machine_at_5sg100_init(const machine_t *model)
|
||||
if (bios_only || !ret)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init_ex(model, 2);
|
||||
machine_at_common_init(model);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||
|
||||
@@ -191,7 +191,7 @@ machine_elt_init(const machine_t *model)
|
||||
* indicate the correct display type */
|
||||
device_add(&kbc_xt_device);
|
||||
|
||||
device_add(&elt_nvr_device);
|
||||
device_add_params(model->nvr_device, (void *) model->nvr_params);
|
||||
|
||||
io_sethandler(0x11b8, 1, sysstat_in, NULL, NULL, sysstat_out, NULL, NULL, cga);
|
||||
|
||||
|
||||
@@ -444,8 +444,6 @@ ps1_setup(int model)
|
||||
|
||||
device_add(&ps1snd_device);
|
||||
}
|
||||
|
||||
device_add(&ps_nvr_device);
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
@@ -229,8 +229,6 @@ ps2_isa_setup(int model, int cpu_type)
|
||||
|
||||
mem_remap_top(384);
|
||||
|
||||
device_add(&ps_nvr_device);
|
||||
|
||||
device_add(&fdc_ps2_device);
|
||||
|
||||
/* Enable the builtin HDC. */
|
||||
|
||||
@@ -1636,7 +1636,6 @@ machine_ps2_common_init(const machine_t *model)
|
||||
|
||||
dma16_init();
|
||||
ps2_dma_init();
|
||||
device_add(&ps_no_nmi_nvr_device);
|
||||
pic2_init();
|
||||
|
||||
int pit_type = ((pit_mode == -1 && is486) || pit_mode == 1) ? PIT_8254_FAST : PIT_8254;
|
||||
|
||||
@@ -2082,8 +2082,6 @@ machine_xt_tuliptc8_init(const machine_t *model)
|
||||
nmi_init();
|
||||
standalone_gameport_type = &gameport_200_device;
|
||||
|
||||
device_add(&amstrad_megapc_nvr_device);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -2134,8 +2132,6 @@ machine_xt_pc5086_init(const machine_t *model)
|
||||
|
||||
device_add(&kbc_xt_device);
|
||||
|
||||
device_add(&amstrad_megapc_nvr_device); /* NVR that is initialized to all 0x00's. */
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
@@ -207,7 +207,6 @@ machine_xt_xi8088_init(const machine_t *model)
|
||||
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);
|
||||
pic2_init();
|
||||
standalone_gameport_type = &gameport_200_device;
|
||||
device_add(&sst_flash_39sf010_device);
|
||||
|
||||
@@ -117,6 +117,9 @@ machine_init_ex(int m)
|
||||
cpu_fast_off_reset();
|
||||
|
||||
pci_flags = 0x00000000;
|
||||
|
||||
if (machines[m].nvr_device)
|
||||
device_add_params(machines[m].nvr_device, (void *) (uintptr_t) machines[m].nvr_params);
|
||||
}
|
||||
|
||||
is_pcjr = 0;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
503
src/nvr_at.c
503
src/nvr_at.c
@@ -238,67 +238,59 @@
|
||||
#include <86box/nvr.h>
|
||||
|
||||
/* RTC registers and bit definitions. */
|
||||
#define RTC_SECONDS 0
|
||||
#define RTC_ALSECONDS 1
|
||||
#define AL_DONTCARE 0xc0 /* Alarm time is not set */
|
||||
#define RTC_MINUTES 2
|
||||
#define RTC_ALMINUTES 3
|
||||
#define RTC_HOURS 4
|
||||
#define RTC_AMPM 0x80 /* PM flag if 12h format in use */
|
||||
#define RTC_ALHOURS 5
|
||||
#define RTC_DOW 6
|
||||
#define RTC_DOM 7
|
||||
#define RTC_MONTH 8
|
||||
#define RTC_YEAR 9
|
||||
#define RTC_REGA 10
|
||||
#define REGA_UIP 0x80
|
||||
#define REGA_DV2 0x40
|
||||
#define REGA_DV1 0x20
|
||||
#define REGA_DV0 0x10
|
||||
#define REGA_DV 0x70
|
||||
#define REGA_RS3 0x08
|
||||
#define REGA_RS2 0x04
|
||||
#define REGA_RS1 0x02
|
||||
#define REGA_RS0 0x01
|
||||
#define REGA_RS 0x0f
|
||||
#define RTC_REGB 11
|
||||
#define REGB_SET 0x80
|
||||
#define REGB_PIE 0x40
|
||||
#define REGB_AIE 0x20
|
||||
#define REGB_UIE 0x10
|
||||
#define REGB_SQWE 0x08
|
||||
#define REGB_DM 0x04
|
||||
#define REGB_2412 0x02
|
||||
#define REGB_DSE 0x01
|
||||
#define RTC_REGC 12
|
||||
#define REGC_IRQF 0x80
|
||||
#define REGC_PF 0x40
|
||||
#define REGC_AF 0x20
|
||||
#define REGC_UF 0x10
|
||||
#define RTC_REGD 13
|
||||
#define REGD_VRT 0x80
|
||||
#define RTC_CENTURY_AT 0x32 /* century register for AT etc */
|
||||
#define RTC_CENTURY_PS 0x37 /* century register for PS/1 PS/2 */
|
||||
#define RTC_CENTURY_ELT 0x1A /* century register for Epson Equity LT */
|
||||
#define RTC_ALDAY 0x7D /* VIA VT82C586B - alarm day */
|
||||
#define RTC_ALMONTH 0x7E /* VIA VT82C586B - alarm month */
|
||||
#define RTC_CENTURY_VIA 0x7F /* century register for VIA VT82C586B */
|
||||
#define RTC_SECONDS 0
|
||||
#define RTC_ALSECONDS 1
|
||||
/* Alarm time is not set. */
|
||||
#define AL_DONTCARE 0xc0
|
||||
#define RTC_MINUTES 2
|
||||
#define RTC_ALMINUTES 3
|
||||
#define RTC_HOURS 4
|
||||
/* PM flag if 12h format in use. */
|
||||
#define RTC_AMPM 0x80
|
||||
#define RTC_ALHOURS 5
|
||||
#define RTC_DOW 6
|
||||
#define RTC_DOM 7
|
||||
#define RTC_MONTH 8
|
||||
#define RTC_YEAR 9
|
||||
#define RTC_REGA 10
|
||||
#define REGA_UIP 0x80
|
||||
#define REGA_DV2 0x40
|
||||
#define REGA_DV1 0x20
|
||||
#define REGA_DV0 0x10
|
||||
#define REGA_DV 0x70
|
||||
#define REGA_RS3 0x08
|
||||
#define REGA_RS2 0x04
|
||||
#define REGA_RS1 0x02
|
||||
#define REGA_RS0 0x01
|
||||
#define REGA_RS 0x0f
|
||||
#define RTC_REGB 11
|
||||
#define REGB_SET 0x80
|
||||
#define REGB_PIE 0x40
|
||||
#define REGB_AIE 0x20
|
||||
#define REGB_UIE 0x10
|
||||
#define REGB_SQWE 0x08
|
||||
#define REGB_DM 0x04
|
||||
#define REGB_2412 0x02
|
||||
#define REGB_DSE 0x01
|
||||
#define RTC_REGC 12
|
||||
#define REGC_IRQF 0x80
|
||||
#define REGC_PF 0x40
|
||||
#define REGC_AF 0x20
|
||||
#define REGC_UF 0x10
|
||||
#define RTC_REGD 13
|
||||
#define REGD_VRT 0x80
|
||||
/* VIA VT82C586B - alarm day. */
|
||||
#define RTC_ALDAY 0x7d
|
||||
/* VIA VT82C586B - alarm month. */
|
||||
#define RTC_ALMONTH 0x7e
|
||||
|
||||
#define RTC_ALDAY_SIS 0x7E /* Day of Month Alarm for SiS */
|
||||
#define RTC_ALMONT_SIS 0x7F /* Month Alarm for SiS */
|
||||
/* Day of Month Alarm for SiS. */
|
||||
#define RTC_ALDAY_SIS 0x7e
|
||||
/* Month Alarm for SiS. */
|
||||
#define RTC_ALMONTH_SIS 0x7f
|
||||
|
||||
#define RTC_REGS 14 /* number of registers */
|
||||
|
||||
#define FLAG_NO_NMI 0x001
|
||||
#define FLAG_AMI_1992_HACK 0x002
|
||||
#define FLAG_AMI_1994_HACK 0x004
|
||||
#define FLAG_AMI_1995_HACK 0x008
|
||||
#define FLAG_AMI_1999_HACK 0x010
|
||||
#define FLAG_AMI_1999J_HACK 0x020
|
||||
#define FLAG_P6RP4_HACK 0x040
|
||||
#define FLAG_PIIX4 0x080
|
||||
#define FLAG_MULTI_BANK 0x100
|
||||
#define FLAG_MARTIN_HACK 0x200
|
||||
/* Number of registers. */
|
||||
#define RTC_REGS 14
|
||||
|
||||
typedef struct local_t {
|
||||
int8_t stat;
|
||||
@@ -319,6 +311,7 @@ typedef struct local_t {
|
||||
int16_t state;
|
||||
|
||||
uint16_t flags;
|
||||
uint16_t default_addr;
|
||||
|
||||
uint16_t addr[8];
|
||||
|
||||
@@ -482,7 +475,7 @@ timer_update(void *priv)
|
||||
/* Check for any alarms we need to handle. */
|
||||
if (check_alarm(nvr, RTC_SECONDS) && check_alarm(nvr, RTC_MINUTES) && check_alarm(nvr, RTC_HOURS) &&
|
||||
check_alarm_via(nvr, RTC_DOM, RTC_ALDAY) && check_alarm_via(nvr, RTC_MONTH, RTC_ALMONTH) /* &&
|
||||
check_alarm_via(nvr, RTC_DOM, RTC_ALDAY_SIS) && check_alarm_via(nvr, RTC_MONTH, RTC_ALMONT_SIS) */) {
|
||||
check_alarm_via(nvr, RTC_DOM, RTC_ALDAY_SIS) && check_alarm_via(nvr, RTC_MONTH, RTC_ALMONTH_SIS) */) {
|
||||
nvr->regs[RTC_REGC] |= REGC_AF;
|
||||
timer_update_irq(nvr);
|
||||
}
|
||||
@@ -1148,108 +1141,34 @@ nvr_at_init(const device_t *info)
|
||||
|
||||
local = (local_t *) malloc(sizeof(local_t));
|
||||
memset(local, 0x00, sizeof(local_t));
|
||||
nvr->data = local;
|
||||
|
||||
nvr->data = local;
|
||||
|
||||
/* This is machine specific. */
|
||||
nvr->size = machines[machine].nvrmask + 1;
|
||||
local->lock = (uint8_t *) malloc(nvr->size);
|
||||
nvr->size = (info->local & FLAG_FIXED_SIZE) ? 128 :
|
||||
(machines[machine].nvrmask + 1);
|
||||
local->lock = (uint8_t *) malloc(nvr->size);
|
||||
memset(local->lock, 0x00, nvr->size);
|
||||
local->def = 0xff /*0x00*/;
|
||||
local->flags = 0x00;
|
||||
switch (info->local & 0x0f) {
|
||||
case 0: /* standard AT, no century register */
|
||||
if (info->local == 32) {
|
||||
local->flags |= FLAG_P6RP4_HACK;
|
||||
nvr->irq = 8;
|
||||
local->cent = RTC_CENTURY_AT;
|
||||
} else {
|
||||
nvr->irq = 8;
|
||||
local->cent = 0xff;
|
||||
}
|
||||
break;
|
||||
|
||||
case 1: /* standard AT */
|
||||
case 5: /* AMI WinBIOS 1994 */
|
||||
case 6: /* AMI BIOS 1995 */
|
||||
if ((info->local & 0x1f) == 0x11) {
|
||||
local->flags |= FLAG_PIIX4;
|
||||
local->def = 0x00;
|
||||
} else {
|
||||
local->def = 0x00;
|
||||
if ((info->local & 0x1f) == 0x15)
|
||||
local->flags |= FLAG_AMI_1994_HACK;
|
||||
else if ((info->local & 0x1f) == 0x16)
|
||||
local->flags |= FLAG_AMI_1995_HACK;
|
||||
else
|
||||
local->def = 0xff;
|
||||
}
|
||||
nvr->irq = 8;
|
||||
local->cent = RTC_CENTURY_AT;
|
||||
break;
|
||||
local->flags = info->local & 0xffff;
|
||||
local->cent = (info->local >> 16) & 0xff;
|
||||
local->default_addr = (info->local >> 24) & 0xffff;
|
||||
local->def = (local->flags & FLAG_ZERO_DEFAULT) ? 0x00 : 0xff;
|
||||
nvr->irq = (info->local >> 40) & 0xff;
|
||||
|
||||
case 2: /* PS/1 or PS/2 */
|
||||
nvr->irq = 8;
|
||||
local->cent = RTC_CENTURY_PS;
|
||||
local->def = 0x00;
|
||||
if (info->local & 0x10)
|
||||
local->flags |= FLAG_NO_NMI;
|
||||
break;
|
||||
if (nvr->irq == 0xff)
|
||||
nvr->irq = -1;
|
||||
else if (nvr->irq == 0xfe)
|
||||
nvr->irq = device_get_config_int("irq");
|
||||
|
||||
case 3: /* Amstrad PC's */
|
||||
nvr->irq = 1;
|
||||
local->cent = RTC_CENTURY_AT;
|
||||
local->def = 0xff;
|
||||
if (info->local & 0x10)
|
||||
local->flags |= FLAG_NO_NMI;
|
||||
break;
|
||||
if (local->default_addr == 0xfffe)
|
||||
local->default_addr = device_get_config_hex16("base");
|
||||
|
||||
case 4: /* IBM AT */
|
||||
if (info->local & 0x10) {
|
||||
local->def = 0x00;
|
||||
local->flags |= FLAG_AMI_1992_HACK;
|
||||
} else if ((info->local == 36) || (info->local == 68)) {
|
||||
local->def = 0x00;
|
||||
if (info->local == 68)
|
||||
local->flags |= FLAG_MARTIN_HACK;
|
||||
} else
|
||||
local->def = 0xff;
|
||||
nvr->irq = 8;
|
||||
local->cent = RTC_CENTURY_AT;
|
||||
break;
|
||||
if (nvr->is_new && (machines[machine].init == machine_at_spitfire_init))
|
||||
local->flags |= FLAG_SPITFIRE_HACK;
|
||||
|
||||
case 7: /* VIA VT82C586B */
|
||||
nvr->irq = 8;
|
||||
local->cent = RTC_CENTURY_VIA;
|
||||
break;
|
||||
case 8: /* Epson Equity LT */
|
||||
nvr->irq = -1;
|
||||
local->cent = RTC_CENTURY_ELT;
|
||||
break;
|
||||
case 9: /* Intel PIIX4 + AMI 1999 hack */
|
||||
local->flags |= (FLAG_PIIX4 | FLAG_AMI_1999_HACK);
|
||||
local->def = 0x00;
|
||||
nvr->irq = 8;
|
||||
local->cent = RTC_CENTURY_AT;
|
||||
break;
|
||||
case 0x0a: /* Intel PIIX4 + AMI 1999J hack */
|
||||
local->flags |= (FLAG_PIIX4 | FLAG_AMI_1999J_HACK);
|
||||
local->def = 0x00;
|
||||
nvr->irq = 8;
|
||||
local->cent = RTC_CENTURY_AT;
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
if (info->local & 0x20)
|
||||
local->def = 0x00;
|
||||
|
||||
if (machines[machine].init == machine_at_monsoon_init)
|
||||
local->def = 0xff;
|
||||
|
||||
if (info->local & 0x40)
|
||||
local->flags |= FLAG_MULTI_BANK;
|
||||
if (nvr->is_new && (machines[machine].init == machine_at_bx6_init))
|
||||
local->flags |= FLAG_BX6_HACK;
|
||||
|
||||
local->read_addr = 1;
|
||||
|
||||
@@ -1276,27 +1195,21 @@ nvr_at_init(const device_t *info)
|
||||
timer_load_count(nvr);
|
||||
|
||||
/* Set up the I/O handler for this device. */
|
||||
if (info->local == 8) {
|
||||
io_sethandler(0x11b4, 2,
|
||||
io_sethandler(local->default_addr, 2,
|
||||
nvr_read, NULL, NULL, nvr_write, NULL, NULL, nvr);
|
||||
|
||||
if (local->flags & FLAG_MULTI_ADDRESS)
|
||||
io_sethandler(local->default_addr + 2, 2,
|
||||
nvr_read, NULL, NULL, nvr_write, NULL, NULL, nvr);
|
||||
} else {
|
||||
io_sethandler(0x0070, 2,
|
||||
nvr_read, NULL, NULL, nvr_write, NULL, NULL, nvr);
|
||||
}
|
||||
if (((info->local & 0x1f) == 0x11) || ((info->local & 0x1f) == 0x17) ||
|
||||
((info->local & 0x1f) == 0x18)) {
|
||||
io_sethandler(0x0072, 2,
|
||||
nvr_read, NULL, NULL, nvr_write, NULL, NULL, nvr);
|
||||
}
|
||||
|
||||
nvr_at_inited = 1;
|
||||
}
|
||||
|
||||
/* This is a hack but it is required for the machine to boot properly, no idea why. */
|
||||
if (nvr->is_new && (machines[machine].init == machine_at_spitfire_init))
|
||||
if (nvr->is_new && (local->flags & FLAG_SPITFIRE_HACK))
|
||||
nvr->regs[0x33] = nvr->regs[0x34] = 0xff;
|
||||
|
||||
if (nvr->is_new && (machines[machine].init == machine_at_bx6_init))
|
||||
if (nvr->is_new && (local->flags & FLAG_BX6_HACK))
|
||||
nvr->regs[0x39] = 0x09;
|
||||
|
||||
return nvr;
|
||||
@@ -1328,8 +1241,8 @@ nvr_at_close(void *priv)
|
||||
nvr_at_inited = 0;
|
||||
}
|
||||
|
||||
const device_t at_nvr_old_device = {
|
||||
.name = "PC/AT NVRAM (No century)",
|
||||
const device_t nvr_at_device = {
|
||||
.name = "PC/AT NVRAM",
|
||||
.internal_name = "at_nvr_old",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0,
|
||||
@@ -1341,255 +1254,3 @@ const device_t at_nvr_old_device = {
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t at_nvr_device = {
|
||||
.name = "PC/AT NVRAM",
|
||||
.internal_name = "at_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 1,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t at_mb_nvr_device = {
|
||||
.name = "PC/AT NVRAM",
|
||||
.internal_name = "at_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x40 | 0x20 | 1,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t ps_nvr_device = {
|
||||
.name = "PS/1 or PS/2 NVRAM",
|
||||
.internal_name = "ps_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 2,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t amstrad_nvr_device = {
|
||||
.name = "Amstrad NVRAM",
|
||||
.internal_name = "amstrad_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 3,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t ibmat_nvr_device = {
|
||||
.name = "IBM AT NVRAM",
|
||||
.internal_name = "ibmat_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 4,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t piix4_nvr_device = {
|
||||
.name = "Intel PIIX4 PC/AT NVRAM",
|
||||
.internal_name = "piix4_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 1,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t ps_no_nmi_nvr_device = {
|
||||
.name = "PS/1 or PS/2 NVRAM (No NMI)",
|
||||
.internal_name = "ps1_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 2,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t amstrad_no_nmi_nvr_device = {
|
||||
.name = "Amstrad NVRAM (No NMI)",
|
||||
.internal_name = "amstrad_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 3,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t ami_1992_nvr_device = {
|
||||
.name = "AMI Color 1992 PC/AT NVRAM",
|
||||
.internal_name = "ami_1992_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 4,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t ami_1994_nvr_device = {
|
||||
.name = "AMI WinBIOS 1994 PC/AT NVRAM",
|
||||
.internal_name = "ami_1994_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 5,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t ami_1995_nvr_device = {
|
||||
.name = "AMI WinBIOS 1995 PC/AT NVRAM",
|
||||
.internal_name = "ami_1995_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 6,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t via_nvr_device = {
|
||||
.name = "VIA PC/AT NVRAM",
|
||||
.internal_name = "via_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 7,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t piix4_ami_1995_nvr_device = {
|
||||
.name = "Intel PIIX4 AMI WinBIOS 1995 PC/AT NVRAM",
|
||||
.internal_name = "piix4_ami_1995_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 9,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t piix4_ami_1995j_nvr_device = {
|
||||
.name = "Intel PIIX4 AMI WinBIOS 1995J PC/AT NVRAM",
|
||||
.internal_name = "piix4_ami_1995j_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0x10 | 10,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t p6rp4_nvr_device = {
|
||||
.name = "ASUS P/I-P6RP4 PC/AT NVRAM",
|
||||
.internal_name = "p6rp4_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 32,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t amstrad_megapc_nvr_device = {
|
||||
.name = "Amstrad MegaPC NVRAM",
|
||||
.internal_name = "amstrad_megapc_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 36,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t martin_nvr_device = {
|
||||
.name = "Zeos Martin NVRAM",
|
||||
.internal_name = "martin_nvr",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 68,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t elt_nvr_device = {
|
||||
.name = "Epson Equity LT NVRAM",
|
||||
.internal_name = "elt_nvr",
|
||||
.flags = DEVICE_ISA,
|
||||
.local = 8,
|
||||
.init = nvr_at_init,
|
||||
.close = nvr_at_close,
|
||||
.reset = nvr_at_reset,
|
||||
.available = NULL,
|
||||
.speed_changed = nvr_at_speed_changed,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
@@ -2323,7 +2323,6 @@ ql_sxp_begin_response_entry(ql_sxp_req_t *pkt, isp_req_status_t *resp)
|
||||
static double
|
||||
ql_sxp_handle_state_send_cdb_bios(ql_t *dev, scsi_device_t *sd)
|
||||
{
|
||||
ql_sxp_req_t *pkt = &dev->pkt;
|
||||
isp_req_status_t *resp = &dev->pkt_resp;
|
||||
double media_period = 10.0;
|
||||
uint64_t bytes_xfered = 0;
|
||||
|
||||
@@ -298,7 +298,7 @@ f82c606_init(const device_t *info)
|
||||
{
|
||||
upc_t *dev = (upc_t *) calloc(1, sizeof(upc_t));
|
||||
|
||||
dev->nvr = device_add(&at_nvr_old_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_OLD);
|
||||
dev->gameport = gameport_add(&gameport_sio_device);
|
||||
|
||||
dev->uart[0] = device_add_inst(&ns16450_device, 1);
|
||||
|
||||
@@ -1892,7 +1892,7 @@ fdc37c93x_init(const device_t *info)
|
||||
dev->port_370 = !!(info->local & FDC37XXXX_370);
|
||||
|
||||
if (dev->has_nvr) {
|
||||
dev->nvr = device_add(&amstrad_megapc_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_ZERO_DEFAULT);
|
||||
|
||||
nvr_bank_set(0, 0, dev->nvr);
|
||||
nvr_bank_set(1, 0xff, dev->nvr);
|
||||
|
||||
@@ -486,7 +486,7 @@ pc87306_init(UNUSED(const device_t *info))
|
||||
dev->lpt = device_add_inst(&lpt_port_device, 1);
|
||||
lpt_set_cnfga_readout(dev->lpt, 0x10);
|
||||
|
||||
dev->nvr = device_add(&at_mb_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_MB);
|
||||
|
||||
switch (dev->kbc_type) {
|
||||
case PCX730X_AMI:
|
||||
|
||||
@@ -135,11 +135,12 @@ vl82c113_init(UNUSED(const device_t *info))
|
||||
vl82c113_t *dev = (vl82c113_t *) calloc(1, sizeof(vl82c113_t));
|
||||
|
||||
if (machines[machine].init == machine_at_martin_init)
|
||||
dev->nvr = device_add(&martin_nvr_device);
|
||||
else if (machines[machine].init == machine_at_sensation1_init || machines[machine].init == machine_at_sensation2_init)
|
||||
dev->nvr = device_add(&at_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_MARTIN);
|
||||
else if ((machines[machine].init == machine_at_monsoon_init) || (machines[machine].init == machine_at_sensation1_init) ||
|
||||
(machines[machine].init == machine_at_sensation2_init))
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT);
|
||||
else
|
||||
dev->nvr = device_add(&amstrad_megapc_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_ZERO_DEFAULT);
|
||||
|
||||
dev->nvr_enabled = 1;
|
||||
dev->nvr_base = 0x0070;
|
||||
|
||||
@@ -1287,7 +1287,7 @@ w83977_init(const device_t *info)
|
||||
dev->has_nvr = !(info->local & W83977_NO_NVR);
|
||||
|
||||
if (dev->has_nvr && (dev->id != 1)) {
|
||||
dev->nvr = device_add(&amstrad_megapc_nvr_device);
|
||||
dev->nvr = device_add_params(&nvr_at_device, (void *) (uintptr_t) NVR_AT_ZERO_DEFAULT);
|
||||
|
||||
nvr_bank_set(0, 0, dev->nvr);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user