summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2025-12-27 04:55:41 +1100
committer Vas Crabb <vas@vastheman.com>2025-12-27 04:55:41 +1100
commita94de09120cf3340af04ade68dc882b71e615ebf (patch)
treef06d00067afaa8551868da401d1187976b74451a
parent939f3126e321254a1d943e8a49827843c1e0c574 (diff)
machine/tms9914.cpp: Suppress side effects for debugger reads.
Also use "English" spacing.
-rw-r--r--src/devices/bus/a2bus/a2ieee488.cpp8
-rw-r--r--src/devices/machine/tms9914.cpp268
-rw-r--r--src/devices/machine/tms9914.h21
-rw-r--r--src/mame/sony/psx.cpp3
4 files changed, 154 insertions, 146 deletions
diff --git a/src/devices/bus/a2bus/a2ieee488.cpp b/src/devices/bus/a2bus/a2ieee488.cpp
index 4707b463d77..109e1ad0ea7 100644
--- a/src/devices/bus/a2bus/a2ieee488.cpp
+++ b/src/devices/bus/a2bus/a2ieee488.cpp
@@ -85,6 +85,7 @@
#include "bus/ieee488/ieee488.h"
#include "machine/tms9914.h"
+
namespace {
class a2bus_ieee488_device:
@@ -166,12 +167,7 @@ a2bus_ieee488_device::a2bus_ieee488_device(const machine_config &mconfig, device
uint8_t a2bus_ieee488_device::read_c0nx(uint8_t offset)
{
- uint8_t data = 0xff;
- if (!machine().side_effects_disabled())
- {
- data = m_tms9914->read(offset & 0x07);
- }
- return data;
+ return m_tms9914->read(offset & 0x07);
}
void a2bus_ieee488_device::write_c0nx(uint8_t offset, uint8_t data)
diff --git a/src/devices/machine/tms9914.cpp b/src/devices/machine/tms9914.cpp
index 2d77f3dd1bd..7ef61ea5b84 100644
--- a/src/devices/machine/tms9914.cpp
+++ b/src/devices/machine/tms9914.cpp
@@ -37,12 +37,12 @@ namespace {
return (T)1U << n;
}
- template<typename T> void BIT_CLR(T& w , unsigned n)
+ template<typename T> void BIT_CLR(T& w, unsigned n)
{
w &= ~BIT_MASK<T>(n);
}
- template<typename T> void BIT_SET(T& w , unsigned n)
+ template<typename T> void BIT_SET(T& w, unsigned n)
{
w |= BIT_MASK<T>(n);
}
@@ -175,7 +175,7 @@ DEFINE_DEVICE_TYPE(TMS9914, tms9914_device, "tms9914", "TMS9914 GPIB Controller"
// Constructors
tms9914_device::tms9914_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
- device_t(mconfig , TMS9914 , tag , owner , clock),
+ device_t(mconfig, TMS9914, tag, owner, clock),
m_dio_read_func(*this, 0xff),
m_dio_write_func(*this),
m_signal_wr_fns(*this),
@@ -241,33 +241,33 @@ tms9914_device::tms9914_device(const machine_config &mconfig, const char *tag, d
// Signal inputs
void tms9914_device::eoi_w(int state)
{
- set_ext_signal(IEEE_488_EOI , state);
+ set_ext_signal(IEEE_488_EOI, state);
}
void tms9914_device::dav_w(int state)
{
- set_ext_signal(IEEE_488_DAV , state);
+ set_ext_signal(IEEE_488_DAV, state);
}
void tms9914_device::nrfd_w(int state)
{
- set_ext_signal(IEEE_488_NRFD , state);
+ set_ext_signal(IEEE_488_NRFD, state);
}
void tms9914_device::ndac_w(int state)
{
- set_ext_signal(IEEE_488_NDAC , state);
+ set_ext_signal(IEEE_488_NDAC, state);
}
void tms9914_device::ifc_w(int state)
{
- set_ext_signal(IEEE_488_IFC , state);
+ set_ext_signal(IEEE_488_IFC, state);
}
void tms9914_device::srq_w(int state)
{
bool prev_srq = get_signal(IEEE_488_SRQ);
- set_ext_signal(IEEE_488_SRQ , state);
+ set_ext_signal(IEEE_488_SRQ, state);
if (cont_r() && !prev_srq && get_signal(IEEE_488_SRQ)) {
set_int1_bit(REG_INT1_SRQ_BIT);
}
@@ -275,18 +275,18 @@ void tms9914_device::srq_w(int state)
void tms9914_device::atn_w(int state)
{
- set_ext_signal(IEEE_488_ATN , state);
+ set_ext_signal(IEEE_488_ATN, state);
}
void tms9914_device::ren_w(int state)
{
- set_ext_signal(IEEE_488_REN , state);
+ set_ext_signal(IEEE_488_REN, state);
}
// Register I/O
void tms9914_device::write(offs_t offset, uint8_t data)
{
- LOG_REG("W %u=%02x\n" , offset , data);
+ LOG_REG("W %u=%02x\n", offset, data);
switch (offset) {
case REG_W_INT_MASK0:
@@ -300,14 +300,14 @@ void tms9914_device::write(offs_t offset, uint8_t data)
break;
case REG_W_AUX_CMD:
- do_aux_cmd(data & REG_AUXCMD_CMD_MASK , BIT(data , REG_AUXCMD_CS_BIT));
+ do_aux_cmd(data & REG_AUXCMD_CMD_MASK, BIT(data, REG_AUXCMD_CS_BIT));
break;
case REG_W_ADDRESS:
{
uint8_t diff = m_reg_address ^ data;
m_reg_address = data;
- if (BIT(diff , REG_ADDR_DAT_BIT) || BIT(diff , REG_ADDR_DAL_BIT)) {
+ if (BIT(diff, REG_ADDR_DAT_BIT) || BIT(diff, REG_ADDR_DAL_BIT)) {
update_fsm();
}
}
@@ -317,7 +317,7 @@ void tms9914_device::write(offs_t offset, uint8_t data)
{
uint8_t diff = m_reg_2nd_serial_p ^ data;
m_reg_2nd_serial_p = data;
- if (BIT(diff , REG_SERIAL_P_RSV1_BIT)) {
+ if (BIT(diff, REG_SERIAL_P_RSV1_BIT)) {
update_fsm();
}
}
@@ -344,7 +344,7 @@ void tms9914_device::write(offs_t offset, uint8_t data)
set_accrq(false);
if (!m_swrst) {
- BIT_CLR(m_reg_int0_status , REG_INT0_BO_BIT);
+ BIT_CLR(m_reg_int0_status, REG_INT0_BO_BIT);
update_int();
if (m_t_eoi_state == FSM_T_ENRS) {
m_t_eoi_state = FSM_T_ERAS;
@@ -363,7 +363,7 @@ void tms9914_device::write(offs_t offset, uint8_t data)
break;
default:
- LOG("Write to unmapped reg %u\n" , offset);
+ LOG("Write to unmapped reg %u\n", offset);
break;
}
}
@@ -375,69 +375,73 @@ uint8_t tms9914_device::read(offs_t offset)
switch (offset) {
case REG_R_INT_STAT0:
res = m_reg_int0_status;
- m_reg_int0_status = 0;
- update_int();
+ if (!machine().side_effects_disabled()) {
+ m_reg_int0_status = 0;
+ update_int();
+ }
break;
case REG_R_INT_STAT1:
res = m_reg_int1_status;
- m_reg_int1_status = 0;
- update_int();
+ if (!machine().side_effects_disabled()) {
+ m_reg_int1_status = 0;
+ update_int();
+ }
break;
case REG_R_ADDR_STAT:
res = 0;
if (m_reg_ulpa) {
- BIT_SET(res , REG_AS_ULPA_BIT);
+ BIT_SET(res, REG_AS_ULPA_BIT);
}
if (m_t_state != FSM_T_TIDS) {
- BIT_SET(res , REG_AS_TADS_BIT);
+ BIT_SET(res, REG_AS_TADS_BIT);
}
if (m_l_state != FSM_L_LIDS) {
- BIT_SET(res , REG_AS_LADS_BIT);
+ BIT_SET(res, REG_AS_LADS_BIT);
}
if (m_t_tpas) {
- BIT_SET(res , REG_AS_TPAS_BIT);
+ BIT_SET(res, REG_AS_TPAS_BIT);
}
if (m_l_lpas) {
- BIT_SET(res , REG_AS_LPAS_BIT);
+ BIT_SET(res, REG_AS_LPAS_BIT);
}
if (get_signal(IEEE_488_ATN)) {
- BIT_SET(res , REG_AS_ATN_BIT);
+ BIT_SET(res, REG_AS_ATN_BIT);
}
if (m_rl_state == FSM_RL_RWLS || m_rl_state == FSM_RL_LWLS) {
- BIT_SET(res , REG_AS_LLO_BIT);
+ BIT_SET(res, REG_AS_LLO_BIT);
}
if (m_rl_state == FSM_RL_REMS || m_rl_state == FSM_RL_RWLS) {
- BIT_SET(res , REG_AS_REM_BIT);
+ BIT_SET(res, REG_AS_REM_BIT);
}
break;
case REG_R_BUS_STAT:
res = 0;
if (get_signal(IEEE_488_REN)) {
- BIT_SET(res , REG_BS_REN_BIT);
+ BIT_SET(res, REG_BS_REN_BIT);
}
if (get_ifcin()) {
- BIT_SET(res , REG_BS_IFC_BIT);
+ BIT_SET(res, REG_BS_IFC_BIT);
}
if (get_signal(IEEE_488_SRQ)) {
- BIT_SET(res , REG_BS_SRQ_BIT);
+ BIT_SET(res, REG_BS_SRQ_BIT);
}
if (get_signal(IEEE_488_EOI)) {
- BIT_SET(res , REG_BS_EOI_BIT);
+ BIT_SET(res, REG_BS_EOI_BIT);
}
if (get_signal(IEEE_488_NRFD)) {
- BIT_SET(res , REG_BS_NRFD_BIT);
+ BIT_SET(res, REG_BS_NRFD_BIT);
}
if (get_signal(IEEE_488_NDAC)) {
- BIT_SET(res , REG_BS_NDAC_BIT);
+ BIT_SET(res, REG_BS_NDAC_BIT);
}
if (get_signal(IEEE_488_DAV)) {
- BIT_SET(res , REG_BS_DAV_BIT);
+ BIT_SET(res, REG_BS_DAV_BIT);
}
if (get_signal(IEEE_488_ATN)) {
- BIT_SET(res , REG_BS_ATN_BIT);
+ BIT_SET(res, REG_BS_ATN_BIT);
}
break;
@@ -447,32 +451,38 @@ uint8_t tms9914_device::read(offs_t offset)
case REG_R_DI:
res = m_reg_di;
- BIT_CLR(m_reg_int0_status , REG_INT0_BI_BIT);
- update_int();
- set_accrq(false);
- if (!m_hdfa && m_ah_anhs) {
- m_ah_anhs = false;
- update_fsm();
+ if (!machine().side_effects_disabled()) {
+ BIT_CLR(m_reg_int0_status, REG_INT0_BI_BIT);
+ update_int();
+ set_accrq(false);
+ if (!m_hdfa && m_ah_anhs) {
+ m_ah_anhs = false;
+ update_fsm();
+ }
+ // TODO: ACRS -> ANRS ?
}
- // TODO: ACRS -> ANRS ?
break;
default:
- LOG("Read from unmapped reg %u\n" , offset);
+ if (!machine().side_effects_disabled()) {
+ LOG("Read from unmapped reg %u\n", offset);
+ }
res = 0;
break;
}
- LOG_REG("R %u=%02x\n" , offset , res);
+ if (!machine().side_effects_disabled()) {
+ LOG_REG("R %u=%02x\n", offset, res);
+ }
return res;
}
int tms9914_device::cont_r()
{
- return m_c_state != FSM_C_CIDS && m_c_state != FSM_C_CADS;
+ return (m_c_state != FSM_C_CIDS) && (m_c_state != FSM_C_CADS);
}
-// device-level overrides
+// device_t implementation
void tms9914_device::device_start()
{
save_item(NAME(m_int_line));
@@ -577,7 +587,7 @@ uint8_t tms9914_device::get_dio()
void tms9914_device::set_dio(uint8_t data)
{
if (data != m_dio) {
- LOG_NOISY("DIO=%02x\n" , data);
+ LOG_NOISY("DIO=%02x\n", data);
m_dio = data;
m_dio_write_func(~data);
}
@@ -585,7 +595,7 @@ void tms9914_device::set_dio(uint8_t data)
bool tms9914_device::get_signal(ieee_488_signal_t signal) const
{
- return m_ext_signals[ signal ];
+ return m_ext_signals[signal];
}
bool tms9914_device::get_ifcin() const
@@ -593,38 +603,38 @@ bool tms9914_device::get_ifcin() const
return get_signal(IEEE_488_IFC) && !m_sic;
}
-void tms9914_device::set_ext_signal(ieee_488_signal_t signal , int state)
+void tms9914_device::set_ext_signal(ieee_488_signal_t signal, int state)
{
state = !state;
- if (m_ext_signals[ signal ] != state) {
- m_ext_signals[ signal ] = state;
- LOG_NOISY("EXT EOI %d DAV %d NRFD %d NDAC %d IFC %d SRQ %d ATN %d REN %d\n" ,
- m_ext_signals[ IEEE_488_EOI ] ,
- m_ext_signals[ IEEE_488_DAV ] ,
- m_ext_signals[ IEEE_488_NRFD ] ,
- m_ext_signals[ IEEE_488_NDAC ] ,
- m_ext_signals[ IEEE_488_IFC ] ,
- m_ext_signals[ IEEE_488_SRQ ] ,
- m_ext_signals[ IEEE_488_ATN ] ,
- m_ext_signals[ IEEE_488_REN ]);
+ if (m_ext_signals[signal] != state) {
+ m_ext_signals[signal] = state;
+ LOG_NOISY("EXT EOI %d DAV %d NRFD %d NDAC %d IFC %d SRQ %d ATN %d REN %d\n",
+ m_ext_signals[IEEE_488_EOI],
+ m_ext_signals[IEEE_488_DAV],
+ m_ext_signals[IEEE_488_NRFD],
+ m_ext_signals[IEEE_488_NDAC],
+ m_ext_signals[IEEE_488_IFC],
+ m_ext_signals[IEEE_488_SRQ],
+ m_ext_signals[IEEE_488_ATN],
+ m_ext_signals[IEEE_488_REN]);
update_fsm();
}
}
-void tms9914_device::set_signal(ieee_488_signal_t signal , bool state)
+void tms9914_device::set_signal(ieee_488_signal_t signal, bool state)
{
- if (state != m_signals[ signal ]) {
- m_signals[ signal ] = state;
- LOG_NOISY("INT EOI %d DAV %d NRFD %d NDAC %d IFC %d SRQ %d ATN %d REN %d\n" ,
- m_signals[ IEEE_488_EOI ] ,
- m_signals[ IEEE_488_DAV ] ,
- m_signals[ IEEE_488_NRFD ] ,
- m_signals[ IEEE_488_NDAC ] ,
- m_signals[ IEEE_488_IFC ] ,
- m_signals[ IEEE_488_SRQ ] ,
- m_signals[ IEEE_488_ATN ] ,
- m_signals[ IEEE_488_REN ]);
- m_signal_wr_fns[ signal ](!state);
+ if (state != m_signals[signal]) {
+ m_signals[signal] = state;
+ LOG_NOISY("INT EOI %d DAV %d NRFD %d NDAC %d IFC %d SRQ %d ATN %d REN %d\n",
+ m_signals[IEEE_488_EOI],
+ m_signals[IEEE_488_DAV],
+ m_signals[IEEE_488_NRFD],
+ m_signals[IEEE_488_NDAC],
+ m_signals[IEEE_488_IFC],
+ m_signals[IEEE_488_SRQ],
+ m_signals[IEEE_488_ATN],
+ m_signals[IEEE_488_REN]);
+ m_signal_wr_fns[signal](!state);
}
}
@@ -658,12 +668,12 @@ void tms9914_device::do_swrst()
bool tms9914_device::listener_reset() const
{
- return m_swrst || BIT(m_reg_address , REG_ADDR_DAL_BIT) || m_sic || get_ifcin();
+ return m_swrst || BIT(m_reg_address, REG_ADDR_DAL_BIT) || m_sic || get_ifcin();
}
bool tms9914_device::talker_reset() const
{
- return m_swrst || BIT(m_reg_address , REG_ADDR_DAT_BIT) || m_sic || get_ifcin();
+ return m_swrst || BIT(m_reg_address, REG_ADDR_DAT_BIT) || m_sic || get_ifcin();
}
bool tms9914_device::controller_reset() const
@@ -688,9 +698,9 @@ void tms9914_device::update_fsm()
int prev_state;
// Loop until all changes settle
while (changed) {
- LOG_NOISY("SH %d SHFS %d AH %d T %d TPAS %d L %d LPAS %d PP %d C %d\n" ,
- m_sh_state , m_sh_shfs , m_ah_state , m_t_state , m_t_tpas ,
- m_l_state , m_l_lpas , m_pp_ppas , m_c_state);
+ LOG_NOISY("SH %d SHFS %d AH %d T %d TPAS %d L %d LPAS %d PP %d C %d\n",
+ m_sh_state, m_sh_shfs, m_ah_state, m_t_state, m_t_tpas,
+ m_l_state, m_l_lpas, m_pp_ppas, m_c_state);
changed = m_ext_state_change;
m_ext_state_change = false;
@@ -721,7 +731,7 @@ void tms9914_device::update_fsm()
m_sh_state = FSM_SH_SDYS;
unsigned clocks = m_sh_vsts ? 4 : (m_stdl ? 8 : 12);
m_sh_dly_timer->adjust(clocks_to_attotime(clocks));
- LOG_NOISY("SH DLY %u\n" , clocks);
+ LOG_NOISY("SH DLY %u\n", clocks);
}
break;
@@ -769,14 +779,14 @@ void tms9914_device::update_fsm()
else if (tmp >= 0x60 && tmp <= 0x7f)
snprintf(cmd, 16, "MSA%d", tmp & 0x1f);
}
- LOG("%.6f TX %s %02X/%d %s\n" , machine().time().as_double() , m_signals[IEEE_488_ATN] ? "C" : "D", m_dio , m_signals[ IEEE_488_EOI ], cmd);
+ LOG("%.6f TX %s %02X/%d %s\n", machine().time().as_double(), m_signals[IEEE_488_ATN] ? "C" : "D", m_dio, m_signals[IEEE_488_EOI], cmd);
}
m_sh_state = FSM_SH_SGNS;
}
break;
default:
- LOG("Invalid SH state %d\n" , m_sh_state);
+ LOG("Invalid SH state %d\n", m_sh_state);
m_sh_state = FSM_SH_SIDS;
}
}
@@ -797,13 +807,13 @@ void tms9914_device::update_fsm()
// DIO is controlled by SH & PP FSMs
bool eoi_signal = false;
uint8_t dio_byte = 0;
- set_signal(IEEE_488_DAV , m_sh_state == FSM_SH_STRS);
+ set_signal(IEEE_488_DAV, m_sh_state == FSM_SH_STRS);
if (sh_active()) {
if (m_t_state == FSM_T_SPAS) {
dio_byte = m_reg_serial_p & REG_SERIAL_P_MASK;
if (m_sr_state == FSM_SR_APRS1 || m_sr_state == FSM_SR_APRS2) {
// Set RQS
- BIT_SET(dio_byte , 6);
+ BIT_SET(dio_byte, 6);
}
} else {
dio_byte = m_reg_do;
@@ -861,7 +871,7 @@ void tms9914_device::update_fsm()
if_cmd_received(if_cmd & IFCMD_MASK);
} else {
// Got a DAB
- dab_received(get_dio() , get_signal(IEEE_488_EOI));
+ dab_received(get_dio(), get_signal(IEEE_488_EOI));
}
}
break;
@@ -881,7 +891,7 @@ void tms9914_device::update_fsm()
break;
default:
- LOG("Invalid AH state %d\n" , m_ah_state);
+ LOG("Invalid AH state %d\n", m_ah_state);
m_ah_state = FSM_AH_AIDS;
}
}
@@ -889,8 +899,8 @@ void tms9914_device::update_fsm()
changed = true;
}
// AH outputs
- set_signal(IEEE_488_NRFD , m_ah_state == FSM_AH_ANRS || m_ah_state == FSM_AH_ACDS1 || m_ah_state == FSM_AH_ACDS2 || m_ah_state == FSM_AH_AWNS);
- set_signal(IEEE_488_NDAC , m_ah_state == FSM_AH_ANRS || m_ah_state == FSM_AH_ACRS || m_ah_state == FSM_AH_ACDS1 || m_ah_state == FSM_AH_ACDS2);
+ set_signal(IEEE_488_NRFD, m_ah_state == FSM_AH_ANRS || m_ah_state == FSM_AH_ACDS1 || m_ah_state == FSM_AH_ACDS2 || m_ah_state == FSM_AH_AWNS);
+ set_signal(IEEE_488_NDAC, m_ah_state == FSM_AH_ANRS || m_ah_state == FSM_AH_ACRS || m_ah_state == FSM_AH_ACDS1 || m_ah_state == FSM_AH_ACDS2);
// T FSM
prev_state = m_t_state;
@@ -922,7 +932,7 @@ void tms9914_device::update_fsm()
break;
default:
- LOG("Invalid T state %d\n" , m_t_state);
+ LOG("Invalid T state %d\n", m_t_state);
m_t_state = FSM_T_TIDS;
}
}
@@ -957,7 +967,7 @@ void tms9914_device::update_fsm()
break;
default:
- LOG("Invalid L state %d\n" , m_l_state);
+ LOG("Invalid L state %d\n", m_l_state);
m_l_state = FSM_L_LIDS;
}
}
@@ -995,7 +1005,7 @@ void tms9914_device::update_fsm()
switch (m_sr_state) {
case FSM_SR_NPRS:
if (m_t_state != FSM_T_SPAS &&
- (BIT(m_reg_2nd_serial_p , REG_SERIAL_P_RSV1_BIT) || m_rsvd2)) {
+ (BIT(m_reg_2nd_serial_p, REG_SERIAL_P_RSV1_BIT) || m_rsvd2)) {
m_sr_state = FSM_SR_SRQS;
}
break;
@@ -1003,7 +1013,7 @@ void tms9914_device::update_fsm()
case FSM_SR_SRQS:
if (m_t_state == FSM_T_SPAS) {
m_sr_state = FSM_SR_APRS1;
- } else if (!BIT(m_reg_2nd_serial_p , REG_SERIAL_P_RSV1_BIT) && !m_rsvd2) {
+ } else if (!BIT(m_reg_2nd_serial_p, REG_SERIAL_P_RSV1_BIT) && !m_rsvd2) {
m_sr_state = FSM_SR_NPRS;
}
break;
@@ -1012,7 +1022,7 @@ void tms9914_device::update_fsm()
if (m_t_state == FSM_T_SPAS && m_sh_state == FSM_SH_STRS) {
m_rsvd2 = false;
}
- if (!BIT(m_reg_2nd_serial_p , REG_SERIAL_P_RSV1_BIT) && !m_rsvd2) {
+ if (!BIT(m_reg_2nd_serial_p, REG_SERIAL_P_RSV1_BIT) && !m_rsvd2) {
m_sr_state = FSM_SR_APRS2;
}
break;
@@ -1028,7 +1038,7 @@ void tms9914_device::update_fsm()
break;
default:
- LOG("Invalid SR state %d\n" , m_sr_state);
+ LOG("Invalid SR state %d\n", m_sr_state);
m_sr_state = FSM_SR_NPRS;
}
}
@@ -1036,7 +1046,7 @@ void tms9914_device::update_fsm()
changed = true;
}
// SR outputs
- set_signal(IEEE_488_SRQ , m_sr_state == FSM_SR_SRQS);
+ set_signal(IEEE_488_SRQ, m_sr_state == FSM_SR_SRQS);
// RL FSM
if (m_rl_state != FSM_RL_LOCS && (m_swrst || !get_signal(IEEE_488_REN))) {
@@ -1118,18 +1128,18 @@ void tms9914_device::update_fsm()
break;
default:
- LOG("Invalid C state %d\n" , m_c_state);
+ LOG("Invalid C state %d\n", m_c_state);
m_c_state = FSM_C_CIDS;
}
}
if (m_c_state != prev_state) {
changed = true;
}
- set_signal(IEEE_488_ATN , m_c_state == FSM_C_CACS ||
+ set_signal(IEEE_488_ATN, m_c_state == FSM_C_CACS ||
m_c_state == FSM_C_CSWS || m_c_state == FSM_C_CAWS ||
m_c_state == FSM_C_CPWS);
eoi_signal = eoi_signal || m_c_state == FSM_C_CPWS;
- set_signal(IEEE_488_EOI , eoi_signal);
+ set_signal(IEEE_488_EOI, eoi_signal);
set_dio(dio_byte);
}
@@ -1139,12 +1149,12 @@ void tms9914_device::update_fsm()
bool tms9914_device::is_my_address(uint8_t addr)
{
uint8_t diff = (addr ^ m_reg_address) & REG_ADDR_ADDR_MASK;
- if (BIT(m_reg_address , REG_ADDR_EDPA_BIT)) {
+ if (BIT(m_reg_address, REG_ADDR_EDPA_BIT)) {
// If dual-address mode is enabled, difference in LSB of address is ignored
- BIT_CLR(diff , 0);
+ BIT_CLR(diff, 0);
}
if (diff == 0) {
- m_reg_ulpa = BIT(addr , 0);
+ m_reg_ulpa = BIT(addr, 0);
}
return diff == 0;
}
@@ -1182,7 +1192,7 @@ void tms9914_device::do_TAF()
void tms9914_device::if_cmd_received(uint8_t if_cmd)
{
- LOG("%.6f RX cmd:%02x\n" , machine().time().as_double() , if_cmd);
+ LOG("%.6f RX cmd:%02x\n", machine().time().as_double(), if_cmd);
bool sahf = false;
@@ -1208,7 +1218,7 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
case IFCMD_SDC:
if (m_l_state == FSM_L_LADS) {
set_int1_bit(REG_INT1_DCAS_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_DCAS_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_DCAS_BIT);
}
break;
@@ -1219,7 +1229,7 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
case IFCMD_TCT:
if (m_t_state == FSM_T_TADS) {
set_int1_bit(REG_INT1_UNC_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_UNC_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_UNC_BIT);
}
break;
@@ -1233,7 +1243,7 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
case IFCMD_DCL:
set_int1_bit(REG_INT1_DCAS_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_DCAS_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_DCAS_BIT);
break;
case IFCMD_SPE:
@@ -1269,18 +1279,18 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
// ACG
if (m_l_state == FSM_L_LADS) {
set_int1_bit(REG_INT1_UNC_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_UNC_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_UNC_BIT);
}
} else if ((if_cmd & IFCMD_UCG_MASK) == IFCMD_UCG_VALUE) {
// UCG
set_int1_bit(REG_INT1_UNC_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_UNC_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_UNC_BIT);
} else if ((if_cmd & IFCMD_GROUP_MASK) == IFCMD_LAG_VALUE) {
// LAG
if (is_my_address(if_cmd)) {
// MLA
m_l_lpas = true;
- if (!BIT(m_reg_int1_mask , REG_INT1_APT_BIT)) {
+ if (!BIT(m_reg_int1_mask, REG_INT1_APT_BIT)) {
// Not using secondary addressing
if (!listener_reset()) {
if (m_l_state != FSM_L_LADS) {
@@ -1290,7 +1300,7 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
}
if (!m_t_spms) {
set_int1_bit(REG_INT1_MA_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_MA_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_MA_BIT);
}
}
}
@@ -1299,7 +1309,7 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
if (is_my_address(if_cmd)) {
// MTA
m_t_tpas = true;
- if (!BIT(m_reg_int1_mask , REG_INT1_APT_BIT)) {
+ if (!BIT(m_reg_int1_mask, REG_INT1_APT_BIT)) {
// Not using secondary addressing
if (!talker_reset()) {
if (m_t_state != FSM_T_TADS) {
@@ -1309,7 +1319,7 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
}
if (!m_t_spms) {
set_int1_bit(REG_INT1_MA_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_MA_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_MA_BIT);
}
}
} else {
@@ -1323,11 +1333,11 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
// SCG
if (m_pts) {
set_int1_bit(REG_INT1_UNC_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_UNC_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_UNC_BIT);
m_pts = false;
} else if (m_l_lpas || m_t_tpas) {
set_int1_bit(REG_INT1_APT_BIT);
- sahf = BIT(m_reg_int1_mask , REG_INT1_APT_BIT);
+ sahf = BIT(m_reg_int1_mask, REG_INT1_APT_BIT);
}
}
break;
@@ -1338,9 +1348,9 @@ void tms9914_device::if_cmd_received(uint8_t if_cmd)
}
}
-void tms9914_device::dab_received(uint8_t dab , bool eoi)
+void tms9914_device::dab_received(uint8_t dab, bool eoi)
{
- LOG("%.6f RX DAB:%02x/%d\n" , machine().time().as_double() , dab , eoi);
+ LOG("%.6f RX DAB:%02x/%d\n", machine().time().as_double(), dab, eoi);
m_reg_di = dab;
if (!m_shdw) {
m_ah_anhs = true;
@@ -1354,7 +1364,7 @@ void tms9914_device::dab_received(uint8_t dab , bool eoi)
}
}
-void tms9914_device::do_aux_cmd(unsigned cmd , bool set_bit)
+void tms9914_device::do_aux_cmd(unsigned cmd, bool set_bit)
{
switch (cmd) {
case AUXCMD_SWRST:
@@ -1370,7 +1380,7 @@ void tms9914_device::do_aux_cmd(unsigned cmd , bool set_bit)
case AUXCMD_DACR:
if (m_ah_adhs) {
m_ah_adhs = false;
- if (BIT(m_reg_int1_mask , REG_INT1_APT_BIT)) {
+ if (BIT(m_reg_int1_mask, REG_INT1_APT_BIT)) {
// Using secondary addressing
if (set_bit && !listener_reset() && m_l_lpas) {
do_LAF();
@@ -1533,7 +1543,7 @@ void tms9914_device::do_aux_cmd(unsigned cmd , bool set_bit)
break;
case AUXCMD_STDL:
- LOG("Unimplemented STDL=%d cmd\n" , set_bit);
+ LOG("Unimplemented STDL=%d cmd\n", set_bit);
break;
case AUXCMD_SHDW:
@@ -1547,7 +1557,7 @@ void tms9914_device::do_aux_cmd(unsigned cmd , bool set_bit)
break;
case AUXCMD_VSTDL:
- LOG("Unimplemented VSTDL=%d cmd\n" , set_bit);
+ LOG("Unimplemented VSTDL=%d cmd\n", set_bit);
break;
case AUXCMD_RSV2:
@@ -1558,14 +1568,14 @@ void tms9914_device::do_aux_cmd(unsigned cmd , bool set_bit)
break;
default:
- LOG("Unrecognized aux cmd %u\n" , cmd);
+ LOG("Unrecognized aux cmd %u\n", cmd);
break;
}
}
void tms9914_device::set_int0_bit(unsigned bit_no)
{
- BIT_SET(m_reg_int0_status , bit_no);
+ BIT_SET(m_reg_int0_status, bit_no);
update_int();
if (bit_no == REG_INT0_BI_BIT || (bit_no == REG_INT0_BO_BIT && m_c_state != FSM_C_CACS)) {
set_accrq(true);
@@ -1574,7 +1584,7 @@ void tms9914_device::set_int0_bit(unsigned bit_no)
void tms9914_device::set_int1_bit(unsigned bit_no)
{
- BIT_SET(m_reg_int1_status , bit_no);
+ BIT_SET(m_reg_int1_status, bit_no);
update_int();
}
@@ -1583,18 +1593,18 @@ void tms9914_device::update_int()
bool new_int_line = false;
m_reg_int0_status &= REG_INT0_INT_MASK;
if (m_reg_int0_status & m_reg_int0_mask) {
- BIT_SET(m_reg_int0_status , REG_INT0_INT0_BIT);
+ BIT_SET(m_reg_int0_status, REG_INT0_INT0_BIT);
new_int_line = true;
}
if (m_reg_int1_status & m_reg_int1_mask) {
- BIT_SET(m_reg_int0_status , REG_INT0_INT1_BIT);
+ BIT_SET(m_reg_int0_status, REG_INT0_INT1_BIT);
new_int_line = true;
}
if (m_dai) {
new_int_line = false;
}
if (new_int_line != m_int_line) {
- LOG_INT("INT=%d\n" , new_int_line);
+ LOG_INT("INT=%d\n", new_int_line);
m_int_line = new_int_line;
m_int_write_func(m_int_line);
}
@@ -1602,18 +1612,18 @@ void tms9914_device::update_int()
void tms9914_device::update_ifc()
{
- set_signal(IEEE_488_IFC , m_sic);
+ set_signal(IEEE_488_IFC, m_sic);
}
void tms9914_device::update_ren()
{
- set_signal(IEEE_488_REN , m_sre);
+ set_signal(IEEE_488_REN, m_sre);
}
void tms9914_device::set_accrq(bool state)
{
if (state != m_accrq_line) {
- LOG_INT("ACCRQ=%d\n" , state);
+ LOG_INT("ACCRQ=%d\n", state);
m_accrq_line = state;
m_accrq_write_func(m_accrq_line);
}
diff --git a/src/devices/machine/tms9914.h b/src/devices/machine/tms9914.h
index c21cfab5db5..4d9fed6fd4e 100644
--- a/src/devices/machine/tms9914.h
+++ b/src/devices/machine/tms9914.h
@@ -90,13 +90,12 @@ public:
// CONT output: true when 9914 is current controller-in-charge
int cont_r();
-private:
- // device-level overrides
+protected:
+ // device_t implementation
virtual void device_start() override ATTR_COLD;
virtual void device_reset() override ATTR_COLD;
- TIMER_CALLBACK_MEMBER(fsm_tick);
-
+private:
devcb_read8 m_dio_read_func;
devcb_write8 m_dio_write_func;
devcb_write_line::array<IEEE_488_SIGNAL_COUNT> m_signal_wr_fns;
@@ -106,8 +105,8 @@ private:
bool m_accrq_line;
uint8_t m_dio;
- bool m_signals[ IEEE_488_SIGNAL_COUNT ];
- bool m_ext_signals[ IEEE_488_SIGNAL_COUNT ];
+ bool m_signals[IEEE_488_SIGNAL_COUNT];
+ bool m_ext_signals[IEEE_488_SIGNAL_COUNT];
bool m_no_reflection;
bool m_ext_state_change;
@@ -244,12 +243,14 @@ private:
emu_timer *m_ah_dly_timer;
emu_timer *m_c_dly_timer;
+ TIMER_CALLBACK_MEMBER(fsm_tick);
+
uint8_t get_dio();
void set_dio(uint8_t data);
bool get_signal(ieee_488_signal_t signal) const;
bool get_ifcin() const;
- void set_ext_signal(ieee_488_signal_t signal , int state);
- void set_signal(ieee_488_signal_t signal , bool state);
+ void set_ext_signal(ieee_488_signal_t signal, int state);
+ void set_signal(ieee_488_signal_t signal, bool state);
void do_swrst();
bool listener_reset() const;
bool talker_reset() const;
@@ -260,8 +261,8 @@ private:
void do_LAF();
void do_TAF();
void if_cmd_received(uint8_t if_cmd);
- void dab_received(uint8_t dab , bool eoi);
- void do_aux_cmd(unsigned cmd , bool set_bit);
+ void dab_received(uint8_t dab, bool eoi);
+ void do_aux_cmd(unsigned cmd, bool set_bit);
void set_int0_bit(unsigned bit_no);
void set_int1_bit(unsigned bit_no);
void update_int();
diff --git a/src/mame/sony/psx.cpp b/src/mame/sony/psx.cpp
index dce49952c21..10f02dc6e34 100644
--- a/src/mame/sony/psx.cpp
+++ b/src/mame/sony/psx.cpp
@@ -11,13 +11,14 @@
#include "emu.h"
+#include "psxcd.h"
+
#include "bus/psx/ctlrport.h"
#include "bus/psx/parallel.h"
#include "cpu/m6805/hd6305.h"
#include "cpu/psx/psx.h"
#include "imagedev/cdromimg.h"
#include "imagedev/snapquik.h"
-#include "psxcd.h"
#include "machine/ram.h"
#include "sound/spu.h"
#include "video/psx.h"