diff --git a/scripts/target/mame/arcade.lua b/scripts/target/mame/arcade.lua index 3f28ba580a5..546e2de9de6 100644 --- a/scripts/target/mame/arcade.lua +++ b/scripts/target/mame/arcade.lua @@ -4135,8 +4135,11 @@ files { MAME_DIR .. "src/mame/drivers/s11.cpp", MAME_DIR .. "src/mame/includes/s11.h", MAME_DIR .. "src/mame/drivers/s11a.cpp", + MAME_DIR .. "src/mame/includes/s11a.h", MAME_DIR .. "src/mame/drivers/s11b.cpp", + MAME_DIR .. "src/mame/includes/s11b.h", MAME_DIR .. "src/mame/drivers/s11c.cpp", + MAME_DIR .. "src/mame/includes/s11c.h", MAME_DIR .. "src/mame/audio/s11c_bg.cpp", MAME_DIR .. "src/mame/audio/s11c_bg.h", MAME_DIR .. "src/mame/drivers/s3.cpp", diff --git a/src/mame/drivers/s11a.cpp b/src/mame/drivers/s11a.cpp index 20cb9fd1c8c..96d942d963f 100644 --- a/src/mame/drivers/s11a.cpp +++ b/src/mame/drivers/s11a.cpp @@ -29,7 +29,7 @@ Note: To start a game, certain switches need to be activated. You must first pr #include "sound/2151intf.h" #include "sound/dac.h" #include "audio/s11c_bg.h" -#include "includes/s11.h" +#include "includes/s11a.h" #include "s11a.lh" static ADDRESS_MAP_START( s11a_main_map, AS_PROGRAM, 8, s11a_state ) diff --git a/src/mame/drivers/s11b.cpp b/src/mame/drivers/s11b.cpp index 185de486636..db3f7faeacf 100644 --- a/src/mame/drivers/s11b.cpp +++ b/src/mame/drivers/s11b.cpp @@ -29,7 +29,7 @@ #include "sound/2151intf.h" #include "sound/dac.h" #include "audio/s11c_bg.h" -#include "includes/s11.h" +#include "includes/s11b.h" #include "s11b.lh" static ADDRESS_MAP_START( s11b_main_map, AS_PROGRAM, 8, s11b_state ) diff --git a/src/mame/drivers/s11c.cpp b/src/mame/drivers/s11c.cpp index 6d6f7f98ca8..f1409047f01 100644 --- a/src/mame/drivers/s11c.cpp +++ b/src/mame/drivers/s11c.cpp @@ -13,7 +13,7 @@ #include "sound/2151intf.h" #include "sound/dac.h" #include "audio/s11c_bg.h" -#include "includes/s11.h" +#include "includes/s11c.h" #include "s11c.lh" diff --git a/src/mame/includes/s11.h b/src/mame/includes/s11.h index 1d8f355ec0a..9d48924e595 100644 --- a/src/mame/includes/s11.h +++ b/src/mame/includes/s11.h @@ -120,73 +120,4 @@ private: bool m_irq_active; }; -class s11a_state : public s11_state -{ -public: - s11a_state(const machine_config &mconfig, device_type type, const char *tag) - : s11_state(mconfig, type, tag) - { } - - DECLARE_WRITE8_MEMBER(bgbank_w); - DECLARE_WRITE8_MEMBER(dig0_w); - DECLARE_MACHINE_RESET(s11a); - DECLARE_DRIVER_INIT(s11a); - -protected: - -private: - -}; - -class s11b_state : public s11a_state -{ -public: - s11b_state(const machine_config &mconfig, device_type type, const char *tag) - : s11a_state(mconfig, type, tag), - m_bg_hc55516(*this, "hc55516_bg") - - { } - - DECLARE_WRITE8_MEMBER(dig1_w); - DECLARE_WRITE8_MEMBER(pia2c_pa_w); - DECLARE_WRITE8_MEMBER(pia2c_pb_w); - DECLARE_WRITE8_MEMBER(pia34_pa_w); - DECLARE_WRITE_LINE_MEMBER(pia40_ca2_w); - - DECLARE_WRITE8_MEMBER(bg_speech_clock_w); - DECLARE_WRITE8_MEMBER(bg_speech_digit_w); - - DECLARE_MACHINE_RESET(s11b); - DECLARE_DRIVER_INIT(s11b); - DECLARE_DRIVER_INIT(s11b_invert); - -protected: - optional_device m_bg_hc55516; - - void set_invert(bool inv) { m_invert = inv; } - -private: - bool m_invert; // later System 11B games start expecting inverted data to the display LED segments. - - -}; - -class s11c_state : public s11b_state -{ -public: - s11c_state(const machine_config &mconfig, device_type type, const char *tag) - : s11b_state(mconfig, type, tag) - { } - - DECLARE_MACHINE_RESET(s11c); - DECLARE_DRIVER_INIT(s11c); - -protected: - -private: - - -}; - - #endif /* S11_H_ */ diff --git a/src/mame/includes/s11a.h b/src/mame/includes/s11a.h new file mode 100644 index 00000000000..ffe7331bc31 --- /dev/null +++ b/src/mame/includes/s11a.h @@ -0,0 +1,32 @@ +// license:BSD-3-Clause +// copyright-holders:Miodrag Milanovic +/* + * s11a.h + * + * Created on: 1/01/2013 + */ + +#ifndef S11A_H_ +#define S11A_H_ + +#include "includes/s11.h" + +class s11a_state : public s11_state +{ +public: + s11a_state(const machine_config &mconfig, device_type type, const char *tag) + : s11_state(mconfig, type, tag) + { } + + DECLARE_WRITE8_MEMBER(bgbank_w); + DECLARE_WRITE8_MEMBER(dig0_w); + DECLARE_MACHINE_RESET(s11a); + DECLARE_DRIVER_INIT(s11a); + +protected: + +private: + +}; + +#endif /* S11A_H_ */ diff --git a/src/mame/includes/s11b.h b/src/mame/includes/s11b.h new file mode 100644 index 00000000000..330bc58c2cd --- /dev/null +++ b/src/mame/includes/s11b.h @@ -0,0 +1,47 @@ +// license:BSD-3-Clause +// copyright-holders:Miodrag Milanovic +/* + * s11b.h + * + * Created on: 1/01/2013 + */ + +#ifndef S11B_H_ +#define S11B_H_ + +#include "includes/s11a.h" + +class s11b_state : public s11a_state +{ +public: + s11b_state(const machine_config &mconfig, device_type type, const char *tag) + : s11a_state(mconfig, type, tag), + m_bg_hc55516(*this, "hc55516_bg") + + { } + + DECLARE_WRITE8_MEMBER(dig1_w); + DECLARE_WRITE8_MEMBER(pia2c_pa_w); + DECLARE_WRITE8_MEMBER(pia2c_pb_w); + DECLARE_WRITE8_MEMBER(pia34_pa_w); + DECLARE_WRITE_LINE_MEMBER(pia40_ca2_w); + + DECLARE_WRITE8_MEMBER(bg_speech_clock_w); + DECLARE_WRITE8_MEMBER(bg_speech_digit_w); + + DECLARE_MACHINE_RESET(s11b); + DECLARE_DRIVER_INIT(s11b); + DECLARE_DRIVER_INIT(s11b_invert); + +protected: + optional_device m_bg_hc55516; + + void set_invert(bool inv) { m_invert = inv; } + +private: + bool m_invert; // later System 11B games start expecting inverted data to the display LED segments. + + +}; + +#endif /* S11B_H_ */ diff --git a/src/mame/includes/s11c.h b/src/mame/includes/s11c.h new file mode 100644 index 00000000000..c771a1f52d6 --- /dev/null +++ b/src/mame/includes/s11c.h @@ -0,0 +1,32 @@ +// license:BSD-3-Clause +// copyright-holders:Miodrag Milanovic +/* + * s11c.h + * + * Created on: 1/01/2013 + */ + +#ifndef S11C_H_ +#define S11C_H_ + +#include "includes/s11b.h" + +class s11c_state : public s11b_state +{ +public: + s11c_state(const machine_config &mconfig, device_type type, const char *tag) + : s11b_state(mconfig, type, tag) + { } + + DECLARE_MACHINE_RESET(s11c); + DECLARE_DRIVER_INIT(s11c); + +protected: + +private: + + +}; + + +#endif /* S11C_H_ */