Previous 199869 Revisions Next

r31494 Sunday 3rd August, 2014 at 09:14:27 UTC by Robbbert
st_mp100: placeholder for layout
[src/mame]mame.mak
[src/mame/drivers]st_mp100.c
[src/mame/layout]st_mp100.lay*

trunk/src/mame/layout/st_mp100.lay
r0r31494
1<!-- ST_MP100 copied from by17.lay -->
2
3<!-- 2014-08-03: Initial version.  [Robbbert] -->
4
5<mamelayout version="2">
6
7   <element name="digit" defstate="0">
8      <led7seg>
9         <color red="1.0" green="0.75" blue="0.0" />
10      </led7seg>
11   </element>
12   <element name="red_led">
13      <disk><color red="1.0" green="0.0" blue="0.0" /></disk>
14   </element>
15   <element name="background">
16      <rect>
17         <bounds left="0" top="0" right="1" bottom="1" />
18         <color red="0.0" green="0.0" blue="0.0" />
19      </rect>
20   </element>
21   <element name="P0"><text string="Ball / Match"><color red="1.0" green="1.0" blue="1.0" /></text></element>
22   <element name="P1"><text string="Credits"><color red="1.0" green="1.0" blue="1.0" /></text></element>
23   <element name="P2"><text string="Players"><color red="1.0" green="1.0" blue="1.0" /></text></element>
24   <element name="P3"><text string="Player 1"><color red="1.0" green="1.0" blue="1.0" /></text></element>
25   <element name="P4"><text string="Player 2"><color red="1.0" green="1.0" blue="1.0" /></text></element>
26   <element name="P5"><text string="Player 3"><color red="1.0" green="1.0" blue="1.0" /></text></element>
27   <element name="P6"><text string="Player 4"><color red="1.0" green="1.0" blue="1.0" /></text></element>
28
29   <view name="Default Layout">
30
31      <!-- Background -->
32      <backdrop element="background">
33         <bounds left="0" top="20" right="274" bottom="394" />
34      </backdrop>
35
36      <!-- LEDs -->
37
38      <!-- Player 1 Score -->
39
40      <bezel name="digit5" element="digit">
41         <bounds left="10" top="45" right="44" bottom="84" />
42      </bezel>
43      <bezel name="digit4" element="digit">
44         <bounds left="54" top="45" right="88" bottom="84" />
45      </bezel>
46      <bezel name="digit3" element="digit">
47         <bounds left="98" top="45" right="132" bottom="84" />
48      </bezel>
49      <bezel name="digit2" element="digit">
50         <bounds left="142" top="45" right="176" bottom="84" />
51      </bezel>
52      <bezel name="digit1" element="digit">
53         <bounds left="186" top="45" right="220" bottom="84" />
54      </bezel>
55      <bezel name="digit0" element="digit">
56         <bounds left="230" top="45" right="264" bottom="84" />
57      </bezel>
58
59      <!-- Player 2 Score -->
60      <bezel name="digit13" element="digit">
61         <bounds left="10" top="105" right="44" bottom="144" />
62      </bezel>
63      <bezel name="digit12" element="digit">
64         <bounds left="54" top="105" right="88" bottom="144" />
65      </bezel>
66      <bezel name="digit11" element="digit">
67         <bounds left="98" top="105" right="132" bottom="144" />
68      </bezel>
69      <bezel name="digit10" element="digit">
70         <bounds left="142" top="105" right="176" bottom="144" />
71      </bezel>
72      <bezel name="digit9" element="digit">
73         <bounds left="186" top="105" right="220" bottom="144" />
74      </bezel>
75      <bezel name="digit8" element="digit">
76         <bounds left="230" top="105" right="264" bottom="144" />
77      </bezel>
78
79      <!-- Player 3 Score -->
80      <bezel name="digit21" element="digit">
81         <bounds left="10" top="165" right="44" bottom="204" />
82      </bezel>
83      <bezel name="digit20" element="digit">
84         <bounds left="54" top="165" right="88" bottom="204" />
85      </bezel>
86      <bezel name="digit19" element="digit">
87         <bounds left="98" top="165" right="132" bottom="204" />
88      </bezel>
89      <bezel name="digit18" element="digit">
90         <bounds left="142" top="165" right="176" bottom="204" />
91      </bezel>
92      <bezel name="digit17" element="digit">
93         <bounds left="186" top="165" right="220" bottom="204" />
94      </bezel>
95      <bezel name="digit16" element="digit">
96         <bounds left="230" top="165" right="264" bottom="204" />
97      </bezel>
98
99      <!-- Player 4 Score -->
100      <bezel name="digit28" element="digit">
101         <bounds left="10" top="225" right="44" bottom="264" />
102      </bezel>
103      <bezel name="digit27" element="digit">
104         <bounds left="54" top="225" right="88" bottom="264" />
105      </bezel>
106      <bezel name="digit26" element="digit">
107         <bounds left="98" top="225" right="132" bottom="264" />
108      </bezel>
109      <bezel name="digit25" element="digit">
110         <bounds left="142" top="225" right="176" bottom="264" />
111      </bezel>
112      <bezel name="digit24" element="digit">
113         <bounds left="186" top="225" right="220" bottom="264" />
114      </bezel>
115      <bezel name="digit29" element="digit">
116         <bounds left="230" top="225" right="264" bottom="264" />
117      </bezel>
118
119      <!-- Credits and Balls -->
120      <bezel name="digit35" element="digit">
121         <bounds left="10" top="345" right="44" bottom="384" />
122      </bezel>
123      <bezel name="digit34" element="digit">
124         <bounds left="54" top="345" right="88" bottom="384" />
125      </bezel>
126      <bezel name="digit32" element="digit">
127         <bounds left="186" top="345" right="220" bottom="384" />
128      </bezel>
129      <bezel name="digit37" element="digit">
130         <bounds left="230" top="345" right="264" bottom="384" />
131      </bezel>
132
133      <bezel element="P0"><bounds left="200" right="258" top="330" bottom="342" /></bezel>
134      <bezel element="P1"><bounds left="30" right="88" top="330" bottom="342" /></bezel>
135      <bezel name="text3" element="P3"><bounds left="100" right="180" top="30" bottom="42" /></bezel>
136      <bezel name="text2" element="P4"><bounds left="100" right="180" top="90" bottom="102" /></bezel>
137      <bezel name="text1" element="P5"><bounds left="100" right="180" top="150" bottom="162" /></bezel>
138      <bezel name="text0" element="P6"><bounds left="100" right="180" top="210" bottom="222" /></bezel>
139      <bezel name="led0" element="red_led">
140         <bounds left="110" right="125" top="360" bottom="375" /></bezel>
141   </view>
142</mamelayout>
Property changes on: trunk/src/mame/layout/st_mp100.lay
Added: svn:eol-style
   + native
