Single Channel XTIDE support
This commit is contained in:
@@ -72,7 +72,9 @@ static const struct {
|
||||
{ &ide_isa_device },
|
||||
{ &ide_isa_2ch_device },
|
||||
{ &xtide_at_device },
|
||||
{ &xtide_at_2ch_device },
|
||||
{ &xtide_at_ps2_device },
|
||||
{ &xtide_at_ps2_2ch_device },
|
||||
{ &xta_wdxt150_device },
|
||||
{ &xtide_acculogic_device },
|
||||
{ &xtide_device },
|
||||
|
||||
@@ -157,7 +157,10 @@ xtide_at_init(const device_t *info)
|
||||
device_get_bios_file(info, device_get_config_bios("bios"), 0),
|
||||
0xc8000, 0x2000, 0x1fff, 0, MEM_MAPPING_EXTERNAL);
|
||||
|
||||
device_add(&ide_isa_2ch_device);
|
||||
if (info->local == 1)
|
||||
device_add(&ide_isa_2ch_device);
|
||||
else
|
||||
device_add(&ide_isa_device);
|
||||
|
||||
return xtide;
|
||||
}
|
||||
@@ -203,7 +206,10 @@ xtide_at_ps2_init(UNUSED(const device_t *info))
|
||||
rom_init(&xtide->bios_rom, ROM_PATH_PS2AT,
|
||||
0xc8000, 0x2000, 0x1fff, 0, MEM_MAPPING_EXTERNAL);
|
||||
|
||||
device_add(&ide_isa_2ch_device);
|
||||
if (info->local == 1)
|
||||
device_add(&ide_isa_2ch_device);
|
||||
else
|
||||
device_add(&ide_isa_device);
|
||||
|
||||
return xtide;
|
||||
}
|
||||
@@ -311,10 +317,24 @@ const device_t xtide_device = {
|
||||
};
|
||||
|
||||
const device_t xtide_at_device = {
|
||||
.name = "PC/AT XTIDE (Primary Only)",
|
||||
.internal_name = "xtide_at_1ch",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0,
|
||||
.init = xtide_at_init,
|
||||
.close = xtide_at_close,
|
||||
.reset = NULL,
|
||||
.available = NULL,
|
||||
.speed_changed = NULL,
|
||||
.force_redraw = NULL,
|
||||
.config = xtide_at_config
|
||||
};
|
||||
|
||||
const device_t xtide_at_2ch_device = {
|
||||
.name = "PC/AT XTIDE",
|
||||
.internal_name = "xtide_at",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0,
|
||||
.local = 1,
|
||||
.init = xtide_at_init,
|
||||
.close = xtide_at_close,
|
||||
.reset = NULL,
|
||||
@@ -339,8 +359,8 @@ const device_t xtide_acculogic_device = {
|
||||
};
|
||||
|
||||
const device_t xtide_at_ps2_device = {
|
||||
.name = "PS/2 AT XTIDE (1.1.5)",
|
||||
.internal_name = "xtide_at_ps2",
|
||||
.name = "PS/2 AT XTIDE (1.1.5) (Primary Only)",
|
||||
.internal_name = "xtide_at_ps2_1ch",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 0,
|
||||
.init = xtide_at_ps2_init,
|
||||
@@ -351,3 +371,17 @@ const device_t xtide_at_ps2_device = {
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
const device_t xtide_at_ps2_2ch_device = {
|
||||
.name = "PS/2 AT XTIDE (1.1.5)",
|
||||
.internal_name = "xtide_at_ps2",
|
||||
.flags = DEVICE_ISA16,
|
||||
.local = 1,
|
||||
.init = xtide_at_ps2_init,
|
||||
.close = xtide_at_close,
|
||||
.reset = NULL,
|
||||
.available = xtide_at_ps2_available,
|
||||
.speed_changed = NULL,
|
||||
.force_redraw = NULL,
|
||||
.config = NULL
|
||||
};
|
||||
|
||||
@@ -99,10 +99,12 @@ extern const device_t mcide_device;
|
||||
extern const device_t xta_wdxt150_device; /* xta_wdxt150 */
|
||||
extern const device_t xta_hd20_device; /* EuroPC internal */
|
||||
|
||||
extern const device_t xtide_device; /* xtide_xt */
|
||||
extern const device_t xtide_at_device; /* xtide_at */
|
||||
extern const device_t xtide_acculogic_device; /* xtide_ps2 */
|
||||
extern const device_t xtide_at_ps2_device; /* xtide_at_ps2 */
|
||||
extern const device_t xtide_device; /* xtide_xt */
|
||||
extern const device_t xtide_at_device; /* xtide_at */
|
||||
extern const device_t xtide_at_2ch_device; /* xtide_at_2ch */
|
||||
extern const device_t xtide_acculogic_device; /* xtide_ps2 */
|
||||
extern const device_t xtide_at_ps2_device; /* xtide_at_ps2 */
|
||||
extern const device_t xtide_at_ps2_2ch_device; /* xtide_at_ps2_2ch */
|
||||
|
||||
/* Miscellaneous */
|
||||
extern const device_t lba_enhancer_device;
|
||||
|
||||
Reference in New Issue
Block a user