From 6334bd89934e1429a4ed911940ba9868669f5227 Mon Sep 17 00:00:00 2001 From: BurnedPinguin Date: Thu, 6 Jul 2023 20:49:33 +0200 Subject: [PATCH] Add the ZEOS Martin (currently has memory related issues, to be fixed) --- src/include/86box/machine.h | 1 + src/machine/m_at_386dx_486.c | 21 ++++++++++++++++++- src/machine/machine_table.c | 39 ++++++++++++++++++++++++++++++++++++ 3 files changed, 60 insertions(+), 1 deletion(-) diff --git a/src/include/86box/machine.h b/src/include/86box/machine.h index d2ee8330a..c133c111b 100644 --- a/src/include/86box/machine.h +++ b/src/include/86box/machine.h @@ -498,6 +498,7 @@ extern int machine_at_dtk486_init(const machine_t *); extern int machine_at_px471_init(const machine_t *); extern int machine_at_win471_init(const machine_t *); extern int machine_at_pci400ca_init(const machine_t *); +extern int machine_at_zmartin_init(const machine_t *); extern int machine_at_vi15g_init(const machine_t *); extern int machine_at_greenb_init(const machine_t *); diff --git a/src/machine/m_at_386dx_486.c b/src/machine/m_at_386dx_486.c index 19048f889..2e47c7112 100644 --- a/src/machine/m_at_386dx_486.c +++ b/src/machine/m_at_386dx_486.c @@ -796,7 +796,7 @@ machine_at_pci400ca_init(const machine_t *model) { int ret; - ret = bios_load_linear("roms/machines/JB_PCI400C_A/486-AA008851.BIN", + ret = bios_load_linear("roms/machines/pci400ca/486-AA008851.BIN", 0x000e0000, 131072, 0); if (bios_only || !ret) @@ -824,6 +824,25 @@ machine_at_pci400ca_init(const machine_t *model) return ret; } +int +machine_at_zmartin_init(const machine_t *model) +{ + int ret; + + ret = bios_load_linear("roms/machines/zeos_martin/rel11.bin", + 0x000e0000, 131072, 0); + + if (bios_only || !ret) + return ret; + + machine_at_common_init(model); + device_add(&keyboard_at_device); + device_add(&intel_flash_bxt_ami_device); + device_add(&fdc37c651_device); + + return ret; +} + int machine_at_vi15g_init(const machine_t *model) { diff --git a/src/machine/machine_table.c b/src/machine/machine_table.c index 9371aeb5b..b1db74bf8 100644 --- a/src/machine/machine_table.c +++ b/src/machine/machine_table.c @@ -5864,6 +5864,45 @@ const machine_t machines[] = { .snd_device = NULL, .net_device = NULL }, + /* KBC?? Does the VLSI have On-Chip KBC? */ + { + .name = "[VLSI 82C480] ZEOS Martin", + .internal_name = "zmartin", + .type = MACHINE_TYPE_486_S2, + .chipset = MACHINE_CHIPSET_VLSI_VL82C480, + .init = machine_at_zmartin_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_VLB, + .flags = MACHINE_SUPER_IO, + .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, //&fdc37c651_device, + .vid_device = NULL, + .snd_device = NULL, + .net_device = NULL + }, /* 486 machines - Socket 3 */ /* 486 machines with just the ISA slot */