1 /***************************************************************************
2
3 Nintendo VS UniSystem and DualSystem - (c) 1984 Nintendo of America
4
5 Portions of this code are heavily based on
6 Brad Oliver's MESS implementation of the NES.
7
8 RP2C04-001:
9 - Baseball
10 - Freedom Force
11 - Gradius
12 - Hogan's Alley
13 - Mach Rider (Japan, Fighting Course)
14 - Pinball
15 - Platoon
16 - Super Xevious
17
18 RP2C04-002:
19 - Castlevania
20 - Ladies golf
21 - Mach Rider (Endurance Course)
22 - Raid on Bungeling Bay (Japan)
23 - Slalom
24 - Stroke N' Match Golf
25 - Wrecking Crew
26
27 RP2C04-003:
28 - Dr mario
29 - Excite Bike
30 - Goonies
31 - Soccer
32 - TKO Boxing
33
34 RP2c05-004:
35 - Clu Clu Land
36 - Excite Bike (Japan)
37 - Ice Climber
38 - Ice Climber Dual (Japan)
39 - Super Mario Bros.
40
41 Rcp2c03b:
42 - Battle City
43 - Duck Hunt
44 - Mahjang
45 - Pinball (Japan)
46 - Rbi Baseball
47 - Star Luster
48 - Stroke and Match Golf (Japan)
49 - Super Skykid
50 - Tennis
51 - Tetris
52
53 RC2C05-01:
54 - Ninja Jajamaru Kun (Japan)
55
56 RC2C05-02:
57 - Mighty Bomb Jack (Japan)
58
59 RC2C05-03:
60 - Gumshoe
61
62 RC2C05-04:
63 - Top Gun
64
65 Graphic hack games:
66 - Skate Kids (by Two-Bit Score, 1988; hack of Vs. Super Mario Bros.)
67
68 Needed roms:
69 - Babel no Tou (by Namco, 198?)
70 - Family Boxing (by Namco/Woodplace, 198?)
71 - Family Stadium '87 (by Namco, 1987)
72 - Family Stadium '88 (by Namco, 1988)
73 - Family Tennis (by Namco, 198?)
74 - Head to Head Baseball (ever finished/released?, by Nintendo, 1986)
75 - Japanese version of Vs. Tennis (1984)
76 - Japanese version of Vs. Soccer (1985)
77 - Japanese version of Vs. Super Mario Bros. (1986)
78 - Lionex (prototype by Sunsoft, 1987)
79 - Madura no Tsubasa (prototype by Sunsoft, 1987)
80 - Predators (prototype by Williams, 84)
81 - Pro Yakyuu Family Stadium (by Namco, 1986?)
82 - Quest of Ki (by Namco/Game Studio, 198?)
83 - Super Chinese (by Namco/Culture Brain, 1988)
84 - Toukaidou 53tsugi (prototype by Sunsoft, 1985)
85 - Trojan (by Capcom, 1987)
86 - Urban Champion (1984)
87 - Volleyball (1986)
88 - Walkure no Bouken (by Namco, 198?)
89 - Wild Gunman (1984, light gun game)
90
91 TO DO:
92 - Check others bits in coin counter
93 - Check other values in bnglngby irq
94 - Top Gun: cpu #0 (PC=00008016): unmapped memory byte read from 00007FFF ???
95
96 Changes:
97
98 16/10/2003 Pierpaolo Prazzoli
99
100 - Added
101 - Vs. Freedom Force
102 - Vs. Super Xevious
103
104 24/12/2002 Pierpaolo Prazzoli
105
106 - Added
107 - Vs. Mighty Bomb Jack (Japan)
108 - Vs. Ninja Jajamaru Kun (Japan)
109 - Vs. Raid on Bungeling Bay (Japan)
110 - Vs. Top Gun
111 - Vs. Mach Rider (Japan, Fighting Course Version)
112 - Vs. Ice Climber (Japan)
113 - Vs. Gumshoe (partially working)
114 - Vs. Freedom Force (not working)
115 - Vs. Stroke and Match Golf (Men set 2) (not working)
116 - Vs. BaseBall (Japan set 3) (not working)
117 - Added coin counter
118 - Added Extra Ram in vstetris
119 - Added Demo Sound in vsmahjng
120 - Fixed vsskykid inputs
121 - Fixed protection in Vs. Super Xevious
122 - Corrected or checked dip-switches in Castlevania, Duck Hunt, Excitebike,
123 Gradius, Hogan's Alley, Ice Climber, R.B.I. Baseball, Slalom, Soccer,
124 Super Mario Bros., Top Gun, BaseBall, Tennis, Stroke and Match Golf
125
126 ***************************************************************************/
127
128 #include "driver.h"
129 #include "vidhrdw/generic.h"
130 #include "vidhrdw/ppu2c03b.h"
131 #include "machine/rp5h01.h"
132
133 /* clock frequency */
134 #define N2A03_DEFAULTCLOCK ( 21477272.724 / 12 )
135
136 #define DUAL_RBI 1
137
138 /* from vidhrdw */
139 extern VIDEO_START( vsnes );
140 extern PALETTE_INIT( vsnes );
141 extern VIDEO_UPDATE( vsnes );
142 extern VIDEO_START( vsdual );
143 extern VIDEO_UPDATE( vsdual );
144 extern PALETTE_INIT( vsdual );
145
146 /* from machine */
147 extern MACHINE_INIT( vsnes );
148 extern MACHINE_INIT( vsdual );
149 extern DRIVER_INIT( vsnes );
150 extern DRIVER_INIT( suprmrio );
151 extern DRIVER_INIT( excitebk );
152 extern DRIVER_INIT( excitbkj );
153 extern DRIVER_INIT( vsnormal );
154 extern DRIVER_INIT( duckhunt );
155 extern DRIVER_INIT( hogalley );
156 extern DRIVER_INIT( goonies );
157 extern DRIVER_INIT( machridr );
158 extern DRIVER_INIT( vsslalom );
159 extern DRIVER_INIT( cstlevna );
160 extern DRIVER_INIT( drmario );
161 extern DRIVER_INIT( rbibb );
162 extern DRIVER_INIT( tkoboxng );
163 extern DRIVER_INIT( topgun );
164 extern DRIVER_INIT( vsgradus );
165 extern DRIVER_INIT( vspinbal );
166 extern DRIVER_INIT( MMC3 );
167 extern DRIVER_INIT( platoon );
168 extern DRIVER_INIT( vstennis );
169 extern DRIVER_INIT( wrecking );
170 extern DRIVER_INIT( balonfgt );
171 extern DRIVER_INIT( vsbball );
172 extern DRIVER_INIT( iceclmrj );
173 extern DRIVER_INIT( supxevs );
174 extern DRIVER_INIT( btlecity );
175 extern DRIVER_INIT( vstetris );
176 extern DRIVER_INIT( bnglngby );
177 extern DRIVER_INIT( jajamaru);
178 extern DRIVER_INIT( vsgshoe );
179 extern DRIVER_INIT( vsfdf );
180 extern DRIVER_INIT( mightybj);
181
182 extern READ_HANDLER( vsnes_in0_r );
183 extern READ_HANDLER( vsnes_in1_r );
184 extern READ_HANDLER( vsnes_in0_1_r );
185 extern READ_HANDLER( vsnes_in1_1_r );
186 extern WRITE_HANDLER( vsnes_in0_w );
187 extern WRITE_HANDLER( vsnes_in0_1_w );
188
189 /******************************************************************************/
190
191 /* local stuff */
192 static UINT8 *work_ram, *work_ram_1;
193 static int coin;
194
READ_HANDLER(mirror_ram_r)195 static READ_HANDLER( mirror_ram_r )
196 {
197 return work_ram[ offset & 0x7ff ];
198 }
199
READ_HANDLER(mirror_ram_1_r)200 static READ_HANDLER( mirror_ram_1_r )
201 {
202 return work_ram[ offset & 0x7ff ];
203 }
204
WRITE_HANDLER(mirror_ram_w)205 static WRITE_HANDLER( mirror_ram_w )
206 {
207 work_ram[ offset & 0x7ff ] = data;
208 }
209
WRITE_HANDLER(mirror_ram_1_w)210 static WRITE_HANDLER( mirror_ram_1_w )
211 {
212 work_ram[ offset & 0x7ff ] = data;
213 }
214
WRITE_HANDLER(sprite_dma_w)215 static WRITE_HANDLER( sprite_dma_w )
216 {
217 int source = ( data & 7 ) * 0x100;
218
219 ppu2c03b_spriteram_dma( 0, &work_ram[source] );
220 }
221
WRITE_HANDLER(sprite_dma_1_w)222 static WRITE_HANDLER( sprite_dma_1_w )
223 {
224 int source = ( data & 7 ) * 0x100;
225
226 ppu2c03b_spriteram_dma( 1, &work_ram_1[source] );
227 }
228
WRITE_HANDLER(vsnes_coin_counter_w)229 static WRITE_HANDLER( vsnes_coin_counter_w )
230 {
231 coin_counter_w( 0, data & 0x01 );
232 coin = data;
233 if( data & 0xfe ) //"bnglngby" and "cluclu"
234 {
235 //do something?
236 logerror("vsnes_coin_counter_w: pc = 0x%04x - data = 0x%02x\n", activecpu_get_pc(), data);
237 }
238 }
239
READ_HANDLER(vsnes_coin_counter_r)240 static READ_HANDLER( vsnes_coin_counter_r )
241 {
242 //only for platoon
243 return coin;
244 }
245
WRITE_HANDLER(vsnes_coin_counter_1_w)246 static WRITE_HANDLER( vsnes_coin_counter_1_w )
247 {
248 coin_counter_w( 1, data & 0x01 );
249 if( data & 0xfe ) //vsbball service mode
250 {
251 //do something?
252 logerror("vsnes_coin_counter_1_w: pc = 0x%04x - data = 0x%02x\n", activecpu_get_pc(), data);
253 }
254
255 }
256 /******************************************************************************/
257
MEMORY_READ_START(readmem)258 static MEMORY_READ_START (readmem)
259 { 0x0000, 0x07ff, MRA_RAM },
260 { 0x0800, 0x1fff, mirror_ram_r },
261 { 0x2000, 0x3fff, ppu2c03b_0_r },
262 { 0x4000, 0x4015, NESPSG_0_r },
263 { 0x4016, 0x4016, vsnes_in0_r },
264 { 0x4017, 0x4017, vsnes_in1_r },
265 { 0x4020, 0x4020, vsnes_coin_counter_r },
266 { 0x8000, 0xffff, MRA_ROM },
267 MEMORY_END
268
269 static MEMORY_WRITE_START (writemem)
270 { 0x0000, 0x07ff, MWA_RAM, &work_ram },
271 { 0x0800, 0x1fff, mirror_ram_w },
272 { 0x2000, 0x3fff, ppu2c03b_0_w },
273 { 0x4011, 0x4011, DAC_0_data_w },
274 { 0x4014, 0x4014, sprite_dma_w },
275 { 0x4000, 0x4015, NESPSG_0_w },
276 { 0x4016, 0x4016, vsnes_in0_w },
277 { 0x4017, 0x4017, MWA_NOP }, /* in 1 writes ignored */
278 { 0x4020, 0x4020, vsnes_coin_counter_w },
279 { 0x8000, 0xffff, MWA_ROM },
280 MEMORY_END
281
282 static MEMORY_READ_START (readmem_1)
283 { 0x0000, 0x07ff, MRA_RAM },
284 { 0x0800, 0x1fff, mirror_ram_1_r },
285 { 0x2000, 0x3fff, ppu2c03b_1_r },
286 { 0x4000, 0x4015, NESPSG_0_r },
287 { 0x4016, 0x4016, vsnes_in0_1_r },
288 { 0x4017, 0x4017, vsnes_in1_1_r },
289 { 0x8000, 0xffff, MRA_ROM },
290 MEMORY_END
291
292 static MEMORY_WRITE_START (writemem_1)
293 { 0x0000, 0x07ff, MWA_RAM, &work_ram_1 },
294 { 0x0800, 0x1fff, mirror_ram_1_w },
295 { 0x2000, 0x3fff, ppu2c03b_1_w },
296 { 0x4011, 0x4011, DAC_1_data_w },
297 { 0x4014, 0x4014, sprite_dma_1_w },
298 { 0x4000, 0x4015, NESPSG_1_w },
299 { 0x4016, 0x4016, vsnes_in0_1_w },
300 { 0x4017, 0x4017, MWA_NOP }, /* in 1 writes ignored */
301 { 0x4020, 0x4020, vsnes_coin_counter_1_w },
302 { 0x8000, 0xffff, MWA_ROM },
303 MEMORY_END
304
305 /******************************************************************************/
306
307 #define VS_CONTROLS( SELECT_IN0, START_IN0, SELECT_IN1, START_IN1 ) \
308 PORT_START /* IN0 */ \
309 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */ \
310 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */ \
311 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, SELECT_IN0 ) /* SELECT on a nes */ \
312 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, START_IN0 ) /* START on a nes */ \
313 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 ) \
314 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 ) \
315 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 ) \
316 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 ) \
317 \
318 PORT_START /* IN1 */ \
319 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */ \
320 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */ \
321 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, SELECT_IN1 ) /* SELECT on a nes */ \
322 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, START_IN1 ) /* START on a nes */ \
323 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 ) \
324 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 ) \
325 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 ) \
326 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 ) \
327 \
328 PORT_START /* IN2 */ \
329 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */ \
330 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
331 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */ \
332 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */ \
333 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */ \
334 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) \
335 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) \
336 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
337
338 #define VS_CONTROLS_REVERSE( SELECT_IN0, START_IN0, SELECT_IN1, START_IN1 ) \
339 PORT_START /* IN0 */ \
340 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */ \
341 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */ \
342 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, SELECT_IN0 ) /* SELECT on a nes */ \
343 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, START_IN0 ) /* START on a nes */ \
344 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 ) \
345 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 ) \
346 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 ) \
347 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 ) \
348 \
349 PORT_START /* IN1 */ \
350 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */ \
351 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */ \
352 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, SELECT_IN1 ) /* SELECT on a nes */ \
353 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, START_IN1 ) /* START on a nes */ \
354 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 ) \
355 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 ) \
356 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 ) \
357 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 ) \
358 \
359 PORT_START /* IN2 */ \
360 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */ \
361 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
362 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */ \
363 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */ \
364 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */ \
365 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) \
366 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) \
367 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
368
369 #define VS_ZAPPER \
370 PORT_START /* IN0 */ \
371 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) \
372 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) \
373 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) \
374 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) \
375 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) \
376 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED ) \
377 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) /* sprite hit */ \
378 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON1 ) /* gun trigger */ \
379 \
380 PORT_START /* IN1 */ \
381 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) \
382 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) \
383 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) \
384 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) \
385 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) \
386 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED ) \
387 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) \
388 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) \
389 \
390 PORT_START /* IN2 */ \
391 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */ \
392 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
393 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */ \
394 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */ \
395 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */ \
396 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) \
397 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) \
398 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
399
400 #define VS_DUAL_CONTROLS_L \
401 PORT_START /* IN0 */ \
402 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */ \
403 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */ \
404 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */ \
405 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_START3 ) /* START on a nes */ \
406 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 ) \
407 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 ) \
408 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 ) \
409 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 ) \
410 \
411 PORT_START /* IN1 */ \
412 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */ \
413 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */ \
414 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START2 ) /* SELECT on a nes */ \
415 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_START4 ) /* START on a nes */ \
416 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 ) \
417 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 ) \
418 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 ) \
419 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 ) \
420 \
421 PORT_START /* IN2 */ \
422 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */ \
423 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
424 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */ \
425 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */ \
426 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */ \
427 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) \
428 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) \
429 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) /* this bit masks irqs - dont change */
430
431 #define VS_DUAL_CONTROLS_R \
432 PORT_START /* IN3 */ \
433 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER3 ) /* BUTTON A on a nes */ \
434 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER3 ) /* BUTTON B on a nes */ \
435 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "2nd Side 1 Player Start", KEYCODE_MINUS, IP_JOY_NONE ) /* SELECT on a nes */ \
436 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "2nd Side 3 Player Start", KEYCODE_BACKSLASH, IP_JOY_NONE ) /* START on a nes */ \
437 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER3 ) \
438 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER3 ) \
439 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER3 ) \
440 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER3 ) \
441 \
442 PORT_START /* IN4 */ \
443 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER4 ) /* BUTTON A on a nes */ \
444 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER4 ) /* BUTTON B on a nes */ \
445 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "2nd Side 2 Player Start", KEYCODE_EQUALS, IP_JOY_NONE ) /* SELECT on a nes */ \
446 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "2nd Side 4 Player Start", KEYCODE_BACKSPACE, IP_JOY_NONE ) /* START on a nes */ \
447 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER4 ) \
448 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER4 ) \
449 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER4 ) \
450 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER4 ) \
451 \
452 PORT_START /* IN5 */ \
453 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */ \
454 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
455 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE2 ) /* service credit? */ \
456 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) \
457 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) \
458 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN3 ) \
459 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN4 ) \
460 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) /* this bit masks irqs - dont change */ \
461
462 #define VS_DUAL_CONTROLS_REVERSE_L \
463 PORT_START /* IN0 */ \
464 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */ \
465 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */ \
466 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */ \
467 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_START3 ) /* START on a nes */ \
468 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 ) \
469 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 ) \
470 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 ) \
471 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 ) \
472 \
473 PORT_START /* IN1 */ \
474 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */ \
475 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */ \
476 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START2 ) /* SELECT on a nes */ \
477 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_START4 ) /* START on a nes */ \
478 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 ) \
479 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 ) \
480 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 ) \
481 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 ) \
482 \
483 PORT_START /* IN2 */ \
484 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */ \
485 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
486 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */ \
487 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */ \
488 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */ \
489 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) \
490 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) \
491 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) /* this bit masks irqs - dont change */
492
493 #define VS_DUAL_CONTROLS_REVERSE_R \
494 PORT_START /* IN3 */ \
495 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER4 ) /* BUTTON A on a nes */ \
496 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER4 ) /* BUTTON B on a nes */ \
497 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "2nd Side 1 Player Start", KEYCODE_MINUS, IP_JOY_NONE ) /* SELECT on a nes */ \
498 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "2nd Side 3 Player Start", KEYCODE_BACKSLASH, IP_JOY_NONE ) /* START on a nes */ \
499 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER4 ) \
500 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER4 ) \
501 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER4 ) \
502 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER4 ) \
503 \
504 PORT_START /* IN4 */ \
505 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER3 ) /* BUTTON A on a nes */ \
506 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER3 ) /* BUTTON B on a nes */ \
507 PORT_BITX(0x04, IP_ACTIVE_HIGH, 0, "2nd Side 2 Player Start", KEYCODE_EQUALS, IP_JOY_NONE ) /* SELECT on a nes */ \
508 PORT_BITX(0x08, IP_ACTIVE_HIGH, 0, "2nd Side 4 Player Start", KEYCODE_BACKSPACE, IP_JOY_NONE ) /* START on a nes */ \
509 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER3 ) \
510 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER3 ) \
511 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER3 ) \
512 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER3 ) \
513 \
514 PORT_START /* IN5 */ \
515 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */ \
516 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
517 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE2 ) /* service credit? */ \
518 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) \
519 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) \
520 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN3 ) \
521 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN4 ) \
522 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) /* this bit masks irqs - dont change */ \
523
524 INPUT_PORTS_START( vsnes )
525 VS_CONTROLS( IPT_START1, IPT_BUTTON3 | IPF_PLAYER1, IPT_START2, IPT_BUTTON3 | IPF_PLAYER2 )
526
527 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
528 PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
529 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
530 PORT_DIPSETTING( 0x01, DEF_STR( On ) )
531 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
532 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
533 PORT_DIPSETTING( 0x02, DEF_STR( On ) )
534 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
535 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
536 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
537 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
538 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
539 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
540 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
541 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
542 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
543 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
544 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
545 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
546 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
547 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
548 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
549 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
550 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
551 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
552 INPUT_PORTS_END
553
554 INPUT_PORTS_START( topgun )
555 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
556
557 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
558 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
559 PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
560 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
561 PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
562 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
563 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
564 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
565 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
566 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
567 PORT_DIPNAME( 0x08, 0x00, "Lives per Coin" )
568 PORT_DIPSETTING( 0x00, "3 - 12 Max" )
569 PORT_DIPSETTING( 0x08, "2 - 9 Max" )
570 PORT_DIPNAME( 0x30, 0x00, "Bonus" )
571 PORT_DIPSETTING( 0x00, "30k and Every 50k" )
572 PORT_DIPSETTING( 0x20, "50k and Every 100k" )
573 PORT_DIPSETTING( 0x10, "100k and Every 150k" )
574 PORT_DIPSETTING( 0x30, "200k and Every 200k" )
575 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Difficulty ) )
576 PORT_DIPSETTING( 0x00, "Normal" )
577 PORT_DIPSETTING( 0x40, "Hard" )
578 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
579 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
580 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
581 INPUT_PORTS_END
582
583 INPUT_PORTS_START( platoon )
584 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
585
586 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
587 PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
588 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
589 PORT_DIPSETTING( 0x01, DEF_STR( On ) )
590 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
591 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
592 PORT_DIPSETTING( 0x02, DEF_STR( On ) )
593 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
594 PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
595 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
596 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
597 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
598 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
599 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
600 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
601 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
602 PORT_DIPNAME( 0xE0, 0x00, DEF_STR( Coinage ) )
603 PORT_DIPSETTING( 0xc0, DEF_STR( 5C_1C ) )
604 PORT_DIPSETTING( 0xa0, DEF_STR( 4C_1C ) )
605 PORT_DIPSETTING( 0x80, DEF_STR( 3C_1C ) )
606 PORT_DIPSETTING( 0x60, DEF_STR( 2C_1C ) )
607 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
608 PORT_DIPSETTING( 0x20, DEF_STR( 1C_2C ) )
609 PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) )
610 PORT_DIPSETTING( 0xe0, DEF_STR( Free_Play ) )
611 INPUT_PORTS_END
612
613 /*
614 Stroke Play Off On
615 Hole in 1 +5 +4
616 Double Eagle +4 +3
617 Eagle +3 +2
618 Birdie +2 +1
619 Par +1 0
620 Bogey 0 -1
621 Other 0 -2
622
623 Match Play OFF ON
624 Win Hole +1 +2
625 Tie 0 0
626 Lose Hole -1 -2
627 */
628
629 INPUT_PORTS_START( golf )
630 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
631
632 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
633 PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coinage ) )
634 PORT_DIPSETTING( 0x07, DEF_STR( 4C_1C ) )
635 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
636 PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
637 PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
638 PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
639 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
640 PORT_DIPSETTING( 0x04, DEF_STR( 1C_4C ) )
641 PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
642 PORT_DIPNAME( 0x08, 0x00, "Hole Size" )
643 PORT_DIPSETTING( 0x00, "Large" )
644 PORT_DIPSETTING( 0x08, "Small" )
645 PORT_DIPNAME( 0x10, 0x00, "Points per Stroke" )
646 PORT_DIPSETTING( 0x00, "Easier" )
647 PORT_DIPSETTING( 0x10, "Harder" )
648 PORT_DIPNAME( 0x60, 0x00, "Starting Points" )
649 PORT_DIPSETTING( 0x00, "10" )
650 PORT_DIPSETTING( 0x40, "13" )
651 PORT_DIPSETTING( 0x20, "16" )
652 PORT_DIPSETTING( 0x60, "20" )
653 PORT_DIPNAME( 0x80, 0x00, "Difficulty Vs. Computer" )
654 PORT_DIPSETTING( 0x00, "Easy" )
655 PORT_DIPSETTING( 0x80, "Hard" )
656 INPUT_PORTS_END
657
658 /* Same as 'golf', but 4 start buttons */
659 INPUT_PORTS_START( golf4s )
660 VS_CONTROLS_REVERSE( IPT_START1, IPT_START3, IPT_START2, IPT_START4 )
661
662 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
663 PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coinage ) )
664 PORT_DIPSETTING( 0x07, DEF_STR( 4C_1C ) )
665 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
666 PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
667 PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
668 PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
669 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
670 PORT_DIPSETTING( 0x04, DEF_STR( 1C_4C ) )
671 PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
672 PORT_DIPNAME( 0x08, 0x00, "Hole Size" )
673 PORT_DIPSETTING( 0x00, "Large" )
674 PORT_DIPSETTING( 0x08, "Small" )
675 PORT_DIPNAME( 0x10, 0x00, "Points per Stroke" )
676 PORT_DIPSETTING( 0x00, "Easier" )
677 PORT_DIPSETTING( 0x10, "Harder" )
678 PORT_DIPNAME( 0x60, 0x00, "Starting Points" )
679 PORT_DIPSETTING( 0x00, "10" )
680 PORT_DIPSETTING( 0x40, "13" )
681 PORT_DIPSETTING( 0x20, "16" )
682 PORT_DIPSETTING( 0x60, "20" )
683 PORT_DIPNAME( 0x80, 0x00, "Difficulty Vs. Computer" )
684 PORT_DIPSETTING( 0x00, "Easy" )
685 PORT_DIPSETTING( 0x80, "Hard" )
686 INPUT_PORTS_END
687
688 INPUT_PORTS_START( vstennis )
689 VS_DUAL_CONTROLS_L /* left side controls */
690
691 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
692 PORT_DIPNAME( 0x03, 0x00, "Difficulty Vs. Computer" )
693 PORT_DIPSETTING( 0x00, "Easy" )
694 PORT_DIPSETTING( 0x02, "Normal" )
695 PORT_DIPSETTING( 0x01, "Hard" )
696 PORT_DIPSETTING( 0x03, "Very Hard" )
697 PORT_DIPNAME( 0x0c, 0x00, "Difficulty Vs. Player" )
698 PORT_DIPSETTING( 0x00, "Easy" )
699 PORT_DIPSETTING( 0x08, "Normal" )
700 PORT_DIPSETTING( 0x04, "Hard" )
701 PORT_DIPSETTING( 0x0c, "Very Hard" )
702 PORT_DIPNAME( 0x10, 0x00, "Raquet Size" )
703 PORT_DIPSETTING( 0x00, "Large" )
704 PORT_DIPSETTING( 0x10, "Small" )
705 PORT_DIPNAME( 0x20, 0x00, "Extra Score" )
706 PORT_DIPSETTING( 0x00, "1 Set" )
707 PORT_DIPSETTING( 0x20, "1 Game" )
708 PORT_DIPNAME( 0x40, 0x00, "Court Color" )
709 PORT_DIPSETTING( 0x00, "Green" )
710 PORT_DIPSETTING( 0x40, "Blue" )
711 PORT_DIPNAME( 0x80, 0x00, "Copyright" )
712 PORT_DIPSETTING( 0x00, "Japan" )
713 PORT_DIPSETTING( 0x80, "USA" )
714
715 VS_DUAL_CONTROLS_R /* Right Side Controls */
716
717 PORT_START /* DSW1 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
718 PORT_SERVICE( 0x01, IP_ACTIVE_HIGH )
719 PORT_DIPNAME( 0x06, 0x00, DEF_STR( Coinage ) )
720 PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
721 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
722 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
723 PORT_DIPSETTING( 0x06, DEF_STR( Free_Play ) )
724 PORT_DIPNAME( 0x08, 0x08, "Doubles 4 Player" )
725 PORT_DIPSETTING( 0x00, "2 Credits" )
726 PORT_DIPSETTING( 0x08, "4 Credits" )
727 PORT_DIPNAME( 0x10, 0x10, "Doubles Vs CPU" )
728 PORT_DIPSETTING( 0x00, "1 Credit" )
729 PORT_DIPSETTING( 0x10, "2 Credits" )
730 PORT_DIPNAME( 0x60, 0x00, "Rackets Per Game" )
731 PORT_DIPSETTING( 0x60, "2" )
732 PORT_DIPSETTING( 0x00, "3" )
733 PORT_DIPSETTING( 0x40, "4" )
734 PORT_DIPSETTING( 0x20, "5" )
735 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
736 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
737 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
738 INPUT_PORTS_END
739
740 INPUT_PORTS_START( wrecking )
741 VS_DUAL_CONTROLS_L /* left side controls */
742
743 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
744 PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )
745 PORT_DIPSETTING( 0x00, "3" )
746 PORT_DIPSETTING( 0x02, "4" )
747 PORT_DIPSETTING( 0x01, "5" )
748 PORT_DIPSETTING( 0x03, "6" )
749 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
750 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
751 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
752 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
753 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
754 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
755 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
756 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
757 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
758 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
759 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
760 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
761 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
762 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
763 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
764 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
765 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
766 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
767
768 VS_DUAL_CONTROLS_R /* right side controls */
769
770 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
771 PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coinage ) )
772 PORT_DIPSETTING( 0x07, DEF_STR( 4C_1C ) )
773 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
774 PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
775 PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
776 PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
777 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
778 PORT_DIPSETTING( 0x04, DEF_STR( 1C_4C ) )
779 PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
780 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
781 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
782 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
783 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
784 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
785 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
786 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
787 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
788 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
789 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
790 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
791 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
792 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
793 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
794 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
795 INPUT_PORTS_END
796
797 INPUT_PORTS_START( balonfgt )
798 VS_DUAL_CONTROLS_L /* left side controls */
799
800 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
801 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
802 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
803 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
804 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
805 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
806 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
807 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
808 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
809 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
810 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
811 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
812 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
813 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
814 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
815 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
816 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
817 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
818 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
819 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
820 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
821 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
822 PORT_SERVICE( 0x80, IP_ACTIVE_HIGH )
823
824 VS_DUAL_CONTROLS_R /* right side controls */
825
826 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
827 PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )
828 PORT_DIPSETTING( 0x00, "3" )
829 PORT_DIPSETTING( 0x02, "4" )
830 PORT_DIPSETTING( 0x01, "5" )
831 PORT_DIPSETTING( 0x03, "6" )
832 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
833 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
834 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
835 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
836 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
837 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
838 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
839 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
840 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
841 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
842 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
843 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
844 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
845 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
846 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
847 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
848 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
849 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
850 INPUT_PORTS_END
851
852 INPUT_PORTS_START( vsmahjng )
853 VS_DUAL_CONTROLS_L /* left side controls */
854
855 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
856 PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
857 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
858 PORT_DIPSETTING( 0x01, DEF_STR( On ) )
859 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
860 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
861 PORT_DIPSETTING( 0x02, DEF_STR( On ) )
862 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
863 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
864 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
865 PORT_DIPNAME( 0x08, 0x00, "Infinite Time" )
866 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
867 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
868 PORT_DIPNAME( 0x30, 0x00, "Time" )
869 PORT_DIPSETTING( 0x30, "30" )
870 PORT_DIPSETTING( 0x10, "45" )
871 PORT_DIPSETTING( 0x20, "60" )
872 PORT_DIPSETTING( 0x00, "90" )
873 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
874 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
875 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
876 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
877 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
878 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
879
880 VS_DUAL_CONTROLS_R /* right side controls */
881
882 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
883 PORT_SERVICE( 0x01, IP_ACTIVE_HIGH )
884 PORT_DIPNAME( 0x06, 0x00, DEF_STR( Coinage ) )
885 PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
886 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
887 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
888 PORT_DIPSETTING( 0x06, DEF_STR( Free_Play ) )
889 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
890 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
891 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
892 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
893 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
894 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
895 PORT_DIPNAME( 0x60, 0x20, "Starting Points" )
896 PORT_DIPSETTING( 0x60, "15000" )
897 PORT_DIPSETTING( 0x20, "20000" )
898 PORT_DIPSETTING( 0x40, "25000" )
899 PORT_DIPSETTING( 0x00, "30000" )
900 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
901 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
902 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
903 INPUT_PORTS_END
904
905 INPUT_PORTS_START( vsbball )
906 VS_DUAL_CONTROLS_L /* left side controls */
907
908 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
909 PORT_SERVICE( 0x01, IP_ACTIVE_HIGH )
910 PORT_DIPNAME( 0x06, 0x00, DEF_STR( Coinage ) )
911 PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
912 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
913 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
914 PORT_DIPSETTING( 0x06, DEF_STR( Free_Play ) )
915 PORT_DIPNAME( 0x38, 0x00, "Starting Points" )
916 PORT_DIPSETTING( 0x00, "80 Pts" )
917 PORT_DIPSETTING( 0x20, "100 Pts" )
918 PORT_DIPSETTING( 0x10, "150 Pts" )
919 PORT_DIPSETTING( 0x30, "200 Pts" )
920 PORT_DIPSETTING( 0x08, "250 Pts" )
921 PORT_DIPSETTING( 0x28, "300 Pts" )
922 PORT_DIPSETTING( 0x18, "350 Pts" )
923 PORT_DIPSETTING( 0x38, "400 Pts" )
924 PORT_DIPNAME( 0x40, 0x00, "Bonus Play" ) //?
925 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
926 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
927 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
928 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
929 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
930
931 VS_DUAL_CONTROLS_R /* right side controls */
932
933 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
934 PORT_DIPNAME( 0x03, 0x02, "Player Defense Strenght" )
935 PORT_DIPSETTING( 0x00, "Weak" )
936 PORT_DIPSETTING( 0x02, "Normal" )
937 PORT_DIPSETTING( 0x01, "Strong" )
938 PORT_DIPSETTING( 0x03, "Very Strong" )
939 PORT_DIPNAME( 0x0c, 0x08, "Player Offense Strenght" )
940 PORT_DIPSETTING( 0x00, "Weak" )
941 PORT_DIPSETTING( 0x08, "Normal" )
942 PORT_DIPSETTING( 0x04, "Strong" )
943 PORT_DIPSETTING( 0x0c, "Very Strong" )
944 PORT_DIPNAME( 0x30, 0x20, "Computer Defense Strenght" )
945 PORT_DIPSETTING( 0x00, "Weak" )
946 PORT_DIPSETTING( 0x20, "Normal" )
947 PORT_DIPSETTING( 0x10, "Strong" )
948 PORT_DIPSETTING( 0x30, "Very Strong" )
949 PORT_DIPNAME( 0xc0, 0x80, "Computer Offense Strenght" )
950 PORT_DIPSETTING( 0x00, "Weak" )
951 PORT_DIPSETTING( 0x80, "Normal" )
952 PORT_DIPSETTING( 0x40, "Strong" )
953 PORT_DIPSETTING( 0xc0, "Very Strong" )
954 INPUT_PORTS_END
955
956 INPUT_PORTS_START( vsbballj )
957 VS_DUAL_CONTROLS_L /* left side controls */
958
959 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
960 PORT_DIPNAME( 0x03, 0x02, "Player Defense Strenght" )
961 PORT_DIPSETTING( 0x00, "Weak" )
962 PORT_DIPSETTING( 0x02, "Normal" )
963 PORT_DIPSETTING( 0x01, "Strong" )
964 PORT_DIPSETTING( 0x03, "Very Strong" )
965 PORT_DIPNAME( 0x0c, 0x08, "Player Offense Strenght" )
966 PORT_DIPSETTING( 0x00, "Weak" )
967 PORT_DIPSETTING( 0x08, "Normal" )
968 PORT_DIPSETTING( 0x04, "Strong" )
969 PORT_DIPSETTING( 0x0c, "Very Strong" )
970 PORT_DIPNAME( 0x30, 0x20, "Computer Defense Strenght" )
971 PORT_DIPSETTING( 0x00, "Weak" )
972 PORT_DIPSETTING( 0x20, "Normal" )
973 PORT_DIPSETTING( 0x10, "Strong" )
974 PORT_DIPSETTING( 0x30, "Very Strong" )
975 PORT_DIPNAME( 0xc0, 0x80, "Computer Offense Strenght" )
976 PORT_DIPSETTING( 0x00, "Weak" )
977 PORT_DIPSETTING( 0x80, "Normal" )
978 PORT_DIPSETTING( 0x40, "Strong" )
979 PORT_DIPSETTING( 0xc0, "Very Strong" )
980
981 VS_DUAL_CONTROLS_R /* right side controls */
982
983 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
984 PORT_SERVICE( 0x01, IP_ACTIVE_HIGH )
985 PORT_DIPNAME( 0x06, 0x00, DEF_STR( Coinage ) )
986 PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
987 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
988 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
989 PORT_DIPSETTING( 0x06, DEF_STR( Free_Play ) )
990 PORT_DIPNAME( 0x38, 0x00, "Starting Points" )
991 PORT_DIPSETTING( 0x00, "80 Pts" )
992 PORT_DIPSETTING( 0x20, "100 Pts" )
993 PORT_DIPSETTING( 0x10, "150 Pts" )
994 PORT_DIPSETTING( 0x30, "200 Pts" )
995 PORT_DIPSETTING( 0x08, "250 Pts" )
996 PORT_DIPSETTING( 0x28, "300 Pts" )
997 PORT_DIPSETTING( 0x18, "350 Pts" )
998 PORT_DIPSETTING( 0x38, "400 Pts" )
999 PORT_DIPNAME( 0x40, 0x00, "Bonus Play" ) //?
1000 PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
1001 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
1002 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
1003 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1004 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1005 INPUT_PORTS_END
1006
1007 INPUT_PORTS_START( iceclmrj )
1008 VS_DUAL_CONTROLS_REVERSE_L /* left side controls */
1009
1010 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1011 PORT_DIPNAME( 0x07, 0x00, "Coinage (Left Side)" )
1012 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1013 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1014 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1015 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1016 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1017 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1018 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1019 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1020 PORT_DIPNAME( 0x18, 0x00, "Lives (Left Side)" )
1021 PORT_DIPSETTING( 0x00, "3" )
1022 PORT_DIPSETTING( 0x10, "4" )
1023 PORT_DIPSETTING( 0x08, "5" )
1024 PORT_DIPSETTING( 0x18, "7" )
1025 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1026 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1027 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1028 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1029 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1030 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1031 PORT_BITX( 0x80, 0x00, IPT_DIPSWITCH_NAME | IPF_TOGGLE, "Service Mode (Left Side)", KEYCODE_F2, IP_JOY_NONE )
1032 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1033 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1034
1035 VS_DUAL_CONTROLS_REVERSE_R /* right side controls */
1036
1037 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1038 PORT_DIPNAME( 0x07, 0x00, "Coinage (Right Side)" )
1039 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1040 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1041 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1042 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1043 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1044 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1045 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1046 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1047 PORT_DIPNAME( 0x18, 0x00, "Lives (Right Side)" )
1048 PORT_DIPSETTING( 0x00, "3" )
1049 PORT_DIPSETTING( 0x10, "4" )
1050 PORT_DIPSETTING( 0x08, "5" )
1051 PORT_DIPSETTING( 0x18, "7" )
1052 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1053 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1054 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1055 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1056 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1057 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1058 PORT_BITX( 0x80, 0x00, IPT_DIPSWITCH_NAME | IPF_TOGGLE, "Service Mode (Right Side)", KEYCODE_F1, IP_JOY_NONE )
1059 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1060 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1061 INPUT_PORTS_END
1062
1063 INPUT_PORTS_START( drmario )
1064 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1065
1066 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1067 PORT_DIPNAME( 0x03, 0x00, "Drop Rate Increases After" )
1068 PORT_DIPSETTING( 0x00, "7 Pills" )
1069 PORT_DIPSETTING( 0x01, "8 Pills" )
1070 PORT_DIPSETTING( 0x02, "9 Pills" )
1071 PORT_DIPSETTING( 0x03, "10 Pills" )
1072 PORT_DIPNAME( 0x0c, 0x00, "Virus Level" )
1073 PORT_DIPSETTING( 0x00, "1" )
1074 PORT_DIPSETTING( 0x04, "3" )
1075 PORT_DIPSETTING( 0x08, "5" )
1076 PORT_DIPSETTING( 0x0c, "7" )
1077 PORT_DIPNAME( 0x30, 0x00, "Drop Speed Up" )
1078 PORT_DIPSETTING( 0x00, "Slow" )
1079 PORT_DIPSETTING( 0x10, "Medium" )
1080 PORT_DIPSETTING( 0x20, "Fast" )
1081 PORT_DIPSETTING( 0x30, "Fastest" )
1082 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Free_Play ) )
1083 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1084 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1085 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
1086 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1087 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1088 INPUT_PORTS_END
1089
1090 INPUT_PORTS_START( rbibb )
1091 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1092
1093 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1094 PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) )
1095 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
1096 PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
1097 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1098 PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) )
1099 PORT_DIPNAME( 0x0c, 0x0c, "Max. 1p/in, 2p/in, Min" )
1100 PORT_DIPSETTING( 0x04, "2, 1, 3" )
1101 PORT_DIPSETTING( 0x0c, "2, 2, 4" )
1102 PORT_DIPSETTING( 0x00, "3, 2, 6" )
1103 PORT_DIPSETTING( 0x08, "4, 3, 7" )
1104 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds ) )
1105 PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
1106 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
1107 PORT_DIPNAME( 0xe0, 0x80, "Color Palette" )
1108 PORT_DIPSETTING( 0x80, "Normal" )
1109 PORT_DIPSETTING( 0x00, "Wrong 1" )
1110 PORT_DIPSETTING( 0x40, "Wrong 2" )
1111 PORT_DIPSETTING( 0x20, "Wrong 3" )
1112 PORT_DIPSETTING( 0xc0, "Wrong 4" )
1113 /* 0x60,0xa0,0xe0:again "Wrong 3" */
1114 INPUT_PORTS_END
1115
1116 INPUT_PORTS_START( btlecity )
1117 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1118
1119 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1120 PORT_DIPNAME( 0x01, 0x01, "Credits for 2 Players" )
1121 PORT_DIPSETTING( 0x00, "1" )
1122 PORT_DIPSETTING( 0x01, "2" )
1123 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Lives ) )
1124 PORT_DIPSETTING( 0x00, "3" )
1125 PORT_DIPSETTING( 0x02, "5" )
1126 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
1127 PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
1128 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
1129 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
1130 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1131 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
1132 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
1133 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1134 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
1135 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1136 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1137 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1138 PORT_DIPNAME( 0xc0, 0x80, "Color Palette" )
1139 PORT_DIPSETTING( 0x80, "Normal" )
1140 PORT_DIPSETTING( 0x00, "Wrong 1" )
1141 PORT_DIPSETTING( 0x40, "Wrong 2" )
1142 PORT_DIPSETTING( 0xc0, "Wrong 3" )
1143 INPUT_PORTS_END
1144
1145 INPUT_PORTS_START( cluclu )
1146 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1147
1148 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1149 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1150 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1151 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1152 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1153 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1154 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1155 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1156 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1157 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1158 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
1159 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1160 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
1161 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
1162 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1163 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
1164 PORT_DIPNAME( 0x60, 0x00, DEF_STR( Lives ) )
1165 PORT_DIPSETTING( 0x60, "2" )
1166 PORT_DIPSETTING( 0x00, "3" )
1167 PORT_DIPSETTING( 0x40, "4" )
1168 PORT_DIPSETTING( 0x20, "5" )
1169 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
1170 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1171 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1172 INPUT_PORTS_END
1173
1174 INPUT_PORTS_START( cstlevna )
1175 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1176
1177 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1178 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1179 PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
1180 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1181 PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
1182 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1183 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1184 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1185 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1186 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1187 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Lives ) )
1188 PORT_DIPSETTING( 0x08, "2" )
1189 PORT_DIPSETTING( 0x00, "3" )
1190 PORT_DIPNAME( 0x30, 0x00, "Bonus" )
1191 PORT_DIPSETTING( 0x00, "100k" )
1192 PORT_DIPSETTING( 0x20, "200k" )
1193 PORT_DIPSETTING( 0x10, "300k" )
1194 PORT_DIPSETTING( 0x30, "400k" )
1195 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Difficulty ) ) // Damage taken
1196 PORT_DIPSETTING( 0x00, "Normal" ) // Normal
1197 PORT_DIPSETTING( 0x40, "Hard" ) // Double
1198 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
1199 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1200 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1201 INPUT_PORTS_END
1202
1203 INPUT_PORTS_START( iceclimb )
1204 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1205
1206 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1207 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1208 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1209 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1210 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1211 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1212 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1213 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1214 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1215 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1216 PORT_DIPNAME( 0x18, 0x00, DEF_STR( Lives ) )
1217 PORT_DIPSETTING( 0x00, "3" )
1218 PORT_DIPSETTING( 0x10, "4" )
1219 PORT_DIPSETTING( 0x08, "5" )
1220 PORT_DIPSETTING( 0x18, "7" )
1221 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Difficulty ) )
1222 PORT_DIPSETTING( 0x00, "Normal" )
1223 PORT_DIPSETTING( 0x20, "Hard" )
1224 PORT_DIPNAME( 0x40, 0x00, "Time before bear appears" ) //?
1225 PORT_DIPSETTING( 0x00, "Long" )
1226 PORT_DIPSETTING( 0x40, "Short" )
1227 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
1228 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1229 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1230 INPUT_PORTS_END
1231
1232 /* Same as 'iceclimb', but different buttons mapping and input protection */
1233 INPUT_PORTS_START( iceclmbj )
1234 PORT_START /* IN0 */
1235 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */
1236 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */
1237 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */
1238 PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_SPECIAL ) // protection /* START on a nes */
1239 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1240 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1241 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1242 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1243
1244 PORT_START /* IN1 */
1245 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */
1246 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */
1247 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START2 ) /* SELECT on a nes */
1248 PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_SPECIAL ) // protection /* START on a nes */
1249 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1250 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1251 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1252 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1253
1254 PORT_START /* IN2 */
1255 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */
1256 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1257 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */
1258 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */
1259 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */
1260 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 )
1261 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 )
1262 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1263
1264 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1265 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1266 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1267 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1268 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1269 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1270 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1271 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1272 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1273 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1274 PORT_DIPNAME( 0x18, 0x00, DEF_STR( Lives ) )
1275 PORT_DIPSETTING( 0x00, "3" )
1276 PORT_DIPSETTING( 0x10, "4" )
1277 PORT_DIPSETTING( 0x08, "5" )
1278 PORT_DIPSETTING( 0x18, "7" )
1279 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Difficulty ) )
1280 PORT_DIPSETTING( 0x00, "Normal" )
1281 PORT_DIPSETTING( 0x20, "Hard" )
1282 PORT_DIPNAME( 0x40, 0x00, "Time before bear appears ?" )
1283 PORT_DIPSETTING( 0x00, "Long" )
1284 PORT_DIPSETTING( 0x40, "Short" )
1285 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
1286 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1287 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1288 INPUT_PORTS_END
1289
1290 INPUT_PORTS_START( excitebk )
1291 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1292
1293 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1294 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1295 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1296 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1297 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1298 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1299 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1300 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1301 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1302 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1303 PORT_DIPNAME( 0x18, 0x00, "Bonus" )
1304 PORT_DIPSETTING( 0x00, "100k and Every 50k" )
1305 PORT_DIPSETTING( 0x10, "Every 100k" )
1306 PORT_DIPSETTING( 0x08, "100k Only" )
1307 PORT_DIPSETTING( 0x18, "None" )
1308 PORT_DIPNAME( 0x20, 0x00, "1st Half Qualifying Time" )
1309 PORT_DIPSETTING( 0x00, "Normal" )
1310 PORT_DIPSETTING( 0x20, "Hard" )
1311 PORT_DIPNAME( 0x40, 0x00, "2nd Half Qualifying Time" )
1312 PORT_DIPSETTING( 0x00, "Normal" )
1313 PORT_DIPSETTING( 0x40, "Hard" )
1314 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
1315 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1316 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1317 INPUT_PORTS_END
1318
1319 INPUT_PORTS_START( jajamaru )
1320 PORT_START /* IN0 */
1321 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */
1322 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */
1323 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */
1324 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_START2 ) /* START on a nes */
1325 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1326 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1327 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1328 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1329
1330 PORT_START /* IN1 */
1331 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */
1332 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */
1333 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* SELECT on a nes */
1334 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* START on a nes */
1335 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1336 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1337 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1338 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1339
1340 PORT_START /* IN2 */
1341 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */
1342 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1343 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */
1344 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */
1345 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */
1346 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 )
1347 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
1348 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1349
1350 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1351 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1352 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1353 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1354 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1355 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1356 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1357 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1358 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1359 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1360 PORT_DIPNAME( 0x18, 0x00, DEF_STR( Lives ) )
1361 PORT_DIPSETTING( 0x00, "3" )
1362 PORT_DIPSETTING( 0x10, "4" )
1363 PORT_DIPSETTING( 0x08, "5" )
1364 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1365 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1366 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1367 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1368 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1369 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1370 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
1371 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1372 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1373 INPUT_PORTS_END
1374
1375 INPUT_PORTS_START( machridr )
1376 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1377
1378 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1379 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1380 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1381 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1382 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1383 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1384 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1385 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1386 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1387 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1388 PORT_DIPNAME( 0x18, 0x00, "Time" )
1389 PORT_DIPSETTING( 0x00, "280" )
1390 PORT_DIPSETTING( 0x10, "250" )
1391 PORT_DIPSETTING( 0x08, "220" )
1392 PORT_DIPSETTING( 0x18, "200" )
1393 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1394 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1395 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1396 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1397 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1398 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1399 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
1400 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1401 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1402 INPUT_PORTS_END
1403
1404 INPUT_PORTS_START( machridj )
1405 PORT_START /* IN0 */
1406 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */
1407 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */
1408 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */
1409 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* START on a nes */
1410 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1411 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1412 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1413 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1414
1415 PORT_START /* IN1 */
1416 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */
1417 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */
1418 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) /* SELECT on a nes */
1419 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* START on a nes */
1420 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1421 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1422 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1423 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1424
1425 PORT_START /* IN2 */
1426 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */
1427 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1428 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */
1429 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */
1430 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */
1431 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 )
1432 PORT_BIT ( 0x60, IP_ACTIVE_HIGH, IPT_COIN2 )
1433 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1434
1435 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1436 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1437 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1438 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1439 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1440 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1441 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1442 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1443 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1444 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1445 PORT_DIPNAME( 0x18, 0x00, "Km 1st Race" ) //?
1446 PORT_DIPSETTING( 0x00, "12" )
1447 PORT_DIPSETTING( 0x10, "15" )
1448 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1449 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1450 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1451 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1452 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1453 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1454 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
1455 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1456 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1457 INPUT_PORTS_END
1458
1459 INPUT_PORTS_START( suprmrio )
1460 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1461
1462 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1463 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1464 PORT_DIPSETTING( 0x02, DEF_STR( 3C_1C ) )
1465 PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) )
1466 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1467 PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
1468 PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) )
1469 PORT_DIPSETTING( 0x05, DEF_STR( 1C_4C ) )
1470 PORT_DIPSETTING( 0x03, DEF_STR( 1C_5C ) )
1471 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1472 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Lives ) )
1473 PORT_DIPSETTING( 0x08, "2" )
1474 PORT_DIPSETTING( 0x00, "3" )
1475 PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
1476 PORT_DIPSETTING( 0x00, "100" )
1477 PORT_DIPSETTING( 0x20, "150" )
1478 PORT_DIPSETTING( 0x10, "200" )
1479 PORT_DIPSETTING( 0x30, "250" )
1480 PORT_DIPNAME( 0x40, 0x00, "Timer" )
1481 PORT_DIPSETTING( 0x00, "Normal" )
1482 PORT_DIPSETTING( 0x40, "Fast" )
1483 PORT_DIPNAME( 0x80, 0x80, "Continue Lives" )
1484 PORT_DIPSETTING( 0x80, "3" )
1485 PORT_DIPSETTING( 0x00, "4" )
1486 INPUT_PORTS_END
1487
1488 INPUT_PORTS_START( duckhunt )
1489 VS_ZAPPER
1490
1491 PORT_START /* IN3 */
1492 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1493 PORT_DIPSETTING( 0X03, DEF_STR( 5C_1C ) )
1494 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1495 PORT_DIPSETTING( 0X01, DEF_STR( 3C_1C ) )
1496 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1497 PORT_DIPSETTING( 0X00, DEF_STR( 1C_1C ) )
1498 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1499 PORT_DIPSETTING( 0X02, DEF_STR( 1C_3C ) )
1500 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1501 PORT_DIPNAME( 0x18, 0x08, DEF_STR( Difficulty ) )
1502 PORT_DIPSETTING( 0x00, "Easy" )
1503 PORT_DIPSETTING( 0x08, "Normal" )
1504 PORT_DIPSETTING( 0x10, "Hard" )
1505 PORT_DIPSETTING( 0x18, "Hardest" )
1506 PORT_DIPNAME( 0x20, 0x20, "Misses per game" )
1507 PORT_DIPSETTING( 0x00, "3" )
1508 PORT_DIPSETTING( 0x20, "5" )
1509 PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Bonus_Life ) )
1510 PORT_DIPSETTING( 0x00, "30000" )
1511 PORT_DIPSETTING( 0x40, "50000" )
1512 PORT_DIPSETTING( 0x80, "80000" )
1513 PORT_DIPSETTING( 0xc0, "100000" )
1514
1515 PORT_START /* IN4 - FAKE - Gun X pos */
1516 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_X, 70, 30, 0, 255 )
1517
1518 PORT_START /* IN5 - FAKE - Gun Y pos */
1519 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_Y, 50, 30, 0, 255 )
1520 INPUT_PORTS_END
1521
1522 INPUT_PORTS_START( hogalley )
1523 VS_ZAPPER
1524
1525 PORT_START /* IN3 */
1526 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1527 PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
1528 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1529 PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
1530 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1531 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1532 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1533 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1534 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1535 PORT_DIPNAME( 0x18, 0x08, DEF_STR( Difficulty ) )
1536 PORT_DIPSETTING( 0x00, "Easy" )
1537 PORT_DIPSETTING( 0x08, "Normal" )
1538 PORT_DIPSETTING( 0x10, "Hard" )
1539 PORT_DIPSETTING( 0x18, "Hardest" )
1540 PORT_DIPNAME( 0x20, 0x20, "Misses per game" )
1541 PORT_DIPSETTING( 0x00, "3" )
1542 PORT_DIPSETTING( 0x20, "5" )
1543 PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Bonus_Life ) )
1544 PORT_DIPSETTING( 0x00, "30000" )
1545 PORT_DIPSETTING( 0x40, "50000" )
1546 PORT_DIPSETTING( 0x80, "80000" )
1547 PORT_DIPSETTING( 0xc0, "100000" )
1548
1549 PORT_START /* IN4 - FAKE - Gun X pos */
1550 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_X, 70, 30, 0, 255 )
1551
1552 PORT_START /* IN5 - FAKE - Gun Y pos */
1553 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_Y, 50, 30, 0, 255 )
1554 INPUT_PORTS_END
1555
1556 INPUT_PORTS_START( vsgshoe )
1557 VS_ZAPPER
1558
1559 PORT_START /* IN3 */
1560 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1561 PORT_DIPSETTING( 0X03, DEF_STR( 5C_1C ) )
1562 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1563 PORT_DIPSETTING( 0X01, DEF_STR( 3C_1C ) )
1564 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1565 PORT_DIPSETTING( 0X00, DEF_STR( 1C_1C ) )
1566 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1567 PORT_DIPSETTING( 0X02, DEF_STR( 1C_3C ) )
1568 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1569 PORT_DIPNAME( 0x18, 0x08, DEF_STR( Difficulty ) )
1570 PORT_DIPSETTING( 0x00, "Easy" )
1571 PORT_DIPSETTING( 0x08, "Normal" )
1572 PORT_DIPSETTING( 0x10, "Hard" )
1573 PORT_DIPSETTING( 0x18, "Hardest" )
1574 PORT_DIPNAME( 0x20, 0x20, DEF_STR( Lives ) )
1575 PORT_DIPSETTING( 0x00, "5" )
1576 PORT_DIPSETTING( 0x20, "3" )
1577 PORT_DIPNAME( 0x40, 0x00, "Bullets per Balloon" )
1578 PORT_DIPSETTING( 0x00, "3" )
1579 PORT_DIPSETTING( 0x40, "2" )
1580 PORT_DIPNAME( 0x80, 0x00, "1 Bonus Man Awarded at 50k" )
1581 PORT_DIPSETTING( 0x00, "80000" )
1582 PORT_DIPSETTING( 0x80, "100000" )
1583
1584 PORT_START /* IN4 - FAKE - Gun X pos */
1585 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_X, 70, 30, 0, 255 )
1586
1587 PORT_START /* IN5 - FAKE - Gun Y pos */
1588 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_Y, 50, 30, 0, 255 )
1589 INPUT_PORTS_END
1590
1591 INPUT_PORTS_START( vsfdf )
1592 VS_ZAPPER
1593
1594 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1595 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1596 PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
1597 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1598 PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
1599 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1600 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1601 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1602 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1603 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1604 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
1605 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1606 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
1607 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
1608 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1609 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
1610 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1611 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1612 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1613 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1614 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1615 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1616 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
1617 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1618 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1619
1620 PORT_START /* IN4 - FAKE - Gun X pos */
1621 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_X, 70, 30, 0, 255 )
1622
1623 PORT_START /* IN5 - FAKE - Gun Y pos */
1624 PORT_ANALOG( 0xff, 0x80, IPT_LIGHTGUN_Y, 50, 30, 0, 255 )
1625 INPUT_PORTS_END
1626
1627 INPUT_PORTS_START( vstetris )
1628 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1629
1630 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1631 PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
1632 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1633 PORT_DIPSETTING( 0x01, DEF_STR( On ) )
1634 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
1635 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1636 PORT_DIPSETTING( 0x02, DEF_STR( On ) )
1637 PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Difficulty ) )
1638 PORT_DIPSETTING( 0x00, "Easy" )
1639 PORT_DIPSETTING( 0x04, "Normal" )
1640 PORT_DIPSETTING( 0x08, "Hard" )
1641 PORT_DIPSETTING( 0x0c, "Very Hard" )
1642 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
1643 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1644 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
1645 PORT_DIPNAME( 0xe0, 0x80, "Color Palette" )
1646 PORT_DIPSETTING( 0x80, "Normal" )
1647 PORT_DIPSETTING( 0x00, "Wrong 1" )
1648 PORT_DIPSETTING( 0x40, "Wrong 2" )
1649 PORT_DIPSETTING( 0x20, "Wrong 3" )
1650 PORT_DIPSETTING( 0xc0, "Wrong 4" )
1651 /* 0x60,0xa0,0xe0:again "Wrong 3" */
1652 INPUT_PORTS_END
1653
1654 INPUT_PORTS_START( vsskykid )
1655 VS_CONTROLS_REVERSE( IPT_START1, IPT_START2, IPT_UNKNOWN, IPT_UNKNOWN )
1656
1657 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1658 PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
1659 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1660 PORT_DIPSETTING( 0x01, DEF_STR( On ) )
1661 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
1662 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1663 PORT_DIPSETTING( 0x02, DEF_STR( On ) )
1664 PORT_DIPNAME( 0x04, 0x04, DEF_STR( Lives ) )
1665 PORT_DIPSETTING( 0x00, "2" )
1666 PORT_DIPSETTING( 0x04, "3" )
1667 PORT_DIPNAME( 0x18, 0x00, DEF_STR( Coinage ) )
1668 PORT_DIPSETTING( 0x18, DEF_STR( 3C_1C ) )
1669 PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
1670 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1671 PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
1672 PORT_DIPNAME( 0xe0, 0x20, "Color Palette" )
1673 PORT_DIPSETTING( 0x20, "Normal" )
1674 PORT_DIPSETTING( 0x00, "Wrong 1" )
1675 PORT_DIPSETTING( 0x40, "Wrong 2" )
1676 PORT_DIPSETTING( 0x80, "Wrong 3" )
1677 PORT_DIPSETTING( 0xc0, "Wrong 4" )
1678 /* 0x60,0xa0,0xe0:again "Normal" */
1679 INPUT_PORTS_END
1680
1681 INPUT_PORTS_START( vspinbal )
1682 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1683
1684 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1685 PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coinage ) )
1686 PORT_DIPSETTING( 0x07, DEF_STR( 4C_1C ) )
1687 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
1688 PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
1689 PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
1690 PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
1691 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1692 PORT_DIPSETTING( 0x04, DEF_STR( 1C_4C ) )
1693 PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
1694 PORT_DIPNAME( 0x08, 0x00, "Side Drain Walls" )
1695 PORT_DIPSETTING( 0x00, "High" )
1696 PORT_DIPSETTING( 0x08, "Low" )
1697 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Bonus_Life ) )
1698 PORT_DIPSETTING( 0x00, "50000" )
1699 PORT_DIPSETTING( 0x10, "70000" )
1700 PORT_DIPNAME( 0x60, 0x00, "Balls" )
1701 PORT_DIPSETTING( 0x60, "2" )
1702 PORT_DIPSETTING( 0x00, "3" )
1703 PORT_DIPSETTING( 0x40, "4" )
1704 PORT_DIPSETTING( 0x20, "5" )
1705 PORT_DIPNAME( 0x80, 0x00, "Ball speed" )
1706 PORT_DIPSETTING( 0x00, "Normal" )
1707 PORT_DIPSETTING( 0x80, "Fast" )
1708 INPUT_PORTS_END
1709
1710 /* Same as 'vspinbal', but different buttons mapping */
1711 INPUT_PORTS_START( vspinblj )
1712 PORT_START /* IN0 */
1713 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* Right flipper */
1714 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* Right flipper */
1715 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */
1716 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* START on a nes */
1717 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1718 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1719 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1720 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1721
1722 PORT_START /* IN1 */
1723 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* Left flipper */
1724 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* Left flipper */
1725 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START2 ) /* SELECT on a nes */
1726 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* START on a nes */
1727 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1728 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1729 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1730 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1731
1732 PORT_START /* IN2 */
1733 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */
1734 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1735 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */
1736 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */
1737 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */
1738 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 )
1739 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 )
1740 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1741
1742 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1743 PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coinage ) )
1744 PORT_DIPSETTING( 0x07, DEF_STR( 4C_1C ) )
1745 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
1746 PORT_DIPSETTING( 0x05, DEF_STR( 2C_1C ) )
1747 PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
1748 PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
1749 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1750 PORT_DIPSETTING( 0x04, DEF_STR( 1C_4C ) )
1751 PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
1752 PORT_DIPNAME( 0x08, 0x00, "Side Drain Walls" )
1753 PORT_DIPSETTING( 0x00, "High" )
1754 PORT_DIPSETTING( 0x08, "Low" )
1755 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Bonus_Life ) )
1756 PORT_DIPSETTING( 0x00, "50000" )
1757 PORT_DIPSETTING( 0x10, "70000" )
1758 PORT_DIPNAME( 0x60, 0x00, "Balls" )
1759 PORT_DIPSETTING( 0x60, "2" )
1760 PORT_DIPSETTING( 0x00, "3" )
1761 PORT_DIPSETTING( 0x40, "4" )
1762 PORT_DIPSETTING( 0x20, "5" )
1763 PORT_DIPNAME( 0x80, 0x00, "Ball speed" )
1764 PORT_DIPSETTING( 0x00, "Normal" )
1765 PORT_DIPSETTING( 0x80, "Fast" )
1766 INPUT_PORTS_END
1767
1768 INPUT_PORTS_START( goonies )
1769 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1770
1771 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1772 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1773 PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
1774 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1775 PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
1776 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1777 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1778 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1779 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1780 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1781 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Lives ) )
1782 PORT_DIPSETTING( 0x00, "3" )
1783 PORT_DIPSETTING( 0x08, "2" )
1784 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
1785 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1786 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
1787 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1788 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1789 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1790 PORT_DIPNAME(0x40, 0x00, "Timer" )
1791 PORT_DIPSETTING( 0x00, "Normal" )
1792 PORT_DIPSETTING( 0x40, "Fast" )
1793 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
1794 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1795 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1796 INPUT_PORTS_END
1797
1798 INPUT_PORTS_START( vssoccer )
1799 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1800
1801 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1802 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1803 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1804 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1805 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1806 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1807 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1808 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1809 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1810 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1811 PORT_DIPNAME( 0x18, 0x08, "Points Timer" )
1812 PORT_DIPSETTING( 0x00, "600 Pts" )
1813 PORT_DIPSETTING( 0x10, "800 Pts" )
1814 PORT_DIPSETTING( 0x08, "1000 Pts" )
1815 PORT_DIPSETTING( 0x18, "1200 Pts" )
1816 PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) )
1817 PORT_DIPSETTING( 0x00, "Easy" )
1818 PORT_DIPSETTING( 0x40, "Normal" )
1819 PORT_DIPSETTING( 0x20, "Hard" )
1820 PORT_DIPSETTING( 0x60, "Very Hard" )
1821 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
1822 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1823 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1824 INPUT_PORTS_END
1825
1826 INPUT_PORTS_START( vsgradus )
1827 VS_CONTROLS_REVERSE( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1828
1829 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1830 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1831 PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
1832 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1833 PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
1834 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1835 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1836 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1837 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1838 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1839 PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )
1840 PORT_DIPSETTING( 0x08, "3" )
1841 PORT_DIPSETTING( 0x00, "4" )
1842 PORT_DIPNAME( 0x30, 0x00, "Bonus" )
1843 PORT_DIPSETTING( 0x00, "100k" )
1844 PORT_DIPSETTING( 0x20, "200k" )
1845 PORT_DIPSETTING( 0x10, "300k" )
1846 PORT_DIPSETTING( 0x30, "400k" )
1847 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Difficulty ) )
1848 PORT_DIPSETTING( 0x00, "Normal" )
1849 PORT_DIPSETTING( 0x40, "Hard" )
1850 PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) )
1851 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1852 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1853 INPUT_PORTS_END
1854
1855 INPUT_PORTS_START( vsslalom )
1856 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1857
1858 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1859 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1860 PORT_DIPSETTING( 0x03, DEF_STR( 5C_1C ) )
1861 PORT_DIPSETTING( 0x05, DEF_STR( 4C_1C ) )
1862 PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
1863 PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) )
1864 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1865 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1866 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1867 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1868 PORT_DIPNAME( 0x08, 0x00, "Freestyle Points" )
1869 PORT_DIPSETTING( 0x00, "Left / Right" )
1870 PORT_DIPSETTING( 0x08, "Hold Time" )
1871 PORT_DIPNAME( 0x30, 0x10, DEF_STR( Difficulty ) )
1872 PORT_DIPSETTING( 0x00, "Easy" )
1873 PORT_DIPSETTING( 0x10, "Normal" )
1874 PORT_DIPSETTING( 0x20, "Hard" )
1875 PORT_DIPSETTING( 0x30, "Hardest" )
1876 PORT_DIPNAME( 0x40, 0x00, "Allow Continue" )
1877 PORT_DIPSETTING( 0x40, DEF_STR( No ) )
1878 PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
1879 PORT_DIPNAME( 0x80, 0x00, "Inverted input" )
1880 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1881 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1882 INPUT_PORTS_END
1883
1884 INPUT_PORTS_START( starlstr )
1885 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1886
1887 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1888 PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) )
1889 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
1890 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1891 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1892 PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
1893 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
1894 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1895 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
1896 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
1897 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1898 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
1899 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
1900 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1901 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
1902 PORT_DIPNAME( 0x60, 0x40, "Palette Color" )
1903 PORT_DIPSETTING( 0x40, "Black" )
1904 PORT_DIPSETTING( 0x20, "Green" )
1905 PORT_DIPSETTING( 0x60, "Grey" )
1906 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
1907 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1908 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1909 INPUT_PORTS_END
1910
1911 INPUT_PORTS_START( tkoboxng )
1912 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1913
1914 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1915 PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) )
1916 PORT_DIPSETTING( 0x03, DEF_STR( 3C_1C ) )
1917 PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
1918 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1919 PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) )
1920 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
1921 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1922 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
1923 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
1924 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1925 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
1926 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
1927 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1928 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
1929 PORT_DIPNAME( 0x20, 0x00, "Palette Color" )
1930 PORT_DIPSETTING( 0x00, "Black" )
1931 PORT_DIPSETTING( 0x20, "White" )
1932 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1933 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1934 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1935 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
1936 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1937 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1938 INPUT_PORTS_END
1939
1940 INPUT_PORTS_START( bnglngby )
1941 PORT_START /* IN0 */
1942 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */
1943 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */
1944 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */
1945 PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_SPECIAL ) // protection /* START on a nes */
1946 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
1947 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
1948 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
1949 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
1950
1951 PORT_START /* IN1 */
1952 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */
1953 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */
1954 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START2 ) /* SELECT on a nes */
1955 PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_SPECIAL ) // protection /* START on a nes */
1956 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
1957 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
1958 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
1959 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
1960
1961 PORT_START /* IN2 */
1962 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */
1963 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
1964 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */
1965 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */
1966 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */
1967 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 )
1968 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 )
1969 PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )
1970
1971 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1972 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
1973 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
1974 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
1975 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
1976 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
1977 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
1978 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
1979 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
1980 PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) )
1981 PORT_DIPNAME( 0x18, 0x00, DEF_STR( Lives ) )
1982 PORT_DIPSETTING( 0x00, "2" )
1983 PORT_DIPSETTING( 0x08, "3" )
1984 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
1985 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1986 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
1987 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
1988 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1989 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
1990 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
1991 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
1992 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
1993 INPUT_PORTS_END
1994
1995 INPUT_PORTS_START( mightybj )
1996 VS_CONTROLS( IPT_START1, IPT_UNKNOWN, IPT_START2, IPT_UNKNOWN )
1997
1998 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
1999 PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage ) )
2000 PORT_DIPSETTING( 0x07, DEF_STR( 5C_1C ) )
2001 PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
2002 PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
2003 PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
2004 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
2005 PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
2006 PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) )
2007 PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) )
2008 PORT_DIPNAME( 0x18, 0x00, DEF_STR( Lives ) )
2009 PORT_DIPSETTING( 0x10, "2" )
2010 PORT_DIPSETTING( 0x00, "3" )
2011 PORT_DIPSETTING( 0x08, "4" )
2012 PORT_DIPSETTING( 0x18, "5" )
2013 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
2014 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2015 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
2016 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
2017 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2018 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
2019 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
2020 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2021 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
2022 INPUT_PORTS_END
2023
2024 INPUT_PORTS_START( supxevs )
2025 PORT_START /* IN0 */
2026 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 ) /* BUTTON A on a nes */
2027 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 ) /* BUTTON B on a nes */
2028 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) /* SELECT on a nes */
2029 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* START on a nes */
2030 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER1 )
2031 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER1 )
2032 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER1 )
2033 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER1 )
2034
2035 PORT_START /* IN1 */
2036 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 ) /* BUTTON A on a nes */
2037 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 ) /* BUTTON B on a nes */
2038 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* SELECT on a nes */
2039 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* START on a nes */
2040 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP | IPF_PLAYER2 )
2041 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN | IPF_PLAYER2 )
2042 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT | IPF_PLAYER2 )
2043 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_PLAYER2 )
2044
2045 PORT_START /* IN2 */
2046 PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) /* serial pin from controller */
2047 PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
2048 PORT_BIT ( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) /* service credit? */
2049 PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 0 of dsw goes here */
2050 PORT_BIT ( 0x10, IP_ACTIVE_HIGH, IPT_UNUSED ) /* bit 1 of dsw goes here */
2051 PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 )
2052 PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
2053 PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
2054
2055 PORT_START /* DSW0 - bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 */
2056 PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
2057 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2058 PORT_DIPSETTING( 0x01, DEF_STR( On ) )
2059 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
2060 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2061 PORT_DIPSETTING( 0x02, DEF_STR( On ) )
2062 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
2063 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2064 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
2065 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
2066 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
2067 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
2068 PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coinage ) )
2069 PORT_DIPSETTING( 0x30, DEF_STR( 3C_1C ) )
2070 PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) )
2071 PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
2072 PORT_DIPSETTING( 0x10, DEF_STR( 1C_2C ) )
2073 PORT_DIPNAME( 0xc0, 0x00, "Color Palette" )
2074 PORT_DIPSETTING( 0x00, "Normal" )
2075 PORT_DIPSETTING( 0x40, "Wrong 1" )
2076 PORT_DIPSETTING( 0x80, "Wrong 2" )
2077 PORT_DIPSETTING( 0xc0, "Wrong 3" )
2078 INPUT_PORTS_END
2079
2080 static struct GfxDecodeInfo nes_gfxdecodeinfo[] =
2081 {
2082 /* none, the ppu generates one */
2083 { -1 } /* end of array */
2084 };
2085
2086 static struct NESinterface nes_interface =
2087 {
2088 1,
2089 { REGION_CPU1 },
2090 { 50 },
2091 };
2092
2093 static struct DACinterface nes_dac_interface =
2094 {
2095 1,
2096 { 50 },
2097 };
2098
2099 static struct NESinterface nes_dual_interface =
2100 {
2101 2,
2102 { REGION_CPU1, REGION_CPU2 },
2103 { 25, 25 },
2104 };
2105
2106 static struct DACinterface nes_dual_dac_interface =
2107 {
2108 2,
2109 { 25, 25 },
2110 };
2111
2112 static MACHINE_DRIVER_START( vsnes )
2113
2114 /* basic machine hardware */
2115 MDRV_CPU_ADD(N2A03,N2A03_DEFAULTCLOCK)
2116 MDRV_CPU_MEMORY(readmem,writemem)
2117 /* some carts also trigger IRQs */
2118 MDRV_FRAMES_PER_SECOND(60)
2119 MDRV_VBLANK_DURATION(( ( ( 1.0 / 60.0 ) * 1000000.0 ) / 262 ) * ( 262 - 239 ))
2120
2121 MDRV_MACHINE_INIT(vsnes)
2122
2123 /* video hardware */
2124 MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
2125 MDRV_SCREEN_SIZE(32*8, 30*8)
2126 MDRV_VISIBLE_AREA(0*8, 32*8-1, 0*8, 30*8-1)
2127 MDRV_GFXDECODE(nes_gfxdecodeinfo)
2128 MDRV_PALETTE_LENGTH(4*16)
2129 MDRV_COLORTABLE_LENGTH(4*8)
2130
2131 MDRV_PALETTE_INIT(vsnes)
2132 MDRV_VIDEO_START(vsnes)
2133 MDRV_VIDEO_UPDATE(vsnes)
2134
2135 /* sound hardware */
2136 MDRV_SOUND_ADD(NES, nes_interface)
2137 MDRV_SOUND_ADD(DAC, nes_dac_interface)
2138 MACHINE_DRIVER_END
2139
2140
2141 static MACHINE_DRIVER_START( vsdual )
2142
2143 /* basic machine hardware */
2144 MDRV_CPU_ADD(N2A03,N2A03_DEFAULTCLOCK)
2145 MDRV_CPU_MEMORY(readmem,writemem)
2146 /* some carts also trigger IRQs */
2147 MDRV_CPU_ADD(N2A03,N2A03_DEFAULTCLOCK)
2148 MDRV_CPU_MEMORY(readmem_1,writemem_1)
2149 /* some carts also trigger IRQs */
2150 MDRV_FRAMES_PER_SECOND(60)
2151 MDRV_VBLANK_DURATION(( ( ( 1.0 / 60.0 ) * 1000000.0 ) / 262 ) * ( 262 - 239 ))
2152
2153 MDRV_MACHINE_INIT(vsdual)
2154
2155 /* video hardware */
2156 MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_DUAL_MONITOR)
2157 MDRV_ASPECT_RATIO(8,3)
2158 MDRV_SCREEN_SIZE(32*8*2, 30*8)
2159 MDRV_VISIBLE_AREA(0*8, 32*8*2-1, 0*8, 30*8-1)
2160 MDRV_GFXDECODE(nes_gfxdecodeinfo)
2161 MDRV_PALETTE_LENGTH(2*4*16)
2162 MDRV_COLORTABLE_LENGTH(2*4*16)
2163
2164 MDRV_PALETTE_INIT(vsdual)
2165 MDRV_VIDEO_START(vsdual)
2166 MDRV_VIDEO_UPDATE(vsdual)
2167
2168 /* sound hardware */
2169 MDRV_SOUND_ADD(NES, nes_dual_interface)
2170 MDRV_SOUND_ADD(DAC, nes_dual_dac_interface)
2171 MACHINE_DRIVER_END
2172
2173
2174 /******************************************************************************/
2175
2176
2177 ROM_START( suprmrio)
2178 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2179 ROM_LOAD( "1d", 0x8000, 0x2000, CRC(be4d5436) SHA1(08162a7c987f1939d09bebdb676f596c86abf465) )
2180 ROM_LOAD( "1c", 0xa000, 0x2000, CRC(0011fc5a) SHA1(5c2c49938a12affc03e64e5bdab307998be20020) )
2181 ROM_LOAD( "1b", 0xc000, 0x2000, CRC(b1b87893) SHA1(8563ceaca664cf4495ef1020c07179ca7e4af9f3) )
2182 ROM_LOAD( "1a", 0xe000, 0x2000, CRC(1abf053c) SHA1(f17db88ce0c9bf1ed88dc16b9650f11d10835cec) )
2183
2184 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2185 ROM_LOAD( "2b", 0x0000, 0x2000, CRC(42418d40) SHA1(22ab61589742cfa4cc6856f7205d7b4b8310bc4d) )
2186 ROM_LOAD( "2a", 0x2000, 0x2000, CRC(15506b86) SHA1(69ecf7a3cc8bf719c1581ec7c0d68798817d416f) )
2187 ROM_END
2188
2189 ROM_START( iceclimb )
2190 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2191 ROM_LOAD( "ic-1d", 0x8000, 0x2000, CRC(65e21765) SHA1(900f1efe5e8005ee8cdccbf5039914dfe466aa3d) )
2192 ROM_LOAD( "ic-1c", 0xa000, 0x2000, CRC(a7909c51) SHA1(04708a9e429cbddab6988ff7b3ec5aa0109f6228) )
2193 ROM_LOAD( "ic-1b", 0xc000, 0x2000, CRC(7fb3cc21) SHA1(bed673211f2251d4112ea41c4a1f917fee32d93c) )
2194 ROM_LOAD( "ic-1a", 0xe000, 0x2000, CRC(bf196bf7) SHA1(7d7b34894caab41ac51ca9c89d09e72053798784) )
2195
2196 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2197 ROM_LOAD( "ic-2b", 0x0000, 0x2000, CRC(331460b4) SHA1(4cf94d711cdb5715d14f1ab3cadec245e0adfb1e) )
2198 ROM_LOAD( "ic-2a", 0x2000, 0x2000, CRC(4ec44fb3) SHA1(676e0ab574dec08df562c6f278e8a9cc7c8afa41) )
2199 ROM_END
2200
2201 ROM_START( iceclmbj )
2202 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2203 ROM_LOAD( "ic4_46db.bin", 0x8000, 0x2000, CRC(0ea5f9cb) SHA1(3ba6228ac8011371fc36ce9dde4fc158a81a99a2) )
2204 ROM_LOAD( "ic4_46cb.bin", 0xa000, 0x2000, CRC(51fe438e) SHA1(f40812d4275dabaac6f9539e1300c08d07992654) )
2205 ROM_LOAD( "ic446bb1.bin", 0xc000, 0x2000, CRC(a8afdc62) SHA1(f798da6c107926790026d4a4d384961dbff2380e) )
2206 ROM_LOAD( "ic4-46ab.bin", 0xe000, 0x2000, CRC(96505d4d) SHA1(0fb913853decebec1d5d15ee5adc8027cd66f016) )
2207
2208 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2209 ROM_LOAD( "ic-2b", 0x0000, 0x2000, CRC(331460b4) SHA1(4cf94d711cdb5715d14f1ab3cadec245e0adfb1e) )
2210 ROM_LOAD( "ic-2a", 0x2000, 0x2000, CRC(4ec44fb3) SHA1(676e0ab574dec08df562c6f278e8a9cc7c8afa41) )
2211 ROM_END
2212
2213 /* Gun games */
2214 ROM_START( duckhunt )
2215 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2216 ROM_LOAD( "1d", 0x8000, 0x2000, CRC(3f51f0ed) SHA1(984d8a5cecddde776ffd4f718ee0ca7a9959228b) )
2217 ROM_LOAD( "1c", 0xa000, 0x2000, CRC(8bc7376c) SHA1(d90d663c5e5b6d5247089c8ba618912305049b19) )
2218 ROM_LOAD( "1b", 0xc000, 0x2000, CRC(a042b6e1) SHA1(df571c31a6a52df56869eda0621f7615a625e66d) )
2219 ROM_LOAD( "1a", 0xe000, 0x2000, CRC(1906e3ab) SHA1(bff68829a96e2d251dd12129f84bdf1dbdf61d06) )
2220
2221 ROM_REGION( 0x4000, REGION_GFX1, 0 ) /* PPU memory */
2222 ROM_LOAD( "2b", 0x0000, 0x2000, CRC(0c52ec28) SHA1(c8fb6a5d4c13a7075d313326e2da9ce88780a88d) )
2223 ROM_LOAD( "2a", 0x2000, 0x2000, CRC(3d238df3) SHA1(e868ef3d5357ef5294e4faeecc9dbf801c5253e8) )
2224 ROM_END
2225
2226 ROM_START( hogalley)
2227 ROM_REGION( 0x10000, REGION_CPU1,0 ) /* 6502 memory */
2228 ROM_LOAD( "1d", 0x8000, 0x2000, CRC(2089e166) SHA1(7db09b5b6bcd87589bed89a5fc1a4b772155a0f3) )
2229 ROM_LOAD( "1c", 0xa000, 0x2000, CRC(a85934ae) SHA1(f26af4f60a4072c45e900dff7f74d9907bc2e1e0) )
2230 ROM_LOAD( "1b", 0xc000, 0x2000, CRC(718e25b3) SHA1(2710827931d3cd55984c3107c3b8e0f691965eaa) )
2231 ROM_LOAD( "1a", 0xe000, 0x2000, CRC(f9526852) SHA1(244c6a12801d4aa774a416f7c3dd8465d01dbca2) )
2232
2233 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2234 ROM_LOAD( "2b", 0x0000, 0x2000, CRC(7623e954) SHA1(65cfce87bb4e72f0c84ce5eff48985a38c3dfc4a) )
2235 ROM_LOAD( "2a", 0x2000, 0x2000, CRC(78c842b6) SHA1(39f2a7fc1f1cbe2378a369e45b5cbb05057db3f0) )
2236 ROM_END
2237
2238 ROM_START( vsgshoe )
2239 ROM_REGION( 0x20000,REGION_CPU1, 0 ) /* 6502 memory */
2240 ROM_LOAD( "mds-gm5.1d", 0x10000, 0x4000, CRC(063b342f) SHA1(66f69de27db5b08969f9250d0a6760e7311bd9bf) ) // its probably not bad .. just banked somehow
2241 ROM_LOAD( "mds-gm5.1c", 0x14000, 0x2000, CRC(e1b7915e) SHA1(ed0fdf74b05a3ccd1645c4f580436fd439f81dea) )
2242 ROM_LOAD( "mds-gm5.1b", 0x16000, 0x2000, CRC(5b73aa3c) SHA1(4069a6139091fbff48758953bd894808a8356d46) )
2243 ROM_LOAD( "mds-gm5.1a", 0x18000, 0x2000, CRC(70e606bc) SHA1(8207ded20cb9109d605ce73deb722de3514ed9bf) )
2244
2245 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2246 ROM_LOAD( "mds-gm5.2b", 0x0000, 0x2000, CRC(192c3360) SHA1(5ddbe007d8bc693a0b7c92f33e6ed6b27dc1c08e) )
2247 ROM_LOAD( "mds-gm5.2a", 0x2000, 0x2000, CRC(823dd178) SHA1(77578a48ded0c244d1ae30aafaa9259b7dd0dfc4) )
2248 ROM_END
2249
2250 ROM_START( vsfdf )
2251 ROM_REGION( 0x30000,REGION_CPU1, 0 ) /* 6502 memory */
2252 ROM_LOAD( "prg2", 0x10000, 0x10000, CRC(3bce8f0f) SHA1(5a9b91bae4b28c1df54fb290efdec4805f4f217e) )
2253 ROM_LOAD( "prg1", 0x20000, 0x10000, CRC(c74499ce) SHA1(14f50d4d11c363e761a6472a6e57a5e5a6dab9ce) )
2254
2255 ROM_REGION( 0x10000,REGION_GFX1, 0 ) /* PPU memory */
2256 ROM_LOAD( "cha2.1", 0x00000, 0x10000, CRC(a2f88df0) SHA1(10ef432d3132b01a1fcb38d8f521edd2a029ac5e) )
2257 ROM_END
2258
2259 ROM_START( goonies )
2260 ROM_REGION( 0x20000,REGION_CPU1, 0 ) /* 6502 memory */
2261 ROM_LOAD( "prg.u7", 0x10000, 0x10000, CRC(1e438d52) SHA1(ac187904c125e56a71acff979e53f3398a05c075) )
2262
2263 ROM_REGION( 0x10000,REGION_GFX1, 0 ) /* PPU memory */
2264 ROM_LOAD( "chr.u4", 0x0000, 0x10000, CRC(4c4b61b0) SHA1(7221c2499531e591a5a99e2cb339ae3a76b662c2) )
2265 ROM_END
2266
2267 ROM_START( vsgradus )
2268 ROM_REGION( 0x20000,REGION_CPU1, 0 ) /* 6502 memory */
2269 ROM_LOAD( "prg.u7", 0x10000, 0x10000, CRC(d99a2087) SHA1(b26efe78798453a903921723f3c9ac69f579b7d2) )
2270
2271 ROM_REGION( 0x10000,REGION_GFX1, 0 ) /* PPU memory */
2272 ROM_LOAD( "chr.u4", 0x0000, 0x10000, CRC(23cf2fc3) SHA1(0a3f48aec529b92abc261952e632af7ff766b1ef) )
2273 ROM_END
2274
2275 ROM_START( btlecity )
2276 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2277 ROM_LOAD( "bc.1d", 0x8000, 0x2000, CRC(6aa87037) SHA1(f3313700955498800a3d59c523ba2a4e0cf443bc) )
2278 ROM_LOAD( "bc.1c", 0xa000, 0x2000, CRC(bdb317db) SHA1(a8b3e8deb1e625d764aaffe86a513bc7ede51a46) )
2279 ROM_LOAD( "bc.1b", 0xc000, 0x2000, CRC(1a0088b8) SHA1(ba90d8178a23caedbf0e7188256b7cbfebf35eeb) )
2280 ROM_LOAD( "bc.1a", 0xe000, 0x2000, CRC(86307c89) SHA1(e4e73e4dcaa5c2374d7e3844d6d3fdb192ac9674) )
2281
2282 ROM_REGION( 0x4000, REGION_GFX1, 0 ) /* PPU memory */
2283 ROM_LOAD( "bc.2b", 0x0000, 0x2000, CRC(634f68bd) SHA1(db1a18083667fdaf6cdd9ed7666bec6bf6e39f29) )
2284 ROM_LOAD( "bc.2a", 0x2000, 0x2000, CRC(a9b49a05) SHA1(c14706e6a5524f81e79c101e32deef9f3d60de3f) )
2285 ROM_END
2286
2287 ROM_START( cluclu )
2288 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2289 ROM_LOAD( "cl.6d", 0x8000, 0x2000, CRC(1e9f97c9) SHA1(47d847632145d8160d006f014f9e0a7483783d0e) )
2290 ROM_LOAD( "cl.6c", 0xa000, 0x2000, CRC(e8b843a7) SHA1(03827b31d47d2a8a132bf9944fee724c6c1c6d2e) )
2291 ROM_LOAD( "cl.6b", 0xc000, 0x2000, CRC(418ee9ea) SHA1(a68e8a97899e850884cb9484fe539b86c419f10f) )
2292 ROM_LOAD( "cl.6a", 0xe000, 0x2000, CRC(5e8a8457) SHA1(8e53de132db2e1299bd8f2329758f3ccb096584a) )
2293
2294 ROM_REGION( 0x4000, REGION_GFX1, 0 ) /* PPU memory */
2295 ROM_LOAD( "cl.8b", 0x0000, 0x2000, CRC(960d9a6c) SHA1(2569d59fd880cfc2eb4638294d1429ba749f5dcb) )
2296 ROM_LOAD( "cl.8a", 0x2000, 0x2000, CRC(e3139791) SHA1(33d9e6d2a3233ee311c2cef2d0a425ded2cf3b0f) )
2297 ROM_END
2298
2299 ROM_START( excitebk )
2300 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2301 ROM_LOAD( "eb-1d", 0x8000, 0x2000, CRC(7e54df1d) SHA1(38d878041976386e8608c73133040b18d0e4b9cd) )
2302 ROM_LOAD( "eb-1c", 0xa000, 0x2000, CRC(89baae91) SHA1(6aebf13c415e3246edf7daa847533b7e3ae0425f) )
2303 ROM_LOAD( "eb-1b", 0xc000, 0x2000, CRC(4c0c2098) SHA1(078f24ce02f5fb91d7ed7fa59aec8efbec38aed1) )
2304 ROM_LOAD( "eb-1a", 0xe000, 0x2000, CRC(b9ab7110) SHA1(89e3bd5f42b5b5e869ee46afe4f25a1a17d3814d) )
2305
2306 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2307 ROM_LOAD( "eb-2b", 0x0000, 0x2000, CRC(80be1f50) SHA1(d8544b9a0a9d8719ab601fa9c68c4305385b14c7) )
2308 ROM_LOAD( "eb-2a", 0x2000, 0x2000, CRC(a9b49a05) SHA1(c14706e6a5524f81e79c101e32deef9f3d60de3f) )
2309 ROM_END
2310
2311 ROM_START( excitbkj )
2312 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2313 ROM_LOAD( "eb4-46da.bin", 0x8000, 0x2000, CRC(6aa87037) SHA1(f3313700955498800a3d59c523ba2a4e0cf443bc) )
2314 ROM_LOAD( "eb4-46ca.bin", 0xa000, 0x2000, CRC(bdb317db) SHA1(a8b3e8deb1e625d764aaffe86a513bc7ede51a46) )
2315 ROM_LOAD( "eb4-46ba.bin", 0xc000, 0x2000, CRC(d1afe2dd) SHA1(ef0f44d98464b7dab7c51be4379242f7a4e4fcdd) )
2316 ROM_LOAD( "eb4-46aa.bin", 0xe000, 0x2000, CRC(46711d0e) SHA1(6ce2f395b3f407671a87c6e1133ab63a637022f2) )
2317
2318 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2319 ROM_LOAD( "eb4-48ba.bin", 0x0000, 0x2000, CRC(62a76c52) SHA1(7ebd0dac976abe8636f4f75a3b2a473d7a54934d) )
2320 // ROM_LOAD( "eb4-48aa.bin", 0x2000, 0x2000, CRC(a9b49a05) SHA1(c14706e6a5524f81e79c101e32deef9f3d60de3f) )
2321 ROM_LOAD( "eb-2a", 0x2000, 0x2000, CRC(a9b49a05) SHA1(c14706e6a5524f81e79c101e32deef9f3d60de3f) )
2322 ROM_END
2323
2324 ROM_START( jajamaru )
2325 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2326 ROM_LOAD( "10.bin", 0x8000, 0x2000, CRC(16af1704) SHA1(ebcf9ad06e302c51ee4432631a6b0fb85a9630ed) )
2327 ROM_LOAD( "9.bin", 0xa000, 0x2000, CRC(db7d1814) SHA1(6a0c9cf97006a8a41dc2f025a5f8acbb798dec60) )
2328 ROM_LOAD( "8.bin", 0xc000, 0x2000, CRC(ce263271) SHA1(1e5e2a9e0dcebeccd7df59491ca0bc5ac4d0d42b) )
2329 ROM_LOAD( "7.bin", 0xe000, 0x2000, CRC(a406d0e4) SHA1(1f67b58bacb145a3ff8b8380b44cd60251051c71) )
2330
2331 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2332 ROM_LOAD( "12.bin", 0x0000, 0x2000, CRC(c91d536a) SHA1(8cb4b0819652df484553b9dd1f82391d51c90fcc) )
2333 ROM_LOAD( "11.bin", 0x2000, 0x2000, CRC(f0034c04) SHA1(402dcf6ad443baeee3038ecab12db008a1ad2787) )
2334 ROM_END
2335
2336 ROM_START( ladygolf)
2337 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2338 ROM_LOAD( "lg-1d", 0x8000, 0x2000, CRC(8b2ab436) SHA1(145a75f30f1fab5b1babf01ada9ed23f59c2c18d) )
2339 ROM_LOAD( "lg-1c", 0xa000, 0x2000, CRC(bda6b432) SHA1(c8322f07df0adbd70cb49f2284b046478a3a57c1) )
2340 ROM_LOAD( "lg-1b", 0xc000, 0x2000, CRC(dcdd8220) SHA1(563028f8db9ad221d8ac8f8096b4587b822eedb7) )
2341 ROM_LOAD( "lg-1a", 0xe000, 0x2000, CRC(26a3cb3b) SHA1(00131637eb76154c4f04eb54707e0e7b453d4580) )
2342
2343 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2344 ROM_LOAD( "lg-2b", 0x0000, 0x2000, CRC(95618947) SHA1(e8f09bffa3fa1a1cac8fa25df9fba962951c1fb3) )
2345 ROM_LOAD( "lg-2a", 0x2000, 0x2000, CRC(d07407b1) SHA1(b998b46fe83e76fac3d7b71495d1da8580a731f9) )
2346 ROM_END
2347
2348 ROM_START( smgolfj )
2349 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2350 ROM_LOAD( "gf3_6d_b.bin", 0x8000, 0x2000, CRC(8ce375b6) SHA1(f787f5ebe584cc95428b63660cd41e2b3df6ddf2) )
2351 ROM_LOAD( "gf3_6c_b.bin", 0xa000, 0x2000, CRC(50a938d3) SHA1(5f5c5e50024fe113240f1b0b3b6d38cbf9130133) )
2352 ROM_LOAD( "gf3_6b_b.bin", 0xc000, 0x2000, CRC(7dc39f1f) SHA1(12ff2f0ec7418754f9b6e600746e15f345e3ddaa) )
2353 ROM_LOAD( "gf3_6a_b.bin", 0xe000, 0x2000, CRC(9b8a2106) SHA1(008ab9098f9ce564bcb4beb17285c2bc18b529ff) )
2354
2355 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2356 ROM_LOAD( "gf3_8b_b.bin", 0x0000, 0x2000, CRC(7ef68029) SHA1(a639e463fd0abfb1bff0dd17aa0c9f70a72ee139) )
2357 ROM_LOAD( "gf3_8a_b.bin", 0x2000, 0x2000, CRC(f2285878) SHA1(e0d34161a1879975f51c12222cf366228170b0e3) )
2358 ROM_END
2359
2360 ROM_START( machridr )
2361 ROM_REGION( 0x10000,REGION_CPU1,0 ) /* 6502 memory */
2362 ROM_LOAD( "mr-1d", 0x8000, 0x2000, CRC(379c44b9) SHA1(7b148ba7f7eea64509733f94b4eaafe5bfcf3527) )
2363 ROM_LOAD( "mr-1c", 0xa000, 0x2000, CRC(cb864802) SHA1(65f06a8eaca3347432f3f2f673a24692415d869f) )
2364 ROM_LOAD( "mr-1b", 0xc000, 0x2000, CRC(5547261f) SHA1(aedb7ab1ef0cd32f325ec9fc948ca1e21a78aa7a) )
2365 ROM_LOAD( "mr-1a", 0xe000, 0x2000, CRC(e3e3900d) SHA1(c66807ca372d2e5ac11030fdf3d30e30617d4e72) )
2366
2367 ROM_REGION( 0x4000,REGION_GFX1 , 0) /* PPU memory */
2368 ROM_LOAD( "mr-2b", 0x0000, 0x2000, CRC(33a2b41a) SHA1(671f37bce742e63250296e62c143f8a82f860b04) )
2369 ROM_LOAD( "mr-2a", 0x2000, 0x2000, CRC(685899d8) SHA1(02b6a9bc21367c481d0091fa8a8f2d1b841244bf) )
2370 ROM_END
2371
2372 ROM_START( machridj )
2373 ROM_REGION( 0x10000,REGION_CPU1,0 ) /* 6502 memory */
2374 ROM_LOAD( "mr4-11da.bin", 0x8000, 0x2000, CRC(ab7e0594) SHA1(fc5982a93791608a20e5ec9e3a4b71d702bda354) )
2375 ROM_LOAD( "mr4-11ca.bin", 0xa000, 0x2000, CRC(d4a341c3) SHA1(c799e40d0ebd1447032d8767fb2caeee6b33f31a) )
2376 ROM_LOAD( "mr4-11ba.bin", 0xc000, 0x2000, CRC(cbdcfece) SHA1(91f3a0e1e91bdbb61721e9777009299f7e8efa96) )
2377 ROM_LOAD( "mr4-11aa.bin", 0xe000, 0x2000, CRC(e5b1e350) SHA1(ab30f84597cbf470a02a2d083587cdc589a29a3c) )
2378
2379 ROM_REGION( 0x4000,REGION_GFX1 , 0) /* PPU memory */
2380 ROM_LOAD( "mr4-12ba.bin", 0x0000, 0x2000, CRC(59867e36) SHA1(2b5546aa9f140277d611d6d5516b1343e5e672a0) )
2381 ROM_LOAD( "mr4-12aa.bin", 0x2000, 0x2000, CRC(ccfedc5a) SHA1(3d6321681fbe256d7c71037205d45d22fc264569) )
2382 ROM_END
2383
2384 ROM_START(smgolf)
2385 ROM_REGION( 0x10000,REGION_CPU1,0 ) /* 6502 memory */
2386 ROM_LOAD( "golf-1d", 0x8000, 0x2000, CRC(a3e286d3) SHA1(ee7539a46e0e062ffd63d84e8b83de29b860a501) )
2387 ROM_LOAD( "golf-1c", 0xa000, 0x2000, CRC(e477e48b) SHA1(2ebcc548ac8defc521860d2d2f585be0eee6620e) )
2388 ROM_LOAD( "golf-1b", 0xc000, 0x2000, CRC(7d80b511) SHA1(52aa7e798ff8d933b023bcade81a39f7e27d02c5) )
2389 ROM_LOAD( "golf-1a", 0xe000, 0x2000, CRC(7b767da6) SHA1(0f0f3a24b844265c304b10016f33e91b323a9a98) )
2390
2391 ROM_REGION( 0x4000, REGION_GFX1, 0 ) /* PPU memory */
2392 ROM_LOAD( "golf-2b", 0x0000, 0x2000, CRC(2782a3e5) SHA1(4e57aab58fb250da951a9aecd21d6aa79e697bcb) )
2393 ROM_LOAD( "golf-2a", 0x2000, 0x2000, CRC(6e93fdef) SHA1(44f46421adabbc40135c681592cb5226b7c9012a) )
2394 ROM_END
2395
2396 ROM_START( smgolfb )
2397 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2398 ROM_LOAD( "gf4-2.1df", 0x8000, 0x2000, CRC(4a723087) SHA1(87dc063d295f55871598a1e1eb4e62ce298b2f0c) )
2399 ROM_LOAD( "gf4-2.1cf", 0xa000, 0x2000, CRC(2debda63) SHA1(33b42eb5641ec947b2f2dcbc632ee6c81fa2ffe3) )
2400 ROM_LOAD( "gf4-2.1bf", 0xc000, 0x2000, CRC(6783652f) SHA1(7165ee59d3787cb56eed4791351da07f4bcc68ed) )
2401 ROM_LOAD( "gf4-2.1af", 0xe000, 0x2000, CRC(ce788209) SHA1(b62f1a6567cd94e5443afdbc5df33dd1b8ad039d) )
2402
2403 ROM_REGION( 0x4000, REGION_GFX1, 0 ) /* PPU memory */
2404 ROM_LOAD( "gf4-2.2bf", 0x0000, 0x2000, NO_DUMP )
2405 ROM_LOAD( "gf4-2.2af", 0x2000, 0x2000, CRC(47e9b8c6) SHA1(2eee6eaf7d15e215816363c7bb7142a2bdc2d530) )
2406 ROM_END
2407
2408 ROM_START( vspinbal )
2409 ROM_REGION( 0x10000, REGION_CPU1, 0 ) /* 6502 memory */
2410 ROM_LOAD( "pb-6d", 0x8000, 0x2000, CRC(69fc575e) SHA1(d5165959c3569f5ebccd03d2cad4714f9240cc4c) )
2411 ROM_LOAD( "pb-6c", 0xa000, 0x2000, CRC(fa9472d2) SHA1(d20ffb156bea1f474ad7d9776e217cb05048f00f) )
2412 ROM_LOAD( "pb-6b", 0xc000, 0x2000, CRC(f57d89c5) SHA1(03f3a27d806c61fef13b0d8b2d8b9a15ee968e80) )
2413 ROM_LOAD( "pb-6a", 0xe000, 0x2000, CRC(640c4741) SHA1(930bed577bfc75b03d064dc0ef523c45186fc3c4) )
2414
2415 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2416 ROM_LOAD( "pb-8b", 0x0000, 0x2000, CRC(8822ee9e) SHA1(950113952e6d356e45e03479ba5dd5a8cb131609) )
2417 ROM_LOAD( "pb-8a", 0x2000, 0x2000, CRC(cbe98a28) SHA1(c00c5f15a33611bfe3ad420b93b1cc2cae011c3e) )
2418 ROM_END
2419
2420 ROM_START( vspinblj )
2421 ROM_REGION( 0x10000, REGION_CPU1, 0 ) /* 6502 memory */
2422 ROM_LOAD( "pn3_6d_b.bin", 0x8000, 0x2000, CRC(fd50c42e) SHA1(4a3ea9e85b60caf8b6975fd2798bc59e86ec257f) )
2423 ROM_LOAD( "pn3_6c_b.bin", 0xa000, 0x2000, CRC(59beb9e5) SHA1(682b31dfbdf1ee44fd5d5d63169ab35409e93546) )
2424 ROM_LOAD( "pn3_6b_b.bin", 0xc000, 0x2000, CRC(ce7f47ce) SHA1(c548c1b94d3807b4968629c7fdce8aae3a61e6e0) )
2425 ROM_LOAD( "pn3_6a_b.bin", 0xe000, 0x2000, CRC(5685e2ee) SHA1(a38fbf25c93dfc73658d3837b2b6397736e8d2f2) )
2426
2427 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2428 ROM_LOAD( "pn3_8b_b.bin", 0x0000, 0x2000, CRC(1e3fec3e) SHA1(aef18cee358af202ec48c1c36986e42e134466b1) )
2429 ROM_LOAD( "pn3_8a_b.bin", 0x2000, 0x2000, CRC(6f963a65) SHA1(af69564b51aa42ef0815c952e0d0d0d928651685) )
2430 ROM_END
2431
2432 ROM_START( vsslalom )
2433 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2434 ROM_LOAD( "slalom.1d", 0x8000, 0x2000, CRC(6240a07d) SHA1(c9a3743a1caaa417c3828365a4c7a75272c20146) )
2435 ROM_LOAD( "slalom.1c", 0xa000, 0x2000, CRC(27c355e4) SHA1(ba55258396a17858e136fe45332f6cc13a46b072) )
2436 ROM_LOAD( "slalom.1b", 0xc000, 0x2000, CRC(d4825fbf) SHA1(5e7fcfa1999c52f94be28c693acffc6e5d434674) )
2437 ROM_LOAD( "slalom.1a", 0xe000, 0x2000, CRC(82333f80) SHA1(fa85f8a481f3847b33fd9df005df4fde59080bce) )
2438
2439 ROM_REGION( 0x2000,REGION_GFX1, 0 ) /* PPU memory */
2440 ROM_LOAD( "slalom.2a", 0x0000, 0x2000, CRC(977bb126) SHA1(9b12cd37246237c24a8077c6184a2f71d342ac47) )
2441 ROM_END
2442
2443 ROM_START( vssoccer )
2444 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2445 ROM_LOAD( "soccer1d", 0x8000, 0x2000, CRC(0ac52145) SHA1(148d9850cd80fb64e28f478891c16dac71e67e96) )
2446 ROM_LOAD( "soccer1c", 0xa000, 0x2000, CRC(f132e794) SHA1(f289f5acec7e2a62fc569a401e7ab5200df302f5) )
2447 ROM_LOAD( "soccer1b", 0xc000, 0x2000, CRC(26bb7325) SHA1(80e97a36c364a07cf9862202454651fb2872cd51) )
2448 ROM_LOAD( "soccer1a", 0xe000, 0x2000, CRC(e731635a) SHA1(8089bc49a0115225d26c4cbaaf08431376eafa59) )
2449
2450 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2451 ROM_LOAD( "soccer2b", 0x0000, 0x2000, CRC(307b19ab) SHA1(b35ef4c2cf071db77cec1b4529b43a20cfcce172) )
2452 ROM_LOAD( "soccer2a", 0x2000, 0x2000, CRC(7263613a) SHA1(aa5673b57833d1f32c2cb0230a809397ec6103b4) )
2453 ROM_END
2454
2455 ROM_START( starlstr )
2456 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2457 ROM_LOAD( "sl_04.1d", 0x8000, 0x2000, CRC(4fd5b385) SHA1(a4cfdb9d74538a162825d9fbbed67e2a645bcc2c) )
2458 ROM_LOAD( "sl_03.1c", 0xa000, 0x2000, CRC(f26cd7ca) SHA1(f6fd5a6028b111a8fca68684bad651a92e0fd7be) )
2459 ROM_LOAD( "sl_02.1b", 0xc000, 0x2000, CRC(9308f34e) SHA1(4438d13dad793bbc158a5d163ccd4ae26f914fb5) )
2460 ROM_LOAD( "sl_01.1a", 0xe000, 0x2000, CRC(d87296e4) SHA1(a1220313f4c6ee1ee0beee9792f2e9038eaa4cb3) )
2461
2462 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2463 ROM_LOAD( "sl_06.2b", 0x0000, 0x2000, CRC(25f0e027) SHA1(4fcbe4bb959689948cb8f505d5c495dabb893f7b) )
2464 ROM_LOAD( "sl_05.2a", 0x2000, 0x2000, CRC(2bbb45fd) SHA1(53c3588bd25baa6b8ff41f4755db9e0e806c9719) )
2465 ROM_END
2466
2467 ROM_START( vstetris )
2468 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2469 ROM_LOAD( "a000.6c", 0xa000, 0x2000, CRC(92a1cf10) SHA1(463f62aec3f26d70b35e804398a38baf8f41a5e3) )
2470 ROM_LOAD( "c000.6b", 0xc000, 0x2000, CRC(9e9cda9d) SHA1(27d91b957ff0b3abd5567341574318548470fb3c) )
2471 ROM_LOAD( "e000.6a", 0xe000, 0x2000, CRC(bfeaf6c1) SHA1(2f2150138c023cb7962f3e04d34bd01be9fa2e24) )
2472
2473 ROM_REGION( 0x2000,REGION_GFX1, 0 ) /* PPU memory */
2474 ROM_LOAD( "char.8b", 0x0000, 0x2000, CRC(51e8d403) SHA1(ed734994d164c4b59794249a13bce333896b3ee5) )
2475 ROM_END
2476
2477 ROM_START( drmario )
2478 ROM_REGION( 0x20000,REGION_CPU1, 0 ) /* 6502 memory */
2479 ROM_LOAD( "dm-uiprg", 0x10000, 0x10000, CRC(d5d7eac4) SHA1(cd74c3a7a2fc7c25420037ae5f4a25307aff6587) )
2480
2481 ROM_REGION( 0x8000,REGION_GFX1, 0 ) /* PPU memory */
2482 ROM_LOAD( "dm-u3chr", 0x0000, 0x8000, CRC(91871aa5) SHA1(32a4299ead7b37f49877dc9597653b07a73ddbf3) )
2483 ROM_END
2484
2485 ROM_START( cstlevna )
2486 ROM_REGION( 0x30000,REGION_CPU1, 0 ) /* 6502 memory */
2487 ROM_LOAD( "mds-cv.prg", 0x10000, 0x20000, CRC(ffbef374) SHA1(9eb3b75e7b45df51b8bcd29df84689a7e8557f4f) )
2488
2489 /* No cart gfx - uses vram */
2490 ROM_END
2491
2492 ROM_START( topgun )
2493 ROM_REGION( 0x30000,REGION_CPU1, 0 ) /* 6502 memory */
2494 ROM_LOAD( "rc-003", 0x10000, 0x20000, CRC(8c0c2df5) SHA1(d9b1b87204e025a637821a0168475e1209ce0c8a) )
2495
2496 /* No cart gfx - uses vram */
2497 ROM_END
2498
2499 ROM_START( tkoboxng )
2500 ROM_REGION( 0x20000,REGION_CPU1, 0 ) /* 6502 memory */
2501 ROM_LOAD( "tkoprg.bin", 0x10000, 0x10000, CRC(eb2dba63) SHA1(257c9f3565ff1d136094e99636ca57e300352b7e) )
2502
2503 ROM_REGION( 0x10000,REGION_GFX1, 0 ) /* PPU memory */
2504 ROM_LOAD( "tkochr.bin", 0x0000, 0x10000, CRC(21275ba5) SHA1(160131586aeeca848deabff258a2ce5f62b17c5f) )
2505 ROM_END
2506
2507 ROM_START( rbibb )
2508 ROM_REGION( 0x20000,REGION_CPU1,0 ) /* 6502 memory */
2509 ROM_LOAD( "rbi-prg", 0x10000, 0x10000, CRC(135adf7c) SHA1(e090b0aec98463c565e300a910561499d8bd9676) )
2510
2511 ROM_REGION( 0x8000,REGION_GFX1, 0 ) /* PPU memory */
2512 ROM_LOAD( "rbi-cha", 0x0000, 0x8000, CRC(a3c14889) SHA1(ef00f4fbf21cf34e946957b9b6825b8e2cb16536) )
2513 ROM_END
2514
2515 ROM_START( rbibba )
2516 ROM_REGION( 0x20000,REGION_CPU1,0 ) /* 6502 memory */
2517 ROM_LOAD( "rbi-prga", 0x10000, 0x10000, CRC(a5939d0d) SHA1(476ac2a3974b69082bb8eebdfc0d15befaa2e165) )
2518
2519 ROM_REGION( 0x8000,REGION_GFX1, 0 ) /* PPU memory */
2520 ROM_LOAD( "rbi-cha", 0x0000, 0x8000, CRC(a3c14889) SHA1(ef00f4fbf21cf34e946957b9b6825b8e2cb16536) )
2521 ROM_END
2522
2523 ROM_START( vsskykid )
2524 ROM_REGION( 0x18000,REGION_CPU1,0 ) /* 6502 memory */
2525 ROM_LOAD( "sk-prg1", 0x10000, 0x08000, CRC(cf36261e) SHA1(e4a3d2a223f066c231631d92504f08e60b303dfd) )
2526
2527 ROM_REGION( 0x8000,REGION_GFX1 , 0) /* PPU memory */
2528 ROM_LOAD( "sk-cha", 0x0000, 0x8000, CRC(9bd44dad) SHA1(bf33d175b6ab991d63a0acaf83ba22d5b7ab11b9) )
2529 ROM_END
2530
2531 ROM_START( platoon )
2532 ROM_REGION( 0x30000,REGION_CPU1, 0 ) /* 6502 memory */
2533 ROM_LOAD( "prgver0.ic4", 0x10000, 0x20000, CRC(e2c0a2be) SHA1(1f8e33d6da8402be6a376668a424bfde38471021) )
2534
2535 ROM_REGION( 0x20000,REGION_GFX1, 0 ) /* PPU memory */
2536 ROM_LOAD( "chrver0.ic6", 0x00000, 0x20000, CRC(689df57d) SHA1(854aaa9feb16e3f239fba6069fbf65e69858fe73) )
2537 ROM_END
2538
2539 ROM_START( bnglngby )
2540 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2541 ROM_LOAD( "rb4-26db.bin", 0x8000, 0x2000, CRC(d152d8c2) SHA1(d127195be8219df1c6f7bdd86658ed26c658470e) )
2542 ROM_LOAD( "rb4-26cb.bin", 0xa000, 0x2000, CRC(c3383935) SHA1(8ed1e8ed36069e5e6f2f3c672aae5e1f3dabbdd0) )
2543 ROM_LOAD( "rb4-26bb.bin", 0xc000, 0x2000, CRC(e2a24af8) SHA1(89cca4188b859882487fe64776c1ca0173fee142) )
2544 ROM_LOAD( "rb4-26ab.bin", 0xe000, 0x2000, CRC(024ad874) SHA1(b02241c3d2ae90ccd5402410fa650741034a2f78) )
2545
2546 ROM_REGION( 0x4000, REGION_GFX1, 0 ) /* PPU memory */
2547 ROM_LOAD( "rb4-28bb.bin", 0x0000, 0x2000, CRC(d3d946ab) SHA1(e2ed8af0cf6edb925c1ff47fccb5caabd0b8c09f) )
2548 ROM_LOAD( "rb4-28ab.bin", 0x2000, 0x2000, CRC(ca08126a) SHA1(48b315e3e90b19b2d74dcd88c734dcdf3539d6ca) )
2549
2550 ROM_REGION( 0x2000, REGION_USER1, 0 ) /* unknown */
2551 ROM_LOAD( "rb4-21ab.bin", 0x0000, 0x2000, CRC(b49939ad) SHA1(ebaab2864d9ff9876e9d2666746c4bab57e49ec3) ) /* Unknown, maps at 0xe000, maybe from another set, but we have other roms? */
2552 ROM_END
2553
2554 ROM_START( supxevs )
2555 ROM_REGION( 0x30000,REGION_CPU1, 0 ) /* 6502 memory */
2556 ROM_LOAD( "prg2", 0x10000, 0x10000, CRC(645669f0) SHA1(3b18c0bb33dd5a95f52a2de7b9a5730990517ad9) )
2557 ROM_LOAD( "prg1", 0x20000, 0x10000, CRC(ff762ceb) SHA1(04ca386ef4ad79f99d1efdc0a4d908ef0e523d75) )
2558
2559 ROM_REGION( 0x8000,REGION_GFX1, 0 ) /* PPU memory */
2560 ROM_LOAD( "cha", 0x00000, 0x08000, CRC(e27c7434) SHA1(a033bbaf0c28504ed2a641dea28f016a88ef03ac) )
2561 ROM_END
2562
2563 ROM_START( mightybj )
2564 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2565 ROM_LOAD( "1d.bin", 0x8000, 0x2000, CRC(55dc8d77) SHA1(eafb8636d994a10caee9eb0ba544260281706058) )
2566 ROM_LOAD( "1c.bin", 0xa000, 0x2000, CRC(151a6d15) SHA1(2652aef97aae122711ef471d9dc1d42f6393b91f) )
2567 ROM_LOAD( "1b.bin", 0xc000, 0x2000, CRC(9f9944bc) SHA1(58b1aca3e0cd32769978c704177d6ddeb70ac95a) )
2568 ROM_LOAD( "1a.bin", 0xe000, 0x2000, CRC(76f49b65) SHA1(c50fd29ea91bba3d59e943496d0941fe0e4efcb2) )
2569
2570 ROM_REGION( 0x2000, REGION_GFX1, 0 ) /* PPU memory */
2571 ROM_LOAD( "2b.bin", 0x0000, 0x2000, CRC(5425a4d0) SHA1(09eb9d93b680c9eefde5ee6e16cf81de931cccb9) )
2572 ROM_END
2573
2574 /* Dual System */
2575
2576 ROM_START( balonfgt )
2577 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2578 ROM_LOAD( "bf.1d", 0x08000, 0x02000, CRC(1248a6d6) SHA1(0f6c586e8e021a0710ec4e967750b55a74229d74) )
2579 ROM_LOAD( "bf.1c", 0x0a000, 0x02000, CRC(14af0e42) SHA1(ceb749eca2dfe81fddc6cb57e4aa87a4bfac0316) )
2580 ROM_LOAD( "bf.1b", 0x0c000, 0x02000, CRC(a420babf) SHA1(ab296a86132bb9103cbb107518b4ac9beb8b2e11) )
2581 ROM_LOAD( "bf.1a", 0x0e000, 0x02000, CRC(9c31f94d) SHA1(19bccd6b79423f495b0ee49dd3b219ffc4676470) )
2582
2583 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2584 ROM_LOAD( "bf.2b", 0x0000, 0x2000, CRC(f27d9aa0) SHA1(429a1ad2a07947e4c4809495bfab55bf0f0e428f) )
2585 ROM_LOAD( "bf.2a", 0x2000, 0x2000, CRC(76e6bbf8) SHA1(a4cae3a129a787162050187453b1583c8735fb46) )
2586
2587 ROM_REGION( 0x10000,REGION_CPU2,0 ) /* 6502 memory */
2588 ROM_LOAD( "bf.6d", 0x08000, 0x02000, CRC(ef4ebff1) SHA1(17153ad44a402f05f7ddfe3ac364a0e4adb6f16b) )
2589 ROM_LOAD( "bf.6c", 0x0a000, 0x02000, CRC(14af0e42) SHA1(ceb749eca2dfe81fddc6cb57e4aa87a4bfac0316) )
2590 ROM_LOAD( "bf.6b", 0x0c000, 0x02000, CRC(a420babf) SHA1(ab296a86132bb9103cbb107518b4ac9beb8b2e11) )
2591 ROM_LOAD( "bf.6a", 0x0e000, 0x02000, CRC(3aa5c095) SHA1(3815016e5615c9327200150e0181357f16f3d636) )
2592
2593 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2594 ROM_LOAD( "bf.8b", 0x0000, 0x2000, CRC(f27d9aa0) SHA1(429a1ad2a07947e4c4809495bfab55bf0f0e428f) )
2595 ROM_LOAD( "bf.8a", 0x2000, 0x2000, CRC(76e6bbf8) SHA1(a4cae3a129a787162050187453b1583c8735fb46) )
2596 ROM_END
2597
2598 ROM_START( vsmahjng )
2599 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2600 ROM_LOAD( "mj.1c", 0x0a000, 0x02000, CRC(ec77671f) SHA1(3716a4d5ab1efee0416dd7f6466d29379dc6f296) )
2601 ROM_LOAD( "mj.1b", 0x0c000, 0x02000, CRC(ac53398b) SHA1(2582c73efec233a389900949d6af7c4c9a9e7148) )
2602 ROM_LOAD( "mj.1a", 0x0e000, 0x02000, CRC(62f0df8e) SHA1(5628397c5d9acf470cc0cbffdba20e9e4cc8ea91) )
2603
2604 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2605 ROM_LOAD( "mj.2b", 0x0000, 0x2000, CRC(9dae3502) SHA1(b7ffbc17af35eeac1b06c651f6c25f71827e9c3b) )
2606
2607 ROM_REGION( 0x10000,REGION_CPU2,0 ) /* 6502 memory */
2608 ROM_LOAD( "mj.6c", 0x0a000, 0x02000, CRC(3cee11e9) SHA1(03ae904a98a12b5571374417069e50f8bc824c24) )
2609 ROM_LOAD( "mj.6b", 0x0c000, 0x02000, CRC(e8341f7b) SHA1(cf3c43e4f87dbcd4ae9a74f2808282883c8ba38a) )
2610 ROM_LOAD( "mj.6a", 0x0e000, 0x02000, CRC(0ee69f25) SHA1(078e8f51887be58336ff23f90bacfa90c1730f36) )
2611
2612 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2613 ROM_LOAD( "mj.8b", 0x0000, 0x2000, CRC(9dae3502) SHA1(b7ffbc17af35eeac1b06c651f6c25f71827e9c3b) )
2614 ROM_END
2615
2616 ROM_START( vsbball )
2617 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2618 ROM_LOAD( "bb-1d", 0x08000, 0x02000, CRC(0cc5225f) SHA1(a8eb3153ce3f1282901c305177347112df0fb3b2) )
2619 ROM_LOAD( "bb-1c", 0x0a000, 0x02000, CRC(9856ac60) SHA1(f033171c3dea6af63f1f328fee74e695c67adc92) )
2620 ROM_LOAD( "bb-1b", 0x0c000, 0x02000, CRC(d1312e63) SHA1(0fc46a4ef0fb8a304320f8b3cac3edd1cd9ed286) )
2621 ROM_LOAD( "bb-1a", 0x0e000, 0x02000, CRC(28199b4d) SHA1(e63d69662d3b70b883028d3103c8f65de8f5edda) )
2622
2623 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2624 ROM_LOAD( "bb-2b", 0x0000, 0x2000, CRC(3ff8bec3) SHA1(28c1bf89ed1046243ca8cf122cefa0752c242577) )
2625 ROM_LOAD( "bb-2a", 0x2000, 0x2000, CRC(ebb88502) SHA1(010fdffbd1cddcde8176aaaae5ca8e9c3411c02a) )
2626
2627 ROM_REGION( 0x10000,REGION_CPU2,0 ) /* 6502 memory */
2628 ROM_LOAD( "bb-6d", 0x08000, 0x02000, CRC(7ec792bc) SHA1(92d1f8809db89a8d99f7ea1d2ba3f9be69195866) )
2629 ROM_LOAD( "bb-6c", 0x0a000, 0x02000, CRC(b631f8aa) SHA1(0ee8a8def9512552037fdac1a14a3ea9393bb943) )
2630 ROM_LOAD( "bb-6b", 0x0c000, 0x02000, CRC(c856b45a) SHA1(7f15613120d72859ea1ed647c9eee3074f63f0b9) )
2631 ROM_LOAD( "bb-6a", 0x0e000, 0x02000, CRC(06b74c18) SHA1(9a61161b4856b88e40eee6edb39e0a608748cf0b) )
2632
2633 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2634 ROM_LOAD( "bb-8b", 0x0000, 0x2000, CRC(3ff8bec3) SHA1(28c1bf89ed1046243ca8cf122cefa0752c242577) )
2635 ROM_LOAD( "bb-8a", 0x2000, 0x2000, CRC(13b20cfd) SHA1(cb333cbea09557a9d2bdc351fabc61fc7760c35d) )
2636 ROM_END
2637
2638 ROM_START( vsbballj )
2639 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2640 ROM_LOAD( "ba_1d_a1.bin", 0x08000, 0x02000, CRC(6dbc129b) SHA1(3e786632563364bf7ae13c7d25c522999f237009) )
2641 ROM_LOAD( "ba_1c_a1.bin", 0x0a000, 0x02000, CRC(2a684b3a) SHA1(316aa1051a5ff33e5a2369f9e984b34f637595ff) )
2642 ROM_LOAD( "ba_1b_a1.bin", 0x0c000, 0x02000, CRC(7ca0f715) SHA1(cf87e530c15c142efa48d6462870bbdf44002f45) )
2643 ROM_LOAD( "ba_1a_a1.bin", 0x0e000, 0x02000, CRC(926bb4fc) SHA1(b9b8611b90d73f39f65166010058e03d0aad5bb0) )
2644
2645 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2646 ROM_LOAD( "ba_2b_a.bin", 0x0000, 0x2000, CRC(919147d0) SHA1(9fccdfccc2a3ec634e350880ded7053f36c377bc) )
2647 ROM_LOAD( "ba_2a_a.bin", 0x2000, 0x2000, CRC(3f7edb00) SHA1(f59d24f15bdb8903187eabc1578dcb60443614ed) )
2648
2649 ROM_REGION( 0x10000,REGION_CPU2,0 ) /* 6502 memory */
2650 ROM_LOAD( "ba_6d_a1.bin", 0x08000, 0x02000, CRC(d534dca4) SHA1(6d454a2b5944f98c95d3a1bdeee8e8e52524cb21) )
2651 ROM_LOAD( "ba_6c_a1.bin", 0x0a000, 0x02000, CRC(73904bbc) SHA1(d32a0f659d628b98a0b06f846842432f83e79a07) )
2652 ROM_LOAD( "ba_6b_a1.bin", 0x0c000, 0x02000, CRC(7c130724) SHA1(99134180e158eaa4b260d1dacf9aa56a6d48ad73) )
2653 ROM_LOAD( "ba_6a_a1.bin", 0x0e000, 0x02000, CRC(d938080e) SHA1(35e00bd76364ec88fb3bb8908bc9171df9cd26de) )
2654
2655 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2656 ROM_LOAD( "ba_8b_a.bin", 0x0000, 0x2000, CRC(919147d0) SHA1(9fccdfccc2a3ec634e350880ded7053f36c377bc) )
2657 ROM_LOAD( "ba_8a_a.bin", 0x2000, 0x2000, CRC(3f7edb00) SHA1(f59d24f15bdb8903187eabc1578dcb60443614ed) )
2658 ROM_END
2659
2660 ROM_START( vsbbalja )
2661 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2662 ROM_LOAD( "ba_1d_a2.bin", 0x08000, 0x02000, CRC(f3820b70) SHA1(c50d0c2e34f646dd186ee0f2774e94add733f21d) )
2663 ROM_LOAD( "ba_1c_a2.bin", 0x0a000, 0x02000, CRC(39fbbf28) SHA1(9941defda548f2c51cf62f0ad62a041ee9a69c37) )
2664 ROM_LOAD( "ba_1b_a2.bin", 0x0c000, 0x02000, CRC(b1377b12) SHA1(9afca83f343b768de8ac51c5967f8825de9d7883) )
2665 ROM_LOAD( "ba_1a_a2.bin", 0x0e000, 0x02000, CRC(08fab347) SHA1(b6ecd1464c47afac922355b8d5e961892e58a0ed) )
2666
2667 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2668 ROM_LOAD( "ba_2b_a.bin", 0x0000, 0x2000, CRC(919147d0) SHA1(9fccdfccc2a3ec634e350880ded7053f36c377bc) )
2669 ROM_LOAD( "ba_2a_a.bin", 0x2000, 0x2000, CRC(3f7edb00) SHA1(f59d24f15bdb8903187eabc1578dcb60443614ed) )
2670
2671 ROM_REGION( 0x10000,REGION_CPU2,0 ) /* 6502 memory */
2672 ROM_LOAD( "ba_6d_a2.bin", 0x08000, 0x02000, CRC(c69561b0) SHA1(4234d88ffa957e7f70ef9da8c61db4e251c3bc66) )
2673 ROM_LOAD( "ba_6c_a2.bin", 0x0a000, 0x02000, CRC(17d1ca39) SHA1(2fa61a2c39495b72a22f001a72e4526e86d9544e) )
2674 ROM_LOAD( "ba_6b_a2.bin", 0x0c000, 0x02000, CRC(37481900) SHA1(dbab48d6c95e365ee4ab6ca4c61224b2c813e538) )
2675 ROM_LOAD( "ba_6a_a2.bin", 0x0e000, 0x02000, CRC(a44ffc4b) SHA1(ec65c3b52659dacfd2b7afe1e744e7bbd61fd6e1) )
2676
2677 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2678 ROM_LOAD( "ba_8b_a.bin", 0x0000, 0x2000, CRC(919147d0) SHA1(9fccdfccc2a3ec634e350880ded7053f36c377bc) )
2679 ROM_LOAD( "ba_8a_a.bin", 0x2000, 0x2000, CRC(3f7edb00) SHA1(f59d24f15bdb8903187eabc1578dcb60443614ed) )
2680 ROM_END
2681
2682 ROM_START( vsbbaljb )
2683 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2684 ROM_LOAD( "ba_1d_a3.bin", 0x08000, 0x02000, CRC(e234d609) SHA1(a148d6b57fbc9d5f91737fa30c2df2c2b66df404) )
2685 ROM_LOAD( "ba_1c_a3.bin", 0x0a000, 0x02000, CRC(ca1a9591) SHA1(3544f244c59d3dab40c2745e84775b7c1defaf54) )
2686 ROM_LOAD( "ba_1b_a3.bin", 0x0c000, 0x02000, CRC(50e1f6cf) SHA1(8eb4ccb4817295084280ffd1ee5261eee02485c5) )
2687 ROM_LOAD( "ba_1a_a3.bin", 0x0e000, 0x02000, BAD_DUMP CRC(4312aa6d) SHA1(dfadbbb6b03a3c1b5cc56c6c60f5005d4b572d8d) ) //FIXED BITS (xxxxxxx1)
2688
2689 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2690 ROM_LOAD( "ba_2b_a.bin", 0x0000, 0x2000, CRC(919147d0) SHA1(9fccdfccc2a3ec634e350880ded7053f36c377bc) )
2691 ROM_LOAD( "ba_2a_a.bin", 0x2000, 0x2000, CRC(3f7edb00) SHA1(f59d24f15bdb8903187eabc1578dcb60443614ed) )
2692
2693 ROM_REGION( 0x10000,REGION_CPU2,0 ) /* 6502 memory */
2694 ROM_LOAD( "ba_6d_a3.bin", 0x08000, 0x02000, CRC(6eb9e36e) SHA1(3877dee54a1a11417296150f7e7a1ae2c2847484) )
2695 ROM_LOAD( "ba_6c_a3.bin", 0x0a000, 0x02000, CRC(dca4dc75) SHA1(231819edb58caf96b4f5c56a44163fbb666dc67d) )
2696 ROM_LOAD( "ba_6b_a3.bin", 0x0c000, 0x02000, CRC(46cf6f84) SHA1(125af20e1e9066e4b92174ba0a7f59271ef57557) )
2697 ROM_LOAD( "ba_6a_a3.bin", 0x0e000, 0x02000, CRC(4cbc2cac) SHA1(90bed7694836075738d99aa8fe672dbffa7bbd6d) )
2698
2699 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2700 ROM_LOAD( "ba_8b_a.bin", 0x0000, 0x2000, CRC(919147d0) SHA1(9fccdfccc2a3ec634e350880ded7053f36c377bc) )
2701 ROM_LOAD( "ba_8a_a.bin", 0x2000, 0x2000, CRC(3f7edb00) SHA1(f59d24f15bdb8903187eabc1578dcb60443614ed) )
2702 ROM_END
2703
2704 ROM_START( vstennis )
2705 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2706 ROM_LOAD( "vst-1d", 0x08000, 0x02000, CRC(f4e9fca0) SHA1(05b91f578bc0a118ab75ce487b14adcd1fb6e714) )
2707 ROM_LOAD( "vst-1c", 0x0a000, 0x02000, CRC(7e52df58) SHA1(a5ddebfa1f7f1a2b6b46d4b4a7f2c36477158e7e) )
2708 ROM_LOAD( "vst-1b", 0x0c000, 0x02000, CRC(1a0d809a) SHA1(44ce2f9250940bf5f754918b4a2ae63f76181eff) )
2709 ROM_LOAD( "vst-1a", 0x0e000, 0x02000, CRC(8483a612) SHA1(c854f72d86fe4e99c4c6426cfc5ea6f2997bfc8c) )
2710
2711 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2712 ROM_LOAD( "vst-2b", 0x0000, 0x2000, CRC(9de19c9c) SHA1(1cb65e423a6c2d2a56c67ad08ecf7e746551c322) )
2713 ROM_LOAD( "vst-2a", 0x2000, 0x2000, CRC(67a5800e) SHA1(7bad1b486d9dac962fa8c87984038be4ac6b699b) )
2714
2715 ROM_REGION( 0x10000,REGION_CPU2, 0 ) /* 6502 memory */
2716 ROM_LOAD( "vst-6d", 0x08000, 0x02000, CRC(3131b1bf) SHA1(ed26df260df3a295b5c9747530428efec29676c0) )
2717 ROM_LOAD( "vst-6c", 0x0a000, 0x02000, CRC(27195d13) SHA1(a1d6960a194cb048c5c26f9378b49da7d6e7d1af) )
2718 ROM_LOAD( "vst-6b", 0x0c000, 0x02000, CRC(4b4e26ca) SHA1(68821357f473a0e1c575b547cc8c67be965fe73a) )
2719 ROM_LOAD( "vst-6a", 0x0e000, 0x02000, CRC(b6bfee07) SHA1(658458931efbb260faec3a11ee530326c56e63a9) )
2720
2721 ROM_REGION( 0x4000,REGION_GFX2 , 0) /* PPU memory */
2722 ROM_LOAD( "vst-8b", 0x0000, 0x2000, CRC(c81e9260) SHA1(6d4809a05364cc05485ee1add833428529af2be6) )
2723 ROM_LOAD( "vst-8a", 0x2000, 0x2000, CRC(d91eb295) SHA1(6b69bcef5421a6bcde89a2d1f514853f9f7992c3) )
2724 ROM_END
2725
2726 ROM_START( wrecking )
2727 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2728 ROM_LOAD( "wr.1d", 0x08000, 0x02000, CRC(8897e1b9) SHA1(7d33f6ee78d8663d62e6e05e231fd3d19ad09baa) )
2729 ROM_LOAD( "wr.1c", 0x0a000, 0x02000, CRC(d4dc5ebb) SHA1(bce9b2ebabe7b882f1bc71e2dd50906365521d78) )
2730 ROM_LOAD( "wr.1b", 0x0c000, 0x02000, CRC(8ee4a454) SHA1(58e970780a2ef5d44950dba6b44e501d320c9588) )
2731 ROM_LOAD( "wr.1a", 0x0e000, 0x02000, CRC(63d6490a) SHA1(40f573713b7729bc26f41978583defca47f75033) )
2732
2733 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2734 ROM_LOAD( "wr.2b", 0x0000, 0x2000, CRC(455d77ac) SHA1(fa09d0be51cc780f6c16cd314facc84043e1e69b) )
2735 ROM_LOAD( "wr.2a", 0x2000, 0x2000, CRC(653350d8) SHA1(d9aa699394654deaf50fadd8a652f08a340377eb) )
2736
2737 ROM_REGION( 0x10000,REGION_CPU2, 0 ) /* 6502 memory */
2738 ROM_LOAD( "wr.6d", 0x08000, 0x02000, CRC(90e49ce7) SHA1(dca3004305979dc09500fae4667084363fac761f) )
2739 ROM_LOAD( "wr.6c", 0x0a000, 0x02000, CRC(a12ae745) SHA1(15deabebc4ef59f08aa8ead3f576ed5cbde4c62e) )
2740 ROM_LOAD( "wr.6b", 0x0c000, 0x02000, CRC(03947ca9) SHA1(02f0404d2351d2475240818b6b103a6e01691daf) )
2741 ROM_LOAD( "wr.6a", 0x0e000, 0x02000, CRC(2c0a13ac) SHA1(47e6a50c210508fab51062eb5c8a3e1129c18125) )
2742
2743 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2744 ROM_LOAD( "wr.8b", 0x0000, 0x2000, CRC(455d77ac) SHA1(fa09d0be51cc780f6c16cd314facc84043e1e69b) )
2745 ROM_LOAD( "wr.8a", 0x2000, 0x2000, CRC(653350d8) SHA1(d9aa699394654deaf50fadd8a652f08a340377eb) )
2746 ROM_END
2747
2748 ROM_START( iceclmrj )
2749 ROM_REGION( 0x10000,REGION_CPU1, 0 ) /* 6502 memory */
2750 ROM_LOAD( "ic4-41da.bin", 0x08000, 0x02000, CRC(94e3197d) SHA1(414156809a3fe2c072d8947a91708f3ed40008b2) )
2751 ROM_LOAD( "ic4-41ca.bin", 0x0a000, 0x02000, CRC(b253011e) SHA1(abc2c84e342d1f8e8d0dbb580370733ef4b38413) )
2752 ROM_LOAD( "ic441ba1.bin", 0x0c000, 0x02000, CRC(f3795874) SHA1(f22f786960a27ab886a7fad7e312bdf28ffa5362) )
2753 ROM_LOAD( "ic4-41aa.bin", 0x0e000, 0x02000, CRC(094c246c) SHA1(82aba548706041c2de0cda02d21409fe8a09338c) )
2754
2755 ROM_REGION( 0x4000,REGION_GFX1, 0 ) /* PPU memory */
2756 ROM_LOAD( "ic4-42ba.bin", 0x0000, 0x2000, CRC(331460b4) SHA1(4cf94d711cdb5715d14f1ab3cadec245e0adfb1e) )
2757 ROM_LOAD( "ic4-42aa.bin", 0x2000, 0x2000, CRC(4ec44fb3) SHA1(676e0ab574dec08df562c6f278e8a9cc7c8afa41) )
2758
2759 ROM_REGION( 0x10000,REGION_CPU2, 0 ) /* 6502 memory */
2760 ROM_LOAD( "ic4-46da.bin", 0x08000, 0x02000, CRC(94e3197d) SHA1(414156809a3fe2c072d8947a91708f3ed40008b2) )
2761 ROM_LOAD( "ic4-46ca.bin", 0x0a000, 0x02000, CRC(b253011e) SHA1(abc2c84e342d1f8e8d0dbb580370733ef4b38413) )
2762 ROM_LOAD( "ic4-46ba.bin", 0x0c000, 0x02000, CRC(2ee9c1f9) SHA1(71619cff6d41cf5a8f74a689e30c2a24020f7d06) )
2763 ROM_LOAD( "ic4-46aa.bin", 0x0e000, 0x02000, CRC(094c246c) SHA1(82aba548706041c2de0cda02d21409fe8a09338c) )
2764
2765 ROM_REGION( 0x4000,REGION_GFX2, 0 ) /* PPU memory */
2766 ROM_LOAD( "ic4-48ba.bin", 0x0000, 0x2000, CRC(331460b4) SHA1(4cf94d711cdb5715d14f1ab3cadec245e0adfb1e) )
2767 ROM_LOAD( "ic4-48aa.bin", 0x2000, 0x2000, CRC(4ec44fb3) SHA1(676e0ab574dec08df562c6f278e8a9cc7c8afa41) )
2768 ROM_END
2769
2770 /******************************************************************************/
2771
2772 /* YEAR NAME PARENT MACHINE INPUT INIT MONITOR */
2773 GAME( 1985, btlecity, 0, vsnes, btlecity, btlecity, ROT0, "Namco", "Vs. Battle City" )
2774 GAME( 1985, starlstr, 0, vsnes, starlstr, vsnormal, ROT0, "Namco", "Vs. Star Luster" )
2775 GAME( 1987, cstlevna, 0, vsnes, cstlevna, cstlevna, ROT0, "Konami", "Vs. Castlevania" )
2776 GAME( 1984, cluclu, 0, vsnes, cluclu, suprmrio, ROT0, "Nintendo", "Vs. Clu Clu Land" )
2777 GAME( 1990, drmario, 0, vsnes, drmario, drmario, ROT0, "Nintendo", "Vs. Dr. Mario" )
2778 GAME( 1985, duckhunt, 0, vsnes, duckhunt, duckhunt, ROT0, "Nintendo", "Vs. Duck Hunt" )
2779 GAME( 1984, excitebk, 0, vsnes, excitebk, excitebk, ROT0, "Nintendo", "Vs. Excitebike" )
2780 GAME( 1984, excitbkj, excitebk, vsnes, excitebk, excitbkj, ROT0, "Nintendo", "Vs. Excitebike (Japan)" )
2781 GAME( 1986, goonies, 0, vsnes, goonies, goonies, ROT0, "Konami", "Vs. The Goonies" )
2782 GAME( 1985, hogalley, 0, vsnes, hogalley, hogalley, ROT0, "Nintendo", "Vs. Hogan's Alley" )
2783 GAME( 1984, iceclimb, 0, vsnes, iceclimb, suprmrio, ROT0, "Nintendo", "Vs. Ice Climber" )
2784 GAME( 1984, iceclmbj, iceclimb, vsnes, iceclmbj, suprmrio, ROT0, "Nintendo", "Vs. Ice Climber (Japan)" )
2785 GAME( 1984, ladygolf, 0, vsnes, golf, machridr, ROT0, "Nintendo", "Vs. Stroke and Match Golf (Ladies Version)" )
2786 GAMEX(1985, machridr, 0, vsnes, machridr, machridr, ROT0, "Nintendo", "Vs. Mach Rider (Endurance Course Version)", GAME_IMPERFECT_GRAPHICS )
2787 GAMEX(1985, machridj, machridr, vsnes, machridj, vspinbal, ROT0, "Nintendo", "Vs. Mach Rider (Japan, Fighting Course Version)", GAME_IMPERFECT_GRAPHICS )
2788 GAME( 1986, rbibb, 0, vsnes, rbibb, rbibb, ROT0, "Namco", "Vs. Atari R.B.I. Baseball (set 1)" )
2789 GAME( 1986, rbibba, rbibb, vsnes, rbibb, rbibb, ROT0, "Namco", "Vs. Atari R.B.I. Baseball (set 2)" )
2790 GAME( 1986, suprmrio, 0, vsnes, suprmrio, suprmrio, ROT0, "Nintendo", "Vs. Super Mario Bros." )
2791 GAME( 1985, vsskykid, 0, vsnes, vsskykid, MMC3, ROT0, "Namco", "Vs. Super SkyKid" )
2792 GAMEX(1987, tkoboxng, 0, vsnes, tkoboxng, tkoboxng, ROT0, "Namco LTD.","Vs. TKO Boxing", GAME_WRONG_COLORS | GAME_IMPERFECT_GRAPHICS )
2793 GAME( 1984, smgolf, 0, vsnes, golf4s, machridr, ROT0, "Nintendo", "Vs. Stroke and Match Golf (Men Version)" )
2794 GAME( 1984, smgolfj, smgolf, vsnes, golf, vsnormal, ROT0, "Nintendo", "Vs. Stroke and Match Golf (Men Version) (Japan)" )
2795 GAME( 1984, vspinbal, 0, vsnes, vspinbal, vspinbal, ROT0, "Nintendo", "Vs. Pinball" )
2796 GAME( 1984, vspinblj, vspinbal, vsnes, vspinblj, vsnormal, ROT0, "Nintendo", "Vs. Pinball (Japan)" )
2797 GAMEX(1986, vsslalom, 0, vsnes, vsslalom, vsslalom, ROT0, "Rare LTD.", "Vs. Slalom", GAME_IMPERFECT_GRAPHICS )
2798 GAME( 1985, vssoccer, 0, vsnes, vssoccer, excitebk, ROT0, "Nintendo", "Vs. Soccer" )
2799 GAME( 1986, vsgradus, 0, vsnes, vsgradus, vsgradus, ROT0, "Konami", "Vs. Gradius" )
2800 GAMEX(1987, platoon, 0, vsnes, platoon, platoon, ROT0, "Ocean Software Limited", "Vs. Platoon", GAME_WRONG_COLORS )
2801 GAMEX(1987, vstetris, 0, vsnes, vstetris, vstetris, ROT0, "Academysoft-Elory", "Vs. Tetris" , GAME_IMPERFECT_COLORS )
2802 GAME( 1986, mightybj, 0, vsnes, mightybj, mightybj, ROT0, "Tecmo", "Vs. Mighty Bomb Jack (Japan)" )
2803 GAMEX(1985, jajamaru, 0, vsnes, jajamaru, jajamaru, ROT0, "Jaleco", "Vs. Ninja Jajamaru Kun (Japan)", GAME_IMPERFECT_GRAPHICS )
2804 GAME( 1987, topgun, 0, vsnes, topgun, topgun, ROT0, "Konami", "Vs. Top Gun")
2805 GAME( 1985, bnglngby, 0, vsnes, bnglngby, bnglngby, ROT0, "Nintendo / Broderbund Software Inc.", "Vs. Raid on Bungeling Bay (Japan)" )
2806 GAME( 1986, supxevs, 0, vsnes, supxevs, supxevs, ROT0, "Namco", "Vs. Super Xevious" )
2807 GAME( 1988, vsfdf, 0, vsnes, vsfdf, vsfdf, ROT0, "Konami", "Vs. Freedom Force" )
2808
2809 /* Dual games */
2810 GAME( 1984, vstennis, 0, vsdual, vstennis, vstennis, ROT0, "Nintendo", "Vs. Tennis" )
2811 GAME( 1984, wrecking, 0, vsdual, wrecking, wrecking, ROT0, "Nintendo", "Vs. Wrecking Crew" )
2812 GAME( 1984, balonfgt, 0, vsdual, balonfgt, balonfgt, ROT0, "Nintendo", "Vs. Balloon Fight" )
2813 GAME( 1984, vsmahjng, 0, vsdual, vsmahjng, vstennis, ROT0, "Nintendo", "Vs. Mahjang (Japan)" )
2814 GAME( 1984, vsbball, 0, vsdual, vsbball, vsbball, ROT0, "Nintendo of America", "Vs. BaseBall" )
2815 GAME( 1984, vsbballj, vsbball, vsdual, vsbballj, vsbball, ROT0, "Nintendo of America", "Vs. BaseBall (Japan set 1)" )
2816 GAME( 1984, vsbbalja, vsbball, vsdual, vsbballj, vsbball, ROT0, "Nintendo of America", "Vs. BaseBall (Japan set 2)" )
2817 GAME( 1984, iceclmrj, 0, vsdual, iceclmrj, iceclmrj, ROT0, "Nintendo", "Vs. Ice Climber Dual (Japan)" )
2818
2819 /* Partially working */
2820 GAME( 1986, vsgshoe, 0, vsnes, vsgshoe, vsgshoe, ROT0, "Nintendo", "Vs. Gumshoe" )
2821
2822 /* Not Working */
2823 GAMEX(1985, smgolfb, smgolf, vsnes, golf, machridr, ROT0, "Nintendo", "Vs. Stroke and Match Golf (Men set 2)", GAME_NOT_WORKING )
2824 GAMEX(1984, vsbbaljb, vsbball, vsdual, vsbballj, vsbball, ROT0, "Nintendo of America", "Vs. BaseBall (Japan set 3)", GAME_NOT_WORKING )
2825