Some bug fixes to the Compaq Presarior 4500 and its Super I/O chip.
This commit is contained in:
@@ -668,12 +668,12 @@ machine_at_presario4500_init(const machine_t *model)
|
|||||||
if (bios_only || !ret)
|
if (bios_only || !ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
machine_at_common_init(model);
|
machine_at_common_init_ex(model, 2);
|
||||||
|
|
||||||
pci_init(PCI_CONFIG_TYPE_1);
|
pci_init(PCI_CONFIG_TYPE_1);
|
||||||
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
pci_register_slot(0x00, PCI_CARD_NORTHBRIDGE, 0, 0, 0, 0);
|
||||||
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
pci_register_slot(0x07, PCI_CARD_SOUTHBRIDGE, 0, 0, 0, 0);
|
||||||
pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
pci_register_slot(0x13, PCI_CARD_NORMAL, 1, 2, 3, 4);
|
||||||
pci_register_slot(0x14, PCI_CARD_ONBOARD, 4, 0, 0, 0);
|
pci_register_slot(0x14, PCI_CARD_ONBOARD, 4, 0, 0, 0);
|
||||||
|
|
||||||
device_add(&i430vx_device);
|
device_add(&i430vx_device);
|
||||||
|
@@ -632,7 +632,8 @@ fdc37c93x_write(uint16_t port, uint8_t val, void *priv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static uint8_t fdc37c93x_read(uint16_t port, void *priv)
|
static uint8_t
|
||||||
|
fdc37c93x_read(uint16_t port, void *priv)
|
||||||
{
|
{
|
||||||
fdc37c93x_t *dev = (fdc37c93x_t *) priv;
|
fdc37c93x_t *dev = (fdc37c93x_t *) priv;
|
||||||
uint8_t index = (port & 1) ? 0 : 1;
|
uint8_t index = (port & 1) ? 0 : 1;
|
||||||
@@ -676,7 +677,7 @@ fdc37c93x_reset(fdc37c93x_t *dev)
|
|||||||
dev->regs[0x26] = 0xF0;
|
dev->regs[0x26] = 0xF0;
|
||||||
dev->regs[0x27] = 0x03;
|
dev->regs[0x27] = 0x03;
|
||||||
|
|
||||||
for (i = 0; i < 10; i++)
|
for (i = 0; i < 11; i++)
|
||||||
memset(dev->ld_regs[i], 0, 256);
|
memset(dev->ld_regs[i], 0, 256);
|
||||||
|
|
||||||
/* Logical device 0: FDD */
|
/* Logical device 0: FDD */
|
||||||
@@ -826,7 +827,7 @@ fdc37c93x_init(const device_t *info)
|
|||||||
nvr_bank_set(1, 0xff, dev->nvr);
|
nvr_bank_set(1, 0xff, dev->nvr);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dev->chip_id == 0x03)
|
if (dev->is_apm || (dev->chip_id == 0x03))
|
||||||
dev->access_bus = device_add(&access_bus_device);
|
dev->access_bus = device_add(&access_bus_device);
|
||||||
|
|
||||||
if (dev->is_apm)
|
if (dev->is_apm)
|
||||||
|
Reference in New Issue
Block a user