From 042f15a5781ab85b421e668e0f9a51f2ec9c81f9 Mon Sep 17 00:00:00 2001 From: "therealmogminer@gmail.com" Date: Mon, 3 Oct 2016 16:28:45 +0200 Subject: [PATCH] -6840ptm: Changed WRITE8 to WRITE_LINE for single-bit outputs. [Ryan Holtz] --- src/devices/machine/6840ptm.cpp | 24 ++++++++++++------------ src/devices/machine/6840ptm.h | 6 +++--- src/mame/drivers/arachnid.cpp | 8 ++++---- src/mame/drivers/cmi.cpp | 9 +++++---- src/mame/drivers/ginganin.cpp | 6 +++--- src/mame/drivers/jpmsys5.cpp | 14 +++++++------- src/mame/drivers/mpu3.cpp | 18 +++++++++--------- src/mame/drivers/mpu4.cpp | 20 ++++++++++---------- src/mame/drivers/mpu4vid.cpp | 32 ++++++++++++++++---------------- src/mame/drivers/poly.cpp | 16 ++++++++-------- src/mame/drivers/swtpc09.cpp | 12 ++++++------ src/mame/drivers/v6809.cpp | 14 +++++++------- src/mame/includes/ginganin.h | 2 +- src/mame/includes/jpmsys5.h | 2 +- src/mame/includes/mpu4.h | 6 +++--- src/mame/includes/swtpc09.h | 4 ++-- src/mame/machine/swtpc09.cpp | 9 ++++++--- 17 files changed, 103 insertions(+), 99 deletions(-) diff --git a/src/devices/machine/6840ptm.cpp b/src/devices/machine/6840ptm.cpp index 41445e753b4..7d71abbdfa7 100644 --- a/src/devices/machine/6840ptm.cpp +++ b/src/devices/machine/6840ptm.cpp @@ -391,13 +391,13 @@ void ptm6840_device::reload_count(int idx) switch (idx) { case 0: - m_out0_cb((offs_t)0, m_output[0]); + m_out0_cb(m_output[0]); break; case 1: - m_out1_cb((offs_t)0, m_output[1]); + m_out1_cb(m_output[1]); break; case 2: - m_out2_cb((offs_t)0, m_output[2]); + m_out2_cb(m_output[2]); break; } } @@ -528,13 +528,13 @@ WRITE8_MEMBER( ptm6840_device::write ) switch (idx) { case 0: - m_out0_cb((offs_t)0, 0); + m_out0_cb(0); break; case 1: - m_out1_cb((offs_t)0, 0); + m_out1_cb(0); break; case 2: - m_out2_cb((offs_t)0, 0); + m_out2_cb(0); break; } } @@ -629,13 +629,13 @@ void ptm6840_device::timeout(int idx) switch (idx) { case 0: - m_out0_cb((offs_t)0, m_output[0]); + m_out0_cb(m_output[0]); break; case 1: - m_out1_cb((offs_t)0, m_output[1]); + m_out1_cb(m_output[1]); break; case 2: - m_out2_cb((offs_t)0, m_output[2]); + m_out2_cb(m_output[2]); break; } } @@ -649,13 +649,13 @@ void ptm6840_device::timeout(int idx) switch (idx) { case 0: - m_out0_cb((offs_t)0, m_output[0]); + m_out0_cb(m_output[0]); break; case 1: - m_out1_cb((offs_t)0, m_output[1]); + m_out1_cb(m_output[1]); break; case 2: - m_out2_cb((offs_t)0, m_output[2]); + m_out2_cb(m_output[2]); break; } diff --git a/src/devices/machine/6840ptm.h b/src/devices/machine/6840ptm.h index c17f9d1b04d..e21447a57c2 100644 --- a/src/devices/machine/6840ptm.h +++ b/src/devices/machine/6840ptm.h @@ -130,9 +130,9 @@ private: double m_internal_clock; double m_external_clock[3]; - devcb_write8 m_out0_cb; - devcb_write8 m_out1_cb; - devcb_write8 m_out2_cb; + devcb_write_line m_out0_cb; + devcb_write_line m_out1_cb; + devcb_write_line m_out2_cb; devcb_write_line m_irq_cb; // function called if IRQ line changes UINT8 m_control_reg[3]; diff --git a/src/mame/drivers/arachnid.cpp b/src/mame/drivers/arachnid.cpp index 302db21b4e4..0ba0551b596 100644 --- a/src/mame/drivers/arachnid.cpp +++ b/src/mame/drivers/arachnid.cpp @@ -105,7 +105,7 @@ public: DECLARE_WRITE8_MEMBER( pia_u17_pb_w ); DECLARE_WRITE_LINE_MEMBER( pia_u17_pcb_w ); - DECLARE_WRITE8_MEMBER(ptm_o1_callback); + DECLARE_WRITE_LINE_MEMBER(ptm_o1_callback); UINT8 read_keyboard(int pa); }; @@ -248,9 +248,9 @@ INPUT_PORTS_END ptm6840_interface ptm_intf -------------------------------------------------*/ -WRITE8_MEMBER(arachnid_state::ptm_o1_callback) +WRITE_LINE_MEMBER(arachnid_state::ptm_o1_callback) { - m_speaker->level_w(data); + m_speaker->level_w(state); } UINT8 arachnid_state::read_keyboard(int pa) @@ -453,7 +453,7 @@ static MACHINE_CONFIG_START( arachnid, arachnid_state ) MCFG_DEVICE_ADD(PTM6840_TAG, PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(XTAL_8MHz / 4) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(arachnid_state, ptm_o1_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(arachnid_state, ptm_o1_callback)) MACHINE_CONFIG_END /*************************************************************************** diff --git a/src/mame/drivers/cmi.cpp b/src/mame/drivers/cmi.cpp index 6ae0ed5595d..181c4114132 100644 --- a/src/mame/drivers/cmi.cpp +++ b/src/mame/drivers/cmi.cpp @@ -216,7 +216,7 @@ public: static void set_channel_number(device_t &device, int channel) { dynamic_cast(device).m_channel = channel; } - DECLARE_WRITE8_MEMBER( ptm_out0 ); + DECLARE_WRITE_LINE_MEMBER( ptm_out0 ); DECLARE_WRITE8_MEMBER( write ); DECLARE_READ8_MEMBER( read ); @@ -326,7 +326,7 @@ MACHINE_CONFIG_FRAGMENT( cmi01a_device ) MCFG_DEVICE_ADD("cmi01a_ptm", PTM6840, 0) // ptm_cmi01a_config MCFG_PTM6840_INTERNAL_CLOCK(2000000) MCFG_PTM6840_EXTERNAL_CLOCKS(250000, 500000, 500000) - MCFG_PTM6840_OUT0_CB(WRITE8(cmi01a_device, ptm_out0)) + MCFG_PTM6840_OUT0_CB(WRITELINE(cmi01a_device, ptm_out0)) MCFG_PTM6840_IRQ_CB(WRITELINE(cmi01a_device, ptm_irq)) MACHINE_CONFIG_END @@ -1929,9 +1929,9 @@ void cmi01a_device::update_wave_addr(int inc) /* Zero crossing interrupt is a pulse */ } -WRITE8_MEMBER( cmi01a_device::ptm_out0 ) +WRITE_LINE_MEMBER( cmi01a_device::ptm_out0 ) { - m_ptm_out0 = data; + m_ptm_out0 = state; } READ_LINE_MEMBER( cmi01a_device::eosi_r ) @@ -1947,6 +1947,7 @@ READ_LINE_MEMBER( cmi01a_device::zx_r ) WRITE8_MEMBER( cmi01a_device::write ) { //printf("C%d W: %02x = %02x\n", m_channel, offset, data); + switch (offset) { case 0x0: diff --git a/src/mame/drivers/ginganin.cpp b/src/mame/drivers/ginganin.cpp index 620870e93ac..4510b0c22fc 100644 --- a/src/mame/drivers/ginganin.cpp +++ b/src/mame/drivers/ginganin.cpp @@ -233,9 +233,9 @@ void ginganin_state::machine_reset() m_flipscreen = 0; } -WRITE8_MEMBER(ginganin_state::ptm_irq) +WRITE_LINE_MEMBER(ginganin_state::ptm_irq) { - m_audiocpu->set_input_line(0, (data & 1) ? ASSERT_LINE : CLEAR_LINE); + m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE); } @@ -253,7 +253,7 @@ static MACHINE_CONFIG_START( ginganin, ginganin_state ) MCFG_DEVICE_ADD("6840ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(SOUND_CLOCK/2) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(ginganin_state, ptm_irq)) + MCFG_PTM6840_OUT0_CB(WRITELINE(ginganin_state, ptm_irq)) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) diff --git a/src/mame/drivers/jpmsys5.cpp b/src/mame/drivers/jpmsys5.cpp index 1a95350bcbc..4cfaf25ec89 100644 --- a/src/mame/drivers/jpmsys5.cpp +++ b/src/mame/drivers/jpmsys5.cpp @@ -531,11 +531,11 @@ WRITE_LINE_MEMBER(jpmsys5_state::ptm_irq) m_maincpu->set_input_line(INT_6840PTM, state ? ASSERT_LINE : CLEAR_LINE); } -WRITE8_MEMBER(jpmsys5_state::u26_o1_callback) +WRITE_LINE_MEMBER(jpmsys5_state::u26_o1_callback) { - if (m_mpxclk !=data) + if (m_mpxclk != state) { - if (!data) //falling edge + if (!state) //falling edge { m_lamp_strobe++; if (m_lamp_strobe >15) @@ -545,7 +545,7 @@ WRITE8_MEMBER(jpmsys5_state::u26_o1_callback) } sys5_draw_lamps(); } - m_mpxclk = data; + m_mpxclk = state; } @@ -672,7 +672,7 @@ static MACHINE_CONFIG_START( jpmsys5v, jpmsys5_state ) MCFG_DEVICE_ADD("6840ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(1000000) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(jpmsys5_state, u26_o1_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(jpmsys5_state, u26_o1_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(jpmsys5_state, ptm_irq)) MACHINE_CONFIG_END @@ -877,7 +877,7 @@ MACHINE_CONFIG_START( jpmsys5_ym, jpmsys5_state ) MCFG_DEVICE_ADD("6840ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(1000000) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(jpmsys5_state, u26_o1_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(jpmsys5_state, u26_o1_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(jpmsys5_state, ptm_irq)) MCFG_DEFAULT_LAYOUT(layout_jpmsys5) @@ -930,7 +930,7 @@ MACHINE_CONFIG_START( jpmsys5, jpmsys5_state ) MCFG_DEVICE_ADD("6840ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(1000000) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(jpmsys5_state, u26_o1_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(jpmsys5_state, u26_o1_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(jpmsys5_state, ptm_irq)) MCFG_DEFAULT_LAYOUT(layout_jpmsys5) diff --git a/src/mame/drivers/mpu3.cpp b/src/mame/drivers/mpu3.cpp index 18333f24c5c..91c81dc641e 100644 --- a/src/mame/drivers/mpu3.cpp +++ b/src/mame/drivers/mpu3.cpp @@ -228,9 +228,9 @@ public: DECLARE_WRITE8_MEMBER(mpu3ptm_w); DECLARE_READ8_MEMBER(mpu3ptm_r); DECLARE_WRITE_LINE_MEMBER(cpu0_irq); - DECLARE_WRITE8_MEMBER(ic2_o1_callback); - DECLARE_WRITE8_MEMBER(ic2_o2_callback); - DECLARE_WRITE8_MEMBER(ic2_o3_callback); + DECLARE_WRITE_LINE_MEMBER(ic2_o1_callback); + DECLARE_WRITE_LINE_MEMBER(ic2_o2_callback); + DECLARE_WRITE_LINE_MEMBER(ic2_o3_callback); DECLARE_READ8_MEMBER(pia_ic3_porta_r); DECLARE_WRITE8_MEMBER(pia_ic3_portb_w); DECLARE_WRITE_LINE_MEMBER(pia_ic3_ca2_w); @@ -323,17 +323,17 @@ WRITE_LINE_MEMBER(mpu3_state::cpu0_irq) /* IC2 6840 PTM handler probably clocked from elsewhere*/ -WRITE8_MEMBER(mpu3_state::ic2_o1_callback) +WRITE_LINE_MEMBER(mpu3_state::ic2_o1_callback) { } //FIXME FROM HERE -WRITE8_MEMBER(mpu3_state::ic2_o2_callback) +WRITE_LINE_MEMBER(mpu3_state::ic2_o2_callback) { } -WRITE8_MEMBER(mpu3_state::ic2_o3_callback) +WRITE_LINE_MEMBER(mpu3_state::ic2_o3_callback) { } @@ -860,9 +860,9 @@ static MACHINE_CONFIG_START( mpu3base, mpu3_state ) MCFG_DEVICE_ADD("ptm_ic2", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(MPU3_MASTER_CLOCK) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(mpu3_state, ic2_o1_callback)) - MCFG_PTM6840_OUT1_CB(WRITE8(mpu3_state, ic2_o2_callback)) - MCFG_PTM6840_OUT2_CB(WRITE8(mpu3_state, ic2_o3_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(mpu3_state, ic2_o1_callback)) + MCFG_PTM6840_OUT1_CB(WRITELINE(mpu3_state, ic2_o2_callback)) + MCFG_PTM6840_OUT2_CB(WRITELINE(mpu3_state, ic2_o3_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(mpu3_state, cpu0_irq)) MCFG_DEVICE_ADD("pia_ic3", PIA6821, 0) diff --git a/src/mame/drivers/mpu4.cpp b/src/mame/drivers/mpu4.cpp index fa69848e4bc..913c7c4fa45 100644 --- a/src/mame/drivers/mpu4.cpp +++ b/src/mame/drivers/mpu4.cpp @@ -534,29 +534,29 @@ WRITE8_MEMBER(mpu4_state::bankset_w) /* IC2 6840 PTM handler */ -WRITE8_MEMBER(mpu4_state::ic2_o1_callback) +WRITE_LINE_MEMBER(mpu4_state::ic2_o1_callback) { - m_6840ptm->set_c2(data); /* copy output value to IC2 c2 + m_6840ptm->set_c2(state); /* copy output value to IC2 c2 this output is the clock for timer2 */ /* 1200Hz System interrupt timer */ } -WRITE8_MEMBER(mpu4_state::ic2_o2_callback) +WRITE_LINE_MEMBER(mpu4_state::ic2_o2_callback) { - m_pia3->ca1_w(data); /* copy output value to IC3 ca1 */ + m_pia3->ca1_w(state); /* copy output value to IC3 ca1 */ /* the output from timer2 is the input clock for timer3 */ /* miscellaneous interrupts generated here */ - m_6840ptm->set_c3(data); + m_6840ptm->set_c3(state); } -WRITE8_MEMBER(mpu4_state::ic2_o3_callback) +WRITE_LINE_MEMBER(mpu4_state::ic2_o3_callback) { /* the output from timer3 is used as a square wave for the alarm output and as an external clock source for timer 1! */ /* also runs lamp fade */ - m_6840ptm->set_c1(data); + m_6840ptm->set_c1(state); } /* 6821 PIA handlers */ @@ -3005,9 +3005,9 @@ MACHINE_CONFIG_FRAGMENT( mpu4_common ) MCFG_DEVICE_ADD("ptm_ic2", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(MPU4_MASTER_CLOCK / 4) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(mpu4_state, ic2_o1_callback)) - MCFG_PTM6840_OUT1_CB(WRITE8(mpu4_state, ic2_o2_callback)) - MCFG_PTM6840_OUT2_CB(WRITE8(mpu4_state, ic2_o3_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(mpu4_state, ic2_o1_callback)) + MCFG_PTM6840_OUT1_CB(WRITELINE(mpu4_state, ic2_o2_callback)) + MCFG_PTM6840_OUT2_CB(WRITELINE(mpu4_state, ic2_o3_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(mpu4_state, cpu0_irq)) MCFG_DEVICE_ADD("pia_ic3", PIA6821, 0) diff --git a/src/mame/drivers/mpu4vid.cpp b/src/mame/drivers/mpu4vid.cpp index 121913c7f99..e2bcaf3a50d 100644 --- a/src/mame/drivers/mpu4vid.cpp +++ b/src/mame/drivers/mpu4vid.cpp @@ -283,9 +283,9 @@ public: DECLARE_WRITE_LINE_MEMBER(m6809_acia_irq); DECLARE_WRITE_LINE_MEMBER(m68k_acia_irq); DECLARE_WRITE_LINE_MEMBER(cpu1_ptm_irq); - DECLARE_WRITE8_MEMBER(vid_o1_callback); - DECLARE_WRITE8_MEMBER(vid_o2_callback); - DECLARE_WRITE8_MEMBER(vid_o3_callback); + DECLARE_WRITE_LINE_MEMBER(vid_o1_callback); + DECLARE_WRITE_LINE_MEMBER(vid_o2_callback); + DECLARE_WRITE_LINE_MEMBER(vid_o3_callback); DECLARE_READ8_MEMBER(pia_ic5_porta_track_r); void mpu4vid_char_cheat( int address); DECLARE_WRITE_LINE_MEMBER(update_mpu68_interrupts); @@ -352,26 +352,26 @@ WRITE_LINE_MEMBER(mpu4vid_state::cpu1_ptm_irq) } -WRITE8_MEMBER(mpu4vid_state::vid_o1_callback) +WRITE_LINE_MEMBER(mpu4vid_state::vid_o1_callback) { - m_ptm->set_c2(data); /* this output is the clock for timer2 */ + m_ptm->set_c2(state); /* this output is the clock for timer2 */ - m_acia_0->write_txc(data); - m_acia_0->write_rxc(data); - m_acia_1->write_txc(data); - m_acia_1->write_rxc(data); + m_acia_0->write_txc(state); + m_acia_0->write_rxc(state); + m_acia_1->write_txc(state); + m_acia_1->write_rxc(state); } -WRITE8_MEMBER(mpu4vid_state::vid_o2_callback) +WRITE_LINE_MEMBER(mpu4vid_state::vid_o2_callback) { - m_ptm->set_c3(data); /* this output is the clock for timer3 */ + m_ptm->set_c3(state); /* this output is the clock for timer3 */ } -WRITE8_MEMBER(mpu4vid_state::vid_o3_callback) +WRITE_LINE_MEMBER(mpu4vid_state::vid_o3_callback) { - m_ptm->set_c1(data); /* this output is the clock for timer1 */ + m_ptm->set_c1(state); /* this output is the clock for timer1 */ } @@ -1383,9 +1383,9 @@ static MACHINE_CONFIG_START( mpu4_vid, mpu4vid_state ) MCFG_DEVICE_ADD("6840ptm_68k", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(VIDEO_MASTER_CLOCK / 10) /* 68k E clock */ MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT0_CB(WRITE8(mpu4vid_state, vid_o1_callback)) - MCFG_PTM6840_OUT1_CB(WRITE8(mpu4vid_state, vid_o2_callback)) - MCFG_PTM6840_OUT2_CB(WRITE8(mpu4vid_state, vid_o3_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(mpu4vid_state, vid_o1_callback)) + MCFG_PTM6840_OUT1_CB(WRITELINE(mpu4vid_state, vid_o2_callback)) + MCFG_PTM6840_OUT2_CB(WRITELINE(mpu4vid_state, vid_o3_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(mpu4vid_state, cpu1_ptm_irq)) /* Present on all video cards */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") diff --git a/src/mame/drivers/poly.cpp b/src/mame/drivers/poly.cpp index da47ce1e4ad..de700ab148f 100644 --- a/src/mame/drivers/poly.cpp +++ b/src/mame/drivers/poly.cpp @@ -62,8 +62,8 @@ public: DECLARE_READ8_MEMBER(pia1_b_in); DECLARE_READ8_MEMBER(videoram_r); DECLARE_WRITE_LINE_MEMBER(write_acia_clock); - DECLARE_WRITE8_MEMBER( ptm_o2_callback ); - DECLARE_WRITE8_MEMBER( ptm_o3_callback ); + DECLARE_WRITE_LINE_MEMBER( ptm_o2_callback ); + DECLARE_WRITE_LINE_MEMBER( ptm_o3_callback ); protected: virtual void machine_reset() override; @@ -140,14 +140,14 @@ WRITE_LINE_MEMBER( poly_state::write_acia_clock ) m_acia->write_rxc(state); } -WRITE8_MEMBER( poly_state::ptm_o2_callback ) +WRITE_LINE_MEMBER( poly_state::ptm_o2_callback ) { - m_ptm->set_c1(data); + m_ptm->set_c1(state); } -WRITE8_MEMBER( poly_state::ptm_o3_callback ) +WRITE_LINE_MEMBER( poly_state::ptm_o3_callback ) { - m_speaker->level_w(data); + m_speaker->level_w(state); } static MACHINE_CONFIG_START( poly, poly_state ) @@ -186,8 +186,8 @@ static MACHINE_CONFIG_START( poly, poly_state ) MCFG_DEVICE_ADD("ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(XTAL_12MHz / 3) MCFG_PTM6840_EXTERNAL_CLOCKS(0, 0, 0) - MCFG_PTM6840_OUT1_CB(WRITE8(poly_state, ptm_o2_callback)) - MCFG_PTM6840_OUT2_CB(WRITE8(poly_state, ptm_o3_callback)) + MCFG_PTM6840_OUT1_CB(WRITELINE(poly_state, ptm_o2_callback)) + MCFG_PTM6840_OUT2_CB(WRITELINE(poly_state, ptm_o3_callback)) MCFG_PTM6840_IRQ_CB(INPUTLINE("maincpu", M6809_IRQ_LINE)) MCFG_DEVICE_ADD("acia", ACIA6850, 0) diff --git a/src/mame/drivers/swtpc09.cpp b/src/mame/drivers/swtpc09.cpp index 4397d3cf296..9fa2eadfca3 100644 --- a/src/mame/drivers/swtpc09.cpp +++ b/src/mame/drivers/swtpc09.cpp @@ -110,8 +110,8 @@ static MACHINE_CONFIG_START( swtpc09, swtpc09_state ) MCFG_DEVICE_ADD("ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(2000000) MCFG_PTM6840_EXTERNAL_CLOCKS(50, 0, 50) - MCFG_PTM6840_OUT0_CB(WRITE8(swtpc09_state, ptm_o1_callback)) - MCFG_PTM6840_OUT2_CB(WRITE8(swtpc09_state, ptm_o3_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(swtpc09_state, ptm_o1_callback)) + MCFG_PTM6840_OUT2_CB(WRITELINE(swtpc09_state, ptm_o3_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(swtpc09_state, ptm_irq)) MCFG_DEVICE_ADD("pia", PIA6821, 0) @@ -151,8 +151,8 @@ static MACHINE_CONFIG_START( swtpc09i, swtpc09_state ) MCFG_DEVICE_ADD("ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(2000000) MCFG_PTM6840_EXTERNAL_CLOCKS(50, 0, 50) - MCFG_PTM6840_OUT0_CB(WRITE8(swtpc09_state, ptm_o1_callback)) - MCFG_PTM6840_OUT2_CB(WRITE8(swtpc09_state, ptm_o3_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(swtpc09_state, ptm_o1_callback)) + MCFG_PTM6840_OUT2_CB(WRITELINE(swtpc09_state, ptm_o3_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(swtpc09_state, ptm_irq)) MCFG_DEVICE_ADD("pia", PIA6821, 0) @@ -200,8 +200,8 @@ static MACHINE_CONFIG_START( swtpc09d3, swtpc09_state ) MCFG_DEVICE_ADD("ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(2000000) MCFG_PTM6840_EXTERNAL_CLOCKS(50, 0, 50) - MCFG_PTM6840_OUT0_CB(WRITE8(swtpc09_state, ptm_o1_callback)) - MCFG_PTM6840_OUT2_CB(WRITE8(swtpc09_state, ptm_o3_callback)) + MCFG_PTM6840_OUT0_CB(WRITELINE(swtpc09_state, ptm_o1_callback)) + MCFG_PTM6840_OUT2_CB(WRITELINE(swtpc09_state, ptm_o3_callback)) MCFG_PTM6840_IRQ_CB(WRITELINE(swtpc09_state, ptm_irq)) MCFG_DEVICE_ADD("pia", PIA6821, 0) diff --git a/src/mame/drivers/v6809.cpp b/src/mame/drivers/v6809.cpp index a7d5154cd3d..d7784f2827c 100644 --- a/src/mame/drivers/v6809.cpp +++ b/src/mame/drivers/v6809.cpp @@ -80,8 +80,8 @@ public: { } - DECLARE_WRITE8_MEMBER(speaker_en_w); - DECLARE_WRITE8_MEMBER(speaker_w); + DECLARE_WRITE_LINE_MEMBER(speaker_en_w); + DECLARE_WRITE_LINE_MEMBER(speaker_w); DECLARE_READ8_MEMBER(pb_r); DECLARE_WRITE8_MEMBER(pa_w); DECLARE_WRITE8_MEMBER(videoram_w); @@ -276,12 +276,12 @@ WRITE8_MEMBER( v6809_state::pa_w ) // this should output 1 to enable sound, then output 0 after a short time // however it continuously outputs 1 -WRITE8_MEMBER( v6809_state::speaker_en_w ) +WRITE_LINE_MEMBER( v6809_state::speaker_en_w ) { - m_speaker_en = data; + m_speaker_en = state; } -WRITE8_MEMBER( v6809_state::speaker_w ) +WRITE_LINE_MEMBER( v6809_state::speaker_w ) { // if (m_speaker_en) // m_speaker->level_w(data); @@ -342,8 +342,8 @@ static MACHINE_CONFIG_START( v6809, v6809_state ) MCFG_DEVICE_ADD("ptm", PTM6840, 0) MCFG_PTM6840_INTERNAL_CLOCK(XTAL_16MHz / 4) MCFG_PTM6840_EXTERNAL_CLOCKS(4000000/14, 4000000/14, 4000000/14/8) - MCFG_PTM6840_OUT1_CB(WRITE8(v6809_state, speaker_w)) - MCFG_PTM6840_OUT2_CB(WRITE8(v6809_state, speaker_en_w)) + MCFG_PTM6840_OUT1_CB(WRITELINE(v6809_state, speaker_w)) + MCFG_PTM6840_OUT2_CB(WRITELINE(v6809_state, speaker_en_w)) MCFG_PTM6840_IRQ_CB(INPUTLINE("maincpu", M6809_IRQ_LINE)) MCFG_DEVICE_ADD("acia0", ACIA6850, 0) diff --git a/src/mame/includes/ginganin.h b/src/mame/includes/ginganin.h index ae39a9e207f..ab4f2758ed9 100644 --- a/src/mame/includes/ginganin.h +++ b/src/mame/includes/ginganin.h @@ -50,7 +50,7 @@ public: DECLARE_WRITE16_MEMBER(ginganin_fgram16_w); DECLARE_WRITE16_MEMBER(ginganin_txtram16_w); DECLARE_WRITE16_MEMBER(ginganin_vregs16_w); - DECLARE_WRITE8_MEMBER(ptm_irq); + DECLARE_WRITE_LINE_MEMBER(ptm_irq); DECLARE_DRIVER_INIT(ginganin); TILE_GET_INFO_MEMBER(get_bg_tile_info); TILE_GET_INFO_MEMBER(get_fg_tile_info); diff --git a/src/mame/includes/jpmsys5.h b/src/mame/includes/jpmsys5.h index 39599c6241e..1d3182aad92 100644 --- a/src/mame/includes/jpmsys5.h +++ b/src/mame/includes/jpmsys5.h @@ -71,7 +71,7 @@ public: DECLARE_WRITE16_MEMBER(jpm_upd7759_w); DECLARE_READ16_MEMBER(jpm_upd7759_r); DECLARE_WRITE_LINE_MEMBER(ptm_irq); - DECLARE_WRITE8_MEMBER(u26_o1_callback); + DECLARE_WRITE_LINE_MEMBER(u26_o1_callback); DECLARE_WRITE_LINE_MEMBER(pia_irq); DECLARE_READ8_MEMBER(u29_porta_r); DECLARE_WRITE8_MEMBER(u29_portb_w); diff --git a/src/mame/includes/mpu4.h b/src/mame/includes/mpu4.h index 87063bfd951..176c0f99392 100644 --- a/src/mame/includes/mpu4.h +++ b/src/mame/includes/mpu4.h @@ -144,9 +144,9 @@ public: DECLARE_WRITE8_MEMBER(crystal_sound_w); DECLARE_WRITE8_MEMBER(ic3ss_w); DECLARE_WRITE_LINE_MEMBER(cpu0_irq); - DECLARE_WRITE8_MEMBER(ic2_o1_callback); - DECLARE_WRITE8_MEMBER(ic2_o2_callback); - DECLARE_WRITE8_MEMBER(ic2_o3_callback); + DECLARE_WRITE_LINE_MEMBER(ic2_o1_callback); + DECLARE_WRITE_LINE_MEMBER(ic2_o2_callback); + DECLARE_WRITE_LINE_MEMBER(ic2_o3_callback); DECLARE_WRITE8_MEMBER(pia_ic3_porta_w); DECLARE_WRITE8_MEMBER(pia_ic3_portb_w); DECLARE_WRITE_LINE_MEMBER(pia_ic3_ca2_w); diff --git a/src/mame/includes/swtpc09.h b/src/mame/includes/swtpc09.h index 10667f44a34..ec71f4190b8 100644 --- a/src/mame/includes/swtpc09.h +++ b/src/mame/includes/swtpc09.h @@ -66,8 +66,8 @@ public: DECLARE_READ8_MEMBER(pia0_ca1_r); DECLARE_WRITE_LINE_MEMBER( pia0_irq_a ); - DECLARE_WRITE8_MEMBER( ptm_o1_callback ); - DECLARE_WRITE8_MEMBER( ptm_o3_callback ); + DECLARE_WRITE_LINE_MEMBER( ptm_o1_callback ); + DECLARE_WRITE_LINE_MEMBER( ptm_o3_callback ); DECLARE_WRITE_LINE_MEMBER( ptm_irq ); DECLARE_WRITE_LINE_MEMBER( acia_interrupt ); diff --git a/src/mame/machine/swtpc09.cpp b/src/mame/machine/swtpc09.cpp index d3edb885d60..d6dc045cb8d 100644 --- a/src/mame/machine/swtpc09.cpp +++ b/src/mame/machine/swtpc09.cpp @@ -29,8 +29,11 @@ /******* MC6840 PTM on MPID Board *******/ /* 6840 PTM handlers */ -WRITE8_MEMBER( swtpc09_state::ptm_o1_callback ) +WRITE_LINE_MEMBER( swtpc09_state::ptm_o1_callback ) { + // RH 3 Oct. 2016 FIXME: Does the hardware actually work this way, incrementing a counter any time + // the O1 line on the PTM changes? This seems unlikely, as the current implementation will increment + // m_pia_counter on both 0->1 and 1->0 transitions. Is that really correct? pia6821_device *pia = machine().device("pia"); m_pia_counter++; @@ -38,11 +41,11 @@ WRITE8_MEMBER( swtpc09_state::ptm_o1_callback ) if (m_pia_counter & 0x80) pia->ca1_w(1); } -WRITE8_MEMBER( swtpc09_state::ptm_o3_callback ) +WRITE_LINE_MEMBER( swtpc09_state::ptm_o3_callback ) { //ptm6840_device *ptm = machine().device("ptm"); /* the output from timer3 is the input clock for timer2 */ - //m_ptm->set_c2(data); + //m_ptm->set_c2(state); } WRITE_LINE_MEMBER( swtpc09_state::ptm_irq )