AT NVR clean-ups and manually applied the pull requests by Toggo9 and Kotochi.

This commit is contained in:
OBattler
2026-02-26 11:47:03 +01:00
parent ff3c905f40
commit 34c0bfc15e
50 changed files with 2726 additions and 1482 deletions

View File

@@ -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();

View File

@@ -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));

View File

@@ -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);

View File

@@ -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));

View File

@@ -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);

View File

@@ -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)
{

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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));

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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;
}

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -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);

View File

@@ -444,8 +444,6 @@ ps1_setup(int model)
device_add(&ps1snd_device);
}
device_add(&ps_nvr_device);
}
static void

View File

@@ -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. */

View File

@@ -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;

View File

@@ -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;
}

View File

@@ -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);

View File

@@ -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