mirror of
https://github.com/holub/mame
synced 2025-10-05 16:50:57 +03:00
aha1542a, aha1542b: Add jumper definitions (nw)
This commit is contained in:
parent
92b6d20440
commit
71a0e75c43
@ -51,6 +51,279 @@ void aha154x_device::i8085_map(address_map &map)
|
||||
map(0xe000, 0xe7ff).ram();
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START(aha1542a)
|
||||
PORT_START("SETUP")
|
||||
PORT_DIPNAME(0x01, 0x01, "Synchronous Negotiation") PORT_DIPLOCATION("J1:1")
|
||||
PORT_DIPSETTING(0x01, "Disabled")
|
||||
PORT_DIPSETTING(0x00, "Enabled")
|
||||
PORT_DIPNAME(0x02, 0x02, "Diagnostic Test Loop") PORT_DIPLOCATION("J1:2")
|
||||
PORT_DIPSETTING(0x02, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x00, DEF_STR(On))
|
||||
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_CUSTOM) // Data accepted by host
|
||||
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN)
|
||||
PORT_DIPNAME(0x10, 0x10, "SCSI Parity Checking") PORT_DIPLOCATION("J1:3")
|
||||
PORT_DIPSETTING(0x00, "Disabled")
|
||||
PORT_DIPSETTING(0x10, "Enabled")
|
||||
PORT_DIPNAME(0x60, 0x60, "DMA Transfer Speed") PORT_DIPLOCATION("J1:12,13")
|
||||
PORT_DIPSETTING(0x60, "5.0 MB/s")
|
||||
PORT_DIPSETTING(0x40, "5.7 MB/s")
|
||||
PORT_DIPSETTING(0x20, "6.7 MB/s")
|
||||
PORT_DIPSETTING(0x00, "8.0 MB/s")
|
||||
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_CUSTOM) // SCSI reset
|
||||
|
||||
PORT_START("CONFIG")
|
||||
PORT_DIPNAME(0x07, 0x07, "SCSI Address ID") PORT_DIPLOCATION("J1:4,5,6")
|
||||
PORT_DIPSETTING(0x00, "0")
|
||||
PORT_DIPSETTING(0x01, "1")
|
||||
PORT_DIPSETTING(0x02, "2")
|
||||
PORT_DIPSETTING(0x03, "3")
|
||||
PORT_DIPSETTING(0x04, "4")
|
||||
PORT_DIPSETTING(0x05, "5")
|
||||
PORT_DIPSETTING(0x06, "6")
|
||||
PORT_DIPSETTING(0x07, "7")
|
||||
PORT_DIPNAME(0x18, 0x08, "DMA Channel") PORT_DIPLOCATION("J1:7,8")
|
||||
PORT_DIPSETTING(0x00, "0")
|
||||
PORT_DIPSETTING(0x08, "5")
|
||||
PORT_DIPSETTING(0x10, "6")
|
||||
PORT_DIPSETTING(0x18, "7")
|
||||
PORT_DIPNAME(0xe0, 0xa0, "Interrupt Channel") PORT_DIPLOCATION("J1:9,10,11")
|
||||
PORT_DIPSETTING(0xe0, "9")
|
||||
PORT_DIPSETTING(0xc0, "10")
|
||||
PORT_DIPSETTING(0xa0, "11")
|
||||
PORT_DIPSETTING(0x80, "12")
|
||||
PORT_DIPSETTING(0x60, "14")
|
||||
PORT_DIPSETTING(0x40, "15")
|
||||
|
||||
PORT_START("DMAREQ")
|
||||
PORT_DIPNAME(0xf, 0xd, "DMA Request") PORT_DIPLOCATION("J14:1,2,3,4")
|
||||
PORT_DIPSETTING(0xe, "Channel 0")
|
||||
PORT_DIPSETTING(0xd, "Channel 5")
|
||||
PORT_DIPSETTING(0xb, "Channel 6")
|
||||
PORT_DIPSETTING(0x7, "Channel 7")
|
||||
|
||||
PORT_START("DMAACK")
|
||||
PORT_DIPNAME(0xf, 0xd, "DMA Acknowledge") PORT_DIPLOCATION("J15:1,2,3,4")
|
||||
PORT_DIPSETTING(0xe, "Channel 0")
|
||||
PORT_DIPSETTING(0xd, "Channel 5")
|
||||
PORT_DIPSETTING(0xb, "Channel 6")
|
||||
PORT_DIPSETTING(0x7, "Channel 7")
|
||||
|
||||
PORT_START("IRQ")
|
||||
PORT_DIPNAME(0x3f, 0x3b, "Interrupt") PORT_DIPLOCATION("J16:1,2,3,4,5,6")
|
||||
PORT_DIPSETTING(0x3e, "IRQ 9")
|
||||
PORT_DIPSETTING(0x3d, "IRQ 10")
|
||||
PORT_DIPSETTING(0x3b, "IRQ 11")
|
||||
PORT_DIPSETTING(0x37, "IRQ 12")
|
||||
PORT_DIPSETTING(0x2f, "IRQ 14")
|
||||
PORT_DIPSETTING(0x1f, "IRQ 15")
|
||||
|
||||
PORT_START("BIOSWAIT")
|
||||
PORT_DIPNAME(0xf, 0xe, "BIOS Wait State") PORT_DIPLOCATION("J7:1,2,3,4")
|
||||
PORT_DIPSETTING(0xe, "Disabled")
|
||||
PORT_DIPSETTING(0xd, "100 ns")
|
||||
PORT_DIPSETTING(0xb, "200 ns")
|
||||
PORT_DIPSETTING(0x7, "300 ns")
|
||||
|
||||
PORT_START("PORTADDR")
|
||||
PORT_DIPNAME(0x7, 0x6, "I/O Port Address") PORT_DIPLOCATION("J6:1,2,3")
|
||||
PORT_DIPSETTING(0x2, "130h")
|
||||
PORT_DIPSETTING(0x3, "134h")
|
||||
PORT_DIPSETTING(0x4, "230h")
|
||||
PORT_DIPSETTING(0x5, "234h")
|
||||
PORT_DIPSETTING(0x6, "330h")
|
||||
PORT_DIPSETTING(0x7, "334h")
|
||||
|
||||
PORT_START("BIOSADDR")
|
||||
PORT_DIPNAME(0x3, 0x3, "BIOS Base Address") PORT_DIPLOCATION("J10:2,1")
|
||||
PORT_DIPSETTING(0x0, "0C8000h")
|
||||
PORT_DIPSETTING(0x1, "0CC000h")
|
||||
PORT_DIPSETTING(0x2, "0D8000h")
|
||||
PORT_DIPSETTING(0x3, "0DC000h")
|
||||
PORT_DIPNAME(0x4, 0x0, "System BIOS") PORT_DIPLOCATION("J10:3")
|
||||
PORT_DIPSETTING(0x4, "Disabled")
|
||||
PORT_DIPSETTING(0x0, "Enabled")
|
||||
|
||||
PORT_START("AUX")
|
||||
PORT_DIPNAME(0x1, 0x1, DEF_STR(Unused)) PORT_DIPLOCATION("J9:1")
|
||||
PORT_DIPSETTING(0x1, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
PORT_DIPNAME(0x2, 0x2, DEF_STR(Unused)) PORT_DIPLOCATION("J9:2")
|
||||
PORT_DIPSETTING(0x2, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
PORT_DIPNAME(0x4, 0x4, DEF_STR(Unused)) PORT_DIPLOCATION("J9:3")
|
||||
PORT_DIPSETTING(0x4, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
PORT_DIPNAME(0x8, 0x8, "Automatic Request Sense") PORT_DIPLOCATION("J9:4")
|
||||
PORT_DIPSETTING(0x0, "Disabled")
|
||||
PORT_DIPSETTING(0x8, "Enabled")
|
||||
|
||||
PORT_START("FDCCFG")
|
||||
PORT_DIPNAME(0x1, 0x1, "FDC Secondary Address") PORT_DIPLOCATION("J12:1")
|
||||
PORT_DIPSETTING(0x0, "370h-377h")
|
||||
PORT_DIPSETTING(0x1, "3F0h-3F7h")
|
||||
PORT_DIPNAME(0x2, 0x0, "Flexible Disk Controller") PORT_DIPLOCATION("J13:1")
|
||||
PORT_DIPSETTING(0x2, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
|
||||
PORT_START("FDCIRQ")
|
||||
PORT_DIPNAME(0x7, 0x4, "FDC Interrupt") PORT_DIPLOCATION("J17:1,2,3")
|
||||
PORT_DIPSETTING(0x4, "Channel 6")
|
||||
PORT_DIPSETTING(0x1, "Channel 10")
|
||||
|
||||
PORT_START("FDCDREQ")
|
||||
PORT_DIPNAME(0x7, 0x4, "FDC DMA Request") PORT_DIPLOCATION("J18:1,2,3")
|
||||
PORT_DIPSETTING(0x4, "Channel 2")
|
||||
PORT_DIPSETTING(0x1, "Channel 3")
|
||||
|
||||
PORT_START("FDCDACK")
|
||||
PORT_DIPNAME(0x7, 0x4, "FDC DMA Acknowledge") PORT_DIPLOCATION("J19:1,2,3")
|
||||
PORT_DIPSETTING(0x4, "Channel 2")
|
||||
PORT_DIPSETTING(0x1, "Channel 3")
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START(aha1542b)
|
||||
PORT_START("SETUP")
|
||||
PORT_DIPNAME(0x01, 0x01, "Synchronous Negotiation") PORT_DIPLOCATION("J5:1")
|
||||
PORT_DIPSETTING(0x01, "Disabled")
|
||||
PORT_DIPSETTING(0x00, "Enabled")
|
||||
PORT_DIPNAME(0x02, 0x02, "Diagnostic Test Loop") PORT_DIPLOCATION("J5:2")
|
||||
PORT_DIPSETTING(0x02, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x00, DEF_STR(On))
|
||||
PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_UNUSED)
|
||||
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_UNUSED)
|
||||
PORT_DIPNAME(0x10, 0x10, "SCSI Parity Checking") PORT_DIPLOCATION("J5:3")
|
||||
PORT_DIPSETTING(0x00, "Disabled")
|
||||
PORT_DIPSETTING(0x10, "Enabled")
|
||||
PORT_DIPNAME(0x60, 0x60, "DMA Transfer Speed") PORT_DIPLOCATION("J5:12,13")
|
||||
PORT_DIPSETTING(0x60, "5.0 MB/s")
|
||||
PORT_DIPSETTING(0x40, "5.7 MB/s")
|
||||
PORT_DIPSETTING(0x20, "6.7 MB/s")
|
||||
PORT_DIPSETTING(0x00, "8.0 MB/s")
|
||||
PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_UNUSED)
|
||||
|
||||
PORT_START("CONFIG")
|
||||
PORT_DIPNAME(0x07, 0x07, "SCSI Address ID") PORT_DIPLOCATION("J5:4,5,6")
|
||||
PORT_DIPSETTING(0x00, "0")
|
||||
PORT_DIPSETTING(0x01, "1")
|
||||
PORT_DIPSETTING(0x02, "2")
|
||||
PORT_DIPSETTING(0x03, "3")
|
||||
PORT_DIPSETTING(0x04, "4")
|
||||
PORT_DIPSETTING(0x05, "5")
|
||||
PORT_DIPSETTING(0x06, "6")
|
||||
PORT_DIPSETTING(0x07, "7")
|
||||
PORT_DIPNAME(0x18, 0x08, "DMA Channel") PORT_DIPLOCATION("J5:7,8")
|
||||
PORT_DIPSETTING(0x00, "0")
|
||||
PORT_DIPSETTING(0x08, "5")
|
||||
PORT_DIPSETTING(0x10, "6")
|
||||
PORT_DIPSETTING(0x18, "7")
|
||||
PORT_DIPNAME(0xe0, 0xa0, "Interrupt Channel") PORT_DIPLOCATION("J5:9,10,11")
|
||||
PORT_DIPSETTING(0xe0, "9")
|
||||
PORT_DIPSETTING(0xc0, "10")
|
||||
PORT_DIPSETTING(0xa0, "11")
|
||||
PORT_DIPSETTING(0x80, "12")
|
||||
PORT_DIPSETTING(0x60, "14")
|
||||
PORT_DIPSETTING(0x40, "15")
|
||||
|
||||
PORT_START("DMAREQ")
|
||||
PORT_DIPNAME(0xf, 0xd, "DMA Request") PORT_DIPLOCATION("J9:1,2,3,4")
|
||||
PORT_DIPSETTING(0xe, "Channel 0")
|
||||
PORT_DIPSETTING(0xd, "Channel 5")
|
||||
PORT_DIPSETTING(0xb, "Channel 6")
|
||||
PORT_DIPSETTING(0x7, "Channel 7")
|
||||
|
||||
PORT_START("DMAACK")
|
||||
PORT_DIPNAME(0xf, 0xd, "DMA Acknowledge") PORT_DIPLOCATION("J9:5,6,7,8")
|
||||
PORT_DIPSETTING(0xe, "Channel 0")
|
||||
PORT_DIPSETTING(0xd, "Channel 5")
|
||||
PORT_DIPSETTING(0xb, "Channel 6")
|
||||
PORT_DIPSETTING(0x7, "Channel 7")
|
||||
|
||||
PORT_START("IRQ")
|
||||
PORT_DIPNAME(0x3f, 0x3b, "Interrupt") PORT_DIPLOCATION("J9:9,10,11,12,13,14")
|
||||
PORT_DIPSETTING(0x3e, "IRQ 9")
|
||||
PORT_DIPSETTING(0x3d, "IRQ 10")
|
||||
PORT_DIPSETTING(0x3b, "IRQ 11")
|
||||
PORT_DIPSETTING(0x37, "IRQ 12")
|
||||
PORT_DIPSETTING(0x2f, "IRQ 14")
|
||||
PORT_DIPSETTING(0x1f, "IRQ 15")
|
||||
|
||||
PORT_START("BIOSWAIT")
|
||||
PORT_DIPNAME(0x3, 0x3, "BIOS Wait State") PORT_DIPLOCATION("J7:5,6")
|
||||
PORT_DIPSETTING(0x3, "Disabled")
|
||||
PORT_DIPSETTING(0x2, "100 ns")
|
||||
PORT_DIPSETTING(0x1, "200 ns")
|
||||
PORT_DIPSETTING(0x0, "300 ns")
|
||||
|
||||
PORT_START("PORTADDR")
|
||||
PORT_DIPNAME(0x7, 0x6, "I/O Port Address") PORT_DIPLOCATION("J7:2,3,4")
|
||||
PORT_DIPSETTING(0x2, "130h")
|
||||
PORT_DIPSETTING(0x3, "134h")
|
||||
PORT_DIPSETTING(0x4, "230h")
|
||||
PORT_DIPSETTING(0x5, "234h")
|
||||
PORT_DIPSETTING(0x6, "330h")
|
||||
PORT_DIPSETTING(0x7, "334h")
|
||||
|
||||
PORT_START("BIOSADDR")
|
||||
PORT_DIPNAME(0x3, 0x3, "BIOS Base Address") PORT_DIPLOCATION("J7:8,7")
|
||||
PORT_DIPSETTING(0x0, "0C8000h")
|
||||
PORT_DIPSETTING(0x1, "0CC000h")
|
||||
PORT_DIPSETTING(0x2, "0D8000h")
|
||||
PORT_DIPSETTING(0x3, "0DC000h")
|
||||
PORT_DIPNAME(0x4, 0x0, "System BIOS") PORT_DIPLOCATION("J6:1")
|
||||
PORT_DIPSETTING(0x4, "Disabled")
|
||||
PORT_DIPSETTING(0x0, "Enabled")
|
||||
|
||||
PORT_START("AUX")
|
||||
PORT_DIPNAME(0x1, 0x1, DEF_STR(Unused)) PORT_DIPLOCATION("J6:2")
|
||||
PORT_DIPSETTING(0x1, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
PORT_DIPNAME(0x2, 0x2, DEF_STR(Unused)) PORT_DIPLOCATION("J6:3")
|
||||
PORT_DIPSETTING(0x2, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
PORT_DIPNAME(0x4, 0x4, DEF_STR(Unused)) PORT_DIPLOCATION("J6:4")
|
||||
PORT_DIPSETTING(0x4, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
PORT_DIPNAME(0x8, 0x8, "Automatic Request Sense") PORT_DIPLOCATION("J6:5")
|
||||
PORT_DIPSETTING(0x0, "Disabled")
|
||||
PORT_DIPSETTING(0x8, "Enabled")
|
||||
|
||||
PORT_START("FDCCFG")
|
||||
PORT_DIPNAME(0x1, 0x1, "Floppy Secondary Address") PORT_DIPLOCATION("J7:1")
|
||||
PORT_DIPSETTING(0x1, "170h-177h")
|
||||
PORT_DIPSETTING(0x0, "1F0h-1F7h")
|
||||
PORT_DIPNAME(0x2, 0x0, "Floppy Disk Controller") PORT_DIPLOCATION("J8:1")
|
||||
PORT_DIPSETTING(0x2, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
PORT_DIPNAME(0x4, 0x4, "Floppy Dual Channel Speed") PORT_DIPLOCATION("J8:8")
|
||||
PORT_DIPSETTING(0x4, DEF_STR(Off))
|
||||
PORT_DIPSETTING(0x0, DEF_STR(On))
|
||||
|
||||
PORT_START("FDCIRQ")
|
||||
PORT_DIPNAME(0x3, 0x2, "FDC Interrupt") PORT_DIPLOCATION("J8:6,7")
|
||||
PORT_DIPSETTING(0x2, "Channel 6")
|
||||
PORT_DIPSETTING(0x1, "Channel 10")
|
||||
|
||||
PORT_START("FDCDREQ")
|
||||
PORT_DIPNAME(0x3, 0x2, "FDC DMA Request") PORT_DIPLOCATION("J8:2,3")
|
||||
PORT_DIPSETTING(0x2, "Channel 2")
|
||||
PORT_DIPSETTING(0x1, "Channel 3")
|
||||
|
||||
PORT_START("FDCDACK")
|
||||
PORT_DIPNAME(0x3, 0x2, "FDC DMA Acknowledge") PORT_DIPLOCATION("J8:4,5")
|
||||
PORT_DIPSETTING(0x2, "Channel 2")
|
||||
PORT_DIPSETTING(0x1, "Channel 3")
|
||||
INPUT_PORTS_END
|
||||
|
||||
ioport_constructor aha1542a_device::device_input_ports() const
|
||||
{
|
||||
return INPUT_PORTS_NAME(aha1542a);
|
||||
}
|
||||
|
||||
ioport_constructor aha1542b_device::device_input_ports() const
|
||||
{
|
||||
return INPUT_PORTS_NAME(aha1542b);
|
||||
}
|
||||
|
||||
static void aha154x_scsi_devices(device_slot_interface &device)
|
||||
{
|
||||
device.option_add("harddisk", NSCSI_HARDDISK);
|
||||
@ -61,6 +334,8 @@ void aha154x_device::scsic_config(device_t *device)
|
||||
{
|
||||
device->set_clock(20'000'000);
|
||||
downcast<aic6250_device &>(*device).int_cb().set_inputline("^^localcpu", I8085_RST65_LINE);
|
||||
downcast<aic6250_device &>(*device).port_a_r_cb().set_ioport("^^SETUP");
|
||||
downcast<aic6250_device &>(*device).port_b_r_cb().set_ioport("^^CONFIG");
|
||||
}
|
||||
|
||||
void aha154x_device::device_add_mconfig(machine_config &config)
|
||||
|
@ -37,6 +37,7 @@ public:
|
||||
static constexpr feature_type unemulated_features() { return feature::DISK; }
|
||||
|
||||
protected:
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
};
|
||||
|
||||
@ -48,6 +49,7 @@ public:
|
||||
static constexpr feature_type unemulated_features() { return feature::DISK; }
|
||||
|
||||
protected:
|
||||
virtual ioport_constructor device_input_ports() const override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user