trunk/src/mame/drivers/zac_2.c
r17552 | r17553 | |
5 | 5 | |
6 | 6 | #include "emu.h" |
7 | 7 | #include "cpu/s2650/s2650.h" |
| 8 | #include "zac_2.lh" |
8 | 9 | |
9 | 10 | class zac_2_state : public driver_device |
10 | 11 | { |
11 | 12 | public: |
12 | 13 | zac_2_state(const machine_config &mconfig, device_type type, const char *tag) |
13 | 14 | : driver_device(mconfig, type, tag), |
14 | | m_maincpu(*this, "maincpu") |
| 15 | m_maincpu(*this, "maincpu"), |
| 16 | m_p_ram(*this, "ram") |
15 | 17 | { } |
16 | 18 | |
| 19 | DECLARE_READ8_MEMBER(ctrl_r); |
| 20 | DECLARE_WRITE8_MEMBER(ctrl_w); |
| 21 | DECLARE_READ8_MEMBER(serial_r); |
| 22 | DECLARE_WRITE8_MEMBER(serial_w); |
| 23 | DECLARE_WRITE8_MEMBER(reset_int_w); |
| 24 | UINT8 m_t_c; |
| 25 | UINT8 m_out_offs; |
| 26 | required_device<cpu_device> m_maincpu; |
| 27 | required_shared_ptr<UINT8> m_p_ram; |
17 | 28 | protected: |
18 | 29 | |
19 | 30 | // devices |
20 | | required_device<cpu_device> m_maincpu; |
21 | 31 | |
22 | 32 | // driver_device overrides |
23 | 33 | virtual void machine_reset(); |
24 | | public: |
25 | | DECLARE_DRIVER_INIT(zac_2); |
| 34 | private: |
| 35 | UINT8 m_input_line; |
26 | 36 | }; |
27 | 37 | |
28 | 38 | |
29 | 39 | static ADDRESS_MAP_START( zac_2_map, AS_PROGRAM, 8, zac_2_state ) |
30 | | AM_RANGE(0x0000, 0xffff) AM_NOP |
| 40 | ADDRESS_MAP_GLOBAL_MASK(0x3fff) |
| 41 | AM_RANGE(0x0000, 0x13ff) AM_MIRROR(0x2000) AM_ROM |
| 42 | AM_RANGE(0x1400, 0x17ff) AM_WRITE(reset_int_w) |
| 43 | AM_RANGE(0x1800, 0x1bff) AM_RAM AM_SHARE("ram") |
| 44 | AM_RANGE(0x1c00, 0x1fff) AM_ROM |
31 | 45 | ADDRESS_MAP_END |
32 | 46 | |
| 47 | static ADDRESS_MAP_START(zac_2_io, AS_IO, 8, zac_2_state) |
| 48 | ADDRESS_MAP_UNMAP_HIGH |
| 49 | AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(ctrl_r,ctrl_w) |
| 50 | AM_RANGE(S2650_SENSE_PORT, S2650_FO_PORT) AM_READWRITE(serial_r,serial_w) |
| 51 | ADDRESS_MAP_END |
| 52 | |
33 | 53 | static INPUT_PORTS_START( zac_2 ) |
| 54 | PORT_START("TEST") |
| 55 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Test") PORT_CODE(KEYCODE_0) // doesn't seem to do anything |
| 56 | |
| 57 | PORT_START("ROW0") |
| 58 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) // this performs tests |
| 59 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT ) |
| 60 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Slam") |
| 61 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START ) |
| 62 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 ) |
| 63 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 ) |
| 64 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 ) |
| 65 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Printer") |
| 66 | |
| 67 | PORT_START("ROW1") |
| 68 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RAM Reset") |
| 69 | PORT_BIT( 0x3e, IP_ACTIVE_LOW, IPT_UNUSED ) |
| 70 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_TILT ) |
| 71 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Burn Test") |
| 72 | |
| 73 | PORT_START("ROW2") |
| 74 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Outhole") PORT_CODE(KEYCODE_X) |
| 75 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Flap") PORT_CODE(KEYCODE_Q) |
| 76 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Flap") PORT_CODE(KEYCODE_W) |
| 77 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Bottom Inside RH Canal") PORT_CODE(KEYCODE_E) |
| 78 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Bottom Outside RH Canal") PORT_CODE(KEYCODE_R) |
| 79 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Bottom Outside LH Canal") PORT_CODE(KEYCODE_Y) |
| 80 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Bottom Inside LH Canal") PORT_CODE(KEYCODE_U) |
| 81 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Top Hole") PORT_CODE(KEYCODE_I) |
| 82 | |
| 83 | PORT_START("ROW3") |
| 84 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Bumper") PORT_CODE(KEYCODE_O) |
| 85 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Top Canal") PORT_CODE(KEYCODE_A) |
| 86 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Top Centre Canal") PORT_CODE(KEYCODE_S) |
| 87 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Top Canal") PORT_CODE(KEYCODE_D) |
| 88 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Top Fixed Target") PORT_CODE(KEYCODE_F) |
| 89 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Top Fixed Target") PORT_CODE(KEYCODE_G) |
| 90 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Bumper") PORT_CODE(KEYCODE_H) |
| 91 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Top Hole") PORT_CODE(KEYCODE_J) |
| 92 | |
| 93 | PORT_START("ROW4") |
| 94 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Bottom Bumper") PORT_CODE(KEYCODE_K) |
| 95 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Top Contact") PORT_CODE(KEYCODE_L) |
| 96 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Top Contact") PORT_CODE(KEYCODE_Z) |
| 97 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Spinning Target") PORT_CODE(KEYCODE_QUOTE) |
| 98 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Lateral Outside Contacts") PORT_CODE(KEYCODE_C) |
| 99 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Spinning Target") PORT_CODE(KEYCODE_V) |
| 100 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Bank Contacts") PORT_CODE(KEYCODE_B) |
| 101 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("Moving Target") PORT_CODE(KEYCODE_N) |
| 102 | |
| 103 | PORT_START("ROW5") |
| 104 | PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Bank Target 1") PORT_CODE(KEYCODE_M) |
| 105 | PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Bank Target 2") PORT_CODE(KEYCODE_MINUS) |
| 106 | PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Bank Target 3") PORT_CODE(KEYCODE_EQUALS) |
| 107 | PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("LH Bank Target 4") PORT_CODE(KEYCODE_BACKSPACE) |
| 108 | PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Bank Target 1") PORT_CODE(KEYCODE_OPENBRACE) |
| 109 | PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Bank Target 2") PORT_CODE(KEYCODE_CLOSEBRACE) |
| 110 | PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Bank Target 3") PORT_CODE(KEYCODE_BACKSLASH) |
| 111 | PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_NAME("RH Bank Target 4") PORT_CODE(KEYCODE_COLON) |
34 | 112 | INPUT_PORTS_END |
35 | 113 | |
| 114 | READ8_MEMBER( zac_2_state::ctrl_r ) |
| 115 | { |
| 116 | // reads inputs |
| 117 | if (m_input_line == 0xfe) |
| 118 | return ioport("ROW0")->read(); |
| 119 | else |
| 120 | if (m_input_line == 0xfd) |
| 121 | return ioport("ROW1")->read(); |
| 122 | else |
| 123 | if (m_input_line == 0xfb) |
| 124 | return ioport("ROW2")->read(); |
| 125 | else |
| 126 | if (m_input_line == 0xf7) |
| 127 | return ioport("ROW3")->read(); |
| 128 | else |
| 129 | if (m_input_line == 0xef) |
| 130 | return ioport("ROW4")->read(); |
| 131 | else |
| 132 | if (m_input_line == 0xdf) |
| 133 | return ioport("ROW5")->read(); |
| 134 | else |
| 135 | return 0xff; |
| 136 | } |
| 137 | |
| 138 | WRITE8_MEMBER( zac_2_state::ctrl_w ) |
| 139 | { |
| 140 | m_input_line = data; |
| 141 | } |
| 142 | |
| 143 | WRITE8_MEMBER( zac_2_state::reset_int_w ) |
| 144 | { |
| 145 | device_set_input_line(m_maincpu, INPUT_LINE_IRQ0, CLEAR_LINE); |
| 146 | } |
| 147 | |
| 148 | READ8_MEMBER( zac_2_state::serial_r ) |
| 149 | { |
| 150 | // from printer |
| 151 | return 0; |
| 152 | } |
| 153 | |
| 154 | WRITE8_MEMBER( zac_2_state::serial_w ) |
| 155 | { |
| 156 | // to printer |
| 157 | } |
| 158 | |
36 | 159 | void zac_2_state::machine_reset() |
37 | 160 | { |
| 161 | m_t_c = 0; |
38 | 162 | } |
39 | 163 | |
40 | | DRIVER_INIT_MEMBER(zac_2_state,zac_2) |
| 164 | static TIMER_DEVICE_CALLBACK( zac_2_inttimer ) |
41 | 165 | { |
| 166 | zac_2_state *state = timer.machine().driver_data<zac_2_state>(); |
| 167 | if (state->m_t_c > 0x40) |
| 168 | { |
| 169 | UINT8 vector = (state->ioport("TEST")->read() ) ? 0x10 : 0x18; |
| 170 | device_set_input_line_and_vector(state->m_maincpu, INPUT_LINE_IRQ0, ASSERT_LINE, vector); |
| 171 | } |
| 172 | else |
| 173 | state->m_t_c++; |
42 | 174 | } |
43 | 175 | |
| 176 | static TIMER_DEVICE_CALLBACK( zac_2_outtimer ) |
| 177 | { |
| 178 | static const UINT8 patterns[16] = { 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0, 0, 0, 0, 0, 0 }; |
| 179 | zac_2_state *state = timer.machine().driver_data<zac_2_state>(); |
| 180 | state->m_out_offs++; |
| 181 | // displays, solenoids, lamps |
| 182 | |
| 183 | if (state->m_out_offs < 0x40) |
| 184 | { |
| 185 | UINT8 display = (state->m_out_offs >> 3) & 7; |
| 186 | UINT8 digit = state->m_out_offs & 7; |
| 187 | output_set_digit_value(display * 10 + digit, patterns[state->m_p_ram[state->m_out_offs]&15]); |
| 188 | } |
| 189 | } |
| 190 | |
44 | 191 | static MACHINE_CONFIG_START( zac_2, zac_2_state ) |
45 | 192 | /* basic machine hardware */ |
46 | 193 | MCFG_CPU_ADD("maincpu", S2650, 6000000/2) |
47 | 194 | MCFG_CPU_PROGRAM_MAP(zac_2_map) |
| 195 | MCFG_CPU_IO_MAP(zac_2_io) |
| 196 | MCFG_TIMER_ADD_PERIODIC("zac_2_inttimer", zac_2_inttimer, attotime::from_hz(200)) |
| 197 | MCFG_TIMER_ADD_PERIODIC("zac_2_outtimer", zac_2_outtimer, attotime::from_hz(187500)) |
| 198 | |
| 199 | /* Video */ |
| 200 | MCFG_DEFAULT_LAYOUT(layout_zac_2) |
48 | 201 | MACHINE_CONFIG_END |
49 | 202 | |
50 | 203 | /*-------------------------------- |
r17552 | r17553 | |
931 | 1084 | ROM_LOAD("zan_ic6.128", 0x8000, 0x4000, CRC(13a5b8d4) SHA1(d8c976b3f5e9c7cded0922feefa1531c59432515)) |
932 | 1085 | ROM_END |
933 | 1086 | |
934 | | GAME(1986, bbeltzac, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Black Belt (Zaccaria)", GAME_IS_SKELETON_MECHANICAL) |
935 | | GAME(1985, clown, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Clown", GAME_IS_SKELETON_MECHANICAL) |
936 | | GAME(1984, dvlrider, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Devil Riders", GAME_IS_SKELETON_MECHANICAL) |
937 | | GAME(1984, dvlrideri, dvlrider, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Devil Riders (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
938 | | GAME(1984, dvlriderg, dvlrider, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Devil Riders (German speech)", GAME_IS_SKELETON_MECHANICAL) |
939 | | GAME(1983, farfalla, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Farfalla", GAME_IS_SKELETON_MECHANICAL) |
940 | | GAME(1983, farfallai, farfalla, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Farfalla (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
941 | | GAME(1983, farfallag, farfalla, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Farfalla (German speech)", GAME_IS_SKELETON_MECHANICAL) |
942 | | GAME(1984, mcastle, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Magic Castle", GAME_IS_SKELETON_MECHANICAL) |
943 | | GAME(1984, mcastlei, mcastle, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Magic Castle (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
944 | | GAME(1984, mcastleg, mcastle, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Magic Castle (German speech)", GAME_IS_SKELETON_MECHANICAL) |
945 | | GAME(1984, mcastlef, mcastle, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Magic Castle (French speech)", GAME_IS_SKELETON_MECHANICAL) |
946 | | GAME(1986, mexico, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Mexico 86 (German speech)", GAME_IS_SKELETON_MECHANICAL) |
947 | | GAME(1987, nstrphnx, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "New Star's Phoenix (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
948 | | GAME(1983, pinchamp, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pinball Champ", GAME_IS_SKELETON_MECHANICAL) |
949 | | GAME(1983, pinchampg, pinchamp, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pinball Champ (German speech)", GAME_IS_SKELETON_MECHANICAL) |
950 | | GAME(1983, pinchampi, pinchamp, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pinball Champ (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
951 | | GAME(1983, pinchamp7, pinchamp, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pinball Champ (7 digits)", GAME_IS_SKELETON_MECHANICAL) |
952 | | GAME(1983, pinchamp7g, pinchamp, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pinball Champ (7 digits German speech)", GAME_IS_SKELETON_MECHANICAL) |
953 | | GAME(1983, pinchamp7i, pinchamp, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pinball Champ (7 digits Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
954 | | GAME(1985, poolcham, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pool Champion", GAME_IS_SKELETON_MECHANICAL) |
955 | | GAME(1985, poolchami, poolcham, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pool Champion (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
956 | | GAME(1985, poolchama, poolcham, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Pool Champion (alternate sound)", GAME_IS_SKELETON_MECHANICAL) |
957 | | GAME(1985, robot, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Robot", GAME_IS_SKELETON_MECHANICAL) |
958 | | GAME(1985, roboti, robot, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Robot (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
959 | | GAME(1985, robotg, robot, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Robot (German speech)", GAME_IS_SKELETON_MECHANICAL) |
960 | | GAME(1985, robotf, robot, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Robot (French speech)", GAME_IS_SKELETON_MECHANICAL) |
961 | | GAME(1987, scram_tp, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Tecnoplay", "Scramble (Pinball)", GAME_IS_SKELETON_MECHANICAL) |
962 | | GAME(1982, socrking, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Soccer Kings", GAME_IS_SKELETON_MECHANICAL) |
963 | | GAME(1982, socrkingi, socrking, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Soccer Kings (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
964 | | GAME(1982, socrkingg, socrking, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Soccer Kings (German speech)", GAME_IS_SKELETON_MECHANICAL) |
965 | | GAME(1987, spookyp, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Spooky", GAME_IS_SKELETON_MECHANICAL) |
966 | | GAME(1987, spookyi, spookyp, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Spooky (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
967 | | GAME(1987, strsphnx, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Star's Phoenix (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
968 | | GAME(1983, tmachzac, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Time Machine (Zaccaria)", GAME_IS_SKELETON_MECHANICAL) |
969 | | GAME(1983, tmachzacg, tmachzac, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Time Machine (Zaccaria German speech)", GAME_IS_SKELETON_MECHANICAL) |
970 | | GAME(1983, tmachzacf, tmachzac, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Time Machine (Zaccaria French speech)", GAME_IS_SKELETON_MECHANICAL) |
971 | | GAME(1986, zankor, 0, zac_2, zac_2, zac_2_state, zac_2, ROT0, "Zaccaria", "Zankor (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1087 | GAME(1986, bbeltzac, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Black Belt (Zaccaria)", GAME_IS_SKELETON_MECHANICAL) |
| 1088 | GAME(1985, clown, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Clown", GAME_IS_SKELETON_MECHANICAL) |
| 1089 | GAME(1984, dvlrider, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Devil Riders", GAME_IS_SKELETON_MECHANICAL) |
| 1090 | GAME(1984, dvlrideri, dvlrider, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Devil Riders (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1091 | GAME(1984, dvlriderg, dvlrider, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Devil Riders (German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1092 | GAME(1983, farfalla, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Farfalla", GAME_IS_SKELETON_MECHANICAL) |
| 1093 | GAME(1983, farfallai, farfalla, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Farfalla (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1094 | GAME(1983, farfallag, farfalla, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Farfalla (German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1095 | GAME(1984, mcastle, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Magic Castle", GAME_IS_SKELETON_MECHANICAL) |
| 1096 | GAME(1984, mcastlei, mcastle, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Magic Castle (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1097 | GAME(1984, mcastleg, mcastle, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Magic Castle (German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1098 | GAME(1984, mcastlef, mcastle, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Magic Castle (French speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1099 | GAME(1986, mexico, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Mexico 86 (German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1100 | GAME(1987, nstrphnx, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "New Star's Phoenix (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1101 | GAME(1983, pinchamp, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pinball Champ", GAME_IS_SKELETON_MECHANICAL) |
| 1102 | GAME(1983, pinchampg, pinchamp, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pinball Champ (German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1103 | GAME(1983, pinchampi, pinchamp, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pinball Champ (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1104 | GAME(1983, pinchamp7, pinchamp, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pinball Champ (7 digits)", GAME_IS_SKELETON_MECHANICAL) |
| 1105 | GAME(1983, pinchamp7g, pinchamp, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pinball Champ (7 digits German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1106 | GAME(1983, pinchamp7i, pinchamp, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pinball Champ (7 digits Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1107 | GAME(1985, poolcham, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pool Champion", GAME_IS_SKELETON_MECHANICAL) |
| 1108 | GAME(1985, poolchami, poolcham, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pool Champion (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1109 | GAME(1985, poolchama, poolcham, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Pool Champion (alternate sound)", GAME_IS_SKELETON_MECHANICAL) |
| 1110 | GAME(1985, robot, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Robot", GAME_IS_SKELETON_MECHANICAL) |
| 1111 | GAME(1985, roboti, robot, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Robot (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1112 | GAME(1985, robotg, robot, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Robot (German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1113 | GAME(1985, robotf, robot, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Robot (French speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1114 | GAME(1987, scram_tp, 0, zac_2, zac_2, driver_device, 0, ROT0, "Tecnoplay", "Scramble (Pinball)", GAME_IS_SKELETON_MECHANICAL) |
| 1115 | GAME(1982, socrking, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Soccer Kings", GAME_IS_SKELETON_MECHANICAL) |
| 1116 | GAME(1982, socrkingi, socrking, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Soccer Kings (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1117 | GAME(1982, socrkingg, socrking, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Soccer Kings (German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1118 | GAME(1987, spookyp, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Spooky", GAME_IS_SKELETON_MECHANICAL) |
| 1119 | GAME(1987, spookyi, spookyp, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Spooky (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1120 | GAME(1987, strsphnx, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Star's Phoenix (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1121 | GAME(1983, tmachzac, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Time Machine (Zaccaria)", GAME_IS_SKELETON_MECHANICAL) |
| 1122 | GAME(1983, tmachzacg, tmachzac, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Time Machine (Zaccaria German speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1123 | GAME(1983, tmachzacf, tmachzac, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Time Machine (Zaccaria French speech)", GAME_IS_SKELETON_MECHANICAL) |
| 1124 | GAME(1986, zankor, 0, zac_2, zac_2, driver_device, 0, ROT0, "Zaccaria", "Zankor (Italian speech)", GAME_IS_SKELETON_MECHANICAL) |