Skip to content

Commit

Permalink
Gigabyte 430LX and 430NX machine fixes.
Browse files Browse the repository at this point in the history
  • Loading branch information
OBattler committed Feb 2, 2024
1 parent ce73276 commit 285acca
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 39 deletions.
4 changes: 2 additions & 2 deletions src/include/86box/machine.h
Original file line number Diff line number Diff line change
Expand Up @@ -607,7 +607,7 @@ extern int machine_at_opti560l_init(const machine_t *);
extern int machine_at_ambradp60_init(const machine_t *);
extern int machine_at_valuepointp60_init(const machine_t *);
extern int machine_at_revenge_init(const machine_t *);
extern int machine_at_586mc1_init(const machine_t *);
extern int machine_at_586is_init(const machine_t *);
extern int machine_at_pb520r_init(const machine_t *);

extern int machine_at_excalibur_init(const machine_t *);
Expand All @@ -621,7 +621,7 @@ extern int machine_at_p5sp4_init(const machine_t *);
extern int machine_at_plato_init(const machine_t *);
extern int machine_at_dellplato_init(const machine_t *);
extern int machine_at_ambradp90_init(const machine_t *);
extern int machine_at_430nx_init(const machine_t *);
extern int machine_at_586ip_init(const machine_t *);
extern int machine_at_tek932_init(const machine_t *);

extern int machine_at_acerv30_init(const machine_t *);
Expand Down
53 changes: 24 additions & 29 deletions src/machine/m_at_socket4.c
Original file line number Diff line number Diff line change
Expand Up @@ -60,31 +60,6 @@ machine_at_premiere_common_init(const machine_t *model, int pci_switch)
device_add(&intel_flash_bxt_ami_device);
}

void
machine_at_award_common_init(const machine_t *model)
{
machine_at_common_init(model);
device_add(&ide_pci_2ch_device);

pci_init(PCI_CONFIG_TYPE_2 | PCI_NO_IRQ_STEERING);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x01, PCI_CARD_IDE, 0, 0, 0, 0);
pci_register_slot(0x03, PCI_CARD_NORMAL, 1, 2, 3, 4); /* 03 = Slot 1 */
pci_register_slot(0x04, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 04 = Slot 2 */
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 05 = Slot 3 */
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3); /* 06 = Slot 4 */
pci_register_slot(0x07, PCI_CARD_SCSI, 1, 2, 3, 4); /* 07 = SCSI */
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);

if (fdc_type == FDC_INTERNAL)
device_add(&fdc_at_device);

#if 0
device_add(&keyboard_ps2_pci_device);
#endif
device_add(&keyboard_ps2_ami_pci_device);
}

void
machine_at_sp4_common_init(const machine_t *model)
{
Expand Down Expand Up @@ -304,21 +279,41 @@ machine_at_revenge_init(const machine_t *model)
return ret;
}

void
machine_at_award_common_init(const machine_t *model)
{
machine_at_common_init(model);

pci_init(PCI_CONFIG_TYPE_2 | PCI_NO_IRQ_STEERING);
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
pci_register_slot(0x03, PCI_CARD_NORMAL, 1, 2, 3, 4); /* 03 = Slot 1 */
pci_register_slot(0x04, PCI_CARD_NORMAL, 2, 3, 4, 1); /* 04 = Slot 2 */
pci_register_slot(0x05, PCI_CARD_NORMAL, 3, 4, 1, 2); /* 05 = Slot 3 */
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3); /* 06 = Slot 4 */
pci_register_slot(0x07, PCI_CARD_SCSI, 1, 2, 3, 4); /* 07 = SCSI */
pci_register_slot(0x02, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);

if (fdc_type == FDC_INTERNAL)
device_add(&fdc_at_device);

device_add(&keyboard_ps2_ami_pci_device);
device_add(&sio_zb_device);
device_add(&intel_flash_bxt_device);
}

int
machine_at_586mc1_init(const machine_t *model)
machine_at_586is_init(const machine_t *model)
{
int ret;

ret = bios_load_linear("roms/machines/586mc1/IS.34",
ret = bios_load_linear("roms/machines/586is/IS.34",
0x000e0000, 131072, 0);

if (bios_only || !ret)
return ret;

machine_at_award_common_init(model);

device_add(&sio_device);
device_add(&intel_flash_bxt_device);
device_add(&i430lx_device);

return ret;
Expand Down
6 changes: 2 additions & 4 deletions src/machine/m_at_socket5.c
Original file line number Diff line number Diff line change
Expand Up @@ -98,20 +98,18 @@ machine_at_ambradp90_init(const machine_t *model)
}

int
machine_at_430nx_init(const machine_t *model)
machine_at_586ip_init(const machine_t *model)
{
int ret;

ret = bios_load_linear("roms/machines/430nx/IP.20",
ret = bios_load_linear("roms/machines/586ip/IP.20",
0x000e0000, 131072, 0);

if (bios_only || !ret)
return ret;

machine_at_award_common_init(model);

device_add(&sio_device);
device_add(&intel_flash_bxt_device);
device_add(&i430nx_device);

return ret;
Expand Down
8 changes: 4 additions & 4 deletions src/machine/machine_table.c
Original file line number Diff line number Diff line change
Expand Up @@ -8767,7 +8767,7 @@ const machine_t machines[] = {
.internal_name = "586mc1",
.type = MACHINE_TYPE_SOCKET4,
.chipset = MACHINE_CHIPSET_INTEL_430LX,
.init = machine_at_586mc1_init,
.init = machine_at_586is_init,
.p1_handler = NULL,
.gpio_handler = NULL,
.available_flag = MACHINE_AVAILABLE,
Expand Down Expand Up @@ -9132,13 +9132,13 @@ const machine_t machines[] = {
.snd_device = NULL,
.net_device = NULL
},
/* Has AMI MegaKey KBC firmware. */
/* Has AMI 'H' KBC firmware. */
{
.name = "[i430NX] Gigabyte GA-586IP",
.internal_name = "430nx",
.internal_name = "586ip",
.type = MACHINE_TYPE_SOCKET5,
.chipset = MACHINE_CHIPSET_INTEL_430NX,
.init = machine_at_430nx_init,
.init = machine_at_586ip_init,
.p1_handler = NULL,
.gpio_handler = NULL,
.available_flag = MACHINE_AVAILABLE,
Expand Down

0 comments on commit 285acca

Please sign in to comment.