Add initial Mazovia 1016 emulation

This commit is contained in:
Adrian Siekierka
2024-12-22 13:52:25 +01:00
parent 8f25851406
commit eb25bccf1e
7 changed files with 128 additions and 26 deletions

View File

@@ -19,6 +19,7 @@
#include <86box/machine.h>
#include <86box/chipset.h>
#include <86box/port_6x.h>
#include <86box/video.h>
extern const device_t vendex_xt_rtc_onboard_device;
@@ -330,6 +331,35 @@ machine_xt_iskra3104_init(const machine_t *model)
return ret;
}
int
machine_xt_maz1016_init(const machine_t *model)
{
int ret;
ret = bios_load_interleaved("roms/machines/maz1016/e1.bin",
"roms/machines/maz1016/e4.bin",
0x000fc000, 49152, 0);
if (ret) {
bios_load_aux_interleaved("roms/machines/maz1016/e2.bin",
"roms/machines/maz1016/e5.bin",
0x000f8000, 16384, 0);
bios_load_aux_interleaved("roms/machines/maz1016/e3.bin",
"roms/machines/maz1016/e6b.bin",
0x000f4000, 16384, 0);
}
if (bios_only || !ret)
return ret;
loadfont("roms/machines/maz1016/crt-8.bin", 0);
machine_xt_clone_init(model, 0);
return ret;
}
int
machine_xt_pravetz16_imko4_init(const machine_t *model)
{

View File

@@ -2283,6 +2283,45 @@ const machine_t machines[] = {
.snd_device = NULL,
.net_device = NULL
},
{
.name = "[8086] Mazovia 1016",
.internal_name = "maz1016",
.type = MACHINE_TYPE_8086,
.chipset = MACHINE_CHIPSET_DISCRETE,
.init = machine_xt_maz1016_init,
.p1_handler = NULL,
.gpio_handler = NULL,
.available_flag = MACHINE_AVAILABLE,
.gpio_acpi_handler = NULL,
.cpu = {
.package = CPU_PKG_8086_MAZOVIA,
.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_PC,
.flags = MACHINE_FLAGS_NONE,
.ram = {
.min = 256,
.max = 640,
.step = 384
},
.nvrmask = 0,
.kbc_device = &keyboard_xtclone_device,
.kbc_p1 = 0xff,
.gpio = 0xffffffff,
.gpio_acpi = 0xffffffff,
.device = NULL,
.fdc_device = NULL,
.sio_device = NULL,
.vid_device = NULL,
.snd_device = NULL,
.net_device = NULL
},
{
.name = "[8086] Olivetti M21/24/24SP",
.internal_name = "m24",