From 8c80fc4b4367c69bf0daea3c233f04e828b604d5 Mon Sep 17 00:00:00 2001 From: hap Date: Wed, 12 Jun 2019 15:57:31 +0200 Subject: cking_master, cxg_ch2001: move from chessbase to screenless (nw) --- scripts/target/mame/mess.lua | 18 +++--- src/emu/screen.cpp | 4 +- src/emu/screen.h | 2 +- src/mame/drivers/cking_master.cpp | 117 ++++++++++++++++++++++++++++++++++---- src/mame/drivers/cxg_ch2001.cpp | 116 +++++++++++++++++++++++++++++++++---- src/mame/drivers/hh_melps4.cpp | 1 - src/mame/drivers/hh_tms1k.cpp | 1 + src/mame/drivers/rzone.cpp | 1 + src/mame/drivers/tb303.cpp | 2 + src/mame/drivers/tispeak.cpp | 1 + src/mame/drivers/tr606.cpp | 2 + src/mame/includes/hh_sm510.h | 1 - src/mame/includes/hh_tms1k.h | 1 - src/mame/includes/hh_ucom4.h | 1 - src/mame/machine/chessbase.cpp | 2 +- 15 files changed, 231 insertions(+), 39 deletions(-) diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua index f9657c0f7ea..4044269ad43 100644 --- a/scripts/target/mame/mess.lua +++ b/scripts/target/mame/mess.lua @@ -1854,8 +1854,6 @@ files { MAME_DIR .. "src/mame/machine/chessbase.cpp", MAME_DIR .. "src/mame/includes/chessbase.h", MAME_DIR .. "src/mame/drivers/ave_arb.cpp", - MAME_DIR .. "src/mame/drivers/cking_master.cpp", - MAME_DIR .. "src/mame/drivers/cxg_ch2001.cpp", MAME_DIR .. "src/mame/drivers/scisys_cp2000.cpp", MAME_DIR .. "src/mame/machine/fidelbase.cpp", @@ -3038,20 +3036,22 @@ createMESSProjects(_target, _subtarget, "screenless") files { MAME_DIR .. "src/mame/machine/screenless.cpp", MAME_DIR .. "src/mame/includes/screenless.h", + MAME_DIR .. "src/mame/drivers/cking_master.cpp", + MAME_DIR .. "src/mame/drivers/cxg_ch2001.cpp", MAME_DIR .. "src/mame/drivers/hh_amis2k.cpp", MAME_DIR .. "src/mame/drivers/hh_cop400.cpp", MAME_DIR .. "src/mame/drivers/hh_hmcs40.cpp", + MAME_DIR .. "src/mame/drivers/hh_melps4.cpp", MAME_DIR .. "src/mame/drivers/hh_pic16.cpp", MAME_DIR .. "src/mame/drivers/hh_ucom4.cpp", - MAME_DIR .. "src/mame/includes/hh_ucom4.h", - MAME_DIR .. "src/mame/drivers/tb303.cpp", - MAME_DIR .. "src/mame/drivers/tr606.cpp", - MAME_DIR .. "src/mame/drivers/hh_melps4.cpp", MAME_DIR .. "src/mame/drivers/hh_tms1k.cpp", MAME_DIR .. "src/mame/includes/hh_tms1k.h", - MAME_DIR .. "src/mame/drivers/ticalc1x.cpp", - MAME_DIR .. "src/mame/drivers/tispeak.cpp", - MAME_DIR .. "src/mame/drivers/tispellb.cpp", + MAME_DIR .. "src/mame/drivers/ticalc1x.cpp", -- subdriver of hh_tms1k + MAME_DIR .. "src/mame/drivers/tispeak.cpp", -- " + MAME_DIR .. "src/mame/drivers/tispellb.cpp", -- " + MAME_DIR .. "src/mame/includes/hh_ucom4.h", + MAME_DIR .. "src/mame/drivers/tb303.cpp", -- subdriver of hh_ucom4 + MAME_DIR .. "src/mame/drivers/tr606.cpp", -- " } -- Don't call this project "sega" or it collides with the arcade one diff --git a/src/emu/screen.cpp b/src/emu/screen.cpp index ef9611f1999..103230ba114 100644 --- a/src/emu/screen.cpp +++ b/src/emu/screen.cpp @@ -546,7 +546,7 @@ screen_device::screen_device(const machine_config &mconfig, const char *tag, dev , m_scanline_cb(*this) , m_palette(*this, finder_base::DUMMY_TAG) , m_video_attributes(0) - , m_svg_region(nullptr) + , m_svg_region(tag) , m_container(nullptr) , m_width(100) , m_height(100) @@ -717,8 +717,6 @@ void screen_device::device_start() if (m_type == SCREEN_TYPE_SVG) { - if (!m_svg_region) - m_svg_region = basetag(); memory_region *reg = owner()->memregion(m_svg_region); if (!reg) fatalerror("%s: SVG region \"%s\" does not exist\n", tag(), m_svg_region); diff --git a/src/emu/screen.h b/src/emu/screen.h index abf663ddc73..c530dc75502 100644 --- a/src/emu/screen.h +++ b/src/emu/screen.h @@ -268,7 +268,7 @@ public: template void set_palette(T &&tag) { m_palette.set_tag(std::forward(tag)); } void set_video_attributes(u32 flags) { m_video_attributes = flags; } void set_color(rgb_t color) { m_color = color; } - void set_svg_region(const char *region) { m_svg_region = region; } // default region is basetag() + void set_svg_region(const char *region) { m_svg_region = region; } // default region is device tag // information getters render_container &container() const { assert(m_container != nullptr); return *m_container; } diff --git a/src/mame/drivers/cking_master.cpp b/src/mame/drivers/cking_master.cpp index abea4ea1fe3..bbf42d914e1 100644 --- a/src/mame/drivers/cking_master.cpp +++ b/src/mame/drivers/cking_master.cpp @@ -3,7 +3,7 @@ // thanks-to:Berger /****************************************************************************** -* cking_master.cpp, subdriver of machine/chessbase.cpp +* cking_master.cpp, subdriver of machine/screenless.cpp TODO: - 1 WAIT CLK per M1, workaround with z80_set_cycle_tables is possible @@ -21,10 +21,11 @@ Chess King Master overview (yes, it's plainly named "Master"): ******************************************************************************/ #include "emu.h" -#include "includes/chessbase.h" +#include "includes/screenless.h" #include "cpu/z80/z80.h" #include "machine/bankdev.h" +#include "machine/timer.h" #include "sound/dac.h" #include "sound/volt_reg.h" #include "speaker.h" @@ -35,15 +36,16 @@ Chess King Master overview (yes, it's plainly named "Master"): namespace { -class master_state : public chessbase_state +class master_state : public screenless_state { public: master_state(const machine_config &mconfig, device_type type, const char *tag) : - chessbase_state(mconfig, type, tag), + screenless_state(mconfig, type, tag), m_maincpu(*this, "maincpu"), m_irq_on(*this, "irq_on"), m_dac(*this, "dac"), - m_mainmap(*this, "mainmap") + m_mainmap(*this, "mainmap"), + m_inputs(*this, "IN.%u", 0) { } // machine drivers @@ -51,12 +53,16 @@ public: void init_master(); +protected: + virtual void machine_start() override; + private: // devices/pointers required_device m_maincpu; required_device m_irq_on; required_device m_dac; required_device m_mainmap; + required_ioport_array<10> m_inputs; // periodic interrupts template TIMER_DEVICE_CALLBACK_MEMBER(irq_on) { m_maincpu->set_input_line(Line, ASSERT_LINE); } @@ -68,11 +74,22 @@ private: u8 main_trampoline_r(offs_t offset); void main_trampoline_w(offs_t offset, u8 data); + u8 m_inp_mux; + // I/O handlers u8 input_r(); void control_w(u8 data); }; +void master_state::machine_start() +{ + screenless_state::machine_start(); + + // zerofill, register for savestates + m_inp_mux = 0; + save_item(NAME(m_inp_mux)); +} + /****************************************************************************** @@ -85,8 +102,8 @@ void master_state::control_w(u8 data) { // d0-d3: 74145 A-D // 74145 0-9: input mux, led select - u16 sel = 1 << (data & 0xf) & 0x3ff; - m_inp_mux = sel; + m_inp_mux = data & 0xf; + u16 sel = 1 << m_inp_mux & 0x3ff; // d4,d5: led data display_matrix(2, 9, data >> 4 & 3, sel & 0x1ff); @@ -97,8 +114,9 @@ void master_state::control_w(u8 data) u8 master_state::input_r() { - // d0-d7: multiplexed inputs (active low) - return ~read_inputs(10); + // d0-d7: multiplexed inputs + u8 data = (m_inp_mux < 10) ? m_inputs[m_inp_mux]->read() : 0; + return ~data; } void master_state::init_master() @@ -164,7 +182,85 @@ void master_state::main_trampoline(address_map &map) ******************************************************************************/ static INPUT_PORTS_START( master ) - PORT_INCLUDE( generic_cb_buttons ) + PORT_START("IN.0") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + + PORT_START("IN.1") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + + PORT_START("IN.2") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + + PORT_START("IN.3") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + + PORT_START("IN.4") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + + PORT_START("IN.5") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + + PORT_START("IN.6") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + + PORT_START("IN.7") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_NAME("Board Sensor") PORT_START("IN.8") PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_1) PORT_NAME("Change Position") @@ -205,7 +301,6 @@ void master_state::master(machine_config &config) m_irq_on->set_start_delay(irq_period - attotime::from_nsec(22870)); // active for 22.87us TIMER(config, "irq_off").configure_periodic(FUNC(master_state::irq_off), irq_period); - TIMER(config, "display_decay").configure_periodic(FUNC(master_state::display_decay_tick), attotime::from_msec(1)); config.set_default_layout(layout_ck_master); /* sound hardware */ diff --git a/src/mame/drivers/cxg_ch2001.cpp b/src/mame/drivers/cxg_ch2001.cpp index 7fac5d659a9..6b716a424a4 100644 --- a/src/mame/drivers/cxg_ch2001.cpp +++ b/src/mame/drivers/cxg_ch2001.cpp @@ -3,7 +3,7 @@ // thanks-to:Berger /****************************************************************************** -* cxg_ch2001.cpp, subdriver of machine/chessbase.cpp +* cxg_ch2001.cpp, subdriver of machine/screenless.cpp ******************************************************************************* @@ -15,9 +15,10 @@ CXG Chess 2001 overview: ******************************************************************************/ #include "emu.h" -#include "includes/chessbase.h" +#include "includes/screenless.h" #include "cpu/z80/z80.h" +#include "machine/timer.h" #include "sound/dac.h" #include "sound/volt_reg.h" #include "speaker.h" @@ -28,26 +29,31 @@ CXG Chess 2001 overview: namespace { -class ch2001_state : public chessbase_state +class ch2001_state : public screenless_state { public: ch2001_state(const machine_config &mconfig, device_type type, const char *tag) : - chessbase_state(mconfig, type, tag), + screenless_state(mconfig, type, tag), m_maincpu(*this, "maincpu"), m_irq_on(*this, "irq_on"), m_dac(*this, "dac"), - m_speaker_off(*this, "speaker_off") + m_speaker_off(*this, "speaker_off"), + m_inputs(*this, "IN.%u", 0) { } // machine drivers void ch2001(machine_config &config); +protected: + virtual void machine_start() override; + private: // devices/pointers required_device m_maincpu; required_device m_irq_on; required_device m_dac; required_device m_speaker_off; + required_ioport_array<10> m_inputs; // periodic interrupts template TIMER_DEVICE_CALLBACK_MEMBER(irq_on) { m_maincpu->set_input_line(Line, ASSERT_LINE); } @@ -58,12 +64,23 @@ private: // address maps void main_map(address_map &map); + u8 m_inp_mux; + // I/O handlers DECLARE_WRITE8_MEMBER(speaker_w); DECLARE_WRITE8_MEMBER(leds_w); DECLARE_READ8_MEMBER(input_r); }; +void ch2001_state::machine_start() +{ + screenless_state::machine_start(); + + // zerofill, register for savestates + m_inp_mux = 0; + save_item(NAME(m_inp_mux)); +} + /****************************************************************************** @@ -84,18 +101,20 @@ WRITE8_MEMBER(ch2001_state::leds_w) // d0-d7: 74ls273 (WR to CLK) // 74ls273 Q1-Q4: 74ls145 A-D // 74ls145 0-9: input mux/led select - m_inp_mux = 1 << (data & 0xf) & 0x3ff; + m_inp_mux = data & 0xf; + u16 sel = 1 << m_inp_mux & 0x3ff; // 74ls273 Q5-Q8: MC14028 A-D // MC14028 Q0-Q7: led data, Q8,Q9: N/C u8 led_data = 1 << (data >> 4 & 0xf) & 0xff; - display_matrix(8, 10, led_data, m_inp_mux); + display_matrix(8, 10, led_data, sel); } READ8_MEMBER(ch2001_state::input_r) { // d0-d7: multiplexed inputs - return ~read_inputs(10); + u8 data = (m_inp_mux < 10) ? m_inputs[m_inp_mux]->read() : 0; + return ~data; } @@ -119,7 +138,85 @@ void ch2001_state::main_map(address_map &map) ******************************************************************************/ static INPUT_PORTS_START( ch2001 ) - PORT_INCLUDE( generic_cb_magnets ) + PORT_START("IN.0") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + + PORT_START("IN.1") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + + PORT_START("IN.2") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + + PORT_START("IN.3") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + + PORT_START("IN.4") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + + PORT_START("IN.5") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + + PORT_START("IN.6") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + + PORT_START("IN.7") + PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") + PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_TOGGLE PORT_NAME("Board Sensor") PORT_START("IN.8") PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_T) PORT_NAME("Black") @@ -161,7 +258,6 @@ void ch2001_state::ch2001(machine_config &config) TIMER(config, m_speaker_off).configure_generic(FUNC(ch2001_state::speaker_off)); - TIMER(config, "display_decay").configure_periodic(FUNC(ch2001_state::display_decay_tick), attotime::from_msec(1)); config.set_default_layout(layout_cxg_ch2001); /* sound hardware */ diff --git a/src/mame/drivers/hh_melps4.cpp b/src/mame/drivers/hh_melps4.cpp index e6468d63a21..affd20bb03a 100644 --- a/src/mame/drivers/hh_melps4.cpp +++ b/src/mame/drivers/hh_melps4.cpp @@ -12,7 +12,6 @@ #include "includes/screenless.h" #include "cpu/melps4/m58846.h" -#include "machine/timer.h" #include "sound/spkrdev.h" #include "screen.h" diff --git a/src/mame/drivers/hh_tms1k.cpp b/src/mame/drivers/hh_tms1k.cpp index 43149718511..4a7d4259213 100644 --- a/src/mame/drivers/hh_tms1k.cpp +++ b/src/mame/drivers/hh_tms1k.cpp @@ -153,6 +153,7 @@ #include "machine/tms1024.h" #include "machine/clock.h" +#include "machine/timer.h" #include "sound/beep.h" #include "sound/s14001a.h" #include "sound/sn76477.h" diff --git a/src/mame/drivers/rzone.cpp b/src/mame/drivers/rzone.cpp index fa3f33586ca..c08021fbf26 100644 --- a/src/mame/drivers/rzone.cpp +++ b/src/mame/drivers/rzone.cpp @@ -32,6 +32,7 @@ #include "includes/hh_sm510.h" #include "cpu/sm510/sm510.h" +#include "machine/timer.h" #include "screen.h" #include "speaker.h" diff --git a/src/mame/drivers/tb303.cpp b/src/mame/drivers/tb303.cpp index f5ced59fcff..1698197fdde 100644 --- a/src/mame/drivers/tb303.cpp +++ b/src/mame/drivers/tb303.cpp @@ -17,6 +17,8 @@ #include "emu.h" #include "includes/hh_ucom4.h" +#include "machine/timer.h" + #include "tb303.lh" diff --git a/src/mame/drivers/tispeak.cpp b/src/mame/drivers/tispeak.cpp index 3dd9853efd2..48c3a9cb2d3 100644 --- a/src/mame/drivers/tispeak.cpp +++ b/src/mame/drivers/tispeak.cpp @@ -405,6 +405,7 @@ K28 modules: #include "bus/generic/carts.h" #include "bus/generic/slot.h" +#include "machine/timer.h" #include "machine/tms6100.h" #include "sound/tms5110.h" #include "softlist.h" diff --git a/src/mame/drivers/tr606.cpp b/src/mame/drivers/tr606.cpp index 001adda7094..cddca7b0c8d 100644 --- a/src/mame/drivers/tr606.cpp +++ b/src/mame/drivers/tr606.cpp @@ -17,6 +17,8 @@ #include "emu.h" #include "includes/hh_ucom4.h" +#include "machine/timer.h" + #include "tr606.lh" diff --git a/src/mame/includes/hh_sm510.h b/src/mame/includes/hh_sm510.h index d4af3754689..dee77543def 100644 --- a/src/mame/includes/hh_sm510.h +++ b/src/mame/includes/hh_sm510.h @@ -10,7 +10,6 @@ #define MAME_INCLUDES_HH_SM510_H #include "cpu/sm510/sm510.h" -#include "machine/timer.h" #include "sound/spkrdev.h" diff --git a/src/mame/includes/hh_tms1k.h b/src/mame/includes/hh_tms1k.h index c083c16a34f..19cd3a524a3 100644 --- a/src/mame/includes/hh_tms1k.h +++ b/src/mame/includes/hh_tms1k.h @@ -22,7 +22,6 @@ #include "cpu/tms1000/tms0270.h" #include "cpu/tms1000/tp0320.h" -#include "machine/timer.h" #include "sound/spkrdev.h" diff --git a/src/mame/includes/hh_ucom4.h b/src/mame/includes/hh_ucom4.h index 8797041c2c7..8ede7a7745a 100644 --- a/src/mame/includes/hh_ucom4.h +++ b/src/mame/includes/hh_ucom4.h @@ -12,7 +12,6 @@ #include "includes/screenless.h" #include "cpu/ucom4/ucom4.h" -#include "machine/timer.h" #include "sound/spkrdev.h" diff --git a/src/mame/machine/chessbase.cpp b/src/mame/machine/chessbase.cpp index cc38c8a5720..331552a1895 100644 --- a/src/mame/machine/chessbase.cpp +++ b/src/mame/machine/chessbase.cpp @@ -12,7 +12,7 @@ As workaround for the chess games, use an external chess GUI on the side, such as Arena(in editmode). TODO: -- use screenless class +- use screenless class, this file will be removed eventually ******************************************************************************/ -- cgit v1.2.3