1 /***************************************************************************
2 
3   Legendary Wings
4   Section Z
5   Trojan
6   Avengers
7 
8   Driver provided by Paul Leaman
9 
10 To Do:
11 -	sectionz does "false contacts" on the coin counters, causing them to
12 	increment twice per coin.
13 -	clean up Avengers protection; it currently checks against hard-coded program
14 	counter rather than behaving as a memory-mapped black box.
15 
16 
17 Change Log:
18 
19 FEB-2003 (AT)
20 
21 - bug fixes:
22 
23     avengers061gre: missing sound effects in Avengers
24   avengers37b16gre: screen artifacts in Avengers
25     lwingsc37b7gre: incorrect sprite clipping in all games
26 
27 Notes:
28 
29   avengers061gre2: corrupted graphics in Avengers' ending not fixed.
30   This bug is not in the Japanese set "Buraiken".
31   It might just be a bug in the original: the tiles for the character
32   image are just not present in the US version, replaced by more tiles
33   for the title animation. The tile map ROM is the same between the two
34   versions.
35 
36   trojan37b1gre: stage 2-1 boss x flip glitches not fixed.
37   This could be a side effect of sprite RAM buffering. Suggest buffering
38   on-screen content instead of sprite memory.
39 
40   Previous clock settings were too low. Sometimes Avengers and Trojan
41   could not finish clearing VRAM before a new frame is drawn and left
42   behind screen artifacts. Avengers' second CPU was forced to pre-empt
43   during soundlatch operations, resulting in double or missing sound
44   effects.
45 
46 ***************************************************************************/
47 
48 #include "driver.h"
49 #include "vidhrdw/generic.h"
50 #include "lwings.h"
51 
52 /* Avengers runs on hardware almost identical to Trojan, but with a protection
53  * device and some small changes to the memory map and videohardware.
54  *
55  * Background colors are fetched 64 bytes at a time and copied to palette RAM.
56  *
57  * Another function takes as input 2 pairs of (x,y) coordinates, and returns
58  * a code reflecting the direction (8 angles) from one point to the other.
59  */
60 static data8_t avengers_param[4];
61 static int avengers_palette_pen;
62 static data8_t *avengers_soundlatch2, avengers_soundstate=0;
63 static data8_t avengers_adpcm;
64 
WRITE_HANDLER(avengers_adpcm_w)65 WRITE_HANDLER( avengers_adpcm_w )
66 {
67 	avengers_adpcm = data;
68 }
69 
READ_HANDLER(avengers_adpcm_r)70 READ_HANDLER( avengers_adpcm_r )
71 {
72 	return avengers_adpcm;
73 }
74 
WRITE_HANDLER(lwings_bankswitch_w)75 static WRITE_HANDLER( lwings_bankswitch_w )
76 {
77 	unsigned char *RAM;
78 	int bank;
79 
80 	/* bit 0 is flip screen */
81 	flip_screen_set(~data & 0x01);
82 
83 	/* bits 1 and 2 select ROM bank */
84 	RAM = memory_region(REGION_CPU1);
85 	bank = (data & 0x06) >> 1;
86 	cpu_setbank(1,&RAM[0x10000 + bank*0x4000]);
87 
88 	/* bit 3 enables NMI */
89 	interrupt_enable_w(0,data & 0x08);
90 
91 	/* bits 6 and 7 are coin counters */
92 	coin_counter_w(1,data & 0x40);
93 	coin_counter_w(0,data & 0x80);
94 }
95 
INTERRUPT_GEN(lwings_interrupt)96 static INTERRUPT_GEN( lwings_interrupt )
97 {
98 	if (interrupt_enable_r(0))
99 		cpu_set_irq_line_and_vector(0,0,HOLD_LINE,0xd7); /* RST 10h */
100 }
101 
INTERRUPT_GEN(avengers_interrupt)102 static INTERRUPT_GEN( avengers_interrupt )
103 {
104 	if( cpu_getiloops()==0 )
105 		irq0_line_hold();
106 	else
107 		nmi_line_pulse();
108 }
109 
WRITE_HANDLER(avengers_protection_w)110 static WRITE_HANDLER( avengers_protection_w )
111 {
112 	int pc = activecpu_get_pc();
113 
114 	if( pc == 0x2eeb )
115 	{
116 		avengers_param[0] = data;
117 	}
118 	else if( pc == 0x2f09 )
119 	{
120 		avengers_param[1] = data;
121 	}
122 	else if( pc == 0x2f26 )
123 	{
124 		avengers_param[2] = data;
125 	}
126 	else if( pc == 0x2f43 )
127 	{
128 		avengers_param[3] = data;
129 	}
130 	else if( pc == 0x0445 )
131 	{
132 		avengers_soundstate = 0x80;
133 		soundlatch_w( 0, data );
134 	}
135 }
136 
WRITE_HANDLER(avengers_prot_bank_w)137 static WRITE_HANDLER( avengers_prot_bank_w )
138 {
139 	avengers_palette_pen = data*64;
140 }
141 
avengers_fetch_paldata(void)142 static int avengers_fetch_paldata( void )
143 {
144 	const char pal_data[] =
145 	/* page 1: 0x03,0x02,0x01,0x00 */
146 	"0000000000000000" "A65486A6364676D6" "C764C777676778A7" "A574E5E5C5756AE5"
147 	"0000000000000000" "F51785D505159405" "A637B6A636269636" "F45744E424348824"
148 	"0000000000000000" "A33263B303330203" "4454848454440454" "A27242C232523632"
149 	"0000000000000000" "1253327202421102" "3386437373631373" "41A331A161715461"
150 	"0000000000000000" "1341715000711203" "4442635191622293" "5143D48383D37186"
151 	"0000000000000000" "2432423000412305" "6633343302333305" "7234A565A5A4A2A8"
152 	"0000000000000000" "46232422A02234A7" "88241624A21454A7" "A3256747A665D3AA"
153 	"0000000000000000" "070406020003050B" "0A05090504050508" "05060A090806040C"
154 
155 	/* page2: 0x07,0x06,0x05,0x04 */
156 	"0000000000000000" "2472030503230534" "6392633B23433B53" "0392846454346423"
157 	"0000000000000000" "1313052405050423" "3223754805354832" "323346A38686A332"
158 	"0000000000000000" "72190723070723D2" "81394776070776D1" "A15929F25959F2F1"
159 	"0000000000000000" "650706411A2A1168" "770737C43A3A3466" "87071F013C0C3175"
160 	"0000000000000000" "2001402727302020" "4403048F4A484344" "4A050B074E0E4440"
161 	"0000000000000000" "3003800C35683130" "5304035C587C5453" "5607080C5B265550"
162 	"0000000000000000" "4801D00043854245" "6C020038669A6569" "6604050A69446764"
163 	"0000000000000000" "0504000001030504" "0A05090504060307" "04090D0507010403"
164 
165 	/* page3: 0x0b,0x0a,0x09,0x08 */
166 	"0000000000000000" "685A586937F777F7" "988A797A67A7A7A7" "B8CA898DC737F787"
167 	"0000000000000000" "4738A61705150505" "8797672835250535" "7777072A25350525"
168 	"0000000000000000" "3525642404340404" "6554453554440454" "5544053634540434"
169 	"0000000000000000" "2301923203430303" "4333834383630373" "3324034473730363"
170 	"0000000000000000" "3130304000762005" "5352525291614193" "6463635483D06581"
171 	"0000000000000000" "4241415100483107" "6463631302335304" "76757415A5A077A3"
172 	"0000000000000000" "53525282A02A43AA" "76747424A31565A5" "88888536A66089A4"
173 	"0000000000000000" "05040304000D050C" "0806050604070707" "0A0A060808000C06"
174 
175 	/* page4: 0x0f,0x0e,0x0d,0x0c */
176 	"0000000000000000" "3470365956342935" "5590578997554958" "73C078A8C573687A"
177 	"0000000000000000" "5355650685030604" "2427362686042607" "010A070584010508"
178 	"0000000000000000" "0208432454022403" "737A243455733406" "000D050353000307"
179 	"0000000000000000" "000A023233003202" "424C134234424204" "000F241132001105"
180 	"0000000000000000" "3031113030300030" "5152215252512051" "7273337374723272"
181 	"0000000000000000" "4141214041411041" "6263326363623162" "8385448585834383"
182 	"0000000000000000" "5153225152512051" "7375437475734273" "9598559697946495"
183 	"0000000000000000" "0205020303020102" "0407040606040304" "060A060809060506"
184 
185 	/* page5: 0x13,0x12,0x11,0x10 */
186 	"0000000000000000" "4151D141D3D177F7" "5454C44482C4A7A7" "0404D45491D4F787"
187 	"0000000000000000" "0303032374230505" "9696962673560535" "0505054502850525"
188 	"0000000000000000" "0303030355030404" "7777770754470454" "0606060603760434"
189 	"0000000000000000" "0505053547050303" "4949492945390373" "0808083804580363"
190 	"0000000000000000" "0B0C444023442005" "3D3F333433334193" "0000043504046581"
191 	"0000000000000000" "0809565085863107" "0B6A352374455304" "00700644050677A3"
192 	"0000000000000000" "06073879C8C843AA" "09492739A58765A5" "0050084A060889A4"
193 	"0000000000000000" "05060B070B0B050C" "0707090707090707" "00000B08070B0C06"
194 
195 	/* page6: 0x17,0x16,0x15,0x14 */
196 	"0000000000000000" "0034308021620053" "0034417042512542" "0034526064502E31"
197 	"0000000000000000" "0106412032733060" "11A6522053628350" "22A6632072620D42"
198 	"0000000000000000" "1308223052242080" "2478233071235170" "3578243090230960"
199 	"0000000000000000" "2111334333331404" "3353324232324807" "45B5314131310837"
200 	"0000000000000000" "3232445444445302" "445443534343B725" "567642524242B745"
201 	"0000000000000000" "4343556555550201" "5575546454540524" "6787536353537554"
202 	"0000000000000000" "6474667676660100" "7696657575650423" "88A8647474645473"
203 	"0000000000000000" "0001070701050004" "0003060603040303" "0005050505040302";
204 
205 	int bank = avengers_palette_pen/64;
206 	int offs = avengers_palette_pen%64;
207 	int page = bank/4;					/* 0..7 */
208 	int base = (3-(bank&3));			/* 0..3 */
209 	int row = offs&0xf;					/* 0..15 */
210 	int col = offs/16 + base*4;			/* 0..15 */
211 	int digit0 = pal_data[page*256*2 + (31-row*2)*16+col];
212 	int digit1 = pal_data[page*256*2 + (30-row*2)*16+col];
213 	int result;
214 
215 	if( digit0>='A' ) digit0 += 10 - 'A'; else digit0 -= '0';
216 	if( digit1>='A' ) digit1 += 10 - 'A'; else digit1 -= '0';
217 	result = digit0 * 16 + digit1;
218 
219 	if( (avengers_palette_pen&0x3f)!=0x3f ) avengers_palette_pen++;
220 
221 	return result;
222 }
223 
READ_HANDLER(avengers_protection_r)224 static READ_HANDLER( avengers_protection_r )
225 {
226 	const int xpos[8] = { 10, 7,  0, -7, -10, -7,   0,  7 };
227 	const int ypos[8] = {  0, 7, 10,  7,   0, -7, -10, -7 };
228 	int best_dist = 0;
229 	int best_dir = 0;
230 	int x,y;
231 	int dx,dy,dist,dir;
232 
233 	if( activecpu_get_pc() == 0x7c7 )
234 	{
235 		/* palette data */
236 		return avengers_fetch_paldata();
237 	}
238 
239 	/*	Point to Angle Function
240 
241 		Input: two cartesian points
242 		Output: direction code (north,northeast,east,...)
243 	 */
244 	x = avengers_param[0] - avengers_param[2];
245 	y = avengers_param[1] - avengers_param[3];
246 	for( dir=0; dir<8; dir++ )
247 	{
248 		dx = xpos[dir]-x;
249 		dy = ypos[dir]-y;
250 		dist = dx*dx+dy*dy;
251 		if( dist < best_dist || dir==0 )
252 		{
253 			best_dir = dir;
254 			best_dist = dist;
255 		}
256 	}
257 	return best_dir<<5;
258 }
259 
READ_HANDLER(avengers_soundlatch2_r)260 static READ_HANDLER( avengers_soundlatch2_r )
261 {
262 	data8_t data = *avengers_soundlatch2 | avengers_soundstate;
263 	avengers_soundstate = 0;
264 	return(data);
265 }
266 
WRITE_HANDLER(msm5205_w)267 static WRITE_HANDLER( msm5205_w )
268 {
269 	MSM5205_reset_w(offset,(data>>7)&1);
270 	MSM5205_data_w(offset,data);
271 	MSM5205_vclk_w(offset,1);
272 	MSM5205_vclk_w(offset,0);
273 }
274 
MEMORY_READ_START(avengers_readmem)275 static MEMORY_READ_START( avengers_readmem )
276 	{ 0x0000, 0x7fff, MRA_ROM },
277 	{ 0x8000, 0xbfff, MRA_BANK1 },
278 	{ 0xc000, 0xf7ff, MRA_RAM },
279 	{ 0xf808, 0xf808, input_port_0_r },
280 	{ 0xf809, 0xf809, input_port_1_r },
281 	{ 0xf80a, 0xf80a, input_port_2_r },
282 	{ 0xf80b, 0xf80b, input_port_3_r },
283 	{ 0xf80c, 0xf80c, input_port_4_r },
284 	{ 0xf80d, 0xf80d, avengers_protection_r },
285 MEMORY_END
286 
287 static MEMORY_WRITE_START( avengers_writemem )
288 	{ 0x0000, 0xbfff, MWA_ROM },
289 	{ 0xc000, 0xddff, MWA_RAM },
290 	{ 0xde00, 0xdf7f, MWA_RAM, &spriteram, &spriteram_size },
291 	{ 0xdf80, 0xdfff, MWA_RAM },
292 	{ 0xe000, 0xe7ff, lwings_fgvideoram_w, &lwings_fgvideoram },
293 	{ 0xe800, 0xefff, lwings_bg1videoram_w, &lwings_bg1videoram },
294 	{ 0xf000, 0xf3ff, paletteram_RRRRGGGGBBBBxxxx_split2_w, &paletteram_2 },
295 	{ 0xf400, 0xf7ff, paletteram_RRRRGGGGBBBBxxxx_split1_w, &paletteram },
296 	{ 0xf800, 0xf801, lwings_bg1_scrollx_w },
297 	{ 0xf802, 0xf803, lwings_bg1_scrolly_w },
298 	{ 0xf804, 0xf804, trojan_bg2_scrollx_w },
299 	{ 0xf805, 0xf805, trojan_bg2_image_w },
300 	{ 0xf808, 0xf808, MWA_NOP }, /* ? */
301 	{ 0xf809, 0xf809, avengers_protection_w },
302 	{ 0xf80c, 0xf80c, avengers_prot_bank_w },
303 	{ 0xf80d, 0xf80d, avengers_adpcm_w },
304 	{ 0xf80e, 0xf80e, lwings_bankswitch_w },
305 MEMORY_END
306 
307 static MEMORY_READ_START( readmem ) /* common to trojan and lwings */
308 	{ 0x0000, 0x7fff, MRA_ROM },
309 	{ 0x8000, 0xbfff, MRA_BANK1 },
310 	{ 0xc000, 0xf7ff, MRA_RAM },
311 	{ 0xf808, 0xf808, input_port_0_r },
312 	{ 0xf809, 0xf809, input_port_1_r },
313 	{ 0xf80a, 0xf80a, input_port_2_r },
314 	{ 0xf80b, 0xf80b, input_port_3_r },
315 	{ 0xf80c, 0xf80c, input_port_4_r },
316 MEMORY_END
317 
318 static MEMORY_WRITE_START( writemem ) /* lwings */
319 	{ 0x0000, 0xbfff, MWA_ROM },
320 	{ 0xc000, 0xddff, MWA_RAM },
321 	{ 0xde00, 0xdfff, MWA_RAM, &spriteram, &spriteram_size },
322 	{ 0xe000, 0xe7ff, lwings_fgvideoram_w, &lwings_fgvideoram },
323 	{ 0xe800, 0xefff, lwings_bg1videoram_w, &lwings_bg1videoram },
324 	{ 0xf000, 0xf3ff, paletteram_RRRRGGGGBBBBxxxx_split2_w, &paletteram_2 },
325 	{ 0xf400, 0xf7ff, paletteram_RRRRGGGGBBBBxxxx_split1_w, &paletteram },
326 	{ 0xf808, 0xf809, lwings_bg1_scrollx_w },
327 	{ 0xf80a, 0xf80b, lwings_bg1_scrolly_w },
328 	{ 0xf80c, 0xf80c, soundlatch_w },
329 	{ 0xf80d, 0xf80d, watchdog_reset_w },
330 	{ 0xf80e, 0xf80e, lwings_bankswitch_w },
331 MEMORY_END
332 
333 static MEMORY_WRITE_START( trojan_writemem )
334 	{ 0x0000, 0xbfff, MWA_ROM },
335 	{ 0xc000, 0xddff, MWA_RAM },
336 	{ 0xde00, 0xdf7f, MWA_RAM, &spriteram, &spriteram_size },
337 	{ 0xdf80, 0xdfff, MWA_RAM },
338 	{ 0xe000, 0xe7ff, lwings_fgvideoram_w, &lwings_fgvideoram },
339 	{ 0xe800, 0xefff, lwings_bg1videoram_w, &lwings_bg1videoram },
340 	{ 0xf000, 0xf3ff, paletteram_RRRRGGGGBBBBxxxx_split2_w, &paletteram_2 },
341 	{ 0xf400, 0xf7ff, paletteram_RRRRGGGGBBBBxxxx_split1_w, &paletteram },
342 	{ 0xf800, 0xf801, lwings_bg1_scrollx_w },
343 	{ 0xf802, 0xf803, lwings_bg1_scrolly_w },
344 	{ 0xf804, 0xf804, trojan_bg2_scrollx_w },
345 	{ 0xf805, 0xf805, trojan_bg2_image_w },
346 	{ 0xf808, 0xf808, MWA_NOP }, /* watchdog */
347 	{ 0xf80c, 0xf80c, soundlatch_w },
348 	{ 0xf80d, 0xf80d, soundlatch2_w },
349 	{ 0xf80e, 0xf80e, lwings_bankswitch_w },
350 MEMORY_END
351 
352 static MEMORY_READ_START( sound_readmem )
353 	{ 0x0000, 0x7fff, MRA_ROM },
354 	{ 0xc000, 0xc7ff, MRA_RAM },
355 	{ 0xc800, 0xc800, soundlatch_r },
356 	{ 0xe006, 0xe006, avengers_soundlatch2_r }, /*AT: (avengers061gre)*/
357 MEMORY_END
358 
359 static MEMORY_WRITE_START( sound_writemem )
360 	{ 0x0000, 0x7fff, MWA_ROM },
361 	{ 0xc000, 0xc7ff, MWA_RAM },
362 	{ 0xe000, 0xe000, YM2203_control_port_0_w },
363 	{ 0xe001, 0xe001, YM2203_write_port_0_w },
364 	{ 0xe002, 0xe002, YM2203_control_port_1_w },
365 	{ 0xe003, 0xe003, YM2203_write_port_1_w },
366 	{ 0xe006, 0xe006, MWA_RAM, &avengers_soundlatch2 },
367 MEMORY_END
368 
369 static MEMORY_READ_START( adpcm_readmem )
370 	{ 0x0000, 0xffff, MRA_ROM },
371 MEMORY_END
372 
373 /* Yes, _no_ ram */
374 static MEMORY_WRITE_START( adpcm_writemem )
375 /*	{ 0x0000, 0xffff, MWA_ROM }, avoid cluttering up error.log */
376 	{ 0x0000, 0xffff, MWA_NOP },
377 MEMORY_END
378 
379 static PORT_READ_START( avengers_adpcm_readport )
380 	{ 0x00, 0x00, avengers_adpcm_r },
381 PORT_END
382 
383 static PORT_READ_START( adpcm_readport )
384 	{ 0x00, 0x00, soundlatch_r },
385 PORT_END
386 
387 static PORT_READ_START( trojan_adpcm_readport )
388 	{ 0x00, 0x00, soundlatch2_r },
389 PORT_END
390 
391 static PORT_WRITE_START( adpcm_writeport )
392 	{ 0x01, 0x01, msm5205_w },
393 PORT_END
394 
395 INPUT_PORTS_START( sectionz )
396 	PORT_START      /* IN0 */
397 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
398 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
399 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
400 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
401 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
402 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
403 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
404 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
405 
406 	PORT_START      /* IN1 */
407 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
408 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
409 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
410 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
411 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
412 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
413 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
414 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
415 
416 	PORT_START      /* IN2 */
417 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL )
418 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_COCKTAIL )
419 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_COCKTAIL )
420 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_COCKTAIL )
421 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
422 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
423 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
424 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
425 
426 	PORT_START      /* DSW0 */
427 	PORT_SERVICE( 0x01, IP_ACTIVE_LOW )
428 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
429 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
430 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
431 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Lives ) )
432 	PORT_DIPSETTING(    0x04, "2" )
433 	PORT_DIPSETTING(    0x0c, "3" )
434 	PORT_DIPSETTING(    0x08, "4" )
435 	PORT_DIPSETTING(    0x00, "5" )
436 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) )
437 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) )
438 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
439 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
440 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) )
441 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coin_B ) )
442 	PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
443 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_1C ) )
444 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_2C ) )
445 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) )
446 
447 	PORT_START      /* DSW1 */
448 	PORT_DIPNAME( 0x01, 0x01, "Allow Continue" )
449 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
450 	PORT_DIPSETTING(    0x01, DEF_STR( Yes ) )
451 	PORT_DIPNAME( 0x06, 0x06, DEF_STR( Difficulty ) )
452 	PORT_DIPSETTING(    0x02, "Easy" )
453 	PORT_DIPSETTING(    0x06, "Normal" )
454 	PORT_DIPSETTING(    0x04, "Difficult" )
455 	PORT_DIPSETTING(    0x00, "Very Difficult" )
456 	PORT_DIPNAME( 0x38, 0x38, DEF_STR( Bonus_Life ) )
457 	PORT_DIPSETTING(    0x38, "20000 50000" )
458 	PORT_DIPSETTING(    0x18, "20000 60000" )
459 	PORT_DIPSETTING(    0x28, "20000 70000" )
460 	PORT_DIPSETTING(    0x08, "30000 60000" )
461 	PORT_DIPSETTING(    0x30, "30000 70000" )
462 	PORT_DIPSETTING(    0x10, "30000 80000" )
463 	PORT_DIPSETTING(    0x20, "40000 100000" )
464 	PORT_DIPSETTING(    0x00, "None" )
465 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Cabinet ) )
466 	PORT_DIPSETTING(    0x00, "Upright One Player" )
467 	PORT_DIPSETTING(    0x40, "Upright Two Players" )
468 /*      PORT_DIPSETTING(    0x80, "???" )       probably unused */
469 	PORT_DIPSETTING(    0xc0, DEF_STR( Cocktail ) )
470 INPUT_PORTS_END
471 
472 INPUT_PORTS_START( lwings )
473 	PORT_START      /* IN0 */
474 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
475 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
476 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
477 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
478 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
479 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
480 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
481 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
482 
483 	PORT_START      /* IN1 */
484 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
485 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
486 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
487 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
488 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
489 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
490 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
491 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
492 
493 	PORT_START      /* IN2 */
494 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 )
495 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER2 )
496 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER2 )
497 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER2 )
498 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
499 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
500 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
501 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
502 
503 	PORT_START      /* DSW0 */
504 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )
505 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
506 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
507 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
508 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
509 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
510 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Lives ) )
511 	PORT_DIPSETTING(    0x0c, "3" )
512 	PORT_DIPSETTING(    0x04, "4" )
513 	PORT_DIPSETTING(    0x08, "5" )
514 	PORT_DIPSETTING(    0x00, "6" )
515 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_B ) )
516 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) )
517 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
518 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
519 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) )
520 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coin_A ) )
521 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_1C ) )
522 	PORT_DIPSETTING(    0x00, DEF_STR( 2C_4C ) )
523 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_2C ) )
524 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) )
525 
526 	PORT_START      /* DSW1 */
527 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )
528 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
529 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
530 	PORT_DIPNAME( 0x06, 0x06, DEF_STR( Difficulty ) )
531 	PORT_DIPSETTING(    0x02, "Easy" )
532 	PORT_DIPSETTING(    0x06, "Medium" )
533 	PORT_DIPSETTING(    0x04, "Hard" )
534 	PORT_DIPSETTING(    0x00, "Hardest" )
535 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
536 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
537 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
538 	PORT_DIPNAME( 0x10, 0x10, "Allow Continue" )
539 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
540 	PORT_DIPSETTING(    0x10, DEF_STR( Yes ) )
541 	PORT_DIPNAME( 0xe0, 0xe0, DEF_STR( Bonus_Life ) )
542 	PORT_DIPSETTING(    0xe0, "20000 and every 50000" )
543 	PORT_DIPSETTING(    0x60, "20000 and every 60000" )
544 	PORT_DIPSETTING(    0xa0, "20000 and every 70000" )
545 	PORT_DIPSETTING(    0x20, "30000 and every 60000" )
546 	PORT_DIPSETTING(    0xc0, "30000 and every 70000" )
547 	PORT_DIPSETTING(    0x40, "30000 and every 80000" )
548 	PORT_DIPSETTING(    0x80, "40000 and every 100000" )
549 	PORT_DIPSETTING(    0x00, "None" )
550 INPUT_PORTS_END
551 
552 INPUT_PORTS_START( trojan )
553 	PORT_START      /* IN0 */
554 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
555 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
556 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
557 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
558 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
559 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
560 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
561 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
562 
563 	PORT_START      /* IN1 */
564 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
565 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
566 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
567 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
568 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
569 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
570 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
571 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
572 
573 	PORT_START      /* IN2 */
574 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL )
575 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_COCKTAIL )
576 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_COCKTAIL )
577 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_COCKTAIL )
578 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
579 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
580 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
581 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
582 
583 	PORT_START      /* DSW0 */
584 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Cabinet ) )
585 	PORT_DIPSETTING(    0x00, "Upright 1 Player" )
586 	PORT_DIPSETTING(    0x02, "Upright 2 Players" )
587 	PORT_DIPSETTING(    0x03, DEF_STR( Cocktail ) )
588 /* 0x01 same as 0x02 or 0x03 */
589 	PORT_DIPNAME( 0x1c, 0x1c, DEF_STR( Bonus_Life ) )
590 	PORT_DIPSETTING(    0x10, "20000 60000" )
591 	PORT_DIPSETTING(    0x0c, "20000 70000" )
592 	PORT_DIPSETTING(    0x08, "20000 80000" )
593 	PORT_DIPSETTING(    0x1c, "30000 60000" )
594 	PORT_DIPSETTING(    0x18, "30000 70000" )
595 	PORT_DIPSETTING(    0x14, "30000 80000" )
596 	PORT_DIPSETTING(    0x04, "40000 80000" )
597 	PORT_DIPSETTING(    0x00, "None" )
598 	PORT_DIPNAME( 0xe0, 0xe0, "Starting Level" )
599 	PORT_DIPSETTING(    0xe0, "1" )
600 	PORT_DIPSETTING(    0xc0, "2" )
601 	PORT_DIPSETTING(    0xa0, "3" )
602 	PORT_DIPSETTING(    0x80, "4" )
603 	PORT_DIPSETTING(    0x60, "5" )
604 	PORT_DIPSETTING(    0x40, "6" )
605 /* 0x00 and 0x20 start at level 6 */
606 
607 	PORT_START      /* DSW1 */
608 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) )
609 	PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
610 	PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
611 	PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
612 	PORT_DIPSETTING(    0x01, DEF_STR( 1C_3C ) )
613 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) )
614 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) )
615 	PORT_DIPSETTING(    0x04, DEF_STR( 3C_1C ) )
616 	PORT_DIPSETTING(    0x08, DEF_STR( 2C_1C ) )
617 	PORT_DIPSETTING(    0x0c, DEF_STR( 1C_1C ) )
618 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
619 	PORT_DIPSETTING(    0x20, "2" )
620 	PORT_DIPSETTING(    0x30, "3" )
621 	PORT_DIPSETTING(    0x10, "4" )
622 	PORT_DIPSETTING(    0x00, "5" )
623 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) )
624 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
625 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
626 	PORT_DIPNAME( 0x80, 0x80, "Allow Continue" )
627 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
628 	PORT_DIPSETTING(    0x80, DEF_STR( Yes ) )
629 INPUT_PORTS_END
630 
631 /* Trojan with level selection - starting level dip switches not used */
632 INPUT_PORTS_START( trojanls )
633 	PORT_START      /* IN0 */
634 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
635 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
636 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
637 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
638 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
639 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
640 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
641 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
642 
643 	PORT_START      /* IN1 */
644 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
645 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
646 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
647 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
648 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
649 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
650 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
651 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
652 
653 	PORT_START      /* IN2 */
654 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL )
655 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_COCKTAIL )
656 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_COCKTAIL )
657 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_COCKTAIL )
658 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
659 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
660 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
661 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
662 
663 	PORT_START      /* DSW0 */
664 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Cabinet ) )
665 	PORT_DIPSETTING(    0x00, "Upright 1 Player" )
666 	PORT_DIPSETTING(    0x02, "Upright 2 Players" )
667 	PORT_DIPSETTING(    0x03, DEF_STR( Cocktail ) )
668 /* 0x01 same as 0x02 or 0x03 */
669 	PORT_DIPNAME( 0x1c, 0x1c, DEF_STR( Bonus_Life ) )
670 	PORT_DIPSETTING(    0x10, "20000 60000" )
671 	PORT_DIPSETTING(    0x0c, "20000 70000" )
672 	PORT_DIPSETTING(    0x08, "20000 80000" )
673 	PORT_DIPSETTING(    0x1c, "30000 60000" )
674 	PORT_DIPSETTING(    0x18, "30000 70000" )
675 	PORT_DIPSETTING(    0x14, "30000 80000" )
676 	PORT_DIPSETTING(    0x04, "40000 80000" )
677 	PORT_DIPSETTING(    0x00, "None" )
678 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
679 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
680 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
681 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
682 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
683 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
684 	PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
685 	PORT_DIPSETTING(    0x80, DEF_STR( Off ) )
686 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
687 
688 	PORT_START      /* DSW1 */
689 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) )
690 	PORT_DIPSETTING(    0x00, DEF_STR( 2C_1C ) )
691 	PORT_DIPSETTING(    0x03, DEF_STR( 1C_1C ) )
692 	PORT_DIPSETTING(    0x02, DEF_STR( 1C_2C ) )
693 	PORT_DIPSETTING(    0x01, DEF_STR( 1C_3C ) )
694 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) )
695 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) )
696 	PORT_DIPSETTING(    0x04, DEF_STR( 3C_1C ) )
697 	PORT_DIPSETTING(    0x08, DEF_STR( 2C_1C ) )
698 	PORT_DIPSETTING(    0x0c, DEF_STR( 1C_1C ) )
699 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) )
700 	PORT_DIPSETTING(    0x20, "2" )
701 	PORT_DIPSETTING(    0x30, "3" )
702 	PORT_DIPSETTING(    0x10, "4" )
703 	PORT_DIPSETTING(    0x00, "5" )
704 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) )
705 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
706 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
707 	PORT_DIPNAME( 0x80, 0x80, "Allow Continue" )
708 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
709 	PORT_DIPSETTING(    0x80, DEF_STR( Yes ) )
710 INPUT_PORTS_END
711 
712 INPUT_PORTS_START( avengers )
713 	PORT_START      /* IN0 */
714 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
715 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
716 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
717 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
718 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
719 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
720 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
721 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
722 
723 	PORT_START      /* IN1 */
724 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
725 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
726 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
727 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
728 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
729 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
730 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
731 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
732 
733 	PORT_START      /* IN2 */
734 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_PLAYER2 )
735 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_PLAYER2 )
736 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_PLAYER2 )
737 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_PLAYER2 )
738 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_PLAYER2 )
739 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_PLAYER2 )
740 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
741 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )    /* probably unused */
742 
743 	PORT_START      /* DSWB */
744 	PORT_DIPNAME( 0x01, 0x01, "Allow Continue" )
745 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
746 	PORT_DIPSETTING(    0x01, DEF_STR( Yes ) )
747 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) )
748 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
749 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
750 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) )
751 	PORT_DIPSETTING(    0x04, "Easy" )
752 	PORT_DIPSETTING(    0x0c, "Normal" )
753 	PORT_DIPSETTING(    0x08, "Hard" )
754 	PORT_DIPSETTING(    0x00, "Very Hard" )
755 	PORT_DIPNAME( 0x30, 0x30, "Bonus" )
756 	PORT_DIPSETTING(    0x30, "20k 60k" )
757 	PORT_DIPSETTING(    0x10, "20k 70k" )
758 	PORT_DIPSETTING(    0x20, "20k 80k" )
759 	PORT_DIPSETTING(    0x00, "30k 80k" )
760 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Lives ) )
761 	PORT_DIPSETTING(    0xc0, "3" )
762 	PORT_DIPSETTING(    0x40, "4" )
763 	PORT_DIPSETTING(    0x80, "5" )
764 	PORT_DIPSETTING(    0x00, "6" )
765 
766 	PORT_START      /* DSWA */
767 	PORT_SERVICE( 0x01, IP_ACTIVE_LOW )
768 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
769 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
770 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
771 	PORT_DIPNAME( 0x1c, 0x1c, DEF_STR( Coin_B ) )
772 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) )
773 	PORT_DIPSETTING(    0x10, DEF_STR( 3C_1C ) )
774 	PORT_DIPSETTING(    0x08, DEF_STR( 2C_1C ) )
775 	PORT_DIPSETTING(    0x1c, DEF_STR( 1C_1C ) )
776 	PORT_DIPSETTING(    0x0c, DEF_STR( 1C_2C ) )
777 	PORT_DIPSETTING(    0x14, DEF_STR( 1C_3C ) )
778 	PORT_DIPSETTING(    0x04, DEF_STR( 1C_4C ) )
779 	PORT_DIPSETTING(    0x18, DEF_STR( 1C_6C ) )
780 	PORT_DIPNAME( 0xe0, 0xe0, DEF_STR( Coin_A ) )
781 	PORT_DIPSETTING(    0x00, DEF_STR( 4C_1C ) )
782 	PORT_DIPSETTING(    0x80, DEF_STR( 3C_1C ) )
783 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_1C ) )
784 	PORT_DIPSETTING(    0xe0, DEF_STR( 1C_1C ) )
785 	PORT_DIPSETTING(    0x60, DEF_STR( 1C_2C ) )
786 	PORT_DIPSETTING(    0xa0, DEF_STR( 1C_3C ) )
787 	PORT_DIPSETTING(    0x20, DEF_STR( 1C_4C ) )
788 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
789 INPUT_PORTS_END
790 
791 static struct GfxLayout charlayout =
792 {
793 	8,8,
794 	RGN_FRAC(1,1),
795 	2,
796 	{ 0, 4 },
797 	{ 0, 1, 2, 3, 8+0, 8+1, 8+2, 8+3 },
798 	{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16 },
799 	16*8
800 };
801 
802 static struct GfxLayout spritelayout =
803 {
804 	16,16,
805 	RGN_FRAC(1,2),
806 	4,
807 	{ RGN_FRAC(1,2)+4, RGN_FRAC(1,2)+0, 4, 0 },
808 	{ 0, 1, 2, 3, 8+0, 8+1, 8+2, 8+3,
809 			32*8+0, 32*8+1, 32*8+2, 32*8+3, 33*8+0, 33*8+1, 33*8+2, 33*8+3 },
810 	{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
811 			8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
812 	64*8
813 };
814 
815 static struct GfxLayout bg1_tilelayout =
816 {
817 	16,16,
818 	RGN_FRAC(1,4),
819 	4,
820 	{ RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) },
821 	{ 0, 1, 2, 3, 4, 5, 6, 7,
822 			16*8+0, 16*8+1, 16*8+2, 16*8+3, 16*8+4, 16*8+5, 16*8+6, 16*8+7 },
823 	{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
824 			8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
825 	32*8
826 };
827 
828 static struct GfxLayout bg2_tilelayout =
829 {
830 	16,16,
831 	RGN_FRAC(1,2),
832 	4,
833 	{ RGN_FRAC(1,2)+0, RGN_FRAC(1,2)+4, 0, 4 },
834 	{ 0, 1, 2, 3, 8+0, 8+1, 8+2, 8+3,
835 			32*8+0, 32*8+1, 32*8+2, 32*8+3, 33*8+0, 33*8+1, 33*8+2, 33*8+3 },
836 	{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
837 			8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
838 	64*8
839 };
840 
841 
842 static struct GfxDecodeInfo gfxdecodeinfo[] =
843 {
844 	{ REGION_GFX1, 0, &charlayout,     512, 16 }, /* colors 512-575 */
845 	{ REGION_GFX2, 0, &bg1_tilelayout,   0,  8 }, /* colors   0-127 */
846 	{ REGION_GFX3, 0, &spritelayout,   384,  8 }, /* colors 384-511 */
847 	{ -1 } /* end of array */
848 };
849 
850 static struct GfxDecodeInfo gfxdecodeinfo_trojan[] =
851 {
852 	{ REGION_GFX1, 0, &charlayout,     768, 16 }, /* colors 768-831 */
853 	{ REGION_GFX2, 0, &bg1_tilelayout, 256,  8 }, /* colors 256-383 */
854 	{ REGION_GFX3, 0, &spritelayout,   640,  8 }, /* colors 640-767 */
855 	{ REGION_GFX4, 0, &bg2_tilelayout,   0,  8 }, /* colors   0-127 */
856 	{ -1 } /* end of array */
857 };
858 
859 static struct YM2203interface ym2203_interface =
860 {
861 	2,			/* 2 chips */
862 	1500000,	/* 1.5 MHz (?) */
863 	{ YM2203_VOL(10,20), YM2203_VOL(10,20) },
864 	{ 0 },
865 	{ 0 },
866 	{ 0 },
867 	{ 0 }
868 };
869 
870 static struct MSM5205interface msm5205_interface =
871 {
872 	1,					/* 1 chip */
873 	384000,				/* 384KHz ? */
874 	{ 0 },				/* interrupt function */
875 	{ MSM5205_SEX_4B },	/* slave mode */
876 	{ 50 }
877 };
878 
879 static MACHINE_DRIVER_START( lwings )
880 
881 	/* basic machine hardware */
882 	MDRV_CPU_ADD(Z80, 6000000)        /* 4 MHz (?) */
883 	MDRV_CPU_MEMORY(readmem,writemem)
884 	MDRV_CPU_VBLANK_INT(lwings_interrupt,1)
885 
886 	MDRV_CPU_ADD(Z80, 4000000)
887 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)        /* 3 MHz (?) */
888 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
889 	MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
890 
891 	MDRV_FRAMES_PER_SECOND(60)
892 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
893 
894 	/* video hardware */
895 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
896 	MDRV_SCREEN_SIZE(32*8, 32*8)
897 	MDRV_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
898 	MDRV_GFXDECODE(gfxdecodeinfo)
899 	MDRV_PALETTE_LENGTH(1024)
900 
901 	MDRV_VIDEO_START(lwings)
902 	MDRV_VIDEO_EOF(lwings)
903 	MDRV_VIDEO_UPDATE(lwings)
904 
905 	/* sound hardware */
906 	MDRV_SOUND_ADD(YM2203, ym2203_interface)
907 MACHINE_DRIVER_END
908 
909 
910 static MACHINE_DRIVER_START( trojan )
911 
912 	/* basic machine hardware */
913 	MDRV_CPU_ADD(Z80, 6000000)        /* 4 MHz (?) */
914 	MDRV_CPU_MEMORY(readmem,trojan_writemem)
915 	MDRV_CPU_VBLANK_INT(lwings_interrupt,1)
916 
917 	MDRV_CPU_ADD(Z80, 4000000)
918 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)        /* 3 MHz (?) */
919 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
920 	MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
921 
922 	MDRV_CPU_ADD(Z80, 4000000) /* 3.579545 Mhz (?)*/
923 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* ? */
924 	MDRV_CPU_MEMORY(adpcm_readmem,adpcm_writemem)
925 	MDRV_CPU_PORTS(trojan_adpcm_readport,adpcm_writeport)
926 	MDRV_CPU_PERIODIC_INT(irq0_line_hold,4000)
927 
928 	MDRV_FRAMES_PER_SECOND(60)
929 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
930 
931 	/* video hardware */
932 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
933 	MDRV_SCREEN_SIZE(32*8, 32*8)
934 	MDRV_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
935 	MDRV_GFXDECODE(gfxdecodeinfo_trojan)
936 	MDRV_PALETTE_LENGTH(1024)
937 
938 	MDRV_VIDEO_START(trojan)
939 	MDRV_VIDEO_EOF(lwings)
940 	MDRV_VIDEO_UPDATE(trojan)
941 
942 	/* sound hardware */
943 	MDRV_SOUND_ADD(YM2203, ym2203_interface)
944 	MDRV_SOUND_ADD(MSM5205, msm5205_interface)
945 MACHINE_DRIVER_END
946 
947 
948 static MACHINE_DRIVER_START( avengers )
949 
950 	/* basic machine hardware */
951 	MDRV_CPU_ADD(Z80, 6000000) /*AT: (avengers37b16gre)*/
952 	MDRV_CPU_MEMORY(avengers_readmem,avengers_writemem)
953 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,1) /* RST 38h triggered by software*/
954 
955 	MDRV_CPU_ADD(Z80, 4000000)
956 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)        /* 3 MHz (?) */
957 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
958 	MDRV_CPU_VBLANK_INT(irq0_line_hold,4)
959 
960 	MDRV_CPU_ADD(Z80, 4000000) /* 3.579545 Mhz (?)*/
961 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* ? */
962 	MDRV_CPU_MEMORY(adpcm_readmem,adpcm_writemem)
963 	MDRV_CPU_PORTS(avengers_adpcm_readport,adpcm_writeport)
964 	MDRV_CPU_PERIODIC_INT(irq0_line_hold,4000)
965 
966 	MDRV_FRAMES_PER_SECOND(60)
967 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
968 
969 	/* video hardware */
970 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_BUFFERS_SPRITERAM)
971 	MDRV_SCREEN_SIZE(32*8, 32*8)
972 	MDRV_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
973 	MDRV_GFXDECODE(gfxdecodeinfo_trojan)
974 	MDRV_PALETTE_LENGTH(1024)
975 
976 	MDRV_VIDEO_START(avengers)
977 	MDRV_VIDEO_EOF(lwings)
978 	MDRV_VIDEO_UPDATE(trojan)
979 
980 	/* sound hardware */
981 	MDRV_SOUND_ADD(YM2203, ym2203_interface)
982 	MDRV_SOUND_ADD(MSM5205, msm5205_interface)
983 MACHINE_DRIVER_END
984 
985 /***************************************************************************
986 
987   Game driver(s)
988 
989 ***************************************************************************/
990 
991 ROM_START( lwings )
992 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
993 	ROM_LOAD( "6c_lw01.bin",  0x00000, 0x8000, CRC(b55a7f60) SHA1(e28cc540892a9ad050693900356744f8f5d05237) )
994 	ROM_LOAD( "7c_lw02.bin",  0x10000, 0x8000, CRC(a5efbb1b) SHA1(9126efa78fd39a50032826d0b4bd3acffceba508) )
995 	ROM_LOAD( "9c_lw03.bin",  0x18000, 0x8000, CRC(ec5cc201) SHA1(1043c6a9678c18fef920be91b0796c93b83e0f73) )
996 
997 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
998 	ROM_LOAD( "11e_lw04.bin", 0x0000, 0x8000, CRC(a20337a2) SHA1(649e13a69ad9154657894fa7bf7c6e49b029a506) )
999 
1000 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1001 	ROM_LOAD( "9h_lw05.bin",  0x00000, 0x4000, CRC(091d923c) SHA1(d686c860f147c4749ac1ee23cde5a7b570312622) ) /* characters */
1002 
1003 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1004 	ROM_LOAD( "3e_lw14.bin",  0x00000, 0x8000, CRC(5436392c) SHA1(c33925c87e61aad278bef57fe9a8148ff2d4377f) ) /* tiles */
1005 	ROM_LOAD( "1e_lw08.bin",  0x08000, 0x8000, CRC(b491bbbb) SHA1(474fc84667d978abfd5c9d94cf1e2ce55f70f865) )
1006 	ROM_LOAD( "3d_lw13.bin",  0x10000, 0x8000, CRC(fdd1908a) SHA1(0b2de3d2f8e50f11c57822147bec6f2d9c9ff586) )
1007 	ROM_LOAD( "1d_lw07.bin",  0x18000, 0x8000, CRC(5c73d406) SHA1(85386f6b387a85d8df7d800ffcecb2590613a42c) )
1008 	ROM_LOAD( "3b_lw12.bin",  0x20000, 0x8000, CRC(32e17b3c) SHA1(db5488b7c48cd0df4571104169e42ff4094f1abd) )
1009 	ROM_LOAD( "1b_lw06.bin",  0x28000, 0x8000, CRC(52e533c1) SHA1(9f333c9fb6e35db1264286be5b4f7e4dd18150de) )
1010 	ROM_LOAD( "3f_lw15.bin",  0x30000, 0x8000, CRC(99e134ba) SHA1(9818a6ad3146ed95b29b9aeba2331a0e8e2a76b5) )
1011 	ROM_LOAD( "1f_lw09.bin",  0x38000, 0x8000, CRC(c8f28777) SHA1(d08571d34f96e7d33506e374d047647f131dce71) )
1012 
1013 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
1014 	ROM_LOAD( "3j_lw17.bin",  0x00000, 0x8000, CRC(5ed1bc9b) SHA1(717c80e180bc38cb66ac0135709e8df2cd7375aa) )  /* sprites */
1015 	ROM_LOAD( "1j_lw11.bin",  0x08000, 0x8000, CRC(2a0790d6) SHA1(a0a8b5748b562e4c44cdb2e48cefbea0d4e9e6a8) )
1016 	ROM_LOAD( "3h_lw16.bin",  0x10000, 0x8000, CRC(e8834006) SHA1(7d7ec16be325cbbaccf5dce101cb7bc719a5bef2) )
1017 	ROM_LOAD( "1h_lw10.bin",  0x18000, 0x8000, CRC(b693f5a5) SHA1(134e255e670848f8aec82fcd848d1a4f1aefa636) )
1018 
1019 	ROM_REGION( 0x0100, REGION_PROMS, 0 )
1020 	ROM_LOAD( "63s141.15g",   0x0000, 0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1021 ROM_END
1022 
1023 ROM_START( lwings2 )
1024 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1025 	ROM_LOAD( "u13-l",        0x00000, 0x8000, CRC(3069c01c) SHA1(84dfffeb58f7c5a75d2a59c2ce72c6db813af1be) )
1026 	ROM_LOAD( "u14-k",        0x10000, 0x8000, CRC(5d91c828) SHA1(e0b9eab5b290203f71de27a78689adb2e7b07cea) )
1027 	ROM_LOAD( "9c_lw03.bin",  0x18000, 0x8000, CRC(ec5cc201) SHA1(1043c6a9678c18fef920be91b0796c93b83e0f73) )
1028 
1029 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1030 	ROM_LOAD( "11e_lw04.bin", 0x0000, 0x8000, CRC(a20337a2) SHA1(649e13a69ad9154657894fa7bf7c6e49b029a506) )
1031 
1032 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1033 	ROM_LOAD( "9h_lw05.bin",  0x00000, 0x4000, CRC(091d923c) SHA1(d686c860f147c4749ac1ee23cde5a7b570312622) )  /* characters */
1034 
1035 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1036 	ROM_LOAD( "b_03e.rom",    0x00000, 0x8000, CRC(176e3027) SHA1(31947205c7a28d25b5982a9e6c079112c404d6b4) )  /* tiles */
1037 	ROM_LOAD( "b_01e.rom",    0x08000, 0x8000, CRC(f5d25623) SHA1(ff520df50011af5688be7e88712faa8f8436b462) )
1038 	ROM_LOAD( "b_03d.rom",    0x10000, 0x8000, CRC(001caa35) SHA1(2042136c592ce124a321fc6d05447b13a612b6b9) )
1039 	ROM_LOAD( "b_01d.rom",    0x18000, 0x8000, CRC(0ba008c3) SHA1(ed5c0d7191d021d6445f8f31a61eb99172fd2dc1) )
1040 	ROM_LOAD( "b_03b.rom",    0x20000, 0x8000, CRC(4f8182e9) SHA1(d0db174995be3937f5e5fe62ffe2112583dd78d7) )
1041 	ROM_LOAD( "b_01b.rom",    0x28000, 0x8000, CRC(f1617374) SHA1(01b77bc16c1e7d669f62adf759f820bc0241d959) )
1042 	ROM_LOAD( "b_03f.rom",    0x30000, 0x8000, CRC(9b374dcc) SHA1(3cb4243c304579536880ced86f0118c43413c1b4) )
1043 	ROM_LOAD( "b_01f.rom",    0x38000, 0x8000, CRC(23654e0a) SHA1(d97689b348ac4e1b380ad65133ede4bdd5ecaaee) )
1044 
1045 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
1046 	ROM_LOAD( "b_03j.rom",    0x00000, 0x8000, CRC(8f3c763a) SHA1(b34e62ab6652a2e9783351dde6a60af38a6ba084) )  /* sprites */
1047 	ROM_LOAD( "b_01j.rom",    0x08000, 0x8000, CRC(7cc90a1d) SHA1(ff194749397f06ad054917664bd4583b0e4e8d92) )
1048 	ROM_LOAD( "b_03h.rom",    0x10000, 0x8000, CRC(7d58f532) SHA1(debfb14cd1cefa1f61a8650cbc9f6e0fff3abe8b) )
1049 	ROM_LOAD( "b_01h.rom",    0x18000, 0x8000, CRC(3e396eda) SHA1(a736f108e0ed5fab6177f0d8a21feab8b686ee85) )
1050 
1051 	ROM_REGION( 0x0100, REGION_PROMS, 0 )
1052 	ROM_LOAD( "63s141.15g",   0x0000, 0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1053 ROM_END
1054 
1055 ROM_START( lwingsjp )
1056 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1057 	ROM_LOAD( "a_06c.rom",    0x00000, 0x8000, CRC(2068a738) SHA1(1bbceee8138cdc3832a9330b967561b78b03933e) )
1058 	ROM_LOAD( "a_07c.rom",    0x10000, 0x8000, CRC(d6a2edc4) SHA1(ce7eef643b1570cab241355bfd7c2d7adb1e74b6) )
1059 	ROM_LOAD( "9c_lw03.bin",  0x18000, 0x8000, CRC(ec5cc201) SHA1(1043c6a9678c18fef920be91b0796c93b83e0f73) )
1060 
1061 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1062 	ROM_LOAD( "11e_lw04.bin", 0x0000, 0x8000, CRC(a20337a2) SHA1(649e13a69ad9154657894fa7bf7c6e49b029a506) )
1063 
1064 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1065 	ROM_LOAD( "9h_lw05.bin",  0x00000, 0x4000, CRC(091d923c) SHA1(d686c860f147c4749ac1ee23cde5a7b570312622) )  /* characters */
1066 
1067 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1068 	ROM_LOAD( "b_03e.rom",    0x00000, 0x8000, CRC(176e3027) SHA1(31947205c7a28d25b5982a9e6c079112c404d6b4) )  /* tiles */
1069 	ROM_LOAD( "b_01e.rom",    0x08000, 0x8000, CRC(f5d25623) SHA1(ff520df50011af5688be7e88712faa8f8436b462) )
1070 	ROM_LOAD( "b_03d.rom",    0x10000, 0x8000, CRC(001caa35) SHA1(2042136c592ce124a321fc6d05447b13a612b6b9) )
1071 	ROM_LOAD( "b_01d.rom",    0x18000, 0x8000, CRC(0ba008c3) SHA1(ed5c0d7191d021d6445f8f31a61eb99172fd2dc1) )
1072 	ROM_LOAD( "b_03b.rom",    0x20000, 0x8000, CRC(4f8182e9) SHA1(d0db174995be3937f5e5fe62ffe2112583dd78d7) )
1073 	ROM_LOAD( "b_01b.rom",    0x28000, 0x8000, CRC(f1617374) SHA1(01b77bc16c1e7d669f62adf759f820bc0241d959) )
1074 	ROM_LOAD( "b_03f.rom",    0x30000, 0x8000, CRC(9b374dcc) SHA1(3cb4243c304579536880ced86f0118c43413c1b4) )
1075 	ROM_LOAD( "b_01f.rom",    0x38000, 0x8000, CRC(23654e0a) SHA1(d97689b348ac4e1b380ad65133ede4bdd5ecaaee) )
1076 
1077 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
1078 	ROM_LOAD( "b_03j.rom",    0x00000, 0x8000, CRC(8f3c763a) SHA1(b34e62ab6652a2e9783351dde6a60af38a6ba084) )  /* sprites */
1079 	ROM_LOAD( "b_01j.rom",    0x08000, 0x8000, CRC(7cc90a1d) SHA1(ff194749397f06ad054917664bd4583b0e4e8d92) )
1080 	ROM_LOAD( "b_03h.rom",    0x10000, 0x8000, CRC(7d58f532) SHA1(debfb14cd1cefa1f61a8650cbc9f6e0fff3abe8b) )
1081 	ROM_LOAD( "b_01h.rom",    0x18000, 0x8000, CRC(3e396eda) SHA1(a736f108e0ed5fab6177f0d8a21feab8b686ee85) )
1082 
1083 	ROM_REGION( 0x0100, REGION_PROMS, 0 )
1084 	ROM_LOAD( "63s141.15g",   0x0000, 0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1085 ROM_END
1086 
1087 ROM_START( sectionz )
1088 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1089 	ROM_LOAD( "6c_sz01.bin",  0x00000, 0x8000, CRC(69585125) SHA1(a341e3a5507e961d5763be6acf420695bb32709e) )
1090 	ROM_LOAD( "7c_sz02.bin",  0x10000, 0x8000, CRC(22f161b8) SHA1(094ee6b6c8750de682c1ba4e387b31d58f734604) )
1091 	ROM_LOAD( "9c_sz03.bin",  0x18000, 0x8000, CRC(4c7111ed) SHA1(57c6ad6a86c64ffb17ec8f584c5e003440390344) )
1092 
1093 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1094 	ROM_LOAD( "11e_sz04.bin", 0x0000, 0x8000, CRC(a6073566) SHA1(d7dc382ba780cc4f25f7d7e7630cff1090488843) )
1095 
1096 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1097 	ROM_LOAD( "9h_sz05.bin",  0x00000, 0x4000, CRC(3173ba2e) SHA1(4e0b4fc1efd7b5eb598fe5d5d7f1de01ba52dbdc) )  /* characters */
1098 
1099 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1100 	ROM_LOAD( "3e_sz14.bin",  0x00000, 0x8000, CRC(63782e30) SHA1(9a23b4849ff210bd4482e4e8c57e578387d19c46) )  /* tiles */
1101 	ROM_LOAD( "1e_sz08.bin",  0x08000, 0x8000, CRC(d57d9f13) SHA1(1d07b9eca588985a5e0cec27394ad5b3191c8dc4) )
1102 	ROM_LOAD( "3d_sz13.bin",  0x10000, 0x8000, CRC(1b3d4d7f) SHA1(66eed80865b2a480762cc8d9fda9e82c9c463e71) )
1103 	ROM_LOAD( "1d_sz07.bin",  0x18000, 0x8000, CRC(f5b3a29f) SHA1(0dbf8caf09e319fb2303e7e865f55effa59c761c) )
1104 	ROM_LOAD( "3b_sz12.bin",  0x20000, 0x8000, CRC(11d47dfd) SHA1(bc8a7369ed671ef714472ead2d17228de2567865) )
1105 	ROM_LOAD( "1b_sz06.bin",  0x28000, 0x8000, CRC(df703b68) SHA1(ae98a718dab96f3c0e4827e78938c3984a6641d6) )
1106 	ROM_LOAD( "3f_sz15.bin",  0x30000, 0x8000, CRC(36bb9bf7) SHA1(53f6d375947f9fb28f295935a0fe27f826234765) )
1107 	ROM_LOAD( "1f_sz09.bin",  0x38000, 0x8000, CRC(da8f06c9) SHA1(c0eb4406cdf0d5f25bab28de8222b28da9a97943) )
1108 
1109 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
1110 	ROM_LOAD( "3j_sz17.bin",  0x00000, 0x8000, CRC(8df7b24a) SHA1(078789d0912010fa96b6f267de3ebec9beca6681) )  /* sprites */
1111 	ROM_LOAD( "1j_sz11.bin",  0x08000, 0x8000, CRC(685d4c54) SHA1(ef580e04b6dcb0b65f12c519a4085c98ac0bc261) )
1112 	ROM_LOAD( "3h_sz16.bin",  0x10000, 0x8000, CRC(500ff2bb) SHA1(eb20148388e5271b1fed23a536035e8490474489) )
1113 	ROM_LOAD( "1h_sz10.bin",  0x18000, 0x8000, CRC(00b3d244) SHA1(ed923bd5371f4665744344b94df3547c5db5058c) )
1114 
1115 	ROM_REGION( 0x0100, REGION_PROMS, 0 )
1116 	ROM_LOAD( "mb7114e.15g",  0x0000, 0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1117 ROM_END
1118 
1119 ROM_START( sctionza )
1120 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1121 	ROM_LOAD( "sz-01a.bin",   0x00000, 0x8000, CRC(98df49fd) SHA1(80d7d9f83ea2f606e48606dbfe69cf347aadf079) )
1122 	ROM_LOAD( "7c_sz02.bin",  0x10000, 0x8000, CRC(22f161b8) SHA1(094ee6b6c8750de682c1ba4e387b31d58f734604) )
1123 	ROM_LOAD( "sz-03j.bin",   0x18000, 0x8000, CRC(94547abf) SHA1(9af9e76e6657d7fd742630cfe2f2eb76d231dec4) )
1124 
1125 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1126 	ROM_LOAD( "11e_sz04.bin", 0x0000, 0x8000, CRC(a6073566) SHA1(d7dc382ba780cc4f25f7d7e7630cff1090488843) )
1127 
1128 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1129 	ROM_LOAD( "9h_sz05.bin",  0x00000, 0x4000, CRC(3173ba2e) SHA1(4e0b4fc1efd7b5eb598fe5d5d7f1de01ba52dbdc) )  /* characters */
1130 
1131 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1132 	ROM_LOAD( "3e_sz14.bin",  0x00000, 0x8000, CRC(63782e30) SHA1(9a23b4849ff210bd4482e4e8c57e578387d19c46) )  /* tiles */
1133 	ROM_LOAD( "1e_sz08.bin",  0x08000, 0x8000, CRC(d57d9f13) SHA1(1d07b9eca588985a5e0cec27394ad5b3191c8dc4) )
1134 	ROM_LOAD( "3d_sz13.bin",  0x10000, 0x8000, CRC(1b3d4d7f) SHA1(66eed80865b2a480762cc8d9fda9e82c9c463e71) )
1135 	ROM_LOAD( "1d_sz07.bin",  0x18000, 0x8000, CRC(f5b3a29f) SHA1(0dbf8caf09e319fb2303e7e865f55effa59c761c) )
1136 	ROM_LOAD( "3b_sz12.bin",  0x20000, 0x8000, CRC(11d47dfd) SHA1(bc8a7369ed671ef714472ead2d17228de2567865) )
1137 	ROM_LOAD( "1b_sz06.bin",  0x28000, 0x8000, CRC(df703b68) SHA1(ae98a718dab96f3c0e4827e78938c3984a6641d6) )
1138 	ROM_LOAD( "3f_sz15.bin",  0x30000, 0x8000, CRC(36bb9bf7) SHA1(53f6d375947f9fb28f295935a0fe27f826234765) )
1139 	ROM_LOAD( "1f_sz09.bin",  0x38000, 0x8000, CRC(da8f06c9) SHA1(c0eb4406cdf0d5f25bab28de8222b28da9a97943) )
1140 
1141 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
1142 	ROM_LOAD( "3j_sz17.bin",  0x00000, 0x8000, CRC(8df7b24a) SHA1(078789d0912010fa96b6f267de3ebec9beca6681) )  /* sprites */
1143 	ROM_LOAD( "1j_sz11.bin",  0x08000, 0x8000, CRC(685d4c54) SHA1(ef580e04b6dcb0b65f12c519a4085c98ac0bc261) )
1144 	ROM_LOAD( "3h_sz16.bin",  0x10000, 0x8000, CRC(500ff2bb) SHA1(eb20148388e5271b1fed23a536035e8490474489) )
1145 	ROM_LOAD( "1h_sz10.bin",  0x18000, 0x8000, CRC(00b3d244) SHA1(ed923bd5371f4665744344b94df3547c5db5058c) )
1146 
1147 	ROM_REGION( 0x0100, REGION_PROMS, 0 )
1148 	ROM_LOAD( "mb7114e.15g",  0x0000, 0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1149 ROM_END
1150 
1151 ROM_START( trojan )
1152 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1153 	ROM_LOAD( "t4",           0x00000, 0x8000, CRC(c1bbeb4e) SHA1(248ae4184d25b642b282ef44ac729c0f7952834d) )
1154 	ROM_LOAD( "t6",           0x10000, 0x8000, CRC(d49592ef) SHA1(b538bac3c73f35474cc6745a4e4dc3ab6217eaac) )
1155 	ROM_LOAD( "tb05.bin",     0x18000, 0x8000, CRC(9273b264) SHA1(ab23b16bf53b5baf106ea0cac50754aa967300cf) )
1156 
1157 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1158 	ROM_LOAD( "tb02.bin",     0x0000, 0x8000, CRC(21154797) SHA1(e1a3006746cc2d692ecd4369cc0a77c596abd60b) )
1159 
1160 	ROM_REGION( 0x10000, REGION_CPU3, 0 )     /* 64k for ADPCM CPU (CPU not emulated) */
1161 	ROM_LOAD( "tb01.bin",     0x0000, 0x4000, CRC(1c0f91b2) SHA1(163bf6aa1936994659661653eabdc368199b0070) )
1162 
1163 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1164 	ROM_LOAD( "tb03.bin",     0x00000, 0x4000, CRC(581a2b4c) SHA1(705b499da5d01a946f06234a4bab72a291c79034) )     /* characters */
1165 
1166 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1167 	ROM_LOAD( "tb13.bin",     0x00000, 0x8000, CRC(285a052b) SHA1(8ce055c7ac9ce1560552fc7f857f60e7a5af0779) )     /* tiles */
1168 	ROM_LOAD( "tb09.bin",     0x08000, 0x8000, CRC(aeb693f7) SHA1(a811ea67abdd4adfc68224257973802e2a36fc36) )
1169 	ROM_LOAD( "tb12.bin",     0x10000, 0x8000, CRC(dfb0fe5c) SHA1(82542692ab71b9126e6c301ed0803db58734273c) )
1170 	ROM_LOAD( "tb08.bin",     0x18000, 0x8000, CRC(d3a4c9d1) SHA1(3d787f6a4583b80f2d254947890f676cda17b242) )
1171 	ROM_LOAD( "tb11.bin",     0x20000, 0x8000, CRC(00f0f4fd) SHA1(3a862360a26ae1c3a945949d6d47f88aa4b728a4) )
1172 	ROM_LOAD( "tb07.bin",     0x28000, 0x8000, CRC(dff2ee02) SHA1(4877c52f2a0e24a95bcda1d8636ea993c2c3c240) )
1173 	ROM_LOAD( "tb14.bin",     0x30000, 0x8000, CRC(14bfac18) SHA1(84266140e9679912dbbb185fd3b9b497297dcb16) )
1174 	ROM_LOAD( "tb10.bin",     0x38000, 0x8000, CRC(71ba8a6d) SHA1(53ff6850f9f8a19c57c19ef56fd45975f0ec133e) )
1175 
1176 	ROM_REGION( 0x40000, REGION_GFX3, ROMREGION_DISPOSE )
1177 	ROM_LOAD( "tb18.bin",     0x00000, 0x8000, CRC(862c4713) SHA1(a3707d950f4f5de5208e64207016ef2256eb8c5b) )     /* sprites */
1178 	ROM_LOAD( "tb16.bin",     0x08000, 0x8000, CRC(d86f8cbd) SHA1(8a16130632e20ad3cae8e817da7b661c3ac60f30) )
1179 	ROM_LOAD( "tb17.bin",     0x10000, 0x8000, CRC(12a73b3f) SHA1(6bb54d4fdf01fd2cdd76a0b47be4d8cae8a1e19b) )
1180 	ROM_LOAD( "tb15.bin",     0x18000, 0x8000, CRC(bb1a2769) SHA1(9884dceb00e6d88908a1c107b83cc1711b0cf1f7) )
1181 	ROM_LOAD( "tb22.bin",     0x20000, 0x8000, CRC(39daafd4) SHA1(1e49a273f51cccec3141d540032fd9a3041a3cbd) )
1182 	ROM_LOAD( "tb20.bin",     0x28000, 0x8000, CRC(94615d2a) SHA1(112a299ff1bb878cf7e24c2ad337440c3df0a6d5) )
1183 	ROM_LOAD( "tb21.bin",     0x30000, 0x8000, CRC(66c642bd) SHA1(b57f0f8d8e21c9f94ffc0e9f9304b5ab5d4ed3fc) )
1184 	ROM_LOAD( "tb19.bin",     0x38000, 0x8000, CRC(81d5ab36) SHA1(31103759676a8d1badaf7bde79e7f28d69486106) )
1185 
1186 	ROM_REGION( 0x10000, REGION_GFX4, ROMREGION_DISPOSE )
1187 	ROM_LOAD( "tb25.bin",     0x00000, 0x8000, CRC(6e38c6fa) SHA1(c51228d5d063dcf4361c76fa49dbe18db80c50a0) )     /* Bk Tiles */
1188 	ROM_LOAD( "tb24.bin",     0x08000, 0x8000, CRC(14fc6cf2) SHA1(080a2d845cb36c637f76d8e062725bd13dd1aed0) )
1189 
1190 	ROM_REGION( 0x08000, REGION_GFX5, 0 )
1191 	ROM_LOAD( "tb23.bin",     0x00000, 0x08000, CRC(eda13c0e) SHA1(806f0819af8b25c2b46de3d1fd95bc9c0e883bd9) )  /* Tile Map */
1192 
1193 	ROM_REGION( 0x0200, REGION_PROMS, 0 )
1194 	ROM_LOAD( "tbp24s10.7j",  0x0000, 0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1195 	ROM_LOAD( "mb7114e.1e",   0x0100, 0x0100, CRC(5052fa9d) SHA1(8cd240f4795a7ae76499573c09069dba37182be2) )	/* priority (not used) */
1196 ROM_END
1197 
1198 ROM_START( trojanr )
1199 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1200 	ROM_LOAD( "tb04.bin",     0x00000, 0x8000, CRC(92670f27) SHA1(d2cb35a9fade971770db1a58e961bc03cc3de6ff) )
1201 	ROM_LOAD( "tb06.bin",     0x10000, 0x8000, CRC(a4951173) SHA1(2d3db0ee3a1680f2cce21cf15f8bd434325d8648) )
1202 	ROM_LOAD( "tb05.bin",     0x18000, 0x8000, CRC(9273b264) SHA1(ab23b16bf53b5baf106ea0cac50754aa967300cf) )
1203 
1204 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1205 	ROM_LOAD( "tb02.bin",     0x0000, 0x8000, CRC(21154797) SHA1(e1a3006746cc2d692ecd4369cc0a77c596abd60b) )
1206 
1207 	ROM_REGION( 0x10000, REGION_CPU3, 0 ) /* 64k for ADPCM CPU (CPU not emulated) */
1208 	ROM_LOAD( "tb01.bin",     0x0000, 0x4000, CRC(1c0f91b2) SHA1(163bf6aa1936994659661653eabdc368199b0070) )
1209 
1210 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1211 	ROM_LOAD( "tb03.bin",     0x00000, 0x4000, CRC(581a2b4c) SHA1(705b499da5d01a946f06234a4bab72a291c79034) )     /* characters */
1212 
1213 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1214 	ROM_LOAD( "tb13.bin",     0x00000, 0x8000, CRC(285a052b) SHA1(8ce055c7ac9ce1560552fc7f857f60e7a5af0779) )     /* tiles */
1215 	ROM_LOAD( "tb09.bin",     0x08000, 0x8000, CRC(aeb693f7) SHA1(a811ea67abdd4adfc68224257973802e2a36fc36) )
1216 	ROM_LOAD( "tb12.bin",     0x10000, 0x8000, CRC(dfb0fe5c) SHA1(82542692ab71b9126e6c301ed0803db58734273c) )
1217 	ROM_LOAD( "tb08.bin",     0x18000, 0x8000, CRC(d3a4c9d1) SHA1(3d787f6a4583b80f2d254947890f676cda17b242) )
1218 	ROM_LOAD( "tb11.bin",     0x20000, 0x8000, CRC(00f0f4fd) SHA1(3a862360a26ae1c3a945949d6d47f88aa4b728a4) )
1219 	ROM_LOAD( "tb07.bin",     0x28000, 0x8000, CRC(dff2ee02) SHA1(4877c52f2a0e24a95bcda1d8636ea993c2c3c240) )
1220 	ROM_LOAD( "tb14.bin",     0x30000, 0x8000, CRC(14bfac18) SHA1(84266140e9679912dbbb185fd3b9b497297dcb16) )
1221 	ROM_LOAD( "tb10.bin",     0x38000, 0x8000, CRC(71ba8a6d) SHA1(53ff6850f9f8a19c57c19ef56fd45975f0ec133e) )
1222 
1223 	ROM_REGION( 0x40000, REGION_GFX3, ROMREGION_DISPOSE )
1224 	ROM_LOAD( "tb18.bin",     0x00000, 0x8000, CRC(862c4713) SHA1(a3707d950f4f5de5208e64207016ef2256eb8c5b) )     /* sprites */
1225 	ROM_LOAD( "tb16.bin",     0x08000, 0x8000, CRC(d86f8cbd) SHA1(8a16130632e20ad3cae8e817da7b661c3ac60f30) )
1226 	ROM_LOAD( "tb17.bin",     0x10000, 0x8000, CRC(12a73b3f) SHA1(6bb54d4fdf01fd2cdd76a0b47be4d8cae8a1e19b) )
1227 	ROM_LOAD( "tb15.bin",     0x18000, 0x8000, CRC(bb1a2769) SHA1(9884dceb00e6d88908a1c107b83cc1711b0cf1f7) )
1228 	ROM_LOAD( "tb22.bin",     0x20000, 0x8000, CRC(39daafd4) SHA1(1e49a273f51cccec3141d540032fd9a3041a3cbd) )
1229 	ROM_LOAD( "tb20.bin",     0x28000, 0x8000, CRC(94615d2a) SHA1(112a299ff1bb878cf7e24c2ad337440c3df0a6d5) )
1230 	ROM_LOAD( "tb21.bin",     0x30000, 0x8000, CRC(66c642bd) SHA1(b57f0f8d8e21c9f94ffc0e9f9304b5ab5d4ed3fc) )
1231 	ROM_LOAD( "tb19.bin",     0x38000, 0x8000, CRC(81d5ab36) SHA1(31103759676a8d1badaf7bde79e7f28d69486106) )
1232 
1233 	ROM_REGION( 0x10000, REGION_GFX4, ROMREGION_DISPOSE )
1234 	ROM_LOAD( "tb25.bin",     0x00000, 0x8000, CRC(6e38c6fa) SHA1(c51228d5d063dcf4361c76fa49dbe18db80c50a0) )     /* Bk Tiles */
1235 	ROM_LOAD( "tb24.bin",     0x08000, 0x8000, CRC(14fc6cf2) SHA1(080a2d845cb36c637f76d8e062725bd13dd1aed0) )
1236 
1237 	ROM_REGION( 0x08000, REGION_GFX5, 0 )
1238 	ROM_LOAD( "tb23.bin",     0x0000,  0x8000, CRC(eda13c0e) SHA1(806f0819af8b25c2b46de3d1fd95bc9c0e883bd9) )  /* Tile Map */
1239 
1240 	ROM_REGION( 0x0200, REGION_PROMS, 0 )
1241 	ROM_LOAD( "tbp24s10.7j",  0x0000,  0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1242 	ROM_LOAD( "mb7114e.1e",   0x0100,  0x0100, CRC(5052fa9d) SHA1(8cd240f4795a7ae76499573c09069dba37182be2) )	/* priority (not used) */
1243 ROM_END
1244 
1245 ROM_START( trojanj )
1246 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1247 	ROM_LOAD( "troj-04.rom",  0x00000, 0x8000, CRC(0b5a7f49) SHA1(eebdfaf905a2b7ac8a0f0f9a7ae4a0daf130a5ea) )
1248 	ROM_LOAD( "troj-06.rom",  0x10000, 0x8000, CRC(dee6ed92) SHA1(80aa16f2ae23581d00f4d58a2075993e7171ed0c) )
1249 	ROM_LOAD( "tb05.bin",     0x18000, 0x8000, CRC(9273b264) SHA1(ab23b16bf53b5baf106ea0cac50754aa967300cf) )
1250 
1251 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1252 	ROM_LOAD( "tb02.bin",     0x0000, 0x8000, CRC(21154797) SHA1(e1a3006746cc2d692ecd4369cc0a77c596abd60b) )
1253 
1254 	ROM_REGION( 0x10000, REGION_CPU3, 0 )     /* 64k for ADPCM CPU (CPU not emulated) */
1255 	ROM_LOAD( "tb01.bin",     0x0000, 0x4000, CRC(1c0f91b2) SHA1(163bf6aa1936994659661653eabdc368199b0070) )
1256 
1257 	ROM_REGION( 0x04000, REGION_GFX1, ROMREGION_DISPOSE )
1258 	ROM_LOAD( "tb03.bin",     0x00000, 0x4000, CRC(581a2b4c) SHA1(705b499da5d01a946f06234a4bab72a291c79034) )     /* characters */
1259 
1260 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
1261 	ROM_LOAD( "tb13.bin",     0x00000, 0x8000, CRC(285a052b) SHA1(8ce055c7ac9ce1560552fc7f857f60e7a5af0779) )     /* tiles */
1262 	ROM_LOAD( "tb09.bin",     0x08000, 0x8000, CRC(aeb693f7) SHA1(a811ea67abdd4adfc68224257973802e2a36fc36) )
1263 	ROM_LOAD( "tb12.bin",     0x10000, 0x8000, CRC(dfb0fe5c) SHA1(82542692ab71b9126e6c301ed0803db58734273c) )
1264 	ROM_LOAD( "tb08.bin",     0x18000, 0x8000, CRC(d3a4c9d1) SHA1(3d787f6a4583b80f2d254947890f676cda17b242) )
1265 	ROM_LOAD( "tb11.bin",     0x20000, 0x8000, CRC(00f0f4fd) SHA1(3a862360a26ae1c3a945949d6d47f88aa4b728a4) )
1266 	ROM_LOAD( "tb07.bin",     0x28000, 0x8000, CRC(dff2ee02) SHA1(4877c52f2a0e24a95bcda1d8636ea993c2c3c240) )
1267 	ROM_LOAD( "tb14.bin",     0x30000, 0x8000, CRC(14bfac18) SHA1(84266140e9679912dbbb185fd3b9b497297dcb16) )
1268 	ROM_LOAD( "tb10.bin",     0x38000, 0x8000, CRC(71ba8a6d) SHA1(53ff6850f9f8a19c57c19ef56fd45975f0ec133e) )
1269 
1270 	ROM_REGION( 0x40000, REGION_GFX3, ROMREGION_DISPOSE )
1271 	ROM_LOAD( "tb18.bin",     0x00000, 0x8000, CRC(862c4713) SHA1(a3707d950f4f5de5208e64207016ef2256eb8c5b) )     /* sprites */
1272 	ROM_LOAD( "tb16.bin",     0x08000, 0x8000, CRC(d86f8cbd) SHA1(8a16130632e20ad3cae8e817da7b661c3ac60f30) )
1273 	ROM_LOAD( "tb17.bin",     0x10000, 0x8000, CRC(12a73b3f) SHA1(6bb54d4fdf01fd2cdd76a0b47be4d8cae8a1e19b) )
1274 	ROM_LOAD( "tb15.bin",     0x18000, 0x8000, CRC(bb1a2769) SHA1(9884dceb00e6d88908a1c107b83cc1711b0cf1f7) )
1275 	ROM_LOAD( "tb22.bin",     0x20000, 0x8000, CRC(39daafd4) SHA1(1e49a273f51cccec3141d540032fd9a3041a3cbd) )
1276 	ROM_LOAD( "tb20.bin",     0x28000, 0x8000, CRC(94615d2a) SHA1(112a299ff1bb878cf7e24c2ad337440c3df0a6d5) )
1277 	ROM_LOAD( "tb21.bin",     0x30000, 0x8000, CRC(66c642bd) SHA1(b57f0f8d8e21c9f94ffc0e9f9304b5ab5d4ed3fc) )
1278 	ROM_LOAD( "tb19.bin",     0x38000, 0x8000, CRC(81d5ab36) SHA1(31103759676a8d1badaf7bde79e7f28d69486106) )
1279 
1280 	ROM_REGION( 0x10000, REGION_GFX4, ROMREGION_DISPOSE )
1281 	ROM_LOAD( "tb25.bin",     0x00000, 0x8000, CRC(6e38c6fa) SHA1(c51228d5d063dcf4361c76fa49dbe18db80c50a0) )     /* Bk Tiles */
1282 	ROM_LOAD( "tb24.bin",     0x08000, 0x8000, CRC(14fc6cf2) SHA1(080a2d845cb36c637f76d8e062725bd13dd1aed0) )
1283 
1284 	ROM_REGION( 0x08000, REGION_GFX5, 0 )
1285 	ROM_LOAD( "tb23.bin",     0x0000,  0x8000, CRC(eda13c0e) SHA1(806f0819af8b25c2b46de3d1fd95bc9c0e883bd9) )  /* Tile Map */
1286 
1287 	ROM_REGION( 0x0200, REGION_PROMS, 0 )
1288 	ROM_LOAD( "tbp24s10.7j",  0x0000,  0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1289 	ROM_LOAD( "mb7114e.1e",   0x0100,  0x0100, CRC(5052fa9d) SHA1(8cd240f4795a7ae76499573c09069dba37182be2) )	/* priority (not used) */
1290 ROM_END
1291 
1292 ROM_START( avengers )
1293 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1294 	ROM_LOAD( "04.10n",       0x00000, 0x8000, CRC(a94aadcc) SHA1(796545ab5c69c093aaac58f7cff36109dea8df80) )
1295 	ROM_LOAD( "06.13n",       0x10000, 0x8000, CRC(39cd80bd) SHA1(3f8df0096f393efae2d76982640ccc4d33bde8ca) )
1296 	ROM_LOAD( "05.12n",       0x18000, 0x8000, CRC(06b1cec9) SHA1(db5370f3ff1b4456461698af64962cad028561cd) )
1297 
1298 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1299 	ROM_LOAD( "02.15h",       0x0000, 0x8000, CRC(107a2e17) SHA1(5aae2f4ac9f15ccb4122f3ba9fba588438d62f4f) ) /* ?? */
1300 
1301 	ROM_REGION( 0x10000, REGION_CPU3, 0 )     /* ADPCM CPU (not emulated) */
1302 	ROM_LOAD( "01.6d",        0x0000, 0x8000, CRC(c1e5d258) SHA1(88ed978e6df72ce22f9371930360aa9cde73abe9) ) /* adpcm player - "Talker" ROM */
1303 
1304 	ROM_REGION( 0x08000, REGION_GFX1, ROMREGION_DISPOSE )
1305 	ROM_LOAD( "03.8k",        0x00000, 0x8000, CRC(efb5883e) SHA1(08aebf579f2c5ff472db66597cde1c6871d7d757) )  /* characters */
1306 
1307 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE ) /* tiles */
1308 	ROM_LOAD( "13.6b",        0x00000, 0x8000, CRC(9b5ff305) SHA1(8843c757e040b58efd36299eb3c56d9c51362b20) ) /* plane 1 */
1309 	ROM_LOAD( "09.6a",        0x08000, 0x8000, CRC(08323355) SHA1(c5778c6835f2801fba0250cea21796ea201642f7) )
1310 	ROM_LOAD( "12.4b",        0x10000, 0x8000, CRC(6d5261ba) SHA1(667e3b8df871c3052bde7a3c79daa7f70eaa0b8b) ) /* plane 2 */
1311 	ROM_LOAD( "08.4a",        0x18000, 0x8000, CRC(a13d9f54) SHA1(e1bcb6d12cdfc9ad780f131272d12d9af751f429) )
1312 	ROM_LOAD( "11.3b",        0x20000, 0x8000, CRC(a2911d8b) SHA1(f51ef7bb8a275fdd92a9a9ad516218d2f8c3e1fb) ) /* plane 3 */
1313 	ROM_LOAD( "07.3a",        0x28000, 0x8000, CRC(cde78d32) SHA1(8cb69b7a25e935073887628565cb4f9787186ea9) )
1314 	ROM_LOAD( "14.8b",        0x30000, 0x8000, CRC(44ac2671) SHA1(60baa541debd8aa7d32a512906d0d6c6e9955968) ) /* plane 4 */
1315 	ROM_LOAD( "10.8a",        0x38000, 0x8000, CRC(b1a717cb) SHA1(2730764ece0e9231955b9c07de537f1f97729599) )
1316 
1317 	ROM_REGION( 0x40000, REGION_GFX3, ROMREGION_DISPOSE ) /* sprites */
1318 	ROM_LOAD( "18.7l",        0x00000, 0x8000, CRC(3c876a17) SHA1(1f06b695b78a2e1db151f3c5baa1bb17ccef951e) ) /* planes 0,1 */
1319 	ROM_LOAD( "16.3l",        0x08000, 0x8000, CRC(4b1ff3ac) SHA1(5166f2a2c9ba2483a4e340d756303cba46b7de88) )
1320 	ROM_LOAD( "17.5l",        0x10000, 0x8000, CRC(4eb543ef) SHA1(5dfdd2568a50b179e724643880d79f79d831be19) )
1321 	ROM_LOAD( "15.2l",        0x18000, 0x8000, CRC(8041de7f) SHA1(c301b20edad1981dd20cd6d4f7de703d9dc80b83) )
1322 	ROM_LOAD( "22.7n",        0x20000, 0x8000, CRC(bdaa8b22) SHA1(9a03d20cc7010f9b7c602db86808d54fdd7e228d) ) /* planes 2,3 */
1323 	ROM_LOAD( "20.3n",        0x28000, 0x8000, CRC(566e3059) SHA1(cf3e5cfcb5ebbff3f9a8e1da9f7242a7a00fee83) )
1324 	ROM_LOAD( "21.5n",        0x30000, 0x8000, CRC(301059aa) SHA1(c529ad83d4e4139ce4d4d912c00aef9ece297706) )
1325 	ROM_LOAD( "19.2n",        0x38000, 0x8000, CRC(a00485ec) SHA1(cc24e7243f55bdfaedeabb7dddf7e1ef32811c45) )
1326 
1327 	ROM_REGION( 0x10000, REGION_GFX4, ROMREGION_DISPOSE ) /* bg tiles */
1328 	ROM_LOAD( "25.15n",       0x00000, 0x8000, CRC(230d9e30) SHA1(05a20bb32ce1299d7645312624de8a1d074bacee) ) /* planes 0,1 */
1329 	ROM_LOAD( "24.13n",       0x08000, 0x8000, CRC(a6354024) SHA1(ce2aaec8349c08f58cc469514100bcd3a97d24d7) ) /* planes 2,3 */
1330 
1331 	ROM_REGION( 0x08000, REGION_GFX5, 0 )
1332 	ROM_LOAD( "23.9n",        0x0000,  0x8000, CRC(c0a93ef6) SHA1(2dc9cd4eb142d74aea8d151904cb60a0767c6393) )  /* Tile Map */
1333 
1334 	ROM_REGION( 0x0200, REGION_PROMS, 0 )
1335 	ROM_LOAD( "tbb_2bpr.7j",  0x0000,  0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1336 	ROM_LOAD( "tbb_1bpr.1e",  0x0100,  0x0100, CRC(5052fa9d) SHA1(8cd240f4795a7ae76499573c09069dba37182be2) )	/* priority (not used) */
1337 ROM_END
1338 
1339 ROM_START( avenger2 )
1340 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1341 	ROM_LOAD( "avg4.bin",     0x00000, 0x8000, CRC(0fea7ac5) SHA1(b978adf5fc90e1e51a995dbec2246d2776264afd) )
1342 	ROM_LOAD( "av_06a.13n",   0x10000, 0x8000, CRC(491a712c) SHA1(67a335b57117ba498d3ae412ac0025477bc79b16) )
1343 	ROM_LOAD( "av_05.12n",    0x18000, 0x8000, CRC(9a214b42) SHA1(e13d47dcf9fa055fef467a10751badffcc3b8734) )
1344 
1345 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1346 	ROM_LOAD( "02.15h",       0x0000,  0x8000, CRC(107a2e17) SHA1(5aae2f4ac9f15ccb4122f3ba9fba588438d62f4f) ) /* MISSING from this set */
1347 
1348 	ROM_REGION( 0x10000, REGION_CPU3, 0 )     /* ADPCM CPU (not emulated) */
1349 	ROM_LOAD( "01.6d",        0x0000,  0x8000, CRC(c1e5d258) SHA1(88ed978e6df72ce22f9371930360aa9cde73abe9) ) /* adpcm player - "Talker" ROM */
1350 
1351 	ROM_REGION( 0x08000, REGION_GFX1, ROMREGION_DISPOSE )
1352 	ROM_LOAD( "03.8k",        0x00000, 0x8000, CRC(efb5883e) SHA1(08aebf579f2c5ff472db66597cde1c6871d7d757) )  /* characters */
1353 
1354 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE ) /* tiles */
1355 	ROM_LOAD( "13.6b",        0x00000, 0x8000, CRC(9b5ff305) SHA1(8843c757e040b58efd36299eb3c56d9c51362b20) ) /* plane 1 */
1356 	ROM_LOAD( "09.6a",        0x08000, 0x8000, CRC(08323355) SHA1(c5778c6835f2801fba0250cea21796ea201642f7) )
1357 	ROM_LOAD( "12.4b",        0x10000, 0x8000, CRC(6d5261ba) SHA1(667e3b8df871c3052bde7a3c79daa7f70eaa0b8b) ) /* plane 2 */
1358 	ROM_LOAD( "08.4a",        0x18000, 0x8000, CRC(a13d9f54) SHA1(e1bcb6d12cdfc9ad780f131272d12d9af751f429) )
1359 	ROM_LOAD( "11.3b",        0x20000, 0x8000, CRC(a2911d8b) SHA1(f51ef7bb8a275fdd92a9a9ad516218d2f8c3e1fb) ) /* plane 3 */
1360 	ROM_LOAD( "07.3a",        0x28000, 0x8000, CRC(cde78d32) SHA1(8cb69b7a25e935073887628565cb4f9787186ea9) )
1361 	ROM_LOAD( "14.8b",        0x30000, 0x8000, CRC(44ac2671) SHA1(60baa541debd8aa7d32a512906d0d6c6e9955968) ) /* plane 4 */
1362 	ROM_LOAD( "10.8a",        0x38000, 0x8000, CRC(b1a717cb) SHA1(2730764ece0e9231955b9c07de537f1f97729599) )
1363 
1364 	ROM_REGION( 0x40000, REGION_GFX3, ROMREGION_DISPOSE ) /* sprites */
1365 	ROM_LOAD( "18.7l",        0x00000, 0x8000, CRC(3c876a17) SHA1(1f06b695b78a2e1db151f3c5baa1bb17ccef951e) ) /* planes 0,1 */
1366 	ROM_LOAD( "16.3l",        0x08000, 0x8000, CRC(4b1ff3ac) SHA1(5166f2a2c9ba2483a4e340d756303cba46b7de88) )
1367 	ROM_LOAD( "17.5l",        0x10000, 0x8000, CRC(4eb543ef) SHA1(5dfdd2568a50b179e724643880d79f79d831be19) )
1368 	ROM_LOAD( "15.2l",        0x18000, 0x8000, CRC(8041de7f) SHA1(c301b20edad1981dd20cd6d4f7de703d9dc80b83) )
1369 	ROM_LOAD( "22.7n",        0x20000, 0x8000, CRC(bdaa8b22) SHA1(9a03d20cc7010f9b7c602db86808d54fdd7e228d) ) /* planes 2,3 */
1370 	ROM_LOAD( "20.3n",        0x28000, 0x8000, CRC(566e3059) SHA1(cf3e5cfcb5ebbff3f9a8e1da9f7242a7a00fee83) )
1371 	ROM_LOAD( "21.5n",        0x30000, 0x8000, CRC(301059aa) SHA1(c529ad83d4e4139ce4d4d912c00aef9ece297706) )
1372 	ROM_LOAD( "19.2n",        0x38000, 0x8000, CRC(a00485ec) SHA1(cc24e7243f55bdfaedeabb7dddf7e1ef32811c45) )
1373 
1374 	ROM_REGION( 0x10000, REGION_GFX4, ROMREGION_DISPOSE ) /* bg tiles */
1375 	ROM_LOAD( "25.15n",       0x00000, 0x8000, CRC(230d9e30) SHA1(05a20bb32ce1299d7645312624de8a1d074bacee) ) /* planes 0,1 */
1376 	ROM_LOAD( "24.13n",       0x08000, 0x8000, CRC(a6354024) SHA1(ce2aaec8349c08f58cc469514100bcd3a97d24d7) ) /* planes 2,3 */
1377 
1378 	ROM_REGION( 0x08000, REGION_GFX5, 0 )
1379 	ROM_LOAD( "23.9n",        0x0000,  0x8000, CRC(c0a93ef6) SHA1(2dc9cd4eb142d74aea8d151904cb60a0767c6393) )  /* Tile Map */
1380 
1381 	ROM_REGION( 0x0200, REGION_PROMS, 0 )
1382 	ROM_LOAD( "tbb_2bpr.7j",  0x0000,  0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1383 	ROM_LOAD( "tbb_1bpr.1e",  0x0100,  0x0100, CRC(5052fa9d) SHA1(8cd240f4795a7ae76499573c09069dba37182be2) )	/* priority (not used) */
1384 ROM_END
1385 
1386 ROM_START( buraiken )
1387 	ROM_REGION( 0x20000, REGION_CPU1, 0 )     /* 64k for code + 3*16k for the banked ROMs images */
1388 	ROM_LOAD( "av_04a.10n",   0x00000, 0x8000, CRC(361fc614) SHA1(0ecd9400dfcb03fc94685b33b060a524a5d3c575) )
1389 	ROM_LOAD( "av_06a.13n",   0x10000, 0x8000, CRC(491a712c) SHA1(67a335b57117ba498d3ae412ac0025477bc79b16) )
1390 	ROM_LOAD( "av_05.12n",    0x18000, 0x8000, CRC(9a214b42) SHA1(e13d47dcf9fa055fef467a10751badffcc3b8734) )
1391 
1392 	ROM_REGION( 0x10000, REGION_CPU2, 0 )     /* 64k for the audio CPU */
1393 	ROM_LOAD( "02.15h",       0x0000,  0x8000, CRC(107a2e17) SHA1(5aae2f4ac9f15ccb4122f3ba9fba588438d62f4f) )
1394 
1395 	ROM_REGION( 0x10000, REGION_CPU3, 0 )     /* ADPCM CPU (not emulated) */
1396 	ROM_LOAD( "01.6d",        0x0000,  0x8000, CRC(c1e5d258) SHA1(88ed978e6df72ce22f9371930360aa9cde73abe9) ) /* adpcm player - "Talker" ROM */
1397 
1398 	ROM_REGION( 0x08000, REGION_GFX1, ROMREGION_DISPOSE )
1399 	ROM_LOAD( "03.8k",        0x00000, 0x8000, CRC(efb5883e) SHA1(08aebf579f2c5ff472db66597cde1c6871d7d757) )  /* characters */
1400 
1401 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE ) /* tiles */
1402 	ROM_LOAD( "13.6b",        0x00000, 0x8000, CRC(9b5ff305) SHA1(8843c757e040b58efd36299eb3c56d9c51362b20) ) /* plane 1 */
1403 	ROM_LOAD( "09.6a",        0x08000, 0x8000, CRC(08323355) SHA1(c5778c6835f2801fba0250cea21796ea201642f7) )
1404 	ROM_LOAD( "12.4b",        0x10000, 0x8000, CRC(6d5261ba) SHA1(667e3b8df871c3052bde7a3c79daa7f70eaa0b8b) ) /* plane 2 */
1405 	ROM_LOAD( "08.4a",        0x18000, 0x8000, CRC(a13d9f54) SHA1(e1bcb6d12cdfc9ad780f131272d12d9af751f429) )
1406 	ROM_LOAD( "11.3b",        0x20000, 0x8000, CRC(a2911d8b) SHA1(f51ef7bb8a275fdd92a9a9ad516218d2f8c3e1fb) ) /* plane 3 */
1407 	ROM_LOAD( "07.3a",        0x28000, 0x8000, CRC(cde78d32) SHA1(8cb69b7a25e935073887628565cb4f9787186ea9) )
1408 	ROM_LOAD( "14.8b",        0x30000, 0x8000, CRC(44ac2671) SHA1(60baa541debd8aa7d32a512906d0d6c6e9955968) ) /* plane 4 */
1409 	ROM_LOAD( "10.8a",        0x38000, 0x8000, CRC(b1a717cb) SHA1(2730764ece0e9231955b9c07de537f1f97729599) )
1410 
1411 	ROM_REGION( 0x40000, REGION_GFX3, ROMREGION_DISPOSE ) /* sprites */
1412 	ROM_LOAD( "18.7l",        0x00000, 0x8000, CRC(3c876a17) SHA1(1f06b695b78a2e1db151f3c5baa1bb17ccef951e) ) /* planes 0,1 */
1413 	ROM_LOAD( "16.3l",        0x08000, 0x8000, CRC(4b1ff3ac) SHA1(5166f2a2c9ba2483a4e340d756303cba46b7de88) )
1414 	ROM_LOAD( "17.5l",        0x10000, 0x8000, CRC(4eb543ef) SHA1(5dfdd2568a50b179e724643880d79f79d831be19) )
1415 	ROM_LOAD( "15.2l",        0x18000, 0x8000, CRC(8041de7f) SHA1(c301b20edad1981dd20cd6d4f7de703d9dc80b83) )
1416 	ROM_LOAD( "22.7n",        0x20000, 0x8000, CRC(bdaa8b22) SHA1(9a03d20cc7010f9b7c602db86808d54fdd7e228d) ) /* planes 2,3 */
1417 	ROM_LOAD( "20.3n",        0x28000, 0x8000, CRC(566e3059) SHA1(cf3e5cfcb5ebbff3f9a8e1da9f7242a7a00fee83) )
1418 	ROM_LOAD( "21.5n",        0x30000, 0x8000, CRC(301059aa) SHA1(c529ad83d4e4139ce4d4d912c00aef9ece297706) )
1419 	ROM_LOAD( "19.2n",        0x38000, 0x8000, CRC(a00485ec) SHA1(cc24e7243f55bdfaedeabb7dddf7e1ef32811c45) )
1420 
1421 	ROM_REGION( 0x10000, REGION_GFX4, ROMREGION_DISPOSE )
1422 	ROM_LOAD( "av_25.15n",    0x00000, 0x8000, CRC(88a505a7) SHA1(ef4371e082b2370fcbfc96bfef5a94910acd9eff) ) /* planes 0,1 */
1423 	ROM_LOAD( "av_24.13n",    0x08000, 0x8000, CRC(1f4463c8) SHA1(04cdb0187dcbdd4f5f53e60c856d4925ade8d7df) ) /* planes 2,3 */
1424 
1425 	ROM_REGION( 0x08000, REGION_GFX5, 0 )
1426 	ROM_LOAD( "23.9n",        0x0000,  0x8000, CRC(c0a93ef6) SHA1(2dc9cd4eb142d74aea8d151904cb60a0767c6393) )  /* Tile Map */
1427 
1428 	ROM_REGION( 0x0200, REGION_PROMS, 0 )
1429 	ROM_LOAD( "tbb_2bpr.7j",  0x0000,  0x0100, CRC(d96bcc98) SHA1(99e69a624d5586e5eedacd2083fa68b36e7b5e40) )	/* timing (not used) */
1430 	ROM_LOAD( "tbb_1bpr.1e",  0x0100,  0x0100, CRC(5052fa9d) SHA1(8cd240f4795a7ae76499573c09069dba37182be2) )	/* priority (not used) */
1431 ROM_END
1432 
1433 GAME( 1985, sectionz, 0,        lwings,   sectionz, 0, ROT0,  "Capcom", "Section Z (set 1)" )
1434 GAME( 1985, sctionza, sectionz, lwings,   sectionz, 0, ROT0,  "Capcom", "Section Z (set 2)" )
1435 GAME( 1986, lwings,   0,        lwings,   lwings,   0, ROT90, "Capcom", "Legendary Wings (US set 1)" )
1436 GAME( 1986, lwings2,  lwings,   lwings,   lwings,   0, ROT90, "Capcom", "Legendary Wings (US set 2)" )
1437 GAME( 1986, lwingsjp, lwings,   lwings,   lwings,   0, ROT90, "Capcom", "Ares no Tsubasa (Japan)" )
1438 GAMEC(1986, trojan,   0,        trojan,   trojanls, 0, ROT0,  "Capcom", "Trojan (US)",                        &trojan_ctrl, NULL )
1439 GAMEC(1986, trojanr,  trojan,   trojan,   trojan,   0, ROT0,  "Capcom (Romstar license)", "Trojan (Romstar)", &trojan_ctrl, NULL )
1440 GAMEC(1986, trojanj,  trojan,   trojan,   trojan,   0, ROT0,  "Capcom", "Tatakai no Banka (Japan)",           &trojan_ctrl, NULL )
1441 GAME( 1987, avengers, 0,        avengers, avengers, 0, ROT90, "Capcom", "Avengers (US set 1)" )
1442 GAME( 1987, avenger2, avengers, avengers, avengers, 0, ROT90, "Capcom", "Avengers (US set 2)" )
1443 GAME( 1987, buraiken, avengers, avengers, avengers, 0, ROT90, "Capcom", "Hissatsu Buraiken (Japan)" )
1444