diff options
| author | 2025-07-25 23:07:43 -0400 | |
|---|---|---|
| committer | 2025-07-25 23:07:43 -0400 | |
| commit | bd7be93bdf2a5d1ddc619453ea7635b7df8d061c (patch) | |
| tree | a26df14f24a4a7891d5e128610a9a12fa743e6d4 | |
| parent | f663de7076d33ff3ad28fc4ebf963974f2cc80d8 (diff) | |
atari810, atari1050: Fix polarity of host communications; correct drive select switch settings
| -rw-r--r-- | src/devices/bus/a800/atari1050.cpp | 16 | ||||
| -rw-r--r-- | src/devices/bus/a800/atari810.cpp | 18 |
2 files changed, 17 insertions, 17 deletions
diff --git a/src/devices/bus/a800/atari1050.cpp b/src/devices/bus/a800/atari1050.cpp index dec666b0b6b..94f8082d29b 100644 --- a/src/devices/bus/a800/atari1050.cpp +++ b/src/devices/bus/a800/atari1050.cpp @@ -54,27 +54,27 @@ void atari1050_device::mem_map(address_map &map) void atari1050_device::data_out_w(int state) { - m_pia->pb_bit_w<6>(state); + m_pia->pb_bit_w<6>(!state); } void atari1050_device::command_w(int state) { - m_pia->pb_bit_w<7>(state); + m_pia->pb_bit_w<7>(!state); } void atari1050_device::ready_w(int state) { - m_pia->pb_bit_w<1>(state); + m_pia->pb_bit_w<1>(!state); } static INPUT_PORTS_START(atari1050) - PORT_START("SELECT") // values not verified - PORT_DIPNAME(0x03, 0x00, "Drive Code") PORT_DIPLOCATION("S2:1,2") - PORT_DIPSETTING(0x00, "No. 1") + PORT_START("SELECT") + PORT_DIPNAME(0x03, 0x03, "Drive Code") PORT_DIPLOCATION("S2:1,2") + PORT_DIPSETTING(0x03, "No. 1") PORT_DIPSETTING(0x01, "No. 2") - PORT_DIPSETTING(0x02, "No. 3") - PORT_DIPSETTING(0x03, "No. 4") + PORT_DIPSETTING(0x00, "No. 3") + PORT_DIPSETTING(0x02, "No. 4") PORT_BIT(0xfc, IP_ACTIVE_LOW, IPT_UNUSED) INPUT_PORTS_END diff --git a/src/devices/bus/a800/atari810.cpp b/src/devices/bus/a800/atari810.cpp index 62118335376..146856a67a7 100644 --- a/src/devices/bus/a800/atari810.cpp +++ b/src/devices/bus/a800/atari810.cpp @@ -52,27 +52,27 @@ void atari810_device::mem_map(address_map &map) void atari810_device::data_out_w(int state) { - m_pia->pb_bit_w<7>(state); + m_pia->pb_bit_w<7>(!state); } void atari810_device::command_w(int state) { - m_pia->pb_bit_w<6>(state); + m_pia->pb_bit_w<6>(!state); } void atari810_device::ready_w(int state) { - m_pia->pb_bit_w<1>(state); + m_pia->pb_bit_w<1>(!state); } static INPUT_PORTS_START(atari810) - PORT_START("SELECT") // values not verified - PORT_DIPNAME(0x05, 0x00, "Drive Code") PORT_DIPLOCATION("S101:1,2") - PORT_DIPSETTING(0x00, "No. 1") - PORT_DIPSETTING(0x01, "No. 2") - PORT_DIPSETTING(0x04, "No. 3") - PORT_DIPSETTING(0x05, "No. 4") + PORT_START("SELECT") + PORT_DIPNAME(0x05, 0x05, "Drive Code") PORT_DIPLOCATION("S101:1,2") + PORT_DIPSETTING(0x05, "No. 1") + PORT_DIPSETTING(0x04, "No. 2") + PORT_DIPSETTING(0x00, "No. 3") + PORT_DIPSETTING(0x01, "No. 4") PORT_BIT(0xfa, IP_ACTIVE_LOW, IPT_UNUSED) INPUT_PORTS_END |
