1 // license:BSD-3-Clause
2 // copyright-holders:Miodrag Milanovic
3 /*
4  * s11b.h
5  *
6  *  Created on: 1/01/2013
7  */
8 
9 #ifndef MAME_INCLUDES_S11B_H
10 #define MAME_INCLUDES_S11B_H
11 
12 #include "includes/s11a.h"
13 
14 class s11b_state : public s11a_state
15 {
16 public:
s11b_state(const machine_config & mconfig,device_type type,const char * tag)17 	s11b_state(const machine_config &mconfig, device_type type, const char *tag)
18 		: s11a_state(mconfig, type, tag)
19 	{ }
20 
21 	void s11b_base(machine_config &config);
22 	void s11b(machine_config &config);
23 	void s11b_jokerz(machine_config &config);
24 
25 	void init_s11b();
26 	void init_s11b_invert();
27 
28 	void dig1_w(uint8_t data);
29 	void pia2c_pa_w(uint8_t data);
30 	void pia2c_pb_w(uint8_t data);
31 	void pia34_pa_w(uint8_t data);
32 
33 protected:
set_invert(bool inv)34 	void set_invert(bool inv) { m_invert = inv; }
35 
36 private:
37 	DECLARE_MACHINE_RESET(s11b);
38 
39 	bool m_invert;  // later System 11B games start expecting inverted data to the display LED segments.
40 };
41 
42 #endif // MAME_INCLUDES_S11B_H
43