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