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)
|
||||
return ret;
|
||||
|
||||
machine_at_common_init(model);
|
||||
machine_at_common_init_ex(model, 2);
|
||||
|
||||
pci_init(PCI_CONFIG_TYPE_1);
|
||||
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(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);
|
||||
|
||||
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;
|
||||
uint8_t index = (port & 1) ? 0 : 1;
|
||||
@@ -676,7 +677,7 @@ fdc37c93x_reset(fdc37c93x_t *dev)
|
||||
dev->regs[0x26] = 0xF0;
|
||||
dev->regs[0x27] = 0x03;
|
||||
|
||||
for (i = 0; i < 10; i++)
|
||||
for (i = 0; i < 11; i++)
|
||||
memset(dev->ld_regs[i], 0, 256);
|
||||
|
||||
/* Logical device 0: FDD */
|
||||
@@ -826,7 +827,7 @@ fdc37c93x_init(const device_t *info)
|
||||
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);
|
||||
|
||||
if (dev->is_apm)
|
||||
|
Reference in New Issue
Block a user