Previous 199869 Revisions Next

r17479 Sunday 26th August, 2012 at 06:28:54 UTC by Robbbert
zac_proto: added dipswitches; flicker: added standard buttons
[src/mame/drivers]flicker.c zac_proto.c
[src/mame/layout]zac_proto.lay

trunk/src/mame/layout/zac_proto.lay
r17478r17479
4949      <bezel name="digit10" element="digit">
5050         <bounds left="274" top="45" right="308" bottom="84" />
5151      </bezel>
52      <bezel name="digit7" element="digit">
52      <bezel name="digit9" element="digit">
5353         <bounds left="30" top="145" right="54" bottom="170" />
5454      </bezel>
55      <bezel name="digit6" element="digit">
55      <bezel name="digit8" element="digit">
5656         <bounds left="64" top="145" right="88" bottom="170" />
5757      </bezel>
58      <bezel name="digit9" element="digit">
58      <bezel name="digit7" element="digit">
5959         <bounds left="230" top="145" right="254" bottom="170" />
6060      </bezel>
61      <bezel name="digit8" element="digit">
61      <bezel name="digit6" element="digit">
6262         <bounds left="264" top="145" right="288" bottom="170" />
6363      </bezel>
6464      <bezel element="P0"><bounds left="230" right="288" top="110" bottom="135" /></bezel>
trunk/src/mame/drivers/flicker.c
r17478r17479
6666static INPUT_PORTS_START( flicker )
6767   PORT_START("TEST")
6868   PORT_BIT(0x0002, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("Door Slam") PORT_CODE(KEYCODE_HOME)
69   PORT_BIT(0x0020, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("1 coin credit") PORT_CODE(KEYCODE_5)
70   PORT_BIT(0x0040, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("2 credit") PORT_CODE(KEYCODE_6)
71   PORT_BIT(0x0080, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("3 credit") PORT_CODE(KEYCODE_7)
72   PORT_BIT(0x0100, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("4 credit") PORT_CODE(KEYCODE_8)
73   PORT_BIT(0x0200, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("5 credit") PORT_CODE(KEYCODE_9)
74   PORT_BIT(0x0400, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("6 credit") PORT_CODE(KEYCODE_0)
75   PORT_BIT(0x0800, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("Tilt") PORT_CODE(KEYCODE_T)
76   PORT_BIT(0x1000, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("Start") PORT_CODE(KEYCODE_1)
69   PORT_BIT(0x0020, IP_ACTIVE_HIGH, IPT_COIN1) // 1 credit
70   PORT_BIT(0x0040, IP_ACTIVE_HIGH, IPT_COIN2)
71   PORT_BIT(0x0080, IP_ACTIVE_HIGH, IPT_COIN3)
72   PORT_BIT(0x0100, IP_ACTIVE_HIGH, IPT_COIN4)
73   PORT_BIT(0x0200, IP_ACTIVE_HIGH, IPT_COIN5)
74   PORT_BIT(0x0400, IP_ACTIVE_HIGH, IPT_COIN6) // 6 credits
75   PORT_BIT(0x0800, IP_ACTIVE_HIGH, IPT_TILT)
76   PORT_BIT(0x1000, IP_ACTIVE_HIGH, IPT_START)
7777   PORT_BIT(0x8000, IP_ACTIVE_HIGH, IPT_OTHER) PORT_NAME("Test")
7878
7979   PORT_START("B0")
r17478r17479
111111
112112READ8_MEMBER( flicker_state::port02_r )
113113{
114   offset = cpu_get_reg(m_maincpu, I4004_RAM) - 0x20; // we need the full address
114   offset = cpu_get_reg(m_maincpu, I4004_RAM) & 0x0f; // we need the full address
115115
116116   if (offset < 7)
117117   {
r17478r17479
132132WRITE8_MEMBER( flicker_state::port01_w )
133133{
134134// The output lines operate the various lamps (44 of them)
135   offset = cpu_get_reg(m_maincpu, I4004_RAM) - 0x10; // we need the full address
135   offset = cpu_get_reg(m_maincpu, I4004_RAM) & 0x0f; // we need the full address
136136
137   if (offset < 0x10)
138      i4004_set_test(m_maincpu, BIT(ioport("TEST")->read(), offset));
137   i4004_set_test(m_maincpu, BIT(ioport("TEST")->read(), offset));
139138}
140139
141140WRITE8_MEMBER( flicker_state::port10_w )
r17478r17479
152151    9 = knocker
153152    A = coin counter
154153    B = coin acceptor */
155   offset = cpu_get_reg(m_maincpu, I4004_RAM) - 0x10; // we need the full address
154   offset = cpu_get_reg(m_maincpu, I4004_RAM) & 0x0f; // we need the full address
156155   if (data && data != offset)
157156   {
158157      switch (offset)
r17478r17479
174173            beep_set_frequency(m_beeper, 200);
175174            break;
176175         case 0x0a:
177            coin_counter_w(machine(), 0, 1);
178            coin_counter_w(machine(), 0, 0);
176            //coin_counter_w(machine(), 0, 1);
177            //coin_counter_w(machine(), 0, 0);
179178            break;
180179         default:
181180            break;
trunk/src/mame/drivers/zac_proto.c
r17478r17479
1/*
1/*********************************************************************
22    Zaccaria Prototype
3*/
43
4 These use the INS8060 (SC/MP) processor, and are Zaccaria's first
5 digital machines.
6
7The inputs work with 'strike' and 'skijump'.
8The playboard inputs are unknown.
9
10ToDo:
11- Proper artwork
12- Mirrors of ram and switches
13- battery backup of ram
14- Inputs
15- Outputs
16- Sound
17
18**********************************************************************/
19
520#include "emu.h"
621#include "cpu/scmp/scmp.h"
722#include "zac_proto.lh"
r17478r17479
2540
2641   // driver_device overrides
2742   virtual void machine_reset();
28public:
29   DECLARE_DRIVER_INIT(zac_proto);
3043};
3144
3245
3346static ADDRESS_MAP_START( zac_proto_map, AS_PROGRAM, 8, zac_proto_state )
3447   AM_RANGE(0x0000, 0x0bff) AM_ROM
35   AM_RANGE(0x0c00, 0x0dff) AM_RAM
48   AM_RANGE(0x0d00, 0x0dff) AM_RAM
3649   AM_RANGE(0x0e00, 0x0e00) AM_READ_PORT("PL0")
3750   AM_RANGE(0x0e01, 0x0e01) AM_READ_PORT("PL1")
3851   AM_RANGE(0x0e02, 0x0e02) AM_READ_PORT("PL2")
r17478r17479
5164static INPUT_PORTS_START( zac_proto )
5265   // playfield inputs
5366   PORT_START("PL0")
67   PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_COIN1 )
68   PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_COIN2 )
69   PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_START )
70   PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER)
71   PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER)
72   PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER)
73   PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER)
74   PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER)
5475   PORT_START("PL1")
76   PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER)
77   PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER)
78   PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER)
79   PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER)
80   PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER)
81   PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER)
82   PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER)
83   PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER)
5584   PORT_START("PL2")
85   PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER)
86   PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER)
87   PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER)
88   PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER)
89   PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER)
90   PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER)
91   PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER)
92   PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER)
5693   PORT_START("PL3")
94   PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER)
95   PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER)
96   PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER)
97   PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER)
98   PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER)
99   PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER)
100   PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER)
101   PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER)
57102   PORT_START("PL4")
103   PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_OTHER)
104   PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_OTHER)
105   PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_OTHER)
106   PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_OTHER)
107   PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_OTHER)
108   PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_OTHER)
109   PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_OTHER)
110   PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_OTHER)
111
58112   // dipswitches
59113   PORT_START("PL5")
114   PORT_DIPNAME( 0x0f, 0x02, "Coinage Slot 1" )
115   PORT_DIPSETTING(    0x01, DEF_STR( 2C_1C ) )
116   PORT_DIPSETTING(    0x02, DEF_STR( 1C_1C ) )
117   PORT_DIPSETTING(    0x03, DEF_STR( 2C_3C ) )
118   PORT_DIPSETTING(    0x04, DEF_STR( 1C_2C ) )
119   PORT_DIPSETTING(    0x05, DEF_STR( 2C_5C ) )
120   PORT_DIPSETTING(    0x06, DEF_STR( 1C_3C ) )
121   PORT_DIPSETTING(    0x07, DEF_STR( 2C_7C ) )
122   PORT_DIPSETTING(    0x08, DEF_STR( 1C_4C ) )
123   PORT_DIPSETTING(    0x09, "2 Coins/9 Credits" )
124   PORT_DIPSETTING(    0x0a, DEF_STR( 1C_5C ) )
125   PORT_DIPSETTING(    0x0b, "2 Coins/11 Credits" )
126   PORT_DIPSETTING(    0x0c, DEF_STR( 1C_6C ) )
127   PORT_DIPSETTING(    0x0d, "2 Coins/13 Credits" )
128   PORT_DIPSETTING(    0x0e, DEF_STR( 1C_7C ) )
129   PORT_DIPSETTING(    0x0f, "2 Coins/15 Credits" )
130   PORT_DIPNAME( 0xf0, 0x20, "Coinage Slot 2" )
131   PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
132   PORT_DIPSETTING(    0x20, DEF_STR( 1C_1C ) )
133   PORT_DIPSETTING(    0x30, DEF_STR( 2C_3C ) )
134   PORT_DIPSETTING(    0x40, DEF_STR( 1C_2C ) )
135   PORT_DIPSETTING(    0x50, DEF_STR( 2C_5C ) )
136   PORT_DIPSETTING(    0x60, DEF_STR( 1C_3C ) )
137   PORT_DIPSETTING(    0x70, DEF_STR( 2C_7C ) )
138   PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
139   PORT_DIPSETTING(    0x90, "2 Coins/9 Credits" )
140   PORT_DIPSETTING(    0xa0, DEF_STR( 1C_5C ) )
141   PORT_DIPSETTING(    0xb0, "2 Coins/11 Credits" )
142   PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
143   PORT_DIPSETTING(    0xd0, "2 Coins/13 Credits" )
144   PORT_DIPSETTING(    0xe0, DEF_STR( 1C_7C ) )
145   PORT_DIPSETTING(    0xf0, "2 Coins/15 Credits" )
146
60147   PORT_START("PL6")
148   PORT_DIPNAME( 0x03, 0x01, "High Score" )
149   PORT_DIPSETTING(    0x00, "0" )
150   PORT_DIPSETTING(    0x01, "1" )
151   PORT_DIPSETTING(    0x02, "2" )
152   PORT_DIPSETTING(    0x03, "3" )
153   PORT_DIPNAME( 0x04, 0x04, "Beat High Score" )
154   PORT_DIPSETTING(    0x04, "Super Bonus" )
155   PORT_DIPSETTING(    0x00, "Game" )
156   PORT_DIPNAME( 0x08, 0x08, "Match" )
157   PORT_DIPSETTING(    0x08, "Enabled" )
158   PORT_DIPSETTING(    0x00, "Disabled" )
159   PORT_DIPNAME( 0x30, 0x20, "Beat High/Random Score" )
160   PORT_DIPSETTING(    0x00, "500000 points" )
161   PORT_DIPSETTING(    0x10, "Extra Ball" )
162   PORT_DIPSETTING(    0x20, "Extra Game" )
163   PORT_DIPSETTING(    0x30, "Super Bonus" )
164   PORT_DIPNAME( 0xc0, 0x80, "Reward for Special" )
165   PORT_DIPSETTING(    0x00, "500000 points" )
166   PORT_DIPSETTING(    0x40, "Extra Ball" )
167   PORT_DIPSETTING(    0x80, "Extra Game" )
168   PORT_DIPSETTING(    0xc0, "Super Bonus" )
169
61170   PORT_START("PL7")
171   PORT_DIPNAME( 0x01, 0x00, "Random" )
172   PORT_DIPSETTING(    0x00, "Enabled" )
173   PORT_DIPSETTING(    0x01, "Disabled" )
174   PORT_DIPNAME( 0x06, 0x02, "Balls" )
175   PORT_DIPSETTING(    0x00, "1" )
176   PORT_DIPSETTING(    0x02, "3" )
177   PORT_DIPSETTING(    0x04, "5" )
178   PORT_DIPSETTING(    0x06, "7" )
179   PORT_DIPNAME( 0x18, 0x10, "Strikes to get special" )
180   PORT_DIPSETTING(    0x00, "1" )
181   PORT_DIPSETTING(    0x08, "2" )
182   PORT_DIPSETTING(    0x10, "3" )
183   PORT_DIPSETTING(    0x18, "4" )
184   PORT_DIPNAME( 0x20, 0x20, "Unlimited Specials" )
185   PORT_DIPSETTING(    0x20, DEF_STR( On ) )
186   PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
187   PORT_DIPNAME( 0x40, 0x40, "Bonus Ball Award" )
188   PORT_DIPSETTING(    0x40, "Extra Ball" )
189   PORT_DIPSETTING(    0x00, "200000 points" )
190   PORT_DIPNAME( 0x80, 0x80, "SW24" )
191   PORT_DIPSETTING(    0x80, DEF_STR( On ) )
192   PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
62193INPUT_PORTS_END
63194
64195WRITE8_MEMBER( zac_proto_state::out0_w )
65196{
197// solenoids
66198}
67199
68200WRITE8_MEMBER( zac_proto_state::out1_w )
69201{
202// lamps
70203}
71204
72205// need to implement blanking of leading zeroes
r17478r17479
89222   output_set_digit_value(10, 0x3f); // units shows zero all the time
90223}
91224
92DRIVER_INIT_MEMBER(zac_proto_state,zac_proto)
93{
94}
95
96225static MACHINE_CONFIG_START( zac_proto, zac_proto_state )
97226   /* basic machine hardware */
98227   MCFG_CPU_ADD("maincpu", SCMP, 1000000)
r17478r17479
135264   ROM_LOAD("zsc4.dat", 0x1400, 0x0400, CRC(69e0bb95) SHA1(d9a1d0159bf49445b0ece0f9d7806ed80657c2b2))
136265ROM_END
137266
138GAME(1978,  skijump,   0,  zac_proto,  zac_proto, zac_proto_state,  zac_proto,  ROT0,  "Zaccaria",    "Ski Jump",        GAME_IS_SKELETON_MECHANICAL)
139GAME(1979,  spacecty,  0,  zac_proto,  zac_proto, zac_proto_state,  zac_proto,  ROT0,  "Zaccaria",    "Space City",      GAME_IS_SKELETON_MECHANICAL)
140GAME(1978,  strike,    0,  zac_proto,  zac_proto, zac_proto_state,  zac_proto,  ROT0,  "Zaccaria",    "Strike",          GAME_IS_SKELETON_MECHANICAL)
267GAME(1978,  skijump,   0,  zac_proto,  zac_proto, driver_device,  0,  ROT0,  "Zaccaria",    "Ski Jump",        GAME_IS_SKELETON_MECHANICAL)
268GAME(1979,  spacecty,  0,  zac_proto,  zac_proto, driver_device,  0,  ROT0,  "Zaccaria",    "Space City",      GAME_IS_SKELETON_MECHANICAL)
269GAME(1978,  strike,    0,  zac_proto,  zac_proto, driver_device,  0,  ROT0,  "Zaccaria",    "Strike",          GAME_IS_SKELETON_MECHANICAL)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team