From d0fa3416756995a50959c16caa53f52479a76c90 Mon Sep 17 00:00:00 2001 From: Gey Cunt <38372778+SauceJustSauce@users.noreply.github.com> Date: Mon, 15 Jun 2020 15:20:16 +0300 Subject: [PATCH] Added the Intel AP440FX --- src/include/86box/machine.h | 1 + src/machine/m_at_socket8.c | 32 ++++++++++++++++++++++++++++++++ src/machine/machine_table.c | 1 + 3 files changed, 34 insertions(+) diff --git a/src/include/86box/machine.h b/src/include/86box/machine.h index 5768f231d..d1c5dd09d 100644 --- a/src/include/86box/machine.h +++ b/src/include/86box/machine.h @@ -327,6 +327,7 @@ extern int machine_at_mvp3_init(const machine_t *); extern int machine_at_686nx_init(const machine_t *); extern int machine_at_v60n_init(const machine_t *); extern int machine_at_vs440fx_init(const machine_t *); +extern int machine_at_ap440fx_init(const machine_t *); extern int machine_at_mb600n_init(const machine_t *); extern int machine_at_8500ttc_init(const machine_t *); extern int machine_at_m6mi_init(const machine_t *); diff --git a/src/machine/m_at_socket8.c b/src/machine/m_at_socket8.c index ad648c4ce..96a180673 100644 --- a/src/machine/m_at_socket8.c +++ b/src/machine/m_at_socket8.c @@ -162,6 +162,38 @@ machine_at_vs440fx_init(const machine_t *model) return ret; } +int +machine_at_ap440fx_init(const machine_t *model) +{ + int ret; + + ret = bios_load_linear_combined2(L"roms/machines/ap440fx/1011CT1_.bio", + L"roms/machines/ap440fx/1011CT1_.bi1", + L"roms/machines/ap440fx/1011CT1_.bi2", + L"roms/machines/ap440fx/1011CT1_.bi3", + L"roms/machines/ap440fx/1011CT1_.rcv", + 0x3a000, 128); + + 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(0x08, PCI_CARD_ONBOARD, 4, 0, 0, 0); + pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 2, 3, 4); + pci_register_slot(0x11, PCI_CARD_NORMAL, 2, 3, 4, 1); + pci_register_slot(0x0B, PCI_CARD_NORMAL, 3, 0, 0, 0); // Riser card slot + pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0); + device_add(&i440fx_device); + device_add(&piix3_device); + device_add(&keyboard_ps2_ami_pci_device); + device_add(&pc87307_device); + device_add(&intel_flash_bxt_ami_device); + + return ret; +} int machine_at_8500ttc_init(const machine_t *model) diff --git a/src/machine/machine_table.c b/src/machine/machine_table.c index 7510e07fb..4eed4e08a 100644 --- a/src/machine/machine_table.c +++ b/src/machine/machine_table.c @@ -285,6 +285,7 @@ const machine_t machines[] = { /* 440FX */ { "[Socket 8 FX] Gigabyte GA-686NX", "686nx", {{"Intel", cpus_PentiumPro}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_PCI | MACHINE_ISA | MACHINE_AT | MACHINE_PS2 | MACHINE_HDC, 8, 512, 8, 127, machine_at_686nx_init, NULL }, { "[Socket 8 FX] Intel Venus", "vs440fx", {{"Intel", cpus_PentiumPro}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_PCI | MACHINE_ISA | MACHINE_AT | MACHINE_PS2 | MACHINE_HDC, 8, 512, 8, 127, machine_at_vs440fx_init, NULL }, + { "[Socket 8 FX] Intel AP440FX", "ap440fx", {{"Intel", cpus_PentiumPro}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_PCI | MACHINE_ISA | MACHINE_AT | MACHINE_PS2 | MACHINE_HDC, 8, 128, 8, 127, machine_at_ap440fx_init, NULL }, { "[Socket 8 FX] PC Partner MB600N", "mb600n", {{"Intel", cpus_PentiumPro}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_PCI | MACHINE_ISA | MACHINE_AT | MACHINE_PS2 | MACHINE_HDC, 8, 512, 8, 127, machine_at_mb600n_init, NULL }, { "[Socket 8 FX] Biostar MB-8500ttc", "8500ttc", {{"Intel", cpus_PentiumPro}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_PCI | MACHINE_ISA | MACHINE_AT | MACHINE_PS2 | MACHINE_HDC, 8, 1024, 8, 127, machine_at_8500ttc_init, NULL }, { "[Socket 8 FX] Micronics M6MI", "m6mi", {{"Intel", cpus_PentiumPro}, {"", NULL}, {"", NULL}, {"", NULL}, {"", NULL}}, MACHINE_PCI | MACHINE_ISA | MACHINE_AT | MACHINE_PS2 | MACHINE_HDC, 8, 768, 8, 127, machine_at_m6mi_init, NULL },