Add the Olivetti M4-5xx.

This commit is contained in:
BurnedPinguin
2023-07-13 00:50:02 +02:00
parent 9cd3109bb1
commit 7ff141ba99
3 changed files with 71 additions and 0 deletions

View File

@@ -485,6 +485,7 @@ extern int machine_at_403tg_init(const machine_t *);
extern int machine_at_403tg_d_init(const machine_t *);
extern int machine_at_403tg_d_mr_init(const machine_t *);
extern int machine_at_pc330_6573_init(const machine_t *);
extern int machine_at_m45xx_init(const machine_t *);
extern int machine_at_mvi486_init(const machine_t *);
extern int machine_at_sis401_init(const machine_t *);

View File

@@ -670,6 +670,37 @@ machine_at_pc330_6573_init(const machine_t *model) /* doesn't like every CPU oth
return ret;
}
int
machine_at_m45xx_init(const machine_t *model)
{
int ret;
ret = bios_load_linear_inverted("roms/machines/m45xx/optoli_082594.rom",
0x000e0000, 131072, 0);
if (bios_only || !ret)
return ret;
machine_at_common_init_ex(model, 2);
device_add(&ami_1994_nvr_device);
pci_init(PCI_CONFIG_TYPE_1);
pci_register_slot(0x10, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x15, PCI_CARD_NORMAL, 4, 1, 2, 3);
pci_register_slot(0x16, PCI_CARD_NORMAL, 3, 4, 1, 2);
pci_register_slot(0x12, PCI_CARD_IDE, 0xFF, 0, 0, 0);
pci_register_slot(0x11, PCI_CARD_VIDEO, 2, 0, 0, 0);
device_add(&opti802g_pci_device);
device_add(&opti822_device);
device_add(&keyboard_ps2_ami_pci_device);
device_add(&fdc37c665_device);
device_add(&ide_vlb_device);
device_add(&intel_flash_bxt_device); // Just in case, no idea if it has it or not
return ret;
}
int
machine_at_mvi486_init(const machine_t *model)
{

View File

@@ -6658,6 +6658,45 @@ const machine_t machines[] = {
.snd_device = NULL,
.net_device = NULL
},
/* Absolutely no information. Anything here is guesswork. */
{
.name = "[OPTi 802GP] Olivetti M4-5xx",
.internal_name = "m45xx",
.type = MACHINE_TYPE_486_S3,
.chipset = MACHINE_CHIPSET_OPTI_895_802G, //OPTi 802GP
.init = machine_at_m45xx_init,
.pad = 0,
.pad0 = 0,
.pad1 = MACHINE_AVAILABLE,
.pad2 = 0,
.cpu = {
.package = CPU_PKG_SOCKET3,
.block = CPU_BLOCK_NONE,
.min_bus = 0,
.max_bus = 0,
.min_voltage = 0,
.max_voltage = 0,
.min_multi = 0,
.max_multi = 0
},
.bus_flags = MACHINE_PS2_PCIV,
.flags = MACHINE_IDE | MACHINE_APM,
.ram = {
.min = 1024,
.max = 65536,
.step = 1024
},
.nvrmask = 127,
.kbc_device = NULL,
.kbc_p1 = 0,
.gpio = 0,
.device = NULL,
.fdc_device = NULL,
.sio_device = NULL,
.vid_device = NULL,
.snd_device = NULL,
.net_device = NULL
},
/* This has an AMIKey-2, which is an updated version of type 'H'. */
{
.name = "[i420EX] ASUS PVI-486AP4",