mirror of
https://github.com/holub/mame
synced 2025-10-05 08:41:31 +03:00
aha1542a: Provide latches for host communication (nw)
This commit is contained in:
parent
0e6643c7c2
commit
737efd0d75
@ -14,6 +14,7 @@
|
||||
|
||||
#include "cpu/i8085/i8085.h"
|
||||
#include "machine/aic6250.h"
|
||||
#include "machine/gen_latch.h"
|
||||
#include "machine/nscsi_bus.h"
|
||||
#include "machine/nscsi_hd.h"
|
||||
|
||||
@ -49,6 +50,8 @@ void aha1542a_device::i8085_map(address_map &map)
|
||||
{
|
||||
map(0x0000, 0x3fff).rom().region("mcode", 0);
|
||||
map(0x8000, 0x800f).m("scsi:7:scsic", FUNC(aic6250_device::map));
|
||||
map(0xa001, 0xa001).r("fromhost", FUNC(generic_latch_8_device::read));
|
||||
map(0xa001, 0xa001).w("tohost", FUNC(generic_latch_8_device::write));
|
||||
map(0xe000, 0xe7ff).ram();
|
||||
}
|
||||
|
||||
@ -68,7 +71,7 @@ static INPUT_PORTS_START(aha1542a)
|
||||
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(0x04, IP_ACTIVE_HIGH, IPT_CUSTOM) PORT_READ_LINE_DEVICE_MEMBER("tohost", generic_latch_8_device, pending_r)
|
||||
PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN)
|
||||
PORT_DIPNAME(0x10, 0x10, "SCSI Parity Checking") PORT_DIPLOCATION("J1:3")
|
||||
PORT_DIPSETTING(0x00, "Disabled")
|
||||
@ -366,6 +369,11 @@ void aha1542a_device::device_add_mconfig(machine_config &config)
|
||||
i8085a_cpu_device &localcpu(I8085A(config, "localcpu", 10'000'000));
|
||||
localcpu.set_addrmap(AS_PROGRAM, &aha1542a_device::i8085_map);
|
||||
|
||||
generic_latch_8_device &fromhost(GENERIC_LATCH_8(config, "fromhost"));
|
||||
fromhost.data_pending_callback().set_inputline("localcpu", I8085_RST55_LINE);
|
||||
|
||||
GENERIC_LATCH_8(config, "tohost");
|
||||
|
||||
scsi_add(config);
|
||||
|
||||
DP8473(config, m_fdc, 24_MHz_XTAL);
|
||||
|
Loading…
Reference in New Issue
Block a user