Fix the Anigma BAT4IP3e's secondary IDE channel.

This commit is contained in:
BurnedPinguin
2023-07-23 17:26:14 +02:00
parent f9a6295a3c
commit 493ac63741
3 changed files with 18 additions and 3 deletions

View File

@@ -32,6 +32,7 @@ extern const device_t fdc37c663_ide_device;
extern const device_t fdc37c665_device;
extern const device_t fdc37c665_ide_device;
extern const device_t fdc37c665_ide_pri_device;
extern const device_t fdc37c665_ide_sec_device;
extern const device_t fdc37c666_device;
extern const device_t fdc37c67x_device;
extern const device_t fdc37c669_device;

View File

@@ -1230,9 +1230,10 @@ machine_at_bat4ip3e_init(const machine_t *model)
device_add(&phoenix_486_jumper_pci_device);
device_add(&keyboard_ps2_pci_device);
device_add(&fdc37c665_device);
device_add(&ide_cmd640_pci_single_channel_device);
device_add(&fdc37c665_ide_sec_device);
device_add(&i420ex_device);
device_add(&ide_cmd640_pci_device);
return ret;
}

View File

@@ -146,7 +146,6 @@ ide_handler(fdc37c6xx_t *dev)
ide_sec_disable();
ide_set_base(1, (dev->regs[0x05] & 0x02) ? 0x170 : 0x1f0);
ide_set_side(1, (dev->regs[0x05] & 0x02) ? 0x376 : 0x3f6);
pclog("\n0x%X | 0x%X\n", dev->regs[0x00], dev->regs[0x05]);
if (dev->regs[0x00] & 0x01)
ide_sec_enable();
} else if (dev->has_ide == 1) {
@@ -481,6 +480,20 @@ const device_t fdc37c665_ide_pri_device = {
.config = NULL
};
const device_t fdc37c665_ide_sec_device = {
.name = "SMC FDC37C665 Super I/O (With Secondary IDE)",
.internal_name = "fdc37c665_ide_sec",
.flags = 0,
.local = 0x265,
.init = fdc37c6xx_init,
.close = fdc37c6xx_close,
.reset = NULL,
{ .available = NULL },
.speed_changed = NULL,
.force_redraw = NULL,
.config = NULL
};
const device_t fdc37c666_device = {
.name = "SMC FDC37C666 Super I/O",
.internal_name = "fdc37c666",