Added: svn:mime-type
   + text/plain
trunk/src/mame/drivers/st_mp100.c
r31493r31494
1/*
1/********************************************************************************************
2
3    PINBALL
24    Stern MP-100 MPU
35    (almost identical to Bally MPU-17)
4*/
56
67
7#include "emu.h"
8ToDo:
9- Display to fix
10- Dips, Inputs, Solenoids vary per game
11- Mechanical
12
13*********************************************************************************************/
14
15
16#include "machine/genpin.h"
817#include "cpu/m6800/m6800.h"
18#include "machine/6821pia.h"
19#include "st_mp100.lh"
920
10class st_mp100_state : public driver_device
21
22class st_mp100_state : public genpin_class
1123{
1224public:
1325   st_mp100_state(const machine_config &mconfig, device_type type, const char *tag)
14      : driver_device(mconfig, type, tag),
15         m_maincpu(*this, "maincpu")
26      : genpin_class(mconfig, type, tag)
27      , m_maincpu(*this, "maincpu")
28      , m_pia_u10(*this, "pia_u10")
29      , m_pia_u11(*this, "pia_u11")
30      , m_io_test(*this, "TEST")
31      , m_io_dsw0(*this, "DSW0")
32      , m_io_dsw1(*this, "DSW1")
33      , m_io_dsw2(*this, "DSW2")
34      , m_io_dsw3(*this, "DSW3")
35      , m_io_x0(*this, "X0")
36      , m_io_x1(*this, "X1")
37      , m_io_x2(*this, "X2")
38      , m_io_x3(*this, "X3")
39      , m_io_x4(*this, "X4")
1640   { }
1741
18protected:
19
20   // devices
21   required_device<cpu_device> m_maincpu;
22
23   // driver_device overrides
42   DECLARE_DRIVER_INIT(st_mp100);
43   DECLARE_READ8_MEMBER(u10_a_r);
44   DECLARE_WRITE8_MEMBER(u10_a_w);
45   DECLARE_READ8_MEMBER(u10_b_r);
46   DECLARE_WRITE8_MEMBER(u10_b_w);
47   DECLARE_READ8_MEMBER(u11_a_r);
48   DECLARE_WRITE8_MEMBER(u11_a_w);
49   DECLARE_WRITE8_MEMBER(u11_b_w);
50   DECLARE_WRITE_LINE_MEMBER(u10_ca2_w);
51   DECLARE_WRITE_LINE_MEMBER(u10_cb2_w);
52   DECLARE_WRITE_LINE_MEMBER(u11_ca2_w);
53   DECLARE_WRITE_LINE_MEMBER(u11_cb2_w);
54   DECLARE_INPUT_CHANGED_MEMBER(activity_test);
55   DECLARE_INPUT_CHANGED_MEMBER(self_test);
56   TIMER_DEVICE_CALLBACK_MEMBER(u10_timer);
57   TIMER_DEVICE_CALLBACK_MEMBER(u11_timer);
58private:
59   UINT8 m_u10;
60   UINT8 m_u10_a;
61   UINT8 m_u10_b;
62   UINT8 m_u11_a;
63   UINT8 m_u11_b;
64   bool m_u10_ca2;
65   bool m_u10_cb2;
66   bool m_u10_timer;
67   bool m_u11_timer;
68   UINT8 m_digit;
69   UINT8 m_segment;
2470   virtual void machine_reset();
25public:
26   DECLARE_DRIVER_INIT(st_mp100);
71   required_device<m6800_cpu_device> m_maincpu;
72   required_device<pia6821_device> m_pia_u10;
73   required_device<pia6821_device> m_pia_u11;
74   required_ioport m_io_test;
75   required_ioport m_io_dsw0;
76   required_ioport m_io_dsw1;
77   required_ioport m_io_dsw2;
78   required_ioport m_io_dsw3;
79   required_ioport m_io_x0;
80   required_ioport m_io_x1;
81   required_ioport m_io_x2;
82   required_ioport m_io_x3;
83   required_ioport m_io_x4;
2784};
2885
2986
3087static ADDRESS_MAP_START( st_mp100_map, AS_PROGRAM, 8, st_mp100_state )
31   AM_RANGE(0x0000, 0xffff) AM_NOP
88   ADDRESS_MAP_GLOBAL_MASK(0x1fff)
89   AM_RANGE(0x0000, 0x007f) AM_RAM // internal to the cpu
90   AM_RANGE(0x0088, 0x008b) AM_DEVREADWRITE("pia_u10", pia6821_device, read, write)
91   AM_RANGE(0x0090, 0x0093) AM_DEVREADWRITE("pia_u11", pia6821_device, read, write)
92   AM_RANGE(0x0200, 0x02ff) AM_RAM AM_SHARE("nvram")
93   AM_RANGE(0x1000, 0x1fff) AM_ROM AM_REGION("roms", 0 )
3294ADDRESS_MAP_END
3395
3496static INPUT_PORTS_START( st_mp100 )
97   PORT_START("TEST")
98   PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Self Test") PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, st_mp100_state, self_test, 0)
99   PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Activity") PORT_IMPULSE(1) PORT_CHANGED_MEMBER(DEVICE_SELF, st_mp100_state, activity_test, 0)
100
101   PORT_START("DSW0")
102   PORT_DIPNAME( 0x1f, 0x02, "Coin Slot 2")
103   PORT_DIPSETTING(    0x00, DEF_STR( 2C_3C )) // same as 01
104   PORT_DIPSETTING(    0x02, DEF_STR( 1C_1C ))
105   PORT_DIPSETTING(    0x03, DEF_STR( 2C_1C ))
106   PORT_DIPSETTING(    0x04, DEF_STR( 1C_2C ))
107   PORT_DIPSETTING(    0x05, DEF_STR( 2C_2C ))
108   PORT_DIPSETTING(    0x06, DEF_STR( 1C_3C ))
109   PORT_DIPSETTING(    0x07, DEF_STR( 2C_3C ))
110   PORT_DIPSETTING(    0x08, DEF_STR( 1C_4C ))
111   PORT_DIPSETTING(    0x09, DEF_STR( 2C_4C ))
112   PORT_DIPSETTING(    0x0a, DEF_STR( 1C_5C ))
113   PORT_DIPSETTING(    0x0b, DEF_STR( 2C_5C ))
114   PORT_DIPSETTING(    0x0c, DEF_STR( 1C_6C ))
115   PORT_DIPSETTING(    0x0d, DEF_STR( 2C_6C ))
116   PORT_DIPSETTING(    0x0e, DEF_STR( 1C_7C ))
117   PORT_DIPSETTING(    0x0f, DEF_STR( 2C_7C ))
118   PORT_DIPSETTING(    0x10, DEF_STR( 1C_8C ))
119   PORT_DIPSETTING(    0x11, DEF_STR( 2C_8C ))
120   PORT_DIPSETTING(    0x12, DEF_STR( 1C_9C ))
121   PORT_DIPSETTING(    0x13, "2 coins 9 credits")
122   PORT_DIPSETTING(    0x14, "1 coin 10 credits")
123   PORT_DIPSETTING(    0x15, "2 coins 10 credits")
124   PORT_DIPSETTING(    0x16, "1 coin 11 credits")
125   PORT_DIPSETTING(    0x17, "2 coins 11 credits")
126   PORT_DIPSETTING(    0x18, "1 coin 12 credits")
127   PORT_DIPSETTING(    0x19, "2 coins 12 credits")
128   PORT_DIPSETTING(    0x1a, "1 coin 13 credits")
129   PORT_DIPSETTING(    0x1b, "2 coins 13 credits")
130   PORT_DIPSETTING(    0x1c, "1 coin 14 credits")
131   PORT_DIPSETTING(    0x1d, "2 coins 14 credits")
132   PORT_DIPSETTING(    0x1e, "1 coin 15 credits")
133   PORT_DIPSETTING(    0x1f, "2 coins 15 credits")
134   PORT_DIPNAME( 0x20, 0x20, "S06")
135   PORT_DIPSETTING(    0x00, DEF_STR( No ))
136   PORT_DIPSETTING(    0x20, DEF_STR( Yes ))
137   PORT_DIPNAME( 0x40, 0x40, "S07")
138   PORT_DIPSETTING(    0x00, DEF_STR( No ))
139   PORT_DIPSETTING(    0x40, DEF_STR( Yes ))
140   PORT_DIPNAME( 0x80, 0x80, "S08")
141   PORT_DIPSETTING(    0x00, DEF_STR( No ))
142   PORT_DIPSETTING(    0x80, DEF_STR( Yes ))
143
144   PORT_START("DSW1")
145   PORT_DIPNAME( 0x01, 0x00, "S09")
146   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
147   PORT_DIPSETTING(    0x01, DEF_STR( On ))
148   PORT_DIPNAME( 0x02, 0x00, "S10")
149   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
150   PORT_DIPSETTING(    0x02, DEF_STR( On ))
151   PORT_DIPNAME( 0x04, 0x00, "S11")
152   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
153   PORT_DIPSETTING(    0x04, DEF_STR( On ))
154   PORT_DIPNAME( 0x08, 0x00, "S12")
155   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
156   PORT_DIPSETTING(    0x08, DEF_STR( On ))
157   PORT_DIPNAME( 0x10, 0x00, "S13")
158   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
159   PORT_DIPSETTING(    0x10, DEF_STR( On ))
160   PORT_DIPNAME( 0x20, 0x00, "S14")
161   PORT_DIPSETTING(    0x00, DEF_STR( Yes ))
162   PORT_DIPSETTING(    0x20, DEF_STR( No ))
163   PORT_DIPNAME( 0x40, 0x40, "S15")
164   PORT_DIPSETTING(    0x00, DEF_STR( No ))
165   PORT_DIPSETTING(    0x40, DEF_STR( Yes ))
166   PORT_DIPNAME( 0x80, 0x00, "S16")
167   PORT_DIPSETTING(    0x00, DEF_STR( No ))
168   PORT_DIPSETTING(    0x80, DEF_STR( Yes ))
169
170   PORT_START("DSW2")
171   PORT_DIPNAME( 0x01, 0x00, "S17")
172   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
173   PORT_DIPSETTING(    0x01, DEF_STR( On ))
174   PORT_DIPNAME( 0x02, 0x00, "S18")
175   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
176   PORT_DIPSETTING(    0x02, DEF_STR( On ))
177   PORT_DIPNAME( 0x04, 0x00, "S19")
178   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
179   PORT_DIPSETTING(    0x04, DEF_STR( On ))
180   PORT_DIPNAME( 0x08, 0x00, "S20")
181   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
182   PORT_DIPSETTING(    0x08, DEF_STR( On ))
183   PORT_DIPNAME( 0x10, 0x00, "S21")
184   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
185   PORT_DIPSETTING(    0x10, DEF_STR( On ))
186   PORT_DIPNAME( 0x20, 0x00, "S22")
187   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
188   PORT_DIPSETTING(    0x20, DEF_STR( On ))
189   PORT_DIPNAME( 0x40, 0x00, "S23")
190   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
191   PORT_DIPSETTING(    0x40, DEF_STR( On ))
192   PORT_DIPNAME( 0x80, 0x00, "S24")
193   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
194   PORT_DIPSETTING(    0x80, DEF_STR( On ))
195
196   PORT_START("DSW3")
197   PORT_DIPNAME( 0x03, 0x03, "Maximum Credits")
198   PORT_DIPSETTING(    0x00, "10")
199   PORT_DIPSETTING(    0x01, "15")
200   PORT_DIPSETTING(    0x02, "25")
201   PORT_DIPSETTING(    0x03, "40")
202   PORT_DIPNAME( 0x04, 0x04, "Credits displayed")
203   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
204   PORT_DIPSETTING(    0x04, DEF_STR( On ))
205   PORT_DIPNAME( 0x08, 0x08, "Match")
206   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
207   PORT_DIPSETTING(    0x08, DEF_STR( On ))
208   PORT_DIPNAME( 0x10, 0x00, "Keep all replays")
209   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
210   PORT_DIPSETTING(    0x10, DEF_STR( On ))
211   PORT_DIPNAME( 0x20, 0x00, "Voice" )
212   PORT_DIPSETTING(    0x00, DEF_STR( Off ))
213   PORT_DIPSETTING(    0x20, DEF_STR( On ))
214   PORT_DIPNAME( 0xC0, 0x40, "Balls")
215   PORT_DIPSETTING(    0xC0, "2")
216   PORT_DIPSETTING(    0x00, "3")
217   PORT_DIPSETTING(    0x80, "4")
218   PORT_DIPSETTING(    0x40, "5")
219
220   PORT_START("X0")
221   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OTHER )
222   PORT_BIT( 0x0a, IP_ACTIVE_HIGH, IPT_UNUSED )
223   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START2 )
224   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OTHER )
225   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
226   PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_TILT )
227   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Outhole") PORT_CODE(KEYCODE_X)
228
229   PORT_START("X1")
230   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN2 )
231   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN1 )
232   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN3 )
233   PORT_BIT( 0x38, IP_ACTIVE_HIGH, IPT_UNUSED )
234   PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER )
235   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_TILT1 ) PORT_NAME("Slam Tilt")
236
237   // from here, vary per game
238   PORT_START("X2")
239   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_A)
240   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_S)
241   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_D)
242   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_F)
243   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_G)
244   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_H)
245   PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_J)
246   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_K)
247
248   PORT_START("X3")
249   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_Q)
250   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_W)
251   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_E)
252   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_R)
253   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_Y)
254   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_U)
255   PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_I)
256   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_O)
257
258   PORT_START("X4")
259   PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_Z)
260   PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_C)
261   PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_V)
262   PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_B)
263   PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_N)
264   PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_M)
265   PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_COMMA)
266   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_CODE(KEYCODE_STOP)
35267INPUT_PORTS_END
36268
269INPUT_CHANGED_MEMBER( st_mp100_state::activity_test )
270{
271   if(newval)
272      m_maincpu->set_input_line(INPUT_LINE_NMI, PULSE_LINE);
273}
274
275INPUT_CHANGED_MEMBER( st_mp100_state::self_test )
276{
277   m_pia_u10->ca1_w(newval);
278}
279
280WRITE_LINE_MEMBER( st_mp100_state::u10_ca2_w )
281{
282   m_u10_ca2 = state;
283}
284     
285WRITE_LINE_MEMBER( st_mp100_state::u10_cb2_w )
286{
287}
288
289WRITE_LINE_MEMBER( st_mp100_state::u11_ca2_w )
290{
291   output_set_value("led0", !state);
292}
293
294WRITE_LINE_MEMBER( st_mp100_state::u11_cb2_w )
295{
296}
297
298READ8_MEMBER( st_mp100_state::u10_a_r )
299{
300   return m_u10_a;
301}
302
303WRITE8_MEMBER( st_mp100_state::u10_a_w )
304{
305   static const UINT8 patterns[16] = { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0,0,0,0,0,0 }; // MC14543
306   m_segment = data >> 4;
307   m_u10_a = data;
308   m_u10 = (data & 15) | (BIT(m_u11_a, 0) << 4);
309
310   if (!m_u10_ca2)
311   {
312      switch (m_u10)
313      {
314      case 0x10:
315         output_set_digit_value(m_digit, patterns[m_segment]);
316         break;
317      case 0x1d:
318         output_set_digit_value(8+m_digit, patterns[m_segment]);
319         break;
320      case 0x1b:
321         output_set_digit_value(16+m_digit, patterns[m_segment]);
322         break;
323      case 0x07:
324         output_set_digit_value(24+m_digit, patterns[m_segment]);
325         break;
326      case 0x0f:
327         output_set_digit_value(32+m_digit, patterns[m_segment]);
328         break;
329      default:
330         break;
331      }
332   }
333}
334
335READ8_MEMBER( st_mp100_state::u10_b_r )
336{
337   UINT8 data = 0;
338
339   if (BIT(m_u10_a, 0))
340      data |= m_io_x0->read();
341
342   if (BIT(m_u10_a, 1))
343      data |= m_io_x1->read();
344
345   if (BIT(m_u10_a, 2))
346      data |= m_io_x2->read();
347
348   if (BIT(m_u10_a, 3))
349      data |= m_io_x3->read();
350
351   if (BIT(m_u10_a, 4))
352      data |= m_io_x4->read();
353
354   if (BIT(m_u10_a, 5))
355      data |= m_io_dsw0->read();
356
357   if (BIT(m_u10_a, 6))
358      data |= m_io_dsw1->read();
359
360   if (BIT(m_u10_a, 7))
361      data |= m_io_dsw2->read();
362
363   if (m_u10_cb2)
364      data |= m_io_dsw3->read();
365
366   return data;
367}
368
369WRITE8_MEMBER( st_mp100_state::u10_b_w )
370{
371   m_u10_b = data;
372}
373
374READ8_MEMBER( st_mp100_state::u11_a_r )
375{
376   return m_u11_a;
377}
378
379WRITE8_MEMBER( st_mp100_state::u11_a_w )
380{
381   m_u11_a = data;
382
383   m_digit = 0xff;
384   if BIT(data, 2)
385      m_digit = 4;
386   else
387   if BIT(data, 3)
388      m_digit = 3;
389   else
390   if BIT(data, 4)
391      m_digit = 2;
392   else
393   if BIT(data, 5)
394      m_digit = 1;
395   else
396   if BIT(data, 6)
397      m_digit = 0;
398   else
399   if BIT(data, 7)
400      m_digit = 5;
401}
402
403WRITE8_MEMBER( st_mp100_state::u11_b_w )
404{
405   m_u11_b = data;
406   switch (data & 15)
407   {
408      case 0x0: //
409         //m_samples->start(0, 3);
410         break;
411      case 0x1: // chime 10
412         m_samples->start(1, 1);
413         break;
414      case 0x2: // chime 100
415         m_samples->start(2, 2);
416         break;
417      case 0x3: // chime 1000
418         m_samples->start(3, 3);
419         break;
420      case 0x4: // chime 10000
421         m_samples->start(0, 4);
422         break;
423      case 0x5: // knocker
424         m_samples->start(0, 6);
425         break;
426      case 0x6: // outhole
427         m_samples->start(0, 5);
428         break;
429      // from here, vary per game
430      case 0x7:
431      case 0x8:
432      case 0x9:
433         //m_samples->start(0, 5);
434         break;
435      case 0xa:
436         //m_samples->start(0, 5);
437         break;
438      case 0xb:
439         //m_samples->start(0, 0);
440         break;
441      case 0xc:
442         //m_samples->start(0, 5);
443         break;
444      case 0xd:
445         //m_samples->start(0, 0);
446         break;
447      case 0xe:
448         //m_samples->start(0, 5);
449         break;
450      case 0xf: // not used
451         break;
452   }
453}
454
37455void st_mp100_state::machine_reset()
38456{
457   m_u10_a = 0;
458   m_u10_b = 0;
459   m_u10_cb2 = 0;
460   m_u11_a = 0;
461   m_u11_b = 0;
39462}
40463
41464DRIVER_INIT_MEMBER(st_mp100_state,st_mp100)
42465{
43466}
44467
468// zero-cross detection
469TIMER_DEVICE_CALLBACK_MEMBER( st_mp100_state::u10_timer )
470{
471   m_u10_timer ^= 1;
472   m_pia_u10->cb1_w(m_u10_timer);
473}
474
475// 555 timer for display refresh
476TIMER_DEVICE_CALLBACK_MEMBER( st_mp100_state::u11_timer )
477{
478   m_u11_timer ^= 1;
479   m_pia_u11->ca1_w(m_u11_timer);
480}
481
45482static MACHINE_CONFIG_START( st_mp100, st_mp100_state )
46483   /* basic machine hardware */
47   MCFG_CPU_ADD("maincpu", M6800, 1000000)
484   MCFG_CPU_ADD("maincpu", M6800, 1000000) // no xtal, just 2 chips forming a random oscillator
48485   MCFG_CPU_PROGRAM_MAP(st_mp100_map)
486
487   MCFG_NVRAM_ADD_0FILL("nvram")
488
489   /* Video */
490   MCFG_DEFAULT_LAYOUT(layout_st_mp100)
491
492   /* Sound */
493   MCFG_FRAGMENT_ADD( genpin_audio )
494
495   /* Devices */
496   MCFG_DEVICE_ADD("pia_u10", PIA6821, 0)
497   MCFG_PIA_READPA_HANDLER(READ8(st_mp100_state, u10_a_r))
498   MCFG_PIA_WRITEPA_HANDLER(WRITE8(st_mp100_state, u10_a_w))
499   MCFG_PIA_READPB_HANDLER(READ8(st_mp100_state, u10_b_r))
500   MCFG_PIA_WRITEPB_HANDLER(WRITE8(st_mp100_state, u10_b_w))
501   MCFG_PIA_CA2_HANDLER(WRITELINE(st_mp100_state, u10_ca2_w))
502   MCFG_PIA_CB2_HANDLER(WRITELINE(st_mp100_state, u10_cb2_w))
503   MCFG_PIA_IRQA_HANDLER(DEVWRITELINE("maincpu", m6800_cpu_device, irq_line))
504   MCFG_PIA_IRQB_HANDLER(DEVWRITELINE("maincpu", m6800_cpu_device, irq_line))
505   MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_z", st_mp100_state, u10_timer, attotime::from_hz(120)) // mains freq*2
506
507   MCFG_DEVICE_ADD("pia_u11", PIA6821, 0)
508   MCFG_PIA_READPA_HANDLER(READ8(st_mp100_state, u11_a_r))
509   MCFG_PIA_WRITEPA_HANDLER(WRITE8(st_mp100_state, u11_a_w))
510   MCFG_PIA_WRITEPB_HANDLER(WRITE8(st_mp100_state, u11_b_w))
511   MCFG_PIA_CA2_HANDLER(WRITELINE(st_mp100_state, u11_ca2_w))
512   MCFG_PIA_CB2_HANDLER(WRITELINE(st_mp100_state, u11_cb2_w))
513   MCFG_PIA_IRQA_HANDLER(DEVWRITELINE("maincpu", m6800_cpu_device, irq_line))
514   MCFG_PIA_IRQB_HANDLER(DEVWRITELINE("maincpu", m6800_cpu_device, irq_line))
515   MCFG_TIMER_DRIVER_ADD_PERIODIC("timer_d", st_mp100_state, u11_timer, attotime::from_hz(634)) // 555 timer*2
49516MACHINE_CONFIG_END
50517
518
51519/*-------------------------------------
52520/ Cosmic Princess - same ROMs as Magic
53521/-------------------------------------*/
54522ROM_START(princess)
55   ROM_REGION(0x10000, "maincpu", 0)
56   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(8838091f) SHA1(d2702b5e15076793b4560c77b78eed6c1da571b6))
57   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(fb955a6f) SHA1(387080d5af318463475797fecff026d6db776a0c))
58   ROM_RELOAD( 0xf800, 0x0800)
523   ROM_REGION(0x1000, "roms", 0)
524   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(8838091f) SHA1(d2702b5e15076793b4560c77b78eed6c1da571b6))
525   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(fb955a6f) SHA1(387080d5af318463475797fecff026d6db776a0c))
59526ROM_END
60527
61528/*--------------------------------
62/ Dracula
529/ Dracula #109
63530/-------------------------------*/
64531ROM_START(dracula)
65   ROM_REGION(0x10000, "maincpu", 0)
66   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(063f8b5e) SHA1(80434de549102bff829b474603d6736b839b8999))
67   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(00336fbc) SHA1(d2c360b8a80b209ecf4ec02ee19a5234c0364504))
68   ROM_RELOAD( 0xf800, 0x0800)
532   ROM_REGION(0x1000, "roms", 0)
533   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(063f8b5e) SHA1(80434de549102bff829b474603d6736b839b8999))
534   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(00336fbc) SHA1(d2c360b8a80b209ecf4ec02ee19a5234c0364504))
69535ROM_END
70536
71537/*--------------------------------
72/ Hot Hand - uses MPU-200 inports
538/ Hot Hand - uses MPU-200 inports #112
73539/-------------------------------*/
74540ROM_START(hothand)
75   ROM_REGION(0x10000, "maincpu", 0)
76   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(5e79ea2e) SHA1(9b45c59b2076fcb3a35de1dd3ba2444ea852f149))
77   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(fb955a6f) SHA1(387080d5af318463475797fecff026d6db776a0c))
78   ROM_RELOAD( 0xf800, 0x0800)
541   ROM_REGION(0x1000, "roms", 0)
542   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(5e79ea2e) SHA1(9b45c59b2076fcb3a35de1dd3ba2444ea852f149))
543   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(fb955a6f) SHA1(387080d5af318463475797fecff026d6db776a0c))
79544ROM_END
80545
81546/*--------------------------------
82/ Lectronamo
547/ Lectronamo #105
83548/-------------------------------*/
84549ROM_START(lectrono)
85   ROM_REGION(0x10000, "maincpu", 0)
86   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(79e918ff) SHA1(a728eb26d941a9c7484be593a216905237d32551))
87   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(7c6e5fb5) SHA1(3aa4e0c1f377ba024e6b34bd431a188ff02d4eaa))
88   ROM_RELOAD( 0xf800, 0x0800)
550   ROM_REGION(0x1000, "roms", 0)
551   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(79e918ff) SHA1(a728eb26d941a9c7484be593a216905237d32551))
552   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(7c6e5fb5) SHA1(3aa4e0c1f377ba024e6b34bd431a188ff02d4eaa))
89553ROM_END
90554
91555/*--------------------------------
92/ Magic - uses MPU-200 inports
556/ Magic - uses MPU-200 inports #115
93557/-------------------------------*/
94558ROM_START(magic)
95   ROM_REGION(0x10000, "maincpu", 0)
96   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(8838091f) SHA1(d2702b5e15076793b4560c77b78eed6c1da571b6))
97   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(fb955a6f) SHA1(387080d5af318463475797fecff026d6db776a0c))
98   ROM_RELOAD( 0xf800, 0x0800)
559   ROM_REGION(0x1000, "roms", 0)
560   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(8838091f) SHA1(d2702b5e15076793b4560c77b78eed6c1da571b6))
561   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(fb955a6f) SHA1(387080d5af318463475797fecff026d6db776a0c))
99562ROM_END
100563
101564/*--------------------------------
102/ Memory Lane
565/ Memory Lane #104
103566/-------------------------------*/
104567ROM_START(memlane)
105   ROM_REGION(0x10000, "maincpu", 0)
106   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(aff1859d) SHA1(5a9801d139bf2477b6d351a2654ae07516be144a))
107   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(3e236e3c) SHA1(7f631a5fac8a1b1af3b5332ba38d52553f13531a))
108   ROM_RELOAD( 0xf800, 0x0800)
568   ROM_REGION(0x1000, "roms", 0)
569   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(aff1859d) SHA1(5a9801d139bf2477b6d351a2654ae07516be144a))
570   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(3e236e3c) SHA1(7f631a5fac8a1b1af3b5332ba38d52553f13531a))
109571ROM_END
110572
111573/*--------------------------------
112/ Nugent
574/ Nugent #108
113575/-------------------------------*/
114576ROM_START(nugent)
115   ROM_REGION(0x10000, "maincpu", 0)
116   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(79e918ff) SHA1(a728eb26d941a9c7484be593a216905237d32551))
117   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(7c6e5fb5) SHA1(3aa4e0c1f377ba024e6b34bd431a188ff02d4eaa))
118   ROM_RELOAD( 0xf800, 0x0800)
577   ROM_REGION(0x1000, "roms", 0)
578   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(79e918ff) SHA1(a728eb26d941a9c7484be593a216905237d32551))
579   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(7c6e5fb5) SHA1(3aa4e0c1f377ba024e6b34bd431a188ff02d4eaa))
119580ROM_END
120581
121582/*--------------------------------
122/ Pinball
583/ Pinball #101
123584/-------------------------------*/
124585ROM_START(pinball)
125   ROM_REGION(0x10000, "maincpu", 0)
126   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(1db32a33) SHA1(2f0a3ca36968b81f29373e4f2cf7ee28a4071882))
127   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(432e9b9e) SHA1(292e509f50bc841f6e469c198fc82c2a9095f008))
128   ROM_RELOAD( 0xf800, 0x0800)
586   ROM_REGION(0x1000, "roms", 0)
587   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(1db32a33) SHA1(2f0a3ca36968b81f29373e4f2cf7ee28a4071882))
588   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(432e9b9e) SHA1(292e509f50bc841f6e469c198fc82c2a9095f008))
129589ROM_END
130590
131591/*--------------------------------
132/ Stars
592/ Stars #103
133593/-------------------------------*/
134594ROM_START(stars)
135   ROM_REGION(0x10000, "maincpu", 0)
136   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(630d05df) SHA1(2baa16265d524297332fa951d9eab3e0e8d26078))
137   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(57e63d42) SHA1(619ef955553654893c3071d8b70855fee8a5e6a7))
138   ROM_RELOAD( 0xf800, 0x0800)
595   ROM_REGION(0x1000, "roms", 0)
596   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(630d05df) SHA1(2baa16265d524297332fa951d9eab3e0e8d26078))
597   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(57e63d42) SHA1(619ef955553654893c3071d8b70855fee8a5e6a7))
139598ROM_END
140599
141600/*--------------------------------
142/ Stingray
601/ Stingray #102
143602/-------------------------------*/
144603ROM_START(stingray)
145   ROM_REGION(0x10000, "maincpu", 0)
146   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(1db32a33) SHA1(2f0a3ca36968b81f29373e4f2cf7ee28a4071882))
147   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(432e9b9e) SHA1(292e509f50bc841f6e469c198fc82c2a9095f008))
148   ROM_RELOAD( 0xf800, 0x0800)
604   ROM_REGION(0x1000, "roms", 0)
605   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(1db32a33) SHA1(2f0a3ca36968b81f29373e4f2cf7ee28a4071882))
606   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(432e9b9e) SHA1(292e509f50bc841f6e469c198fc82c2a9095f008))
149607ROM_END
150608
151609/*--------------------------------
152/ Trident - uses MPU-200 inports
610/ Trident - uses MPU-200 inports #110
153611/-------------------------------*/
154612ROM_START(trident)
155   ROM_REGION(0x10000, "maincpu", 0)
156   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(934e49dd) SHA1(cbf6ca2759166f522f651825da0c75cf7248d3da))
157   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(540bce56) SHA1(0b21385501b83e448403e0216371487ed54026b7))
158   ROM_RELOAD( 0xf800, 0x0800)
613   ROM_REGION(0x1000, "roms", 0)
614   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(934e49dd) SHA1(cbf6ca2759166f522f651825da0c75cf7248d3da))
615   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(540bce56) SHA1(0b21385501b83e448403e0216371487ed54026b7))
159616ROM_END
160617
161618/*--------------------------------
162/ Wildfyre
619/ Wildfyre #106
163620/-------------------------------*/
164621ROM_START(wildfyre)
165   ROM_REGION(0x10000, "maincpu", 0)
166   ROM_LOAD( "cpu_u2.716", 0x1000, 0x0800, CRC(063f8b5e) SHA1(80434de549102bff829b474603d6736b839b8999))
167   ROM_LOAD( "cpu_u6.716", 0x1800, 0x0800, CRC(00336fbc) SHA1(d2c360b8a80b209ecf4ec02ee19a5234c0364504))
168   ROM_RELOAD( 0xf800, 0x0800)
622   ROM_REGION(0x1000, "roms", 0)
623   ROM_LOAD( "cpu_u2.716", 0x0000, 0x0800, CRC(063f8b5e) SHA1(80434de549102bff829b474603d6736b839b8999))
624   ROM_LOAD( "cpu_u6.716", 0x0800, 0x0800, CRC(00336fbc) SHA1(d2c360b8a80b209ecf4ec02ee19a5234c0364504))
169625ROM_END
170626
171GAME(1979,  princess,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Cosmic Princess",      GAME_IS_SKELETON_MECHANICAL)
627GAME(1977,  pinball,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Pinball",              GAME_IS_SKELETON_MECHANICAL)
628GAME(1977,  stingray,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Stingray",             GAME_IS_SKELETON_MECHANICAL)
629GAME(1978,  stars,      0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Stars",                GAME_IS_SKELETON_MECHANICAL)
630GAME(1978,  memlane,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Memory Lane",          GAME_IS_SKELETON_MECHANICAL)
631GAME(1978,  lectrono,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Lectronamo",           GAME_IS_SKELETON_MECHANICAL)
632GAME(1978,  wildfyre,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Wildfyre",             GAME_IS_SKELETON_MECHANICAL)
633GAME(1978,  nugent,     0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Nugent",               GAME_IS_SKELETON_MECHANICAL)
172634GAME(1979,  dracula,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Dracula",              GAME_IS_SKELETON_MECHANICAL)
635GAME(1979,  trident,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Trident",              GAME_IS_SKELETON_MECHANICAL)
173636GAME(1979,  hothand,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Hot Hand",             GAME_IS_SKELETON_MECHANICAL)
174GAME(1978,  lectrono,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Lectronamo",           GAME_IS_SKELETON_MECHANICAL)
175637GAME(1979,  magic,      0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Magic",                GAME_IS_SKELETON_MECHANICAL)
176GAME(1978,  memlane,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Memory Lane",          GAME_IS_SKELETON_MECHANICAL)
177GAME(1978,  nugent,     0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Nugent",               GAME_IS_SKELETON_MECHANICAL)
178GAME(1977,  pinball,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Pinball",              GAME_IS_SKELETON_MECHANICAL)
179GAME(1978,  stars,      0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Stars",                GAME_IS_SKELETON_MECHANICAL)
180GAME(1977,  stingray,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Stingray",             GAME_IS_SKELETON_MECHANICAL)
181GAME(1979,  trident,    0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Trident",              GAME_IS_SKELETON_MECHANICAL)
182GAME(1978,  wildfyre,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Wildfyre",             GAME_IS_SKELETON_MECHANICAL)
638GAME(1979,  princess,   0,      st_mp100,   st_mp100, st_mp100_state,   st_mp100,   ROT0,   "Stern",    "Cosmic Princess",      GAME_IS_SKELETON_MECHANICAL)
trunk/src/mame/mame.mak
r31493r31494
28252825
28262826$(DRIVERS)/sstrangr.o:  $(LAYOUT)/sstrangr.lh
28272827
2828$(DRIVERS)/st_mp100.o:  $(LAYOUT)/st_mp100.lh
2829
28282830$(DRIVERS)/subsino.o:   $(LAYOUT)/victor5.lh \
28292831         $(LAYOUT)/victor21.lh \
28302832         $(LAYOUT)/tisub.lh \

Previous 199869 Revisions Next


© 1997-2024 The MAME Team