QuarterArcade Coin-Op Tech Net

Quick Nav: # A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Coin-Op : Arcade : Major Title Tournament Leader : VM Driver Source

Source Listing


     1: /***************************************************************************
     2: 
     3: IREM M72 board
     4: 
     5: driver by Nicola Salmoria
     6: protection information by Nao
     7: 
     8:                                    Year Board        Protected?
     9: R-Type                             1987  M72             N
    10: Battle Chopper / Mr. Heli          1987  M72             Y
    11: Ninja Spirit                       1988  M72             Y
    12: Image Fight                        1988  M72             Y
    13: Legend of Hero Tonma               1989  M72             Y
    14: X Multiply                         1989  M72(1)          Y
    15: Dragon Breed                       1989  M81             Y
    16: R-Type II                          1989  M82/M84(2)      N
    17: Major Title                        1990  M84             N
    18: Hammerin' Harry	/ Daiku no Gensan  1990  M82(3)          N
    19:                   Daiku no Gensan  1990  M72(4)          Y
    20: Pound for Pound                    1990  M85             N
    21: Air Duel                           1990  M72?            Y
    22: Cosmic Cop /                       1991  M84             N
    23:   Gallop - Armed Police Unit       1991  M73?            N
    24: Ken-Go                             1991  ?           Encrypted
    25: 
    26: (1) different addressing PALs, so different memory map
    27: (2) rtype2j has M84 written on the board, but it's the same hardware as rtype2
    28: (3) multiple versions supported, running on different hardware
    29: (4) normal M72 memory map, but IRQ vectors and sprite control as in X-Multiply
    30: 
    31: 
    32: TODO:
    33: - majtitle_gfx_ctrl_w is unknown, it seems to be used to disable rowscroll,
    34:   and maybe other things
    35: 
    36: - Maybe there is a layer enable register, e.g. nspirit shows (for an instant)
    37:   incomplete screens with bad colors when you start a game.
    38: 
    39: - A lot of unknown I/O writes from the sound CPU in Pound for Pound.
    40: 
    41: - the sprite chip triggers IRQ1 when it has finished copying the sprite RAM to its
    42:   private buffer. This isn't implemented (all games have an empty IRQ1 handler).
    43:   The cpu board also has support for IRQ3 and IRQ4, coming from the external
    44:   connectors, but I don't think they are used by any game.
    45: 
    46: IRQ controller
    47: --------------
    48: The initialization consists of one write to port 0x40 and multiple writes
    49: (2 or 3) to port 0x42. The first value written to 0x42 is the IRQ vector base.
    50: Kengo probably has a different controller.
    51: 
    52: Game      irqbase 0x40  0x42
    53: ----      ------- ----  ----------
    54: rtype       0x20   17    20 0F
    55: bchopper     "     "     "
    56: nspirit      "     "     "
    57: loht         "     "     "
    58: rtype2       "     "     "
    59: airduel      "     "     "
    60: gallop       "     "     "
    61: imgfight    0x20   17    20 0F 06
    62: majtitle     "     "     "
    63: poundfor    0x20   17    20 0F 0A
    64: xmultipl    0x08   13    08 0F FA
    65: dbreed       "     "     "
    66: hharry       "     "     "
    67: cosmccop	0x18   --------------
    68: kengo       0x18   --------------
    69: 
    70: ***************************************************************************/
    71: 
    72: #include "driver.h" 
    73: #include "vidhrdw/generic.h" 
    74: #include "machine/irem_cpu.h" 
    75: #include "sndhrdw/m72.h" 
    76: 
    77: 
    78: /* in vidhrdw/m72.c */
    79: extern unsigned char *m72_videoram1,*m72_videoram2,*majtitle_rowscrollram;
    80: MACHINE_INIT( m72 );
    81: MACHINE_INIT( xmultipl );
    82: MACHINE_INIT( kengo );
    83: INTERRUPT_GEN( m72_interrupt );
    84: VIDEO_START( m72 );
    85: VIDEO_START( rtype2 );
    86: VIDEO_START( majtitle );
    87: VIDEO_START( hharry );
    88: VIDEO_START( poundfor );
    89: READ_HANDLER( m72_palette1_r );
    90: READ_HANDLER( m72_palette2_r );
    91: WRITE_HANDLER( m72_palette1_w );
    92: WRITE_HANDLER( m72_palette2_w );
    93: READ_HANDLER( m72_videoram1_r );
    94: READ_HANDLER( m72_videoram2_r );
    95: WRITE_HANDLER( m72_videoram1_w );
    96: WRITE_HANDLER( m72_videoram2_w );
    97: WRITE_HANDLER( m72_irq_line_w );
    98: WRITE_HANDLER( m72_scrollx1_w );
    99: WRITE_HANDLER( m72_scrollx2_w );
   100: WRITE_HANDLER( m72_scrolly1_w );
   101: WRITE_HANDLER( m72_scrolly2_w );
   102: WRITE_HANDLER( m72_dmaon_w );
   103: WRITE_HANDLER( m72_port02_w );
   104: WRITE_HANDLER( rtype2_port02_w );
   105: WRITE_HANDLER( majtitle_gfx_ctrl_w );
   106: VIDEO_UPDATE( m72 );
   107: VIDEO_UPDATE( majtitle );
   108: VIDEO_EOF( m72 );
   109: 
   110: 
   111: static unsigned char *protection_ram;
   112: 
   113: 
   114: 
   115: /***************************************************************************
   116: 
   117: Sample playback
   118: 
   119: In the later games, the sound CPU can program the start offset of the PCM
   120: samples, but it seems the earlier games have them hardcoded somewhere (maybe
   121: the protection MCU?).
   122: So, here I provided some tables with the start offset precomputed.
   123: They could be built automatically in most cases (00 marks the end of a
   124: sample), but a couple of games (nspirit, loht) have holes in the numbering
   125: so we would have to do them differently anyway.
   126: 
   127: Also, some games (dkgenm72, poundfor, airduel, gallop) have an empty NMI
   128: handler, so the sample playback has to be handled entirely by external
   129: hardware; we work around that by using (for all games, not just the ones
   130: without a NMI handler) a NMI interrupt gen that mimics the behaviour of
   131: the NMI handler in the other games.
   132: 
   133: ***************************************************************************/
   134: 
   135: 
   136: static int find_sample(int num)
   137: {
   138: 	data8_t *rom = memory_region(REGION_SOUND1);
   139: 	int len = memory_region_length(REGION_SOUND1);
   140: 	int addr = 0;
   141: 
   142: 	while (num--)
   143: 	{
   144: 		/* find end of sample */
   145: 		while (addr < len &&  rom[addr]) addr++;
   146: 
   147: 		/* skip 0 filler between samples */
   148: 		while (addr < len && !rom[addr]) addr++;
   149: 	}
   150: 
   151: 	return addr;
   152: }
   153: 
   154: static INTERRUPT_GEN(fake_nmi)
   155: {
   156: 	int sample = m72_sample_r(0);
   157: 	if (sample)
   158: 		m72_sample_w(0,sample);
   159: }
   160: 
   161: 
   162: static WRITE_HANDLER( bchopper_sample_trigger_w )
   163: {
   164: 	int a[6] = { 0x0000, 0x0010, 0x2510, 0x6510, 0x8510, 0x9310 };
   165: 	if (data < 6) m72_set_sample_start(a[data]);
   166: }
   167: 
   168: static WRITE_HANDLER( nspirit_sample_trigger_w )
   169: {
   170: 	int a[9] = { 0x0000, 0x0020, 0x2020, 0, 0x5720, 0, 0x7b60, 0x9b60, 0xc360 };
   171: 	if (data < 9) m72_set_sample_start(a[data]);
   172: }
   173: 
   174: static WRITE_HANDLER( imgfight_sample_trigger_w )
   175: {
   176: 	int a[7] = { 0x0000, 0x0020, 0x44e0, 0x98a0, 0xc820, 0xf7a0, 0x108c0 };
   177: 	if (data < 7) m72_set_sample_start(a[data]);
   178: }
   179: 
   180: static WRITE_HANDLER( loht_sample_trigger_w )
   181: {
   182: 	int a[7] = { 0x0000, 0x0020, 0, 0x2c40, 0x4320, 0x7120, 0xb200 };
   183: 	if (data < 7) m72_set_sample_start(a[data]);
   184: }
   185: 
   186: static WRITE_HANDLER( xmultipl_sample_trigger_w )
   187: {
   188: 	int a[3] = { 0x0000, 0x0020, 0x1a40 };
   189: 	if (data < 3) m72_set_sample_start(a[data]);
   190: }
   191: 
   192: static WRITE_HANDLER( dbreed_sample_trigger_w )
   193: {
   194: 	int a[9] = { 0x00000, 0x00020, 0x02c40, 0x08160, 0x0c8c0, 0x0ffe0, 0x13000, 0x15820, 0x15f40 };
   195: 	if (data < 9) m72_set_sample_start(a[data]);
   196: }
   197: 
   198: static WRITE_HANDLER( airduel_sample_trigger_w )
   199: {
   200: 	int a[16] = { 0x00000, 0x00020, 0x03ec0, 0x05640, 0x06dc0, 0x083a0, 0x0c000, 0x0eb60,
   201: 				  0x112e0, 0x13dc0, 0x16520, 0x16d60, 0x18ae0, 0x1a5a0, 0x1bf00, 0x1c340 };
   202: 	if (data < 16) m72_set_sample_start(a[data]);
   203: }
   204: 
   205: static WRITE_HANDLER( dkgenm72_sample_trigger_w )
   206: {
   207: 	int a[28] = { 0x00000, 0x00020, 0x01800, 0x02da0, 0x03be0, 0x05ae0, 0x06100, 0x06de0,
   208: 			      0x07260, 0x07a60, 0x08720, 0x0a5c0, 0x0c3c0, 0x0c7a0, 0x0e140, 0x0fb00,
   209: 				  0x10fa0, 0x10fc0, 0x10fe0, 0x11f40, 0x12b20, 0x130a0, 0x13c60, 0x14740,
   210: 				  0x153c0, 0x197e0, 0x1af40, 0x1c080 };
   211: 
   212: 	if (data < 28) m72_set_sample_start(a[data]);
   213: }
   214: 
   215: static WRITE_HANDLER( gallop_sample_trigger_w )
   216: {
   217: 	int a[31] = { 0x00000, 0x00020, 0x00040, 0x01360, 0x02580, 0x04f20, 0x06240, 0x076e0,
   218: 			      0x08660, 0x092a0, 0x09ba0, 0x0a560, 0x0cee0, 0x0de20, 0x0e620, 0x0f1c0,
   219: 				  0x10200, 0x10220, 0x10240, 0x11380, 0x12760, 0x12780, 0x127a0, 0x13c40,
   220: 				  0x140a0, 0x16760, 0x17e40, 0x18ee0, 0x19f60, 0x1bbc0, 0x1cee0 };
   221: 
   222: 	if (data < 31) m72_set_sample_start(a[data]);
   223: }
   224: 
   225: 
   226: 
   227: /***************************************************************************
   228: 
   229: Protection simulation
   230: 
   231: Most of the games running on this board have an 8751 protection mcu.
   232: It is not known how it works in detail, however it's pretty clear that it
   233: shares RAM at b0000-b0fff.
   234: On startup, the game writes a pattern to the whole RAM, then reads it back
   235: expecting it to be INVERTED. If it isn't, it reports a RAM error.
   236: If the RAM passes the test, the program increments every byte up to b0ffb,
   237: then calls a subroutine at b0000, which has to be provided by the mcu.
   238: It seems that this routine is not supposed to RET, but instead it should
   239: jump directly to the game entry point. The routine should also write some
   240: bytes here and there in RAM (different in every game); those bytes are
   241: checked at various points during the game, causing a crash if they aren't
   242: right.
   243: Note that the program keeps incrementing b0ffe while the game is running,
   244: maybe this is done to keep the 8751 alive. We don't bother with that.
   245: 
   246: Finally, to do the ROM test the program asks the mcu to provide the correct
   247: values. This is done only in service, so doesn't seem to be much of a
   248: protection. Here we have provided the correct crcs for the available dumps,
   249: of course there is no guarantee that they are actually good.
   250: 
   251: All the protection routines below are entirely made up. They get the games
   252: running, but they have not been derived from the real 8751 code.
   253: 
   254: ***************************************************************************/
   255: 
   256: #define CODE_LEN 96 
   257: #define CRC_LEN 18 
   258: 
   259: /* Battle Chopper / Mr. Heli */
   260: static unsigned char bchopper_code[CODE_LEN] =
   261: {
   262: 	0x68,0x00,0xa0,				// push 0a000h
   263: 	0x1f,						// pop ds
   264: 	0xc6,0x06,0x38,0x38,0x53,	// mov [3838h], byte 053h
   265: 	0xc6,0x06,0x3a,0x38,0x41,	// mov [383ah], byte 041h
   266: 	0xc6,0x06,0x3c,0x38,0x4d,	// mov [383ch], byte 04dh
   267: 	0xc6,0x06,0x3e,0x38,0x4f,	// mov [383eh], byte 04fh
   268: 	0xc6,0x06,0x40,0x38,0x54,	// mov [3840h], byte 054h
   269: 	0xc6,0x06,0x42,0x38,0x4f,	// mov [3842h], byte 04fh
   270: 	0x68,0x00,0xb0,				// push 0b000h
   271: 	0x1f,						// pop ds
   272: 	0xc6,0x06,0x00,0x09,0x49^0xff,	// mov [0900h], byte 049h
   273: 	0xc6,0x06,0x00,0x0a,0x49^0xff,	// mov [0a00h], byte 049h
   274: 	0xc6,0x06,0x00,0x0b,0x49^0xff,	// mov [0b00h], byte 049h
   275: 	0xc6,0x06,0x00,0x00,0xcb^0xff,	// mov [0000h], byte 0cbh ; retf : bypass protection check during the game
   276: 	0x68,0x00,0xd0,				// push 0d000h
   277: 	0x1f,						// pop ds
   278: 	// the following is for mrheli only, the game checks for
   279: 	// "This game can only be played in Japan..." message in the video text buffer
   280: 	// the message is nowhere to be found in the ROMs, so has to be displayed by the mcu
   281: 	0xc6,0x06,0x70,0x16,0x77,	// mov [1670h], byte 077h
   282: 	0xea,0x68,0x01,0x40,0x00	// jmp  0040:$0168
   283: };
   284: static unsigned char bchopper_crc[CRC_LEN] =  {	0x1a,0x12,0x5c,0x08, 0x84,0xb6,0x73,0xd1,
   285: 												0x54,0x91,0x94,0xeb, 0x00,0x00 };
   286: static unsigned char mrheli_crc[CRC_LEN] =	  {	0x24,0x21,0x1f,0x14, 0xf9,0x28,0xfb,0x47,
   287: 												0x4c,0x77,0x9e,0xc2, 0x00,0x00 };
   288: 
   289: /* Ninja Spirit */
   290: static unsigned char nspirit_code[CODE_LEN] =
   291: {
   292: 	0x68,0x00,0xa0,				// push 0a000h
   293: 	0x1f,						// pop ds
   294: 	0xc6,0x06,0x38,0x38,0x4e,	// mov [3838h], byte 04eh
   295: 	0xc6,0x06,0x3a,0x38,0x49,	// mov [383ah], byte 049h
   296: 	0xc6,0x06,0x3c,0x38,0x4e,	// mov [383ch], byte 04eh
   297: 	0xc6,0x06,0x3e,0x38,0x44,	// mov [383eh], byte 044h
   298: 	0xc6,0x06,0x40,0x38,0x4f,	// mov [3840h], byte 04fh
   299: 	0xc6,0x06,0x42,0x38,0x55,	// mov [3842h], byte 055h
   300: 	0x68,0x00,0xb0,				// push 0b000h
   301: 	0x1f,						// pop ds
   302: 	0xc6,0x06,0x00,0x09,0x49^0xff,	// mov [0900h], byte 049h
   303: 	0xc6,0x06,0x00,0x0a,0x49^0xff,	// mov [0a00h], byte 049h
   304: 	0xc6,0x06,0x00,0x0b,0x49^0xff,	// mov [0b00h], byte 049h
   305: 	0x68,0x00,0xd0,				// push 0d000h
   306: 	0x1f,						// pop ds
   307: 	// the following is for nspiritj only, the game checks for
   308: 	// "This game can only be played in Japan..." message in the video text buffer
   309: 	// the message is nowhere to be found in the ROMs, so has to be displayed by the mcu
   310: 	0xc6,0x06,0x70,0x16,0x57,	// mov [1670h], byte 057h
   311: 	0xc6,0x06,0x71,0x16,0x00,	// mov [1671h], byte 000h
   312: 	0xea,0x00,0x00,0x40,0x00	// jmp  0040:$0000
   313: };
   314: static unsigned char nspirit_crc[CRC_LEN] =   {	0xfe,0x94,0x6e,0x4e, 0xc8,0x33,0xa7,0x2d,
   315: 												0xf2,0xa3,0xf9,0xe1, 0xa9,0x6c,0x02,0x95, 0x00,0x00 };
   316: static unsigned char nspiritj_crc[CRC_LEN] =  {	0x26,0xa3,0xa5,0xe9, 0xc8,0x33,0xa7,0x2d,
   317: 												0xf2,0xa3,0xf9,0xe1, 0xbc,0x6c,0x01,0x95, 0x00,0x00 };
   318: 
   319: /* Image Fight */
   320: static unsigned char imgfight_code[CODE_LEN] =
   321: {
   322: 	0x68,0x00,0xa0,				// push 0a000h
   323: 	0x1f,						// pop ds
   324: 	0xc6,0x06,0x38,0x38,0x50,	// mov [3838h], byte 050h
   325: 	0xc6,0x06,0x3a,0x38,0x49,	// mov [383ah], byte 049h
   326: 	0xc6,0x06,0x3c,0x38,0x43,	// mov [383ch], byte 043h
   327: 	0xc6,0x06,0x3e,0x38,0x4b,	// mov [383eh], byte 04bh
   328: 	0xc6,0x06,0x40,0x38,0x45,	// mov [3840h], byte 045h
   329: 	0xc6,0x06,0x42,0x38,0x54,	// mov [3842h], byte 054h
   330: 	0x68,0x00,0xb0,				// push 0b000h
   331: 	0x1f,						// pop ds
   332: 	0xc6,0x06,0x00,0x09,0x49^0xff,	// mov [0900h], byte 049h
   333: 	0xc6,0x06,0x00,0x0a,0x49^0xff,	// mov [0a00h], byte 049h
   334: 	0xc6,0x06,0x00,0x0b,0x49^0xff,	// mov [0b00h], byte 049h
   335: 	0xc6,0x06,0x20,0x09,0x49^0xff,	// mov [0920h], byte 049h
   336: 	0xc6,0x06,0x21,0x09,0x4d^0xff,	// mov [0921h], byte 04dh
   337: 	0xc6,0x06,0x22,0x09,0x41^0xff,	// mov [0922h], byte 041h
   338: 	0xc6,0x06,0x23,0x09,0x47^0xff,	// mov [0923h], byte 047h
   339: 	0x68,0x00,0xd0,				// push 0d000h
   340: 	0x1f,						// pop ds
   341: 	// the game checks for
   342: 	// "This game can only be played in Japan..." message in the video text buffer
   343: 	// the message is nowhere to be found in the ROMs, so has to be displayed by the mcu
   344: 	0xc6,0x06,0xb0,0x1c,0x57,	// mov [1cb0h], byte 057h
   345: 	0xea,0x00,0x00,0x40,0x00	// jmp  0040:$0000
   346: };
   347: static unsigned char imgfight_crc[CRC_LEN] =  {	0x7e,0xcc,0xec,0x03, 0x04,0x33,0xb6,0xc5,
   348: 												0xbf,0x37,0x92,0x94, 0x00,0x00 };
   349: 
   350: /* Legend of Hero Tonma */
   351: static unsigned char loht_code[CODE_LEN] =
   352: {
   353: 	0x68,0x00,0xa0,				// push 0a000h
   354: 	0x1f,						// pop ds
   355: 	0xc6,0x06,0x3c,0x38,0x47,	// mov [383ch], byte 047h
   356: 	0xc6,0x06,0x3d,0x38,0x47,	// mov [383dh], byte 047h
   357: 	0xc6,0x06,0x42,0x38,0x44,	// mov [3842h], byte 044h
   358: 	0xc6,0x06,0x43,0x38,0x44,	// mov [3843h], byte 044h
   359: 	0x68,0x00,0xb0,				// push 0b000h
   360: 	0x1f,						// pop ds
   361: 	0xc6,0x06,0x00,0x09,0x49^0xff,	// mov [0900h], byte 049h
   362: 	0xc6,0x06,0x00,0x0a,0x49^0xff,	// mov [0a00h], byte 049h
   363: 	0xc6,0x06,0x00,0x0b,0x49^0xff,	// mov [0b00h], byte 049h
   364: 	0xea,0x5d,0x01,0x40,0x00	// jmp  0040:$015d
   365: };
   366: static unsigned char loht_crc[CRC_LEN] =	  {	0x39,0x00,0x82,0xae, 0x2c,0x9d,0x4b,0x73,
   367: 												0xfb,0xac,0xd4,0x6d, 0x6d,0x5b,0x77,0xc0, 0x00,0x00 };
   368: 
   369: /* X Multiply */
   370: static unsigned char xmultipl_code[CODE_LEN] =
   371: {
   372: 	0xea,0x30,0x02,0x00,0x0e	// jmp  0e00:$0230
   373: };
   374: static unsigned char xmultipl_crc[CRC_LEN] =  {	0x73,0x82,0x4e,0x3f, 0xfc,0x56,0x59,0x06,
   375: 												0x05,0x48,0xa8,0xf4, 0x00,0x00 };
   376: 
   377: /* Dragon Breed */
   378: static unsigned char dbreed_code[CODE_LEN] =
   379: {
   380: 	0xea,0x6c,0x00,0x00,0x00	// jmp  0000:$006c
   381: };
   382: static unsigned char dbreed_crc[CRC_LEN] =	  {	0xa4,0x96,0x5f,0xc0, 0xab,0x49,0x9f,0x19,
   383: 												0x84,0xe6,0xd6,0xca, 0x00,0x00 };
   384: 
   385: /* Air Duel */
   386: static unsigned char airduel_code[CODE_LEN] =
   387: {
   388: 	0x68,0x00,0xd0,				// push 0d000h
   389: 	0x1f,						// pop ds
   390: 	// the game checks for
   391: 	// "This game can only be played in Japan..." message in the video text buffer
   392: 	// the message is nowhere to be found in the ROMs, so has to be displayed by the mcu
   393: 	0xc6,0x06,0xc0,0x1c,0x57,	// mov [1cc0h], byte 057h
   394: 	0xea,0x69,0x0b,0x00,0x00	// jmp  0000:$0b69
   395: };
   396: static unsigned char airduel_crc[CRC_LEN] =	  {	0x72,0x9c,0xca,0x85, 0xc9,0x12,0xcc,0xea,
   397: 												0x00,0x00 };
   398: 
   399: /* Daiku no Gensan */
   400: static unsigned char dkgenm72_code[CODE_LEN] =
   401: {
   402: 	0xea,0x3d,0x00,0x00,0x10	// jmp  1000:$003d
   403: };
   404: static unsigned char dkgenm72_crc[CRC_LEN] =  {	0xc8,0xb4,0xdc,0xf8, 0xd3,0xba,0x48,0xed,
   405: 												0x79,0x08,0x1c,0xb3, 0x00,0x00 };
   406: 
   407: 
   408: unsigned char *protection_code,*protection_crc;
   409: 
   410: static READ_HANDLER( protection_r )
   411: {
   412: 	if (offset == 0xffb)
   413: 		memcpy(protection_ram,protection_code,CODE_LEN);
   414: 
   415: 	return protection_ram[offset];
   416: }
   417: 
   418: static WRITE_HANDLER( protection_w )
   419: {
   420: 	protection_ram[offset] = data ^ 0xff;;
   421: 
   422: 	if (offset == 0x0fff && data == 0)
   423: 		memcpy(&protection_ram[0x0fe0],protection_crc,CRC_LEN);
   424: }
   425: 
   426: static void install_protection_handler(unsigned char *code,unsigned char *crc)
   427: {
   428: 	protection_code = code;
   429: 	protection_crc =  crc;
   430: 	install_mem_read_handler (0,0xb0000,0xb0fff,protection_r);
   431: 	install_mem_write_handler(0,0xb0000,0xb0fff,protection_w);
   432: 	protection_ram = &memory_region(REGION_CPU1)[0xb0000];
   433: }
   434: 
   435: static DRIVER_INIT( bchopper )
   436: {
   437: 	install_protection_handler(bchopper_code,bchopper_crc);
   438: 
   439: 	install_port_write_handler(0,0xc0,0xc0,bchopper_sample_trigger_w);
   440: }
   441: 
   442: static DRIVER_INIT( mrheli )
   443: {
   444: 	install_protection_handler(bchopper_code,mrheli_crc);
   445: 
   446: 	install_port_write_handler(0,0xc0,0xc0,bchopper_sample_trigger_w);
   447: }
   448: 
   449: static DRIVER_INIT( nspirit )
   450: {
   451: 	install_protection_handler(nspirit_code,nspirit_crc);
   452: 
   453: 	install_port_write_handler(0,0xc0,0xc0,nspirit_sample_trigger_w);
   454: }
   455: 
   456: static DRIVER_INIT( nspiritj )
   457: {
   458: 	install_protection_handler(nspirit_code,nspiritj_crc);
   459: 
   460: 	install_port_write_handler(0,0xc0,0xc0,nspirit_sample_trigger_w);
   461: }
   462: 
   463: static DRIVER_INIT( imgfight )
   464: {
   465: 	install_protection_handler(imgfight_code,imgfight_crc);
   466: 
   467: 	install_port_write_handler(0,0xc0,0xc0,imgfight_sample_trigger_w);
   468: }
   469: 
   470: static DRIVER_INIT( loht )
   471: {
   472: 	install_protection_handler(loht_code,loht_crc);
   473: 
   474: 	install_port_write_handler(0,0xc0,0xc0,loht_sample_trigger_w);
   475: 
   476: 	/* since we skip the startup tests, clear video RAM to prevent garbage on title screen */
   477: 	memset(m72_videoram2,0,0x4000);
   478: }
   479: 
   480: static DRIVER_INIT( xmultipl )
   481: {
   482: 	install_protection_handler(xmultipl_code,xmultipl_crc);
   483: 
   484: 	install_port_write_handler(0,0xc0,0xc0,xmultipl_sample_trigger_w);
   485: }
   486: 
   487: static DRIVER_INIT( dbreed )
   488: {
   489: 	install_protection_handler(dbreed_code,dbreed_crc);
   490: 
   491: 	install_port_write_handler(0,0xc0,0xc0,dbreed_sample_trigger_w);
   492: }
   493: 
   494: static DRIVER_INIT( airduel )
   495: {
   496: 	install_protection_handler(airduel_code,airduel_crc);
   497: 
   498: 	install_port_write_handler(0,0xc0,0xc0,airduel_sample_trigger_w);
   499: }
   500: 
   501: static DRIVER_INIT( dkgenm72 )
   502: {
   503: 	install_protection_handler(dkgenm72_code,dkgenm72_crc);
   504: 
   505: 	install_port_write_handler(0,0xc0,0xc0,dkgenm72_sample_trigger_w);
   506: }
   507: 
   508: static DRIVER_INIT( gallop )
   509: {
   510: 	install_port_write_handler(0,0xc0,0xc0,gallop_sample_trigger_w);
   511: }
   512: 
   513: 
   514: 
   515: 
   516: static unsigned char *soundram;
   517: 
   518: 
   519: static READ_HANDLER( soundram_r )
   520: {
   521: 	return soundram[offset];
   522: }
   523: 
   524: static WRITE_HANDLER( soundram_w )
   525: {
   526: 	soundram[offset] = data;
   527: }
   528: 
   529: 
   530: static READ_HANDLER( poundfor_trackball_r )
   531: {
   532: 	static int prev[4],diff[4];
   533: 
   534: 	if (offset == 0)
   535: 	{
   536: 		int i,curr;
   537: 
   538: 		for (i = 0;i < 4;i++)
   539: 		{
   540: 			curr = readinputport(6+i);
   541: 			diff[i] = (curr - prev[i]);
   542: 			prev[i] = curr;
   543: 		}
   544: 	}
   545: 
   546: 	switch (offset)
   547: 	{
   548: 		default:
   549: 		case 0:
   550: 			return diff[0] & 0xff;
   551: 		case 1:
   552: 			return diff[2] & 0xff;
   553: 		case 2:
   554: 			return ((diff[0] >> 8) & 0x1f) | (readinputport(0) & 0xe0);
   555: 		case 3:
   556: 			return ((diff[2] >> 8) & 0x1f) | (readinputport(1) & 0xe0);
   557: 		case 4:
   558: 			return diff[1] & 0xff;
   559: 		case 5:
   560: 			return diff[3] & 0xff;
   561: 		case 6:
   562: 			return ((diff[1] >> 8) & 0x1f);
   563: 		case 7:
   564: 			return ((diff[3] >> 8) & 0x1f);
   565: 	}
   566: }
   567: 
   568: 
   569: #define CPU1_MEMORY(NAME,ROMSIZE,WORKRAM) 						\ 
   570: static MEMORY_READ_START( NAME##_readmem )						\
   571: 	{ 0x00000, ROMSIZE-1, MRA_ROM },							\
   572: 	{ WORKRAM, WORKRAM+0x3fff, MRA_RAM },						\
   573: 	{ 0xc0000, 0xc03ff, MRA_RAM },								\
   574: 	{ 0xc8000, 0xc8bff, m72_palette1_r },						\
   575: 	{ 0xcc000, 0xccbff, m72_palette2_r },						\
   576: 	{ 0xd0000, 0xd3fff, m72_videoram1_r },						\
   577: 	{ 0xd8000, 0xdbfff, m72_videoram2_r },						\
   578: 	{ 0xe0000, 0xeffff, soundram_r },							\
   579: MEMORY_END														\
   580: 																\
   581: static MEMORY_WRITE_START( NAME##_writemem )					\
   582: 	{ 0x00000, ROMSIZE-1, MWA_ROM },							\
   583: 	{ WORKRAM, WORKRAM+0x3fff, MWA_RAM },	/* work RAM */		\
   584: 	{ 0xc0000, 0xc03ff, MWA_RAM, &spriteram, &spriteram_size },	\
   585: 	{ 0xc8000, 0xc8bff, m72_palette1_w, &paletteram },			\
   586: 	{ 0xcc000, 0xccbff, m72_palette2_w, &paletteram_2 },		\
   587: 	{ 0xd0000, 0xd3fff, m72_videoram1_w, &m72_videoram1 },		\
   588: 	{ 0xd8000, 0xdbfff, m72_videoram2_w, &m72_videoram2 },		\
   589: 	{ 0xe0000, 0xeffff, soundram_w },							\
   590: MEMORY_END
   591: 
   592: 
   593: /*                     ROMSIZE  WORKRAM */
   594: CPU1_MEMORY( rtype,    0x40000, 0x40000 )
   595: CPU1_MEMORY( m72,      0x80000, 0xa0000 )
   596: CPU1_MEMORY( xmultipl, 0x80000, 0x80000 )
   597: CPU1_MEMORY( dbreed,   0x80000, 0x90000 )
   598: 
   599: 
   600: static MEMORY_READ_START( rtype2_readmem )
   601: 	{ 0x00000, 0x7ffff, MRA_ROM },
   602: 	{ 0xc0000, 0xc03ff, MRA_RAM },
   603: 	{ 0xc8000, 0xc8bff, m72_palette1_r },
   604: 	{ 0xd0000, 0xd3fff, m72_videoram1_r },
   605: 	{ 0xd4000, 0xd7fff, m72_videoram2_r },
   606: 	{ 0xd8000, 0xd8bff, m72_palette2_r },
   607: 	{ 0xe0000, 0xe3fff, MRA_RAM },
   608: MEMORY_END
   609: 
   610: static MEMORY_WRITE_START( rtype2_writemem )
   611: 	{ 0x00000, 0x7ffff, MWA_ROM },
   612: 	{ 0xb0000, 0xb0001, m72_irq_line_w },
   613: 	{ 0xbc000, 0xbc001, m72_dmaon_w },
   614: 	{ 0xc0000, 0xc03ff, MWA_RAM, &spriteram, &spriteram_size },
   615: 	{ 0xc8000, 0xc8bff, m72_palette1_w, &paletteram },
   616: 	{ 0xd0000, 0xd3fff, m72_videoram1_w, &m72_videoram1 },
   617: 	{ 0xd4000, 0xd7fff, m72_videoram2_w, &m72_videoram2 },
   618: 	{ 0xd8000, 0xd8bff, m72_palette2_w, &paletteram_2 },
   619: 	{ 0xe0000, 0xe3fff, MWA_RAM },	/* work RAM */
   620: MEMORY_END
   621: 
   622: static MEMORY_READ_START( majtitle_readmem )
   623: 	{ 0x00000, 0x7ffff, MRA_ROM },
   624: 	{ 0xa0000, 0xa03ff, MRA_RAM },
   625: 	{ 0xa4000, 0xa4bff, m72_palette2_r },
   626: 	{ 0xac000, 0xaffff, m72_videoram1_r },
   627: 	{ 0xb0000, 0xbffff, m72_videoram2_r },
   628: 	{ 0xc0000, 0xc03ff, MRA_RAM },
   629: 	{ 0xc8000, 0xc83ff, MRA_RAM },
   630: 	{ 0xcc000, 0xccbff, m72_palette1_r },
   631: 	{ 0xd0000, 0xd3fff, MRA_RAM },
   632: MEMORY_END
   633: 
   634: static MEMORY_WRITE_START( majtitle_writemem )
   635: 	{ 0x00000, 0x7ffff, MWA_ROM },
   636: 	{ 0xa0000, 0xa03ff, MWA_RAM, &majtitle_rowscrollram },
   637: 	{ 0xa4000, 0xa4bff, m72_palette2_w, &paletteram_2 },
   638: 	{ 0xac000, 0xaffff, m72_videoram1_w, &m72_videoram1 },
   639: 	{ 0xb0000, 0xbffff, m72_videoram2_w, &m72_videoram2 },	/* larger than the other games */
   640: 	{ 0xc0000, 0xc03ff, MWA_RAM, &spriteram, &spriteram_size },
   641: 	{ 0xc8000, 0xc83ff, MWA_RAM, &spriteram_2 },
   642: 	{ 0xcc000, 0xccbff, m72_palette1_w, &paletteram },
   643: 	{ 0xd0000, 0xd3fff, MWA_RAM },	/* work RAM */
   644: 	{ 0xe0000, 0xe0001, m72_irq_line_w },
   645: 	{ 0xe4000, 0xe4001, MWA_RAM },	/* playfield enable? 1 during screen transitions, 0 otherwise */
   646: 	{ 0xec000, 0xec001, m72_dmaon_w },
   647: MEMORY_END
   648: 
   649: static MEMORY_READ_START( hharry_readmem )
   650: 	{ 0x00000, 0x7ffff, MRA_ROM },
   651: 	{ 0xa0000, 0xa3fff, MRA_RAM },
   652: 	{ 0xc0000, 0xc03ff, MRA_RAM },
   653: 	{ 0xc8000, 0xc8bff, m72_palette1_r },
   654: 	{ 0xcc000, 0xccbff, m72_palette2_r },
   655: 	{ 0xd0000, 0xd3fff, m72_videoram1_r },
   656: 	{ 0xd8000, 0xdbfff, m72_videoram2_r },
   657: MEMORY_END
   658: 
   659: static MEMORY_WRITE_START( hharry_writemem )
   660: 	{ 0x00000, 0x7ffff, MWA_ROM },
   661: 	{ 0xa0000, 0xa3fff, MWA_RAM },	/* work RAM */
   662: 	{ 0xb0ffe, 0xb0fff, MWA_RAM },	/* leftover from protection?? */
   663: 	{ 0xc0000, 0xc03ff, MWA_RAM, &spriteram, &spriteram_size },
   664: 	{ 0xc8000, 0xc8bff, m72_palette1_w, &paletteram },
   665: 	{ 0xcc000, 0xccbff, m72_palette2_w, &paletteram_2 },
   666: 	{ 0xd0000, 0xd3fff, m72_videoram1_w, &m72_videoram1 },
   667: 	{ 0xd8000, 0xdbfff, m72_videoram2_w, &m72_videoram2 },
   668: MEMORY_END
   669: 
   670: static MEMORY_READ_START( hharryu_readmem )
   671: 	{ 0x00000, 0x7ffff, MRA_ROM },
   672: 	{ 0xa0000, 0xa0bff, m72_palette1_r },
   673: 	{ 0xa8000, 0xa8bff, m72_palette2_r },
   674: 	{ 0xc0000, 0xc03ff, MRA_RAM },
   675: 	{ 0xd0000, 0xd3fff, m72_videoram1_r },
   676: 	{ 0xd4000, 0xd7fff, m72_videoram2_r },
   677: 	{ 0xe0000, 0xe3fff, MRA_RAM },
   678: MEMORY_END
   679: 
   680: static MEMORY_WRITE_START( hharryu_writemem )
   681: 	{ 0x00000, 0x7ffff, MWA_ROM },
   682: 	{ 0xa0000, 0xa0bff, m72_palette1_w, &paletteram },
   683: 	{ 0xa8000, 0xa8bff, m72_palette2_w, &paletteram_2 },
   684: 	{ 0xb0000, 0xb0001, m72_irq_line_w },
   685: 	{ 0xbc000, 0xbc001, m72_dmaon_w },
   686: 	{ 0xb0ffe, 0xb0fff, MWA_RAM },	/* leftover from protection?? */
   687: 	{ 0xc0000, 0xc03ff, MWA_RAM, &spriteram, &spriteram_size },
   688: 	{ 0xd0000, 0xd3fff, m72_videoram1_w, &m72_videoram1 },
   689: 	{ 0xd4000, 0xd7fff, m72_videoram2_w, &m72_videoram2 },
   690: 	{ 0xe0000, 0xe3fff, MWA_RAM },	/* work RAM */
   691: MEMORY_END
   692: 
   693: static MEMORY_READ_START( kengo_readmem )
   694: 	{ 0x00000, 0x7ffff, MRA_ROM },
   695: 	{ 0xa0000, 0xa0bff, m72_palette1_r },
   696: 	{ 0xa8000, 0xa8bff, m72_palette2_r },
   697: 	{ 0xc0000, 0xc03ff, MRA_RAM },
   698: 	{ 0x80000, 0x83fff, m72_videoram1_r },
   699: 	{ 0x84000, 0x87fff, m72_videoram2_r },
   700: 	{ 0xe0000, 0xe3fff, MRA_RAM },
   701: MEMORY_END
   702: 
   703: static MEMORY_WRITE_START( kengo_writemem )
   704: 	{ 0x00000, 0x7ffff, MWA_ROM },
   705: 	{ 0xa0000, 0xa0bff, m72_palette1_w, &paletteram },
   706: 	{ 0xa8000, 0xa8bff, m72_palette2_w, &paletteram_2 },
   707: 	{ 0xb0000, 0xb0001, m72_irq_line_w },
   708: { 0xb4000, 0xb4001, MWA_NOP },	/* ??? */
   709: 	{ 0xbc000, 0xbc001, m72_dmaon_w },
   710: 	{ 0xc0000, 0xc03ff, MWA_RAM, &spriteram, &spriteram_size },
   711: 	{ 0x80000, 0x83fff, m72_videoram1_w, &m72_videoram1 },
   712: 	{ 0x84000, 0x87fff, m72_videoram2_w, &m72_videoram2 },
   713: 	{ 0xe0000, 0xe3fff, MWA_RAM },	/* work RAM */
   714: MEMORY_END
   715: 
   716: static PORT_READ_START( readport )
   717: 	{ 0x00, 0x00, input_port_0_r },
   718: 	{ 0x01, 0x01, input_port_1_r },
   719: 	{ 0x02, 0x02, input_port_2_r },
   720: 	{ 0x03, 0x03, input_port_3_r },
   721: 	{ 0x04, 0x04, input_port_4_r },
   722: 	{ 0x05, 0x05, input_port_5_r },
   723: PORT_END
   724: 
   725: static PORT_READ_START( poundfor_readport )
   726: 	{ 0x02, 0x02, input_port_2_r },
   727: 	{ 0x03, 0x03, input_port_3_r },
   728: 	{ 0x04, 0x04, input_port_4_r },
   729: 	{ 0x05, 0x05, input_port_5_r },
   730: 	{ 0x08, 0x0f, poundfor_trackball_r },
   731: PORT_END
   732: 
   733: 
   734: static PORT_WRITE_START( writeport )
   735: 	{ 0x00, 0x01, m72_sound_command_w },
   736: 	{ 0x02, 0x03, m72_port02_w },	/* coin counters, reset sound cpu, other stuff? */
   737: 	{ 0x04, 0x05, m72_dmaon_w },
   738: 	{ 0x06, 0x07, m72_irq_line_w },
   739: 	{ 0x40, 0x43, MWA_NOP }, /* Interrupt controller, only written to at bootup */
   740: 	{ 0x80, 0x81, m72_scrolly1_w },
   741: 	{ 0x82, 0x83, m72_scrollx1_w },
   742: 	{ 0x84, 0x85, m72_scrolly2_w },
   743: 	{ 0x86, 0x87, m72_scrollx2_w },
   744: /*	{ 0xc0, 0xc0      trigger sample, filled by init_ function */
   745: PORT_END
   746: 
   747: static PORT_WRITE_START( xmultipl_writeport )
   748: 	{ 0x00, 0x01, m72_sound_command_w },
   749: 	{ 0x02, 0x03, m72_port02_w },	/* coin counters, reset sound cpu, other stuff? */
   750: 	{ 0x04, 0x05, m72_dmaon_w },
   751: 	{ 0x06, 0x07, m72_irq_line_w },
   752: 	{ 0x40, 0x43, MWA_NOP }, /* Interrupt controller, only written to at bootup */
   753: 	{ 0x80, 0x81, m72_scrolly1_w },
   754: 	{ 0x82, 0x83, m72_scrollx1_w },
   755: 	{ 0x84, 0x85, m72_scrolly2_w },
   756: 	{ 0x86, 0x87, m72_scrollx2_w },
   757: /*	{ 0xc0, 0xc0      trigger sample, filled by init_ function */
   758: PORT_END
   759: 
   760: static PORT_WRITE_START( rtype2_writeport )
   761: 	{ 0x00, 0x01, m72_sound_command_w },
   762: 	{ 0x02, 0x03, rtype2_port02_w },
   763: 	{ 0x40, 0x43, MWA_NOP }, /* Interrupt controller, only written to at bootup */
   764: 	{ 0x80, 0x81, m72_scrolly1_w },
   765: 	{ 0x82, 0x83, m72_scrollx1_w },
   766: 	{ 0x84, 0x85, m72_scrolly2_w },
   767: 	{ 0x86, 0x87, m72_scrollx2_w },
   768: PORT_END
   769: 
   770: static PORT_WRITE_START( majtitle_writeport )
   771: 	{ 0x00, 0x01, m72_sound_command_w },
   772: 	{ 0x02, 0x03, rtype2_port02_w },
   773: 	{ 0x40, 0x43, MWA_NOP }, /* Interrupt controller, only written to at bootup */
   774: 	{ 0x80, 0x81, m72_scrolly1_w },
   775: 	{ 0x82, 0x83, m72_scrollx1_w },
   776: 	{ 0x84, 0x85, m72_scrolly2_w },
   777: 	{ 0x86, 0x87, m72_scrollx2_w },
   778: 	{ 0x8e, 0x8f, majtitle_gfx_ctrl_w },
   779: PORT_END
   780: 
   781: static PORT_WRITE_START( hharry_writeport )
   782: 	{ 0x00, 0x01, m72_sound_command_w },
   783: 	{ 0x02, 0x03, rtype2_port02_w },	/* coin counters, reset sound cpu, other stuff? */
   784: 	{ 0x04, 0x05, m72_dmaon_w },
   785: 	{ 0x06, 0x07, m72_irq_line_w },
   786: 	{ 0x40, 0x43, MWA_NOP }, /* Interrupt controller, only written to at bootup */
   787: 	{ 0x80, 0x81, m72_scrolly1_w },
   788: 	{ 0x82, 0x83, m72_scrollx1_w },
   789: 	{ 0x84, 0x85, m72_scrolly2_w },
   790: 	{ 0x86, 0x87, m72_scrollx2_w },
   791: PORT_END
   792: 
   793: static PORT_WRITE_START( kengo_writeport )
   794: 	{ 0x00, 0x01, m72_sound_command_w },
   795: 	{ 0x02, 0x03, rtype2_port02_w },
   796: 	{ 0x80, 0x81, m72_scrolly1_w },
   797: 	{ 0x82, 0x83, m72_scrollx1_w },
   798: 	{ 0x84, 0x85, m72_scrolly2_w },
   799: 	{ 0x86, 0x87, m72_scrollx2_w },
   800: //{ 0x8c, 0x8f, MWA_NOP },	/* ??? */
   801: PORT_END
   802: 
   803: 
   804: static MEMORY_READ_START( sound_readmem )
   805: 	{ 0x0000, 0xffff, MRA_RAM },
   806: MEMORY_END
   807: 
   808: static MEMORY_WRITE_START( sound_writemem )
   809: 	{ 0x0000, 0xffff, MWA_RAM, &soundram },
   810: MEMORY_END
   811: 
   812: static PORT_READ_START( sound_readport )
   813: 	{ 0x01, 0x01, YM2151_status_port_0_r },
   814: 	{ 0x02, 0x02, soundlatch_r },
   815: 	{ 0x84, 0x84, m72_sample_r },
   816: PORT_END
   817: 
   818: static PORT_WRITE_START( sound_writeport )
   819: 	{ 0x00, 0x00, YM2151_register_port_0_w },
   820: 	{ 0x01, 0x01, YM2151_data_port_0_w },
   821: 	{ 0x06, 0x06, m72_sound_irq_ack_w },
   822: 	{ 0x82, 0x82, m72_sample_w },
   823: PORT_END
   824: 
   825: static PORT_READ_START( rtype2_sound_readport )
   826: 	{ 0x01, 0x01, YM2151_status_port_0_r },
   827: 	{ 0x80, 0x80, soundlatch_r },
   828: 	{ 0x84, 0x84, m72_sample_r },
   829: PORT_END
   830: 
   831: static PORT_WRITE_START( rtype2_sound_writeport )
   832: 	{ 0x00, 0x00, YM2151_register_port_0_w },
   833: 	{ 0x01, 0x01, YM2151_data_port_0_w },
   834: 	{ 0x80, 0x81, rtype2_sample_addr_w },
   835: 	{ 0x82, 0x82, m72_sample_w },
   836: 	{ 0x83, 0x83, m72_sound_irq_ack_w },
   837: PORT_END
   838: 
   839: static PORT_READ_START( poundfor_sound_readport )
   840: 	{ 0x41, 0x41, YM2151_status_port_0_r },
   841: 	{ 0x42, 0x42, soundlatch_r },
   842: PORT_END
   843: 
   844: static PORT_WRITE_START( poundfor_sound_writeport )
   845: 	{ 0x10, 0x13, poundfor_sample_addr_w },
   846: 	{ 0x40, 0x40, YM2151_register_port_0_w },
   847: 	{ 0x41, 0x41, YM2151_data_port_0_w },
   848: 	{ 0x42, 0x42, m72_sound_irq_ack_w },
   849: PORT_END
   850: 
   851: 
   852: 
   853: #define JOYSTICK_1 \ 
   854: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY ) \
   855: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY ) \
   856: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY ) \
   857: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY )
   858: 
   859: #define JOYSTICK_2 \ 
   860: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL ) \
   861: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT  | IPF_8WAY | IPF_COCKTAIL ) \
   862: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN  | IPF_8WAY | IPF_COCKTAIL ) \
   863: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP    | IPF_8WAY | IPF_COCKTAIL )
   864: 
   865: #define COIN_MODE_1 \ 
   866: 	PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) ) \
   867: 	PORT_DIPSETTING(    0xa0, DEF_STR( 6C_1C ) ) \
   868: 	PORT_DIPSETTING(    0xb0, DEF_STR( 5C_1C ) ) \
   869: 	PORT_DIPSETTING(    0xc0, DEF_STR( 4C_1C ) ) \
   870: 	PORT_DIPSETTING(    0xd0, DEF_STR( 3C_1C ) ) \
   871: 	PORT_DIPSETTING(    0x10, DEF_STR( 8C_3C ) ) \
   872: 	PORT_DIPSETTING(    0xe0, DEF_STR( 2C_1C ) ) \
   873: 	PORT_DIPSETTING(    0x20, DEF_STR( 5C_3C ) ) \
   874: 	PORT_DIPSETTING(    0x30, DEF_STR( 3C_2C ) ) \
   875: 	PORT_DIPSETTING(    0xf0, DEF_STR( 1C_1C ) ) \
   876: 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_3C ) ) \
   877: 	PORT_DIPSETTING(    0x90, DEF_STR( 1C_2C ) ) \
   878: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) ) \
   879: 	PORT_DIPSETTING(    0x70, DEF_STR( 1C_4C ) ) \
   880: 	PORT_DIPSETTING(    0x60, DEF_STR( 1C_5C ) ) \
   881: 	PORT_DIPSETTING(    0x50, DEF_STR( 1C_6C ) ) \
   882: 	PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
   883: 
   884: #define COIN_MODE_2 \ 
   885: 	PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) \
   886: 	PORT_DIPSETTING(    0x00, DEF_STR( 5C_1C ) ) \
   887: 	PORT_DIPSETTING(    0x10, DEF_STR( 3C_1C ) ) \
   888: 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) ) \
   889: 	PORT_DIPSETTING(    0x30, DEF_STR( 1C_1C ) ) \
   890: 	PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Coin_B ) ) \
   891: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_2C ) ) \
   892: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) ) \
   893: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_5C ) ) \
   894: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_6C ) )
   895: 
   896: 
   897: INPUT_PORTS_START( rtype )
   898: 	PORT_START
   899: 	JOYSTICK_1
   900: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
   901: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
   902: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
   903: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
   904: 
   905: 	PORT_START
   906: 	JOYSTICK_2
   907: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
   908: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
   909: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
   910: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
   911: 
   912: 	PORT_START
   913: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
   914: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
   915: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
   916: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
   917: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
   918: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
   919: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
   920: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
   921: 
   922: 	PORT_START
   923: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
   924: 
   925: 	PORT_START
   926: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
   927: 	PORT_DIPSETTING(    0x02, "2" )
   928: 	PORT_DIPSETTING(    0x03, "3" )
   929: 	PORT_DIPSETTING(    0x01, "4" )
   930: 	PORT_DIPSETTING(    0x00, "5" )
   931: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
   932: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
   933: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   934: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Bonus_Life ) )
   935: 	PORT_DIPSETTING(    0x00, "50k 150k 250k 400k 600k" )
   936: 	PORT_DIPSETTING(    0x08, "100k 200k 350k 500k 700k"  )
   937:     /* Coin Mode 1 */
   938:     COIN_MODE_1
   939:     /* Coin Mode 2, not supported yet */
   940:     // COIN_MODE_2
   941: 
   942: 	PORT_START
   943: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
   944: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
   945: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   946: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
   947: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
   948: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
   949: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
   950: 	PORT_DIPSETTING(    0x04, "Mode 1" )
   951: 	PORT_DIPSETTING(    0x00, "Mode 2" )
   952: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) )
   953: 	PORT_DIPSETTING(    0x08, "Normal" )
   954: 	PORT_DIPSETTING(    0x00, "Difficult" )
   955: 	PORT_DIPNAME( 0x10, 0x10, "Allow Continue" )
   956: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
   957: 	PORT_DIPSETTING(    0x10, DEF_STR( Yes ) )
   958: 	/* In stop mode, press 2 to stop and 1 to restart */
   959: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
   960: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
   961: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   962: 	PORT_BITX( 0x40,    0x40, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
   963: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
   964: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   965: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
   966: INPUT_PORTS_END
   967: 
   968: /* identical but Demo Sounds is inverted */
   969: INPUT_PORTS_START( rtypep )
   970: 	PORT_START
   971: 	JOYSTICK_1
   972: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
   973: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
   974: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
   975: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
   976: 
   977: 	PORT_START
   978: 	JOYSTICK_2
   979: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
   980: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
   981: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
   982: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
   983: 
   984: 	PORT_START
   985: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
   986: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
   987: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
   988: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
   989: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
   990: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
   991: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
   992: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
   993: 
   994: 	PORT_START
   995: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
   996: 
   997: 	PORT_START
   998: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
   999: 	PORT_DIPSETTING(    0x02, "2" )
  1000: 	PORT_DIPSETTING(    0x03, "3" )
  1001: 	PORT_DIPSETTING(    0x01, "4" )
  1002: 	PORT_DIPSETTING(    0x00, "5" )
  1003: 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Demo_Sounds ) )
  1004: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1005: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
  1006: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Bonus_Life ) )
  1007: 	PORT_DIPSETTING(    0x00, "50k 150k 250k 400k 600k" )
  1008: 	PORT_DIPSETTING(    0x08, "100k 200k 350k 500k 700k"  )
  1009:     /* Coin Mode 1 */
  1010:     COIN_MODE_1
  1011:     /* Coin Mode 2, not supported yet */
  1012:     // COIN_MODE_2
  1013: 
  1014: 	PORT_START
  1015: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1016: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1017: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1018: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
  1019: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
  1020: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
  1021: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1022: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1023: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1024: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) )
  1025: 	PORT_DIPSETTING(    0x08, "Normal" )
  1026: 	PORT_DIPSETTING(    0x00, "Difficult" )
  1027: 	PORT_DIPNAME( 0x10, 0x10, "Allow Continue" )
  1028: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1029: 	PORT_DIPSETTING(    0x10, DEF_STR( Yes ) )
  1030: 	/* In stop mode, press 2 to stop and 1 to restart */
  1031: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
  1032: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1033: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1034: 	PORT_BITX( 0x40,    0x40, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1035: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1036: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1037: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1038: INPUT_PORTS_END
  1039: 
  1040: INPUT_PORTS_START( bchopper )
  1041: 	PORT_START
  1042: 	JOYSTICK_1
  1043: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1044: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1045: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1046: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1047: 
  1048: 	PORT_START
  1049: 	JOYSTICK_2
  1050: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1051: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1052: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1053: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1054: 
  1055: 	PORT_START
  1056: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1057: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1058: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1059: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1060: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1061: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1062: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1063: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1064: 
  1065: 	PORT_START
  1066: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1067: 
  1068: 	PORT_START
  1069: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1070: 	PORT_DIPSETTING(    0x00, "1" )
  1071: 	PORT_DIPSETTING(    0x02, "2" )
  1072: 	PORT_DIPSETTING(    0x03, "3" )
  1073: 	PORT_DIPSETTING(    0x01, "4" )
  1074: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
  1075: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
  1076: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1077: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Bonus_Life ) )
  1078: 	PORT_DIPSETTING(    0x08, "80k, 200k, 350k" )
  1079: 	PORT_DIPSETTING(    0x00, "100k, 250k, 400k" )
  1080:     /* Coin Mode 1 */
  1081:     COIN_MODE_1
  1082:     /* Coin Mode 2, not supported yet */
  1083:     // COIN_MODE_2
  1084: 
  1085: 	PORT_START
  1086: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1087: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1088: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1089: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
  1090: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
  1091: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
  1092: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1093: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1094: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1095: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Difficulty ) )
  1096: 	PORT_DIPSETTING(    0x08, "Normal" )
  1097: 	PORT_DIPSETTING(    0x00, "Hard" )
  1098: 	PORT_DIPNAME( 0x10, 0x10, "Allow Continue" )
  1099: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1100: 	PORT_DIPSETTING(    0x10, DEF_STR( Yes ) )
  1101: 	/* In stop mode, press 2 to stop and 1 to restart */
  1102: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
  1103: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1104: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1105: 	PORT_BITX( 0x40,    0x40, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1106: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1107: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1108: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1109: INPUT_PORTS_END
  1110: 
  1111: INPUT_PORTS_START( nspirit )
  1112: 	PORT_START
  1113: 	JOYSTICK_1
  1114: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1115: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1116: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1117: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1118: 
  1119: 	PORT_START
  1120: 	JOYSTICK_2
  1121: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1122: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1123: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1124: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1125: 
  1126: 	PORT_START
  1127: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1128: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1129: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1130: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1131: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1132: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1133: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1134: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1135: 
  1136: 	PORT_START
  1137: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1138: 
  1139: 	PORT_START
  1140: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1141: 	PORT_DIPSETTING(    0x02, "2" )
  1142: 	PORT_DIPSETTING(    0x03, "3" )
  1143: 	PORT_DIPSETTING(    0x01, "4" )
  1144: 	PORT_DIPSETTING(    0x00, "5" )
  1145: 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) )
  1146: 	PORT_DIPSETTING(    0x08, "Easy" )
  1147: 	PORT_DIPSETTING(    0x0c, "Normal" )
  1148: 	PORT_DIPSETTING(    0x04, "Hard" )
  1149: 	PORT_DIPSETTING(    0x00, "Hardest" )
  1150:     /* Coin Mode 1 */
  1151:     COIN_MODE_1
  1152:     /* Coin Mode 2, not supported yet */
  1153:     // COIN_MODE_2
  1154: 
  1155: 	PORT_START
  1156: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1157: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1158: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1159: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
  1160: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
  1161: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
  1162: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1163: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1164: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1165: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1166: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1167: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1168: 	PORT_DIPNAME( 0x10, 0x10, "Allow Continue" )
  1169: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1170: 	PORT_DIPSETTING(    0x10, DEF_STR( Yes ) )
  1171: 	/* In stop mode, press 2 to stop and 1 to restart */
  1172: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
  1173: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1174: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1175: 	PORT_BITX( 0x40,    0x40, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1176: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1177: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1178: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1179: INPUT_PORTS_END
  1180: 
  1181: INPUT_PORTS_START( imgfight )
  1182: 	PORT_START
  1183: 	JOYSTICK_1
  1184: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1185: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1186: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1187: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1188: 
  1189: 	PORT_START
  1190: 	JOYSTICK_2
  1191: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1192: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1193: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1194: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1195: 
  1196: 	PORT_START
  1197: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1198: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1199: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1200: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1201: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1202: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1203: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1204: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1205: 
  1206: 	PORT_START
  1207: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1208: 
  1209: 	PORT_START
  1210: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1211: 	PORT_DIPSETTING(    0x02, "2" )
  1212: 	PORT_DIPSETTING(    0x03, "3" )
  1213: 	PORT_DIPSETTING(    0x01, "4" )
  1214: 	PORT_DIPSETTING(    0x00, "5" )
  1215: 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) )
  1216: 	PORT_DIPSETTING(    0x0c, "Normal" )
  1217: 	PORT_DIPSETTING(    0x08, "Hard" )
  1218: 	PORT_DIPSETTING(    0x04, "Hardest" )
  1219: 	PORT_DIPSETTING(    0x00, "Debug mode 2lap" )
  1220:     /* Coin Mode 1 */
  1221:     COIN_MODE_1
  1222:     /* Coin Mode 2, not supported yet */
  1223:     // COIN_MODE_2
  1224: 
  1225: 	PORT_START
  1226: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1227: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1228: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1229: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
  1230: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
  1231: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
  1232: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1233: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1234: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1235: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1236: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1237: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1238: 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
  1239: 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
  1240: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1241: 	/* In stop mode, press 2 to stop and 1 to restart */
  1242: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
  1243: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1244: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1245: 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
  1246: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1247: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1248: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1249: INPUT_PORTS_END
  1250: 
  1251: INPUT_PORTS_START( loht )
  1252: 	PORT_START
  1253: 	JOYSTICK_1
  1254: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1255: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1256: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1257: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1258: 
  1259: 	PORT_START
  1260: 	JOYSTICK_2
  1261: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1262: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1263: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1264: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1265: 
  1266: 	PORT_START
  1267: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1268: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1269: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1270: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1271: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1272: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1273: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1274: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1275: 
  1276: 	PORT_START
  1277: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1278: 
  1279: 	PORT_START
  1280: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1281: 	PORT_DIPSETTING(    0x00, "2" )
  1282: 	PORT_DIPSETTING(    0x03, "3" )
  1283: 	PORT_DIPSETTING(    0x02, "4" )
  1284: 	PORT_DIPSETTING(    0x01, "5" )
  1285: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
  1286: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
  1287: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1288: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
  1289: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1290: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1291:     /* Coin Mode 1 */
  1292:     COIN_MODE_1
  1293:     /* Coin Mode 2, not supported yet */
  1294:     // COIN_MODE_2
  1295: 
  1296: 	PORT_START
  1297: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1298: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1299: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1300: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
  1301: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
  1302: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
  1303: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1304: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1305: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1306: 	PORT_DIPNAME( 0x18, 0x18, DEF_STR( Difficulty ) )
  1307: 	PORT_DIPSETTING(    0x00, "Easy" )
  1308: 	PORT_DIPSETTING(    0x18, "Normal" )
  1309: 	PORT_DIPSETTING(    0x10, "Hard" )
  1310: 	PORT_DIPSETTING(    0x08, "Very Hard" )
  1311: 	/* In stop mode, press 2 to stop and 1 to restart */
  1312: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
  1313: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1314: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1315: 	PORT_BITX( 0x40,    0x40, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1316: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1317: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1318: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1319: INPUT_PORTS_END
  1320: 
  1321: INPUT_PORTS_START( xmultipl )
  1322: 	PORT_START
  1323: 	JOYSTICK_1
  1324: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1325: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1326: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1327: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1328: 
  1329: 	PORT_START
  1330: 	JOYSTICK_2
  1331: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1332: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1333: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1334: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1335: 
  1336: 	PORT_START
  1337: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1338: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1339: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1340: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1341: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1342: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1343: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1344: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1345: 
  1346: 	PORT_START
  1347: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1348: 
  1349: 	PORT_START
  1350: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
  1351: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1352: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1353: 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
  1354: 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
  1355: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1356: 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Lives ) )
  1357: 	PORT_DIPSETTING(    0x08, "1" )
  1358: 	PORT_DIPSETTING(    0x04, "2" )
  1359: 	PORT_DIPSETTING(    0x0c, "3" )
  1360: 	PORT_DIPSETTING(    0x00, "4" )
  1361:     /* Coin Mode 1 */
  1362:     COIN_MODE_1
  1363:     /* Coin Mode 2, not supported yet */
  1364:     // COIN_MODE_2
  1365: 
  1366: 	PORT_START
  1367: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1368: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1369: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1370: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
  1371: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
  1372: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
  1373: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1374: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1375: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1376: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) )
  1377: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1378: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
  1379: 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
  1380: 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
  1381: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1382: 	PORT_DIPNAME( 0x20, 0x20, "Allow Continue" )
  1383: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1384: 	PORT_DIPSETTING(    0x20, DEF_STR( Yes ) )
  1385: 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
  1386: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1387: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1388: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1389: INPUT_PORTS_END
  1390: 
  1391: INPUT_PORTS_START( dbreed )
  1392: 	PORT_START
  1393: 	JOYSTICK_1
  1394: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1395: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1396: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1397: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1398: 
  1399: 	PORT_START
  1400: 	JOYSTICK_2
  1401: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1402: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1403: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1404: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1405: 
  1406: 	PORT_START
  1407: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1408: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1409: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1410: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1411: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1412: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1413: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1414: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1415: 
  1416: 	PORT_START
  1417: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1418: 
  1419: 	PORT_START
  1420: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1421: 	PORT_DIPSETTING(    0x02, "2" )
  1422: 	PORT_DIPSETTING(    0x03, "3" )
  1423: 	PORT_DIPSETTING(    0x01, "4" )
  1424: 	PORT_DIPSETTING(    0x00, "5" )
  1425: 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) )
  1426: 	PORT_DIPSETTING(    0x08, "Easy" )
  1427: 	PORT_DIPSETTING(    0x0c, "Normal" )
  1428: 	PORT_DIPSETTING(    0x04, "Hard" )
  1429: 	PORT_DIPSETTING(    0x00, "Hardest" )
  1430:     /* Coin Mode 1 */
  1431:     COIN_MODE_1
  1432:     /* Coin Mode 2, not supported yet */
  1433:     // COIN_MODE_2
  1434: 
  1435: 	PORT_START
  1436: 	PORT_DIPNAME( 0x01, 0x01, "Flip Screen?" )
  1437: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1438: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1439: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) )
  1440: 	PORT_DIPSETTING(    0x00, DEF_STR( Upright ) )
  1441: 	PORT_DIPSETTING(    0x02, DEF_STR( Cocktail ) )
  1442: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1443: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1444: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1445: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1446: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1447: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1448: 	PORT_DIPNAME( 0x10, 0x10, "Allow Continue" )
  1449: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1450: 	PORT_DIPSETTING(    0x10, DEF_STR( Yes ) )
  1451: 	/* In stop mode, press 2 to stop and 1 to restart */
  1452: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
  1453: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1454: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1455: 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
  1456: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1457: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1458: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1459: INPUT_PORTS_END
  1460: 
  1461: INPUT_PORTS_START( rtype2 )
  1462: 	PORT_START
  1463: 	JOYSTICK_1
  1464: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1465: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1466: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1467: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1468: 
  1469: 	PORT_START
  1470: 	JOYSTICK_2
  1471: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1472: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1473: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1474: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1475: 
  1476: 	PORT_START
  1477: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1478: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1479: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1480: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1481: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1482: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1483: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1484: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1485: 
  1486: 	PORT_START
  1487: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1488: 
  1489: 	PORT_START
  1490: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1491: 	PORT_DIPSETTING(    0x02, "2" )
  1492: 	PORT_DIPSETTING(    0x03, "3" )
  1493: 	PORT_DIPSETTING(    0x01, "4" )
  1494: 	PORT_DIPSETTING(    0x00, "5" )
  1495: 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) )
  1496: 	PORT_DIPSETTING(    0x00, "Easiest" )
  1497: 	PORT_DIPSETTING(    0x08, "Easy" )
  1498: 	PORT_DIPSETTING(    0x0c, "Normal" )
  1499: 	PORT_DIPSETTING(    0x04, "Hard" )
  1500:     /* Coin Mode 1 */
  1501:     COIN_MODE_1
  1502:     /* Coin Mode 2, not supported yet */
  1503:     // COIN_MODE_2
  1504: 
  1505: 	PORT_START
  1506: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1507: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1508: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1509: 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) )
  1510: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1511: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1512: 	PORT_DIPNAME( 0x04, 0x04, "Coin Mode" )
  1513: 	PORT_DIPSETTING(    0x04, "Mode 1" )
  1514: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1515: 	PORT_DIPNAME( 0x18, 0x10, DEF_STR( Cabinet ) )
  1516: 	PORT_DIPSETTING(    0x10, "Upright 1 Player" )
  1517: 	PORT_DIPSETTING(    0x00, "Upright 2 Players" )
  1518: 	PORT_DIPSETTING(    0x18, DEF_STR( Cocktail ) )
  1519: //	PORT_DIPSETTING(    0x08, "Upright 2 Players" )
  1520: 	/* In stop mode, press 2 to stop and 1 to restart */
  1521: 	PORT_BITX   ( 0x20, 0x20, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Stop Mode", IP_KEY_NONE, IP_JOY_NONE )
  1522: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1523: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1524: 	PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
  1525: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1526: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1527: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1528: INPUT_PORTS_END
  1529: 
  1530: INPUT_PORTS_START( hharry )
  1531: 	PORT_START
  1532: 	JOYSTICK_1
  1533: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1534: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1535: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1536: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1537: 
  1538: 	PORT_START
  1539: 	JOYSTICK_2
  1540: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1541: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1542: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1543: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1544: 
  1545: 	PORT_START
  1546: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1547: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1548: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1549: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1550: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1551: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1552: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1553: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1554: 
  1555: 	PORT_START
  1556: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1557: 
  1558: 	PORT_START
  1559: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1560: 	PORT_DIPSETTING(    0x02, "2" )
  1561: 	PORT_DIPSETTING(    0x03, "3" )
  1562: 	PORT_DIPSETTING(    0x01, "4" )
  1563: 	PORT_DIPSETTING(    0x00, "5" )
  1564: 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) )
  1565: 	PORT_DIPSETTING(    0x08, "Easy" )
  1566: 	PORT_DIPSETTING(    0x0c, "Normal" )
  1567: 	PORT_DIPSETTING(    0x04, "Hard" )
  1568: 	PORT_DIPSETTING(    0x00, "Very Hard" )
  1569: 	PORT_DIPNAME( 0x10, 0x10, "Limit N. of Continue?" )
  1570: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1571: 	PORT_DIPSETTING(    0x10, DEF_STR( Yes ) )
  1572: 	PORT_DIPNAME( 0x20, 0x20, "Allow Continue" )
  1573: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1574: 	PORT_DIPSETTING(    0x20, DEF_STR( Yes ) )
  1575: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
  1576: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1577: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1578: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1579: 
  1580: 	PORT_START
  1581: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1582: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1583: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1584: 	PORT_DIPNAME( 0x06, 0x04, DEF_STR( Cabinet ) )
  1585: 	PORT_DIPSETTING(    0x04, DEF_STR( Upright ) )
  1586: 	PORT_DIPSETTING(    0x00, "Upright, separate controls" )
  1587: 	// PORT_DIPSETTING(    0x02, "Upright, separate controls" )
  1588: 	PORT_DIPSETTING(    0x06, DEF_STR( Cocktail ) )
  1589: 	PORT_DIPNAME( 0x08, 0x08, "Coin Mode" )
  1590: 	PORT_DIPSETTING(    0x08, "Mode 1" )
  1591: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1592: 	/* Coin Mode 1 */
  1593: 	PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) )
  1594: 	PORT_DIPSETTING(    0xa0, DEF_STR( 6C_1C ) )
  1595: 	PORT_DIPSETTING(    0xb0, DEF_STR( 5C_1C ) )
  1596: 	PORT_DIPSETTING(    0xc0, DEF_STR( 4C_1C ) )
  1597: 	PORT_DIPSETTING(    0xd0, DEF_STR( 3C_1C ) )
  1598: 	PORT_DIPSETTING(    0x10, "2 to start, 1 to continue" )
  1599: 	PORT_DIPSETTING(    0xe0, DEF_STR( 2C_1C ) )
  1600: 	PORT_DIPSETTING(    0x30, DEF_STR( 3C_2C ) )
  1601: 	PORT_DIPSETTING(    0x20, DEF_STR( 4C_3C ) )
  1602: 	PORT_DIPSETTING(    0xf0, DEF_STR( 1C_1C ) )
  1603: 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_3C ) )
  1604: 	PORT_DIPSETTING(    0x90, DEF_STR( 1C_2C ) )
  1605: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) )
  1606: 	PORT_DIPSETTING(    0x70, DEF_STR( 1C_4C ) )
  1607: 	PORT_DIPSETTING(    0x60, DEF_STR( 1C_5C ) )
  1608: 	PORT_DIPSETTING(    0x50, DEF_STR( 1C_6C ) )
  1609: 	PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
  1610: 	/* Coin mode 2, not supported yet */
  1611:     // COIN_MODE_2
  1612: INPUT_PORTS_END
  1613: 
  1614: INPUT_PORTS_START( poundfor )
  1615: 	PORT_START
  1616: 	PORT_BIT( 0x1f, IP_ACTIVE_HIGH, IPT_SPECIAL )	/* high bits of trackball X */
  1617: 	PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER1 )
  1618: 	PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER1 )
  1619: 	PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1620: 
  1621: 	PORT_START
  1622: 	PORT_BIT( 0x1f, IP_ACTIVE_HIGH, IPT_SPECIAL )	/* high bits of trackball X */
  1623: 	PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 | IPF_PLAYER2 )
  1624: 	PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 | IPF_PLAYER2 )
  1625: 	PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1626: 
  1627: 	PORT_START
  1628: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1629: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1630: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1631: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1632: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1633: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1634: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1635: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1636: 
  1637: 	PORT_START
  1638: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1639: 
  1640: 	PORT_START
  1641: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
  1642: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1643: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1644: 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
  1645: 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
  1646: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1647: 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
  1648: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
  1649: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1650: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
  1651: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1652: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1653: 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
  1654: 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
  1655: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1656: 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
  1657: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1658: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1659: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
  1660: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1661: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1662: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1663: 
  1664: 	PORT_START
  1665: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1666: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1667: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1668: 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
  1669: 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
  1670: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1671: 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
  1672: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
  1673: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1674: 	PORT_DIPNAME( 0x08, 0x08, "Coin Mode" )
  1675: 	PORT_DIPSETTING(    0x08, "Mode 1" )
  1676: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1677: 
  1678: 	/* Coin Mode 1 */
  1679: 	PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) )
  1680: 	PORT_DIPSETTING(    0xa0, DEF_STR( 6C_1C ) )
  1681: 	PORT_DIPSETTING(    0xb0, DEF_STR( 5C_1C ) )
  1682: 	PORT_DIPSETTING(    0xc0, DEF_STR( 4C_1C ) )
  1683: 	PORT_DIPSETTING(    0xd0, DEF_STR( 3C_1C ) )
  1684: 	PORT_DIPSETTING(    0xe0, DEF_STR( 2C_1C ) )
  1685: 	PORT_DIPSETTING(    0x30, DEF_STR( 3C_2C ) )
  1686: 	PORT_DIPSETTING(    0x20, DEF_STR( 4C_3C ) )
  1687: 	PORT_DIPSETTING(    0xf0, DEF_STR( 1C_1C ) )
  1688: 	PORT_DIPSETTING(    0x10, "1 Coin/1 Credit, 1 to continue" )
  1689: 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_3C ) )
  1690: 	PORT_DIPSETTING(    0x90, DEF_STR( 1C_2C ) )
  1691: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) )
  1692: 	PORT_DIPSETTING(    0x70, DEF_STR( 1C_4C ) )
  1693: 	PORT_DIPSETTING(    0x60, DEF_STR( 1C_5C ) )
  1694: 	PORT_DIPSETTING(    0x50, DEF_STR( 1C_6C ) )
  1695: 	PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
  1696:     /* Coin Mode 2, not supported yet */
  1697:     // COIN_MODE_2
  1698: 
  1699: 	PORT_START
  1700: 	PORT_ANALOG( 0xffff, 0x0000, IPT_TRACKBALL_X | IPF_PLAYER1, 50, 30, 0, 0 )
  1701: 
  1702: 	PORT_START
  1703: 	PORT_ANALOG( 0xffff, 0x0000, IPT_TRACKBALL_Y | IPF_REVERSE | IPF_PLAYER1, 50, 30, 0, 0 )
  1704: 
  1705: 	PORT_START
  1706: 	PORT_ANALOG( 0xffff, 0x0000, IPT_TRACKBALL_X | IPF_REVERSE | IPF_PLAYER2, 50, 30, 0, 0 )
  1707: 
  1708: 	PORT_START
  1709: 	PORT_ANALOG( 0xffff, 0x0000, IPT_TRACKBALL_Y | IPF_PLAYER2, 50, 30, 0, 0 )
  1710: INPUT_PORTS_END
  1711: 
  1712: INPUT_PORTS_START( airduel )
  1713: 	PORT_START
  1714: 	JOYSTICK_1
  1715: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1716: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1717: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1718: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1719: 
  1720: 	PORT_START
  1721: 	JOYSTICK_2
  1722: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1723: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1724: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1725: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1726: 
  1727: 	PORT_START
  1728: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1729: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1730: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1731: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1732: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1733: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1734: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1735: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1736: 
  1737: 	PORT_START
  1738: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1739: 
  1740: 	PORT_START
  1741: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1742: 	PORT_DIPSETTING(    0x02, "2" )
  1743: 	PORT_DIPSETTING(    0x03, "3" )
  1744: 	PORT_DIPSETTING(    0x01, "4" )
  1745: 	PORT_DIPSETTING(    0x00, "5" )
  1746: 	PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) )
  1747: 	PORT_DIPSETTING(    0x00, "Easy" )
  1748: 	PORT_DIPSETTING(    0x08, "Easy" )
  1749: 	PORT_DIPSETTING(    0x0c, "Normal" )
  1750: 	PORT_DIPSETTING(    0x04, "Hard" )
  1751: 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
  1752: 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
  1753: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1754: 	PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
  1755: 	PORT_DIPSETTING(    0x20, DEF_STR( Off ) )
  1756: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1757: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
  1758: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1759: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1760: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1761: 
  1762: 	PORT_START
  1763: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1764: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1765: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1766: 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
  1767: 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
  1768: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1769: 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
  1770: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
  1771: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1772: 	PORT_DIPNAME( 0x08, 0x08, "Coin Mode" )
  1773: 	PORT_DIPSETTING(    0x08, "Mode 1" )
  1774: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1775: 
  1776: 	/* Coin Mode 1 */
  1777: 	PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) )
  1778: 	PORT_DIPSETTING(    0xa0, DEF_STR( 6C_1C ) )
  1779: 	PORT_DIPSETTING(    0xb0, DEF_STR( 5C_1C ) )
  1780: 	PORT_DIPSETTING(    0xc0, DEF_STR( 4C_1C ) )
  1781: 	PORT_DIPSETTING(    0xd0, DEF_STR( 3C_1C ) )
  1782: //	PORT_DIPSETTING(    0x10, DEF_STR( Free-Play ) )  /* another free play */
  1783: 	PORT_DIPSETTING(    0xe0, DEF_STR( 2C_1C ) )
  1784: 	PORT_DIPSETTING(    0x30, DEF_STR( 3C_2C ) )
  1785: 	PORT_DIPSETTING(    0x20, DEF_STR( 4C_3C ) )
  1786: 	PORT_DIPSETTING(    0xf0, DEF_STR( 1C_1C ) )
  1787: 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_3C ) )
  1788: 	PORT_DIPSETTING(    0x90, DEF_STR( 1C_2C ) )
  1789: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) )
  1790: 	PORT_DIPSETTING(    0x70, DEF_STR( 1C_4C ) )
  1791: 	PORT_DIPSETTING(    0x60, DEF_STR( 1C_5C ) )
  1792: 	PORT_DIPSETTING(    0x50, DEF_STR( 1C_6C ) )
  1793: 	PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
  1794:     /* Coin Mode 2, not supported yet */
  1795:     // COIN_MODE_2
  1796: INPUT_PORTS_END
  1797: 
  1798: INPUT_PORTS_START( gallop )
  1799: 	PORT_START
  1800: 	JOYSTICK_1
  1801: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1802: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1803: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1804: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1805: 
  1806: 	PORT_START
  1807: 	JOYSTICK_2
  1808: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1809: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1810: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1811: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1812: 
  1813: 	PORT_START
  1814: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1815: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1816: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1817: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1818: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1819: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1820: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1821: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1822: 
  1823: 	PORT_START
  1824: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1825: 
  1826: 	PORT_START
  1827: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1828: 	PORT_DIPSETTING(    0x02, "2" )
  1829: 	PORT_DIPSETTING(    0x03, "3" )
  1830: 	PORT_DIPSETTING(    0x01, "4" )
  1831: 	PORT_DIPSETTING(    0x00, "5" )
  1832: 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
  1833: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
  1834: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1835: 	PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
  1836: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1837: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1838: 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
  1839: 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
  1840: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1841: 	PORT_DIPNAME( 0x20, 0x20, "Allow Continue" )
  1842: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1843: 	PORT_DIPSETTING(    0x20, DEF_STR( Yes ) )
  1844: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
  1845: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1846: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1847: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1848: 
  1849: 	PORT_START
  1850: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1851: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1852: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1853: 	PORT_DIPNAME( 0x06, 0x00, DEF_STR( Cabinet ) )
  1854: 	PORT_DIPSETTING(    0x00, "Upright 1 Player" )
  1855: 	PORT_DIPSETTING(    0x02, "Upright 2 Players" )
  1856: 	PORT_DIPSETTING(    0x06, DEF_STR( Cocktail ) )
  1857: //	PORT_DIPSETTING(    0x04, DEF_STR( Upright ) )
  1858: 	PORT_DIPNAME( 0x08, 0x08, "Coin Mode" )
  1859: 	PORT_DIPSETTING(    0x08, "Mode 1" )
  1860: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1861: 	/* Coin Mode 1 */
  1862: 	PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) )
  1863: 	PORT_DIPSETTING(    0xa0, DEF_STR( 6C_1C ) )
  1864: 	PORT_DIPSETTING(    0xb0, DEF_STR( 5C_1C ) )
  1865: 	PORT_DIPSETTING(    0xc0, DEF_STR( 4C_1C ) )
  1866: 	PORT_DIPSETTING(    0xd0, DEF_STR( 3C_1C ) )
  1867: 	PORT_DIPSETTING(    0x10, "2 to start, 1 to continue" )
  1868: 	PORT_DIPSETTING(    0xe0, DEF_STR( 2C_1C ) )
  1869: 	PORT_DIPSETTING(    0x30, DEF_STR( 3C_2C ) )
  1870: 	PORT_DIPSETTING(    0x20, DEF_STR( 4C_3C ) )
  1871: 	PORT_DIPSETTING(    0xf0, DEF_STR( 1C_1C ) )
  1872: 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_3C ) )
  1873: 	PORT_DIPSETTING(    0x90, DEF_STR( 1C_2C ) )
  1874: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) )
  1875: 	PORT_DIPSETTING(    0x70, DEF_STR( 1C_4C ) )
  1876: 	PORT_DIPSETTING(    0x60, DEF_STR( 1C_5C ) )
  1877: 	PORT_DIPSETTING(    0x50, DEF_STR( 1C_6C ) )
  1878: 	PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
  1879: 	/* Coin mode 2, not supported yet */
  1880:     // COIN_MODE_2
  1881: INPUT_PORTS_END
  1882: 
  1883: INPUT_PORTS_START( kengo )
  1884: 	PORT_START
  1885: 	JOYSTICK_1
  1886: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
  1887: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
  1888: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
  1889: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
  1890: 
  1891: 	PORT_START
  1892: 	JOYSTICK_2
  1893: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 | IPF_COCKTAIL )
  1894: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 | IPF_COCKTAIL )
  1895: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
  1896: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
  1897: 
  1898: 	PORT_START
  1899: 	PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
  1900: 	PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
  1901: 	PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
  1902: 	PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
  1903: 	PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
  1904: 	PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) /* 0x20 is another test mode */
  1905: 	PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
  1906: 	PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL )	/* sprite DMA complete */
  1907: 
  1908: 	PORT_START
  1909: 	PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
  1910: 
  1911: 	PORT_START
  1912: 	PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
  1913: 	PORT_DIPSETTING(    0x02, "2" )
  1914: 	PORT_DIPSETTING(    0x03, "3" )
  1915: 	PORT_DIPSETTING(    0x01, "4" )
  1916: 	PORT_DIPSETTING(    0x00, "5" )
  1917: 	PORT_DIPNAME( 0x0c, 0x0c, "Difficulty?" )
  1918: 	PORT_DIPSETTING(    0x08, "Easy" )
  1919: 	PORT_DIPSETTING(    0x0c, "Normal" )
  1920: 	PORT_DIPSETTING(    0x04, "Hard" )
  1921: 	PORT_DIPSETTING(    0x00, "Very Hard" )
  1922: 	PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
  1923: 	PORT_DIPSETTING(    0x10, DEF_STR( Off ) )
  1924: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1925: 	PORT_DIPNAME( 0x20, 0x20, "Allow Continue" )
  1926: 	PORT_DIPSETTING(    0x00, DEF_STR( No ) )
  1927: 	PORT_DIPSETTING(    0x20, DEF_STR( Yes ) )
  1928: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
  1929: 	PORT_DIPSETTING(    0x40, DEF_STR( Off ) )
  1930: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1931: 	PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
  1932: 
  1933: 	PORT_START
  1934: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
  1935: 	PORT_DIPSETTING(    0x01, DEF_STR( Off ) )
  1936: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1937: 	PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
  1938: 	PORT_DIPSETTING(    0x02, DEF_STR( Off ) )
  1939: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1940: 	PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
  1941: 	PORT_DIPSETTING(    0x04, DEF_STR( Off ) )
  1942: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1943: 	PORT_DIPNAME( 0x08, 0x08, "Coin Mode" )
  1944: 	PORT_DIPSETTING(    0x08, "Mode 1" )
  1945: 	PORT_DIPSETTING(    0x00, "Mode 2" )
  1946: 	/* Coin Mode 1 */
  1947: 	PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coinage ) )
  1948: 	PORT_DIPSETTING(    0xa0, DEF_STR( 6C_1C ) )
  1949: 	PORT_DIPSETTING(    0xb0, DEF_STR( 5C_1C ) )
  1950: 	PORT_DIPSETTING(    0xc0, DEF_STR( 4C_1C ) )
  1951: 	PORT_DIPSETTING(    0xd0, DEF_STR( 3C_1C ) )
  1952: 	PORT_DIPSETTING(    0x10, "2 to start, 1 to continue" )
  1953: 	PORT_DIPSETTING(    0xe0, DEF_STR( 2C_1C ) )
  1954: 	PORT_DIPSETTING(    0x30, DEF_STR( 3C_2C ) )
  1955: 	PORT_DIPSETTING(    0x20, DEF_STR( 4C_3C ) )
  1956: 	PORT_DIPSETTING(    0xf0, DEF_STR( 1C_1C ) )
  1957: 	PORT_DIPSETTING(    0x40, DEF_STR( 2C_3C ) )
  1958: 	PORT_DIPSETTING(    0x90, DEF_STR( 1C_2C ) )
  1959: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_3C ) )
  1960: 	PORT_DIPSETTING(    0x70, DEF_STR( 1C_4C ) )
  1961: 	PORT_DIPSETTING(    0x60, DEF_STR( 1C_5C ) )
  1962: 	PORT_DIPSETTING(    0x50, DEF_STR( 1C_6C ) )
  1963: 	PORT_DIPSETTING(    0x00, DEF_STR( Free_Play ) )
  1964: 	/* Coin mode 2, not supported yet */
  1965:     // COIN_MODE_2
  1966: INPUT_PORTS_END
  1967: 
  1968: 
  1969: 
  1970: static struct GfxLayout tilelayout =
  1971: {
  1972: 	8,8,	/* 8*8 characters */
  1973: 	RGN_FRAC(1,4),	/* NUM characters */
  1974: 	4,	/* 4 bits per pixel */
  1975: 	{ RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) },
  1976: 	{ 0, 1, 2, 3, 4, 5, 6, 7 },
  1977: 	{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
  1978: 	8*8	/* every char takes 8 consecutive bytes */
  1979: };
  1980: 
  1981: static struct GfxLayout spritelayout =
  1982: {
  1983: 	16,16,	/* 16*16 sprites */
  1984: 	RGN_FRAC(1,4),	/* NUM characters */
  1985: 	4,	/* 4 bits per pixel */
  1986: 	{ RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) },
  1987: 	{ 0, 1, 2, 3, 4, 5, 6, 7,
  1988: 			16*8+0, 16*8+1, 16*8+2, 16*8+3, 16*8+4, 16*8+5, 16*8+6, 16*8+7 },
  1989: 	{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
  1990: 			8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
  1991: 	32*8	/* every sprite takes 32 consecutive bytes */
  1992: };
  1993: 
  1994: static struct GfxDecodeInfo m72_gfxdecodeinfo[] =
  1995: {
  1996: 	{ REGION_GFX1, 0, &spritelayout,    0, 16 },
  1997: 	{ REGION_GFX2, 0, &tilelayout,    256, 16 },
  1998: 	{ REGION_GFX3, 0, &tilelayout,    256, 16 },
  1999: 	{ -1 } /* end of array */
  2000: };
  2001: 
  2002: static struct GfxDecodeInfo rtype2_gfxdecodeinfo[] =
  2003: {
  2004: 	{ REGION_GFX1, 0, &spritelayout,     0, 16 },
  2005: 	{ REGION_GFX2, 0, &tilelayout,     256, 16 },
  2006: 	{ -1 } /* end of array */
  2007: };
  2008: 
  2009: static struct GfxDecodeInfo majtitle_gfxdecodeinfo[] =
  2010: {
  2011: 	{ REGION_GFX1, 0, &spritelayout,     0, 16 },
  2012: 	{ REGION_GFX2, 0, &tilelayout,     256, 16 },
  2013: 	{ REGION_GFX3, 0, &spritelayout,     0, 16 },
  2014: 	{ -1 } /* end of array */
  2015: };
  2016: 
  2017: 
  2018: 
  2019: static struct YM2151interface ym2151_interface =
  2020: {
  2021: 	1,			/* 1 chip */
  2022: 	3579545,	/* 3.579545 MHz */
  2023: 	{ YM3012_VOL(100,MIXER_PAN_LEFT,100,MIXER_PAN_RIGHT) },
  2024: 	{ m72_ym2151_irq_handler },
  2025: 	{ 0 }
  2026: };
  2027: 
  2028: static struct DACinterface dac_interface =
  2029: {
  2030: 	1,	/* 1 channel */
  2031: 	{ 40 }
  2032: };
  2033: 
  2034: 
  2035: 
  2036: static MACHINE_DRIVER_START( rtype )
  2037: 
  2038: 	/* basic machine hardware */
  2039: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2040: 	MDRV_CPU_MEMORY(rtype_readmem,rtype_writemem)
  2041: 	MDRV_CPU_PORTS(readport,writeport)
  2042: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2043: 
  2044: 	MDRV_CPU_ADD(Z80, 3579545)
  2045: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2046: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2047: 	MDRV_CPU_PORTS(sound_readport,sound_writeport)
  2048: 								/* IRQs are generated by main Z80 and YM2151 */
  2049: 	MDRV_FRAMES_PER_SECOND(55)
  2050: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2051: 
  2052: 	MDRV_MACHINE_INIT(m72)
  2053: 
  2054: 	/* video hardware */
  2055: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2056: 	MDRV_SCREEN_SIZE(512, 512)
  2057: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2058: 	MDRV_GFXDECODE(m72_gfxdecodeinfo)
  2059: 	MDRV_PALETTE_LENGTH(512)
  2060: 
  2061: 	MDRV_VIDEO_START(m72)
  2062: 	MDRV_VIDEO_EOF(m72)
  2063: 	MDRV_VIDEO_UPDATE(m72)
  2064: 
  2065: 	/* sound hardware */
  2066: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2067: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2068: MACHINE_DRIVER_END
  2069: 
  2070: 
  2071: static MACHINE_DRIVER_START( m72 )
  2072: 
  2073: 	/* basic machine hardware */
  2074: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2075: 	MDRV_CPU_MEMORY(m72_readmem,m72_writemem)
  2076: 	MDRV_CPU_PORTS(readport,writeport)
  2077: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2078: 
  2079: 	MDRV_CPU_ADD(Z80, 3579545)
  2080: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2081: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2082: 	MDRV_CPU_PORTS(sound_readport,sound_writeport)
  2083: 	MDRV_CPU_VBLANK_INT(fake_nmi,128)	/* clocked by V1? (Vigilante) */
  2084: 								/* IRQs are generated by main Z80 and YM2151 */
  2085: 	MDRV_FRAMES_PER_SECOND(55)
  2086: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2087: 
  2088: 	MDRV_MACHINE_INIT(m72)
  2089: 
  2090: 	/* video hardware */
  2091: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2092: 	MDRV_SCREEN_SIZE(512, 512)
  2093: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2094: 	MDRV_GFXDECODE(m72_gfxdecodeinfo)
  2095: 	MDRV_PALETTE_LENGTH(512)
  2096: 
  2097: 	MDRV_VIDEO_START(m72)
  2098: 	MDRV_VIDEO_EOF(m72)
  2099: 	MDRV_VIDEO_UPDATE(m72)
  2100: 
  2101: 	/* sound hardware */
  2102: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2103: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2104: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2105: MACHINE_DRIVER_END
  2106: 
  2107: 
  2108: static MACHINE_DRIVER_START( dkgenm72 )
  2109: 
  2110: 	/* basic machine hardware */
  2111: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2112: 	MDRV_CPU_MEMORY(m72_readmem,m72_writemem)
  2113: 	MDRV_CPU_PORTS(readport,xmultipl_writeport)
  2114: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2115: 
  2116: 	MDRV_CPU_ADD(Z80, 3579545)
  2117: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2118: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2119: 	MDRV_CPU_PORTS(sound_readport,sound_writeport)
  2120: 	MDRV_CPU_VBLANK_INT(fake_nmi,128)	/* clocked by V1? (Vigilante) */
  2121: 								/* IRQs are generated by main Z80 and YM2151 */
  2122: 	MDRV_FRAMES_PER_SECOND(55)
  2123: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2124: 
  2125: 	MDRV_MACHINE_INIT(xmultipl)
  2126: 
  2127: 	/* video hardware */
  2128: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2129: 	MDRV_SCREEN_SIZE(512, 512)
  2130: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2131: 	MDRV_GFXDECODE(m72_gfxdecodeinfo)
  2132: 	MDRV_PALETTE_LENGTH(512)
  2133: 
  2134: 	MDRV_VIDEO_START(m72)
  2135: 	MDRV_VIDEO_EOF(m72)
  2136: 	MDRV_VIDEO_UPDATE(m72)
  2137: 
  2138: 	/* sound hardware */
  2139: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2140: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2141: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2142: MACHINE_DRIVER_END
  2143: 
  2144: 
  2145: static MACHINE_DRIVER_START( xmultipl )
  2146: 
  2147: 	/* basic machine hardware */
  2148: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2149: 	MDRV_CPU_MEMORY(xmultipl_readmem,xmultipl_writemem)
  2150: 	MDRV_CPU_PORTS(readport,xmultipl_writeport)
  2151: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2152: 
  2153: 	MDRV_CPU_ADD(Z80, 3579545)
  2154: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2155: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2156: 	MDRV_CPU_PORTS(sound_readport,sound_writeport)
  2157: 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,128)	/* clocked by V1? (Vigilante) */
  2158: 								/* IRQs are generated by main Z80 and YM2151 */
  2159: 	MDRV_FRAMES_PER_SECOND(55)
  2160: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2161: 
  2162: 	MDRV_MACHINE_INIT(xmultipl)
  2163: 
  2164: 	/* video hardware */
  2165: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2166: 	MDRV_SCREEN_SIZE(512, 512)
  2167: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2168: 	MDRV_GFXDECODE(m72_gfxdecodeinfo)
  2169: 	MDRV_PALETTE_LENGTH(512)
  2170: 
  2171: 	MDRV_VIDEO_START(m72)
  2172: 	MDRV_VIDEO_EOF(m72)
  2173: 	MDRV_VIDEO_UPDATE(m72)
  2174: 
  2175: 	/* sound hardware */
  2176: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2177: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2178: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2179: MACHINE_DRIVER_END
  2180: 
  2181: 
  2182: static MACHINE_DRIVER_START( dbreed )
  2183: 
  2184: 	/* basic machine hardware */
  2185: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2186: 	MDRV_CPU_MEMORY(dbreed_readmem,dbreed_writemem)
  2187: 	MDRV_CPU_PORTS(readport,xmultipl_writeport)
  2188: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2189: 
  2190: 	MDRV_CPU_ADD(Z80, 3579545)
  2191: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2192: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2193: 	MDRV_CPU_PORTS(sound_readport,sound_writeport)
  2194: 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,128)	/* clocked by V1? (Vigilante) */
  2195: 								/* IRQs are generated by main Z80 and YM2151 */
  2196: 	MDRV_FRAMES_PER_SECOND(55)
  2197: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2198: 	MDRV_MACHINE_INIT(xmultipl)
  2199: 
  2200: 	/* video hardware */
  2201: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2202: 	MDRV_SCREEN_SIZE(512, 512)
  2203: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2204: 	MDRV_GFXDECODE(m72_gfxdecodeinfo)
  2205: 	MDRV_PALETTE_LENGTH(512)
  2206: 
  2207: 	MDRV_VIDEO_START(m72)
  2208: 	MDRV_VIDEO_EOF(m72)
  2209: 	MDRV_VIDEO_UPDATE(m72)
  2210: 
  2211: 	/* sound hardware */
  2212: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2213: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2214: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2215: MACHINE_DRIVER_END
  2216: 
  2217: 
  2218: static MACHINE_DRIVER_START( rtype2 )
  2219: 
  2220: 	/* basic machine hardware */
  2221: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2222: 	MDRV_CPU_MEMORY(rtype2_readmem,rtype2_writemem)
  2223: 	MDRV_CPU_PORTS(readport,rtype2_writeport)
  2224: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2225: 
  2226: 	MDRV_CPU_ADD(Z80, 3579545)
  2227: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2228: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2229: 	MDRV_CPU_PORTS(rtype2_sound_readport,rtype2_sound_writeport)
  2230: 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,128)	/* clocked by V1? (Vigilante) */
  2231: 								/* IRQs are generated by main Z80 and YM2151 */
  2232: 	MDRV_FRAMES_PER_SECOND(55)
  2233: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2234: 
  2235: 	MDRV_MACHINE_INIT(m72)
  2236: 
  2237: 	/* video hardware */
  2238: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2239: 	MDRV_SCREEN_SIZE(512, 512)
  2240: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2241: 	MDRV_GFXDECODE(rtype2_gfxdecodeinfo)
  2242: 	MDRV_PALETTE_LENGTH(512)
  2243: 
  2244: 	MDRV_VIDEO_START(rtype2)
  2245: 	MDRV_VIDEO_EOF(m72)
  2246: 	MDRV_VIDEO_UPDATE(m72)
  2247: 
  2248: 	/* sound hardware */
  2249: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2250: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2251: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2252: MACHINE_DRIVER_END
  2253: 
  2254: static MACHINE_DRIVER_START( majtitle )
  2255: 
  2256: 	/* basic machine hardware */
  2257: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2258: 	MDRV_CPU_MEMORY(majtitle_readmem,majtitle_writemem)
  2259: 	MDRV_CPU_PORTS(readport,majtitle_writeport)
  2260: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2261: 
  2262: 	MDRV_CPU_ADD(Z80, 3579545)
  2263: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2264: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2265: 	MDRV_CPU_PORTS(rtype2_sound_readport,rtype2_sound_writeport)
  2266: 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,128)	/* clocked by V1? (Vigilante) */
  2267: 								/* IRQs are generated by main Z80 and YM2151 */
  2268: 	MDRV_FRAMES_PER_SECOND(55)
  2269: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2270: 
  2271: 	MDRV_MACHINE_INIT(m72)
  2272: 
  2273: 	/* video hardware */
  2274: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2275: 	MDRV_SCREEN_SIZE(512, 512)
  2276: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2277: 	MDRV_GFXDECODE(majtitle_gfxdecodeinfo)
  2278: 	MDRV_PALETTE_LENGTH(512)
  2279: 
  2280: 	MDRV_VIDEO_START(majtitle)
  2281: 	MDRV_VIDEO_EOF(m72)
  2282: 	MDRV_VIDEO_UPDATE(majtitle)
  2283: 
  2284: 	/* sound hardware */
  2285: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2286: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2287: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2288: MACHINE_DRIVER_END
  2289: 
  2290: static MACHINE_DRIVER_START( hharry )
  2291: 
  2292: 	/* basic machine hardware */
  2293: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2294: 	MDRV_CPU_MEMORY(hharry_readmem,hharry_writemem)
  2295: 	MDRV_CPU_PORTS(readport,hharry_writeport)
  2296: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2297: 
  2298: 	MDRV_CPU_ADD(Z80, 3579545)
  2299: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2300: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2301: 	MDRV_CPU_PORTS(rtype2_sound_readport,rtype2_sound_writeport)
  2302: 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,128)	/* clocked by V1? (Vigilante) */
  2303: 								/* IRQs are generated by main Z80 and YM2151 */
  2304: 	MDRV_FRAMES_PER_SECOND(55)
  2305: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2306: 
  2307: 	MDRV_MACHINE_INIT(xmultipl)
  2308: 
  2309: 	/* video hardware */
  2310: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2311: 	MDRV_SCREEN_SIZE(512, 512)
  2312: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2313: 	MDRV_GFXDECODE(rtype2_gfxdecodeinfo)
  2314: 	MDRV_PALETTE_LENGTH(512)
  2315: 
  2316: 	MDRV_VIDEO_START(hharry)
  2317: 	MDRV_VIDEO_EOF(m72)
  2318: 	MDRV_VIDEO_UPDATE(m72)
  2319: 
  2320: 	/* sound hardware */
  2321: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2322: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2323: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2324: MACHINE_DRIVER_END
  2325: 
  2326: 
  2327: static MACHINE_DRIVER_START( hharryu )
  2328: 
  2329: 	/* basic machine hardware */
  2330: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2331: 	MDRV_CPU_MEMORY(hharryu_readmem,hharryu_writemem)
  2332: 	MDRV_CPU_PORTS(readport,rtype2_writeport)
  2333: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2334: 
  2335: 	MDRV_CPU_ADD(Z80, 3579545)
  2336: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2337: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2338: 	MDRV_CPU_PORTS(rtype2_sound_readport,rtype2_sound_writeport)
  2339: 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,128)	/* clocked by V1? (Vigilante) */
  2340: 								/* IRQs are generated by main Z80 and YM2151 */
  2341: 	MDRV_FRAMES_PER_SECOND(55)
  2342: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2343: 
  2344: 	MDRV_MACHINE_INIT(xmultipl)
  2345: 
  2346: 	/* video hardware */
  2347: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2348: 	MDRV_SCREEN_SIZE(512, 512)
  2349: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2350: 	MDRV_GFXDECODE(rtype2_gfxdecodeinfo)
  2351: 	MDRV_PALETTE_LENGTH(512)
  2352: 
  2353: 	MDRV_VIDEO_START(rtype2)
  2354: 	MDRV_VIDEO_EOF(m72)
  2355: 	MDRV_VIDEO_UPDATE(m72)
  2356: 
  2357: 	/* sound hardware */
  2358: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2359: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2360: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2361: MACHINE_DRIVER_END
  2362: 
  2363: 
  2364: static MACHINE_DRIVER_START( poundfor )
  2365: 
  2366: 	/* basic machine hardware */
  2367: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2368: 	MDRV_CPU_MEMORY(rtype2_readmem,rtype2_writemem)
  2369: 	MDRV_CPU_PORTS(poundfor_readport,rtype2_writeport)
  2370: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2371: 
  2372: 	MDRV_CPU_ADD(Z80, 3579545)
  2373: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2374: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2375: 	MDRV_CPU_PORTS(poundfor_sound_readport,poundfor_sound_writeport)
  2376: 	MDRV_CPU_VBLANK_INT(fake_nmi,128)	/* clocked by V1? (Vigilante) */
  2377: 								/* IRQs are generated by main Z80 and YM2151 */
  2378: 	MDRV_FRAMES_PER_SECOND(55)
  2379: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2380: 	MDRV_MACHINE_INIT(m72)
  2381: 
  2382: 	/* video hardware */
  2383: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2384: 	MDRV_SCREEN_SIZE(512, 512)
  2385: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2386: 	MDRV_GFXDECODE(rtype2_gfxdecodeinfo)
  2387: 	MDRV_PALETTE_LENGTH(512)
  2388: 
  2389: 	MDRV_VIDEO_START(poundfor)
  2390: 	MDRV_VIDEO_EOF(m72)
  2391: 	MDRV_VIDEO_UPDATE(m72)
  2392: 
  2393: 	/* sound hardware */
  2394: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2395: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2396: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2397: MACHINE_DRIVER_END
  2398: 
  2399: static MACHINE_DRIVER_START( kengo )
  2400: 
  2401: 	/* basic machine hardware */
  2402: 	MDRV_CPU_ADD(V30,32000000/4)	/* 16 MHz external freq (8MHz internal) */
  2403: 	MDRV_CPU_MEMORY(kengo_readmem,kengo_writemem)
  2404: 	MDRV_CPU_PORTS(readport,kengo_writeport)
  2405: 	MDRV_CPU_VBLANK_INT(m72_interrupt,256)
  2406: 
  2407: 	MDRV_CPU_ADD(Z80, 3579545)
  2408: 	MDRV_CPU_FLAGS(CPU_AUDIO_CPU)	/* 3.579545 MHz */
  2409: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  2410: 	MDRV_CPU_PORTS(rtype2_sound_readport,rtype2_sound_writeport)
  2411: 	MDRV_CPU_VBLANK_INT(nmi_line_pulse,128)	/* clocked by V1? (Vigilante) */
  2412: 								/* IRQs are generated by main Z80 and YM2151 */
  2413: 	MDRV_FRAMES_PER_SECOND(55)
  2414: 	MDRV_VBLANK_DURATION(DEFAULT_60HZ_VBLANK_DURATION)
  2415: 
  2416: 	MDRV_MACHINE_INIT(kengo)
  2417: 
  2418: 	/* video hardware */
  2419: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
  2420: 	MDRV_SCREEN_SIZE(512, 512)
  2421: 	MDRV_VISIBLE_AREA(8*8, (64-8)*8-1, 16*8, (64-16)*8-1 )
  2422: 	MDRV_GFXDECODE(rtype2_gfxdecodeinfo)
  2423: 	MDRV_PALETTE_LENGTH(512)
  2424: 
  2425: 	MDRV_VIDEO_START(poundfor)
  2426: 	MDRV_VIDEO_EOF(m72)
  2427: 	MDRV_VIDEO_UPDATE(m72)
  2428: 
  2429: 	/* sound hardware */
  2430: 	MDRV_SOUND_ATTRIBUTES(SOUND_SUPPORTS_STEREO)
  2431: 	MDRV_SOUND_ADD(YM2151, ym2151_interface)
  2432: 	MDRV_SOUND_ADD(DAC, dac_interface)
  2433: MACHINE_DRIVER_END
  2434: 
  2435: 
  2436: 
  2437: /***************************************************************************
  2438: 
  2439:   Game driver(s)
  2440: 
  2441: ***************************************************************************/
  2442: 
  2443: ROM_START( rtype )
  2444: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2445: 	ROM_LOAD16_BYTE( "rt_r-h0-.bin", 0x00001, 0x10000, CRC(c2940df2) SHA1(cbccd205ef81a0e39990a34d46e3f7d52b62e385) )
  2446: 	ROM_LOAD16_BYTE( "rt_r-l0-.bin", 0x00000, 0x10000, CRC(858cc0f6) SHA1(7a256fe3aa3a96e161dd485a90b18c421b61458b) )
  2447: 	ROM_LOAD16_BYTE( "rt_r-h1-.bin", 0x20001, 0x10000, CRC(5bcededa) SHA1(4ada3fd207fa57751f8e3d885bc91b374e27035d) )
  2448: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2449: 	ROM_LOAD16_BYTE( "rt_r-l1-.bin", 0x20000, 0x10000, CRC(4821141c) SHA1(df6cf04c3ecd04b6f27a96871848904575414dae) )
  2450: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2451: 
  2452: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2453: 	/* no ROM, program will be copied by the main CPU */
  2454: 
  2455: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2456: 	ROM_LOAD( "cpu-00.bin",   0x00000, 0x10000, CRC(dad53bc0) SHA1(1e3bc498861946278a0b1fe24259f5d224e265d7) )	/* sprites */
  2457: 	ROM_LOAD( "cpu-01.bin",   0x10000, 0x10000, CRC(b28d1a60) SHA1(26d0b5a381f5b462a223cb474067c7b5e67706df) )
  2458: 	ROM_LOAD( "cpu-10.bin",   0x20000, 0x10000, CRC(d6a66298) SHA1(d2873d05aa3b257e7699c188880ac3daad672fa5) )
  2459: 	ROM_LOAD( "cpu-11.bin",   0x30000, 0x10000, CRC(bb182f1a) SHA1(93b24bb0d6abd5c42c84a041c79b1dcea568e443) )
  2460: 	ROM_LOAD( "cpu-20.bin",   0x40000, 0x10000, CRC(fc247c8a) SHA1(01cf0a60f47fa5e2ed430a3f075e69e6cb762a48) )
  2461: 	ROM_LOAD( "cpu-21.bin",   0x50000, 0x10000, CRC(5b41f5f3) SHA1(8f47a77fb6513b8f611671d34721e33d284dc035) )
  2462: 	ROM_LOAD( "cpu-30.bin",   0x60000, 0x10000, CRC(eb02a1cb) SHA1(60a394ab53afdcbbf9e88083b8dbe8c897170d77) )
  2463: 	ROM_LOAD( "cpu-31.bin",   0x70000, 0x10000, CRC(2bec510a) SHA1(3455e72095832135ac006944a1209e720ec5c8bf) )
  2464: 
  2465: 	ROM_REGION( 0x20000, REGION_GFX2, ROMREGION_DISPOSE )
  2466: 	ROM_LOAD( "cpu-a0.bin",   0x00000, 0x08000, CRC(4e212fb0) SHA1(687061ecade2ebd0bd1343c9c4a831791853f79c) )	/* tiles #1 */
  2467: 	ROM_LOAD( "cpu-a1.bin",   0x08000, 0x08000, CRC(8a65bdff) SHA1(130bf6af521f13247a739a95eab4bdaa24b2ac10) )
  2468: 	ROM_LOAD( "cpu-a2.bin",   0x10000, 0x08000, CRC(5a4ae5b9) SHA1(95c3b64f50e6f673b2bf9b40642c152da5009d25) )
  2469: 	ROM_LOAD( "cpu-a3.bin",   0x18000, 0x08000, CRC(73327606) SHA1(9529ecdedd30e2a0400fb1083117992cc18b5158) )
  2470: 
  2471: 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
  2472: 	ROM_LOAD( "cpu-b0.bin",   0x00000, 0x08000, CRC(a7b17491) SHA1(5b390770e56ba2d35e108534d7eda8dca996fdf7) )	/* tiles #2 */
  2473: 	ROM_LOAD( "cpu-b1.bin",   0x08000, 0x08000, CRC(b9709686) SHA1(700905a3e9661e0874939f54da2909e1396ce596) )
  2474: 	ROM_LOAD( "cpu-b2.bin",   0x10000, 0x08000, CRC(433b229a) SHA1(14222eaa3e67e5a7f80eafcf22bac4eb2d485a9a) )
  2475: 	ROM_LOAD( "cpu-b3.bin",   0x18000, 0x08000, CRC(ad89b072) SHA1(e2683d0e7415f3abd147e518bf6c87e44744cd4f) )
  2476: ROM_END
  2477: 
  2478: ROM_START( rtypepj )
  2479: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2480: 	ROM_LOAD16_BYTE( "db_b1.bin",   0x00001, 0x10000, CRC(c1865141) SHA1(3302b6529aa903d81eb2196d745eb4f7f8316857) )
  2481: 	ROM_LOAD16_BYTE( "db_a1.bin",   0x00000, 0x10000, CRC(5ad2bd90) SHA1(0937dbbdf0cbce2e81cecf4d770bbd8c6bd82801) )
  2482: 	ROM_LOAD16_BYTE( "db_b2.bin",   0x20001, 0x10000, CRC(b4f6407e) SHA1(4a00d8e104c580900b4feb318dd162b77b71d0a5) )
  2483: 	ROM_RELOAD(                     0xe0001, 0x10000 )
  2484: 	ROM_LOAD16_BYTE( "db_a2.bin",   0x20000, 0x10000, CRC(6098d86f) SHA1(c6c9c1c2c30d5f190c40e000004bd21606efb8b0) )
  2485: 	ROM_RELOAD(                     0xe0000, 0x10000 )
  2486: 
  2487: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2488: 	/* no ROM, program will be copied by the main CPU */
  2489: 
  2490: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2491: 	ROM_LOAD( "cpu-00.bin",   0x00000, 0x10000, CRC(dad53bc0) SHA1(1e3bc498861946278a0b1fe24259f5d224e265d7) )	/* sprites */
  2492: 	ROM_LOAD( "cpu-01.bin",   0x10000, 0x10000, CRC(b28d1a60) SHA1(26d0b5a381f5b462a223cb474067c7b5e67706df) )
  2493: 	ROM_LOAD( "cpu-10.bin",   0x20000, 0x10000, CRC(d6a66298) SHA1(d2873d05aa3b257e7699c188880ac3daad672fa5) )
  2494: 	ROM_LOAD( "cpu-11.bin",   0x30000, 0x10000, CRC(bb182f1a) SHA1(93b24bb0d6abd5c42c84a041c79b1dcea568e443) )
  2495: 	ROM_LOAD( "cpu-20.bin",   0x40000, 0x10000, CRC(fc247c8a) SHA1(01cf0a60f47fa5e2ed430a3f075e69e6cb762a48) )
  2496: 	ROM_LOAD( "cpu-21.bin",   0x50000, 0x10000, CRC(5b41f5f3) SHA1(8f47a77fb6513b8f611671d34721e33d284dc035) )
  2497: 	ROM_LOAD( "cpu-30.bin",   0x60000, 0x10000, CRC(eb02a1cb) SHA1(60a394ab53afdcbbf9e88083b8dbe8c897170d77) )
  2498: 	ROM_LOAD( "cpu-31.bin",   0x70000, 0x10000, CRC(2bec510a) SHA1(3455e72095832135ac006944a1209e720ec5c8bf) )
  2499: 
  2500: 	ROM_REGION( 0x20000, REGION_GFX2, ROMREGION_DISPOSE )
  2501: 	ROM_LOAD( "cpu-a0.bin",   0x00000, 0x08000, CRC(4e212fb0) SHA1(687061ecade2ebd0bd1343c9c4a831791853f79c) )	/* tiles #1 */
  2502: 	ROM_LOAD( "cpu-a1.bin",   0x08000, 0x08000, CRC(8a65bdff) SHA1(130bf6af521f13247a739a95eab4bdaa24b2ac10) )
  2503: 	ROM_LOAD( "cpu-a2.bin",   0x10000, 0x08000, CRC(5a4ae5b9) SHA1(95c3b64f50e6f673b2bf9b40642c152da5009d25) )
  2504: 	ROM_LOAD( "cpu-a3.bin",   0x18000, 0x08000, CRC(73327606) SHA1(9529ecdedd30e2a0400fb1083117992cc18b5158) )
  2505: 
  2506: 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
  2507: 	ROM_LOAD( "cpu-b0.bin",   0x00000, 0x08000, CRC(a7b17491) SHA1(5b390770e56ba2d35e108534d7eda8dca996fdf7) )	/* tiles #2 */
  2508: 	ROM_LOAD( "cpu-b1.bin",   0x08000, 0x08000, CRC(b9709686) SHA1(700905a3e9661e0874939f54da2909e1396ce596) )
  2509: 	ROM_LOAD( "cpu-b2.bin",   0x10000, 0x08000, CRC(433b229a) SHA1(14222eaa3e67e5a7f80eafcf22bac4eb2d485a9a) )
  2510: 	ROM_LOAD( "cpu-b3.bin",   0x18000, 0x08000, CRC(ad89b072) SHA1(e2683d0e7415f3abd147e518bf6c87e44744cd4f) )
  2511: ROM_END
  2512: 
  2513: ROM_START( rtypeu )
  2514: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2515: 	ROM_LOAD16_BYTE( "aud-h0.bin",   0x00001, 0x10000, CRC(36008a4e) SHA1(832006cb14a34e1671e305cc8ae606c3c6185a6a) )
  2516: 	ROM_LOAD16_BYTE( "aud-l0.bin",   0x00000, 0x10000, CRC(4aaa668e) SHA1(87059460b59f43f2ca8cd959d76f721facd9de96) )
  2517: 	ROM_LOAD16_BYTE( "aud-h1.bin",   0x20001, 0x10000, CRC(7ebb2a53) SHA1(1466df19888c3374847eb77f702060647e49d6ad) )
  2518: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2519: 	ROM_LOAD16_BYTE( "aud-l1.bin",   0x20000, 0x10000, CRC(c28b103b) SHA1(f294a23c3917b97812eb4c7f3a99253fd0cbb7ea) )
  2520: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2521: 
  2522: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2523: 	/* no ROM, program will be copied by the main CPU */
  2524: 
  2525: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2526: 	ROM_LOAD( "cpu-00.bin",   0x00000, 0x10000, CRC(dad53bc0) SHA1(1e3bc498861946278a0b1fe24259f5d224e265d7) )	/* sprites */
  2527: 	ROM_LOAD( "cpu-01.bin",   0x10000, 0x10000, CRC(b28d1a60) SHA1(26d0b5a381f5b462a223cb474067c7b5e67706df) )
  2528: 	ROM_LOAD( "cpu-10.bin",   0x20000, 0x10000, CRC(d6a66298) SHA1(d2873d05aa3b257e7699c188880ac3daad672fa5) )
  2529: 	ROM_LOAD( "cpu-11.bin",   0x30000, 0x10000, CRC(bb182f1a) SHA1(93b24bb0d6abd5c42c84a041c79b1dcea568e443) )
  2530: 	ROM_LOAD( "cpu-20.bin",   0x40000, 0x10000, CRC(fc247c8a) SHA1(01cf0a60f47fa5e2ed430a3f075e69e6cb762a48) )
  2531: 	ROM_LOAD( "cpu-21.bin",   0x50000, 0x10000, CRC(5b41f5f3) SHA1(8f47a77fb6513b8f611671d34721e33d284dc035) )
  2532: 	ROM_LOAD( "cpu-30.bin",   0x60000, 0x10000, CRC(eb02a1cb) SHA1(60a394ab53afdcbbf9e88083b8dbe8c897170d77) )
  2533: 	ROM_LOAD( "cpu-31.bin",   0x70000, 0x10000, CRC(2bec510a) SHA1(3455e72095832135ac006944a1209e720ec5c8bf) )
  2534: 
  2535: 	ROM_REGION( 0x20000, REGION_GFX2, ROMREGION_DISPOSE )
  2536: 	ROM_LOAD( "cpu-a0.bin",   0x00000, 0x08000, CRC(4e212fb0) SHA1(687061ecade2ebd0bd1343c9c4a831791853f79c) )	/* tiles #1 */
  2537: 	ROM_LOAD( "cpu-a1.bin",   0x08000, 0x08000, CRC(8a65bdff) SHA1(130bf6af521f13247a739a95eab4bdaa24b2ac10) )
  2538: 	ROM_LOAD( "cpu-a2.bin",   0x10000, 0x08000, CRC(5a4ae5b9) SHA1(95c3b64f50e6f673b2bf9b40642c152da5009d25) )
  2539: 	ROM_LOAD( "cpu-a3.bin",   0x18000, 0x08000, CRC(73327606) SHA1(9529ecdedd30e2a0400fb1083117992cc18b5158) )
  2540: 
  2541: 	ROM_REGION( 0x20000, REGION_GFX3, ROMREGION_DISPOSE )
  2542: 	ROM_LOAD( "cpu-b0.bin",   0x00000, 0x08000, CRC(a7b17491) SHA1(5b390770e56ba2d35e108534d7eda8dca996fdf7) )	/* tiles #2 */
  2543: 	ROM_LOAD( "cpu-b1.bin",   0x08000, 0x08000, CRC(b9709686) SHA1(700905a3e9661e0874939f54da2909e1396ce596) )
  2544: 	ROM_LOAD( "cpu-b2.bin",   0x10000, 0x08000, CRC(433b229a) SHA1(14222eaa3e67e5a7f80eafcf22bac4eb2d485a9a) )
  2545: 	ROM_LOAD( "cpu-b3.bin",   0x18000, 0x08000, CRC(ad89b072) SHA1(e2683d0e7415f3abd147e518bf6c87e44744cd4f) )
  2546: ROM_END
  2547: 
  2548: ROM_START( bchopper )
  2549: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2550: 	ROM_LOAD16_BYTE( "c-h0-b.rom",   0x00001, 0x10000, CRC(f2feab16) SHA1(03ee874658e0f59957f8425e1ebf9c938737cc19) )
  2551: 	ROM_LOAD16_BYTE( "c-l0-b.rom",   0x00000, 0x10000, CRC(9f887096) SHA1(4f41ef29580fc026ea91d110ec6b2e6af83dbd9a) )
  2552: 	ROM_LOAD16_BYTE( "c-h1-b.rom",   0x20001, 0x10000, CRC(a995d64f) SHA1(43eb2eb11e6875298a6ef2b18f0f5e587f1bba16) )
  2553: 	ROM_LOAD16_BYTE( "c-l1-b.rom",   0x20000, 0x10000, CRC(41dda999) SHA1(4d07a399aaf16bc37b5488e3e4bb60e78811a099) )
  2554: 	ROM_LOAD16_BYTE( "c-h3-b.rom",   0x60001, 0x10000, CRC(ab9451ca) SHA1(ec0e0ad592d8b21bb4e6927a452e3b7964cda015) )
  2555: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2556: 	ROM_LOAD16_BYTE( "c-l3-b.rom",   0x60000, 0x10000, CRC(11562221) SHA1(a2f136a487fb6f30350e8d1e26c0729eb0686c7d) )
  2557: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2558: 
  2559: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2560: 	/* no ROM, program will be copied by the main CPU */
  2561: 
  2562: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2563: 	ROM_LOAD( "c-00-a.rom",   0x00000, 0x10000, CRC(f6e6e660) SHA1(e066e5ed37719cf2b6fd36e0117f11325bb06f9c) )	/* sprites */
  2564: 	ROM_LOAD( "c-01-b.rom",   0x10000, 0x10000, CRC(708cdd37) SHA1(24f3fcd381422f0d75410c2af7a56744e3b4a699) )
  2565: 	ROM_LOAD( "c-10-a.rom",   0x20000, 0x10000, CRC(292c8520) SHA1(c552090d295ee1c1ca611b0cddee356e509e2045) )
  2566: 	ROM_LOAD( "c-11-b.rom",   0x30000, 0x10000, CRC(20904cf3) SHA1(71fe505f2da53c2eb445b7b758d257d6af42e6f1) )
  2567: 	ROM_LOAD( "c-20-a.rom",   0x40000, 0x10000, CRC(1ab50c23) SHA1(43e2f11e5bbf157c47764e04e372f40ed68bab59) )
  2568: 	ROM_LOAD( "c-21-b.rom",   0x50000, 0x10000, CRC(c823d34c) SHA1(47383214b6a60e0b1b70208b00c291f8ffed36bc) )
  2569: 	ROM_LOAD( "c-30-a.rom",   0x60000, 0x10000, CRC(11f6c56b) SHA1(39a2a674698b044c84fea65ae41a9e003a50b639) )
  2570: 	ROM_LOAD( "c-31-b.rom",   0x70000, 0x10000, CRC(23134ec5) SHA1(43453f8a13b51310e04729dc828d391ca9c04da2) )
  2571: 
  2572: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  2573: 	ROM_LOAD( "b-a0-b.rom",   0x00000, 0x10000, CRC(e46ed7bf) SHA1(75abb5f40629f7c40a610a44e068b6c4e3a5126e) )	/* tiles #1 */
  2574: 	ROM_LOAD( "b-a1-b.rom",   0x10000, 0x10000, CRC(590605ff) SHA1(fbb5c0cebd28b08d4ce39db4055d6343620e0f1c) )
  2575: 	ROM_LOAD( "b-a2-b.rom",   0x20000, 0x10000, CRC(f8158226) SHA1(bb3a8686cd89bb8265b6b9e03682cc0bf6533793) )
  2576: 	ROM_LOAD( "b-a3-b.rom",   0x30000, 0x10000, CRC(0f07b9b7) SHA1(63dbec17097f07eb39299372b736fbbc1b11b65e) )
  2577: 
  2578: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  2579: 	ROM_LOAD( "b-b0-.rom",    0x00000, 0x10000, CRC(b5b95776) SHA1(4685b56071b916ce712c45f24da8068dd7e40ed1) )	/* tiles #2 */
  2580: 	ROM_LOAD( "b-b1-.rom",    0x10000, 0x10000, CRC(74ca16ee) SHA1(7984bc9a0b46e1b4a8ecac7528d57606305aad73) )
  2581: 	ROM_LOAD( "b-b2-.rom",    0x20000, 0x10000, CRC(b82cca04) SHA1(c12b95be311205181b01d15021bcf9f01ed3e0a3) )
  2582: 	ROM_LOAD( "b-b3-.rom",    0x30000, 0x10000, CRC(a7afc920) SHA1(92c75463ada39184e731b82ef2883ae6f1f67482) )
  2583: 
  2584: 	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* samples */
  2585: 	ROM_LOAD( "c-v0-b.rom",   0x00000, 0x10000, CRC(d0c27e58) SHA1(fec76217cc0c04c723989c3ec127a2bd33d64c60) )
  2586: ROM_END
  2587: 
  2588: ROM_START( mrheli )
  2589: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2590: 	ROM_LOAD16_BYTE( "mh-c-h0.bin",  0x00001, 0x10000, CRC(e2ca5646) SHA1(9f4fe2f0a45233325bd9336cabb925a1f625453b) )
  2591: 	ROM_LOAD16_BYTE( "mh-c-l0.bin",  0x00000, 0x10000, CRC(643e23cd) SHA1(66998a6dfc7ef538540986b61d2414a5ef250d0d) )
  2592: 	ROM_LOAD16_BYTE( "mh-c-h1.bin",  0x20001, 0x10000, CRC(8974e84d) SHA1(39e05c80e805dde45f2fc5fc429b75f9b599089c) )
  2593: 	ROM_LOAD16_BYTE( "mh-c-l1.bin",  0x20000, 0x10000, CRC(5f8bda69) SHA1(48629d617bd48c9de9c6a567fb203258a56fdbbd) )
  2594: 	ROM_LOAD16_BYTE( "mh-c-h3.bin",  0x60001, 0x10000, CRC(143f596e) SHA1(f9d444eebcd53dac925d14b7a2858803b7fd9ce2) )
  2595: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2596: 	ROM_LOAD16_BYTE( "mh-c-l3.bin",  0x60000, 0x10000, CRC(c0982536) SHA1(45399f8d0577c6e2a277a69303954ce5d2de7c07) )
  2597: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2598: 
  2599: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2600: 	/* no ROM, program will be copied by the main CPU */
  2601: 
  2602: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2603: 	ROM_LOAD( "mh-c-00.bin",  0x00000, 0x20000, CRC(dec4e121) SHA1(92169b523f1600e994e016dc1959a52958e1d89d) )	/* sprites */
  2604: 	ROM_LOAD( "mh-c-10.bin",  0x20000, 0x20000, CRC(7aaa151e) SHA1(efd980bb2eed7084354b7a4aa2f733cd2f876741) )
  2605: 	ROM_LOAD( "mh-c-20.bin",  0x40000, 0x20000, CRC(eae0de74) SHA1(3a2469c0eeb18131f989807afb50228f57ccea30) )
  2606: 	ROM_LOAD( "mh-c-30.bin",  0x60000, 0x20000, CRC(01d5052f) SHA1(5d5e70913bb7af48193c70209595f27a64fa6cac) )
  2607: 
  2608: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  2609: 	ROM_LOAD( "mh-b-a0.bin",  0x00000, 0x10000, CRC(6a0db256) SHA1(fa3a2dc03da5bbe06a9c9b3d4ed4fddb47c469ac) )	/* tiles #1 */
  2610: 	ROM_LOAD( "mh-b-a1.bin",  0x10000, 0x10000, CRC(14ec9795) SHA1(4842e076115efe9daf00dab8f61516d28c19baae) )
  2611: 	ROM_LOAD( "mh-b-a2.bin",  0x20000, 0x10000, CRC(dfcb510e) SHA1(2387cde4ec0bae176486e1f7541103fd557fe255) )
  2612: 	ROM_LOAD( "mh-b-a3.bin",  0x30000, 0x10000, CRC(957e329b) SHA1(9d48a0b84915e1cef0b0311a3581991dc83ee199) )
  2613: 
  2614: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  2615: 	ROM_LOAD( "b-b0-.rom",    0x00000, 0x10000, CRC(b5b95776) SHA1(4685b56071b916ce712c45f24da8068dd7e40ed1) )	/* tiles #2 */
  2616: 	ROM_LOAD( "b-b1-.rom",    0x10000, 0x10000, CRC(74ca16ee) SHA1(7984bc9a0b46e1b4a8ecac7528d57606305aad73) )
  2617: 	ROM_LOAD( "b-b2-.rom",    0x20000, 0x10000, CRC(b82cca04) SHA1(c12b95be311205181b01d15021bcf9f01ed3e0a3) )
  2618: 	ROM_LOAD( "b-b3-.rom",    0x30000, 0x10000, CRC(a7afc920) SHA1(92c75463ada39184e731b82ef2883ae6f1f67482) )
  2619: 
  2620: 	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* samples */
  2621: 	ROM_LOAD( "c-v0-b.rom",   0x00000, 0x10000, CRC(d0c27e58) SHA1(fec76217cc0c04c723989c3ec127a2bd33d64c60) )
  2622: ROM_END
  2623: 
  2624: ROM_START( nspirit )
  2625: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2626: 	ROM_LOAD16_BYTE( "nin-c-h0.rom", 0x00001, 0x10000, CRC(035692fa) SHA1(d5ab54488344bf405063737ed55d68ff1e64b55f) )
  2627: 	ROM_LOAD16_BYTE( "nin-c-l0.rom", 0x00000, 0x10000, CRC(9a405898) SHA1(b28d71c1a6410720a37e6b6518b3cc66d4c32972) )
  2628: 	ROM_LOAD16_BYTE( "nin-c-h1.rom", 0x20001, 0x10000, CRC(cbc10586) SHA1(9b1935ea9ebb21fe42ee3a57d6c10f1e8516f23c) )
  2629: 	ROM_LOAD16_BYTE( "nin-c-l1.rom", 0x20000, 0x10000, CRC(b75c9a4d) SHA1(03c28896cbe0c9f778c259d59d2e69796902daa8) )
  2630: 	ROM_LOAD16_BYTE( "nin-c-h2.rom", 0x40001, 0x10000, CRC(8ad818fa) SHA1(dd25e79b656b7fc6c31d1f8971fd0916295ccdb0) )
  2631: 	ROM_LOAD16_BYTE( "nin-c-l2.rom", 0x40000, 0x10000, CRC(c52ca78c) SHA1(2b40cce5a1f5c588b49634e7fd4bc28c9160fe43) )
  2632: 	ROM_LOAD16_BYTE( "nin-c-h3.rom", 0x60001, 0x10000, CRC(501104ef) SHA1(e44e060c072affd359e52bf6606b1dd565368d44) )
  2633: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2634: 	ROM_LOAD16_BYTE( "nin-c-l3.rom", 0x60000, 0x10000, CRC(fd7408b8) SHA1(3cbe72835a561c50265a047f0f5cd62db48378fd) )
  2635: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2636: 
  2637: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2638: 	/* no ROM, program will be copied by the main CPU */
  2639: 
  2640: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2641: 	ROM_LOAD( "nin-r00.rom",  0x00000, 0x20000, CRC(5f61d30b) SHA1(7754697e43f6117fa604f50885b76014b1dc5760) )	/* sprites */
  2642: 	ROM_LOAD( "nin-r10.rom",  0x20000, 0x20000, CRC(0caad107) SHA1(c4eff00327313e05ac8f7c6dbee3a0de1c83fadd) )
  2643: 	ROM_LOAD( "nin-r20.rom",  0x40000, 0x20000, CRC(ef3617d3) SHA1(16c175cf45559aacdea6e4002dd8a87f16817cfb) )
  2644: 	ROM_LOAD( "nin-r30.rom",  0x60000, 0x20000, CRC(175d2a24) SHA1(d1887efd4d8e74c38c53dbbc541ca8d17f29eb59) )
  2645: 
  2646: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  2647: 	ROM_LOAD( "nin-b-a0.rom", 0x00000, 0x10000, CRC(63f8f658) SHA1(82c02d0f7a2d95dfd8d300c46312d511524775ce) )	/* tiles #1 */
  2648: 	ROM_LOAD( "nin-b-a1.rom", 0x10000, 0x10000, CRC(75eb8306) SHA1(2abc359a0bb2863759a68ed60e730761b9751829) )
  2649: 	ROM_LOAD( "nin-b-a2.rom", 0x20000, 0x10000, CRC(df532172) SHA1(58b5a79a57e71405b3e1abd41d54cf6a4d12873a) )
  2650: 	ROM_LOAD( "nin-b-a3.rom", 0x30000, 0x10000, CRC(4dedd64c) SHA1(8a5c73a024d95e6fe3ab70daafcd5b235418ad36) )
  2651: 
  2652: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  2653: 	ROM_LOAD( "nin-b0.rom",   0x00000, 0x10000, CRC(1b0e08a6) SHA1(892686594970c264babbe8673c258929a5e480f6) )	/* tiles #2 */
  2654: 	ROM_LOAD( "nin-b1.rom",   0x10000, 0x10000, CRC(728727f0) SHA1(2f594c77a847ebee71c9da8a644f83ea2a1313d7) )
  2655: 	ROM_LOAD( "nin-b2.rom",   0x20000, 0x10000, CRC(f87efd75) SHA1(16474c7ab57b4fbb5cb50799ea6a2326c66706b5) )
  2656: 	ROM_LOAD( "nin-b3.rom",   0x30000, 0x10000, CRC(98856cb4) SHA1(aa4fbae972d2e827c75650a71ab4ef73a33cd018) )
  2657: 
  2658: 	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* samples */
  2659: 	ROM_LOAD( "nin-v0.rom",   0x00000, 0x10000, CRC(a32e8caf) SHA1(63d56ad3a63fb089056e4a170159120287594ea8) )
  2660: ROM_END
  2661: 
  2662: ROM_START( nspiritj )
  2663: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2664: 	ROM_LOAD16_BYTE( "c-h0",         0x00001, 0x10000, CRC(8603fab2) SHA1(2c5bc97b6c9648156969b4a9f139081dca19fa24) )
  2665: 	ROM_LOAD16_BYTE( "c-l0",         0x00000, 0x10000, CRC(e520fa35) SHA1(05f7e5a1a5ada95809ffd941080fb2c2b54363b7) )
  2666: 	ROM_LOAD16_BYTE( "nin-c-h1.rom", 0x20001, 0x10000, CRC(cbc10586) SHA1(9b1935ea9ebb21fe42ee3a57d6c10f1e8516f23c) )
  2667: 	ROM_LOAD16_BYTE( "nin-c-l1.rom", 0x20000, 0x10000, CRC(b75c9a4d) SHA1(03c28896cbe0c9f778c259d59d2e69796902daa8) )
  2668: 	ROM_LOAD16_BYTE( "nin-c-h2.rom", 0x40001, 0x10000, CRC(8ad818fa) SHA1(dd25e79b656b7fc6c31d1f8971fd0916295ccdb0) )
  2669: 	ROM_LOAD16_BYTE( "nin-c-l2.rom", 0x40000, 0x10000, CRC(c52ca78c) SHA1(2b40cce5a1f5c588b49634e7fd4bc28c9160fe43) )
  2670: 	ROM_LOAD16_BYTE( "c-h3",         0x60001, 0x10000, CRC(95b63a61) SHA1(bd5ec35fffe6d4898e6712eb6add7c51077b58d2) )
  2671: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2672: 	ROM_LOAD16_BYTE( "c-l3",         0x60000, 0x10000, CRC(e754a87a) SHA1(9951d972ed13a0415c827beff122bc7ddb078447) )
  2673: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2674: 
  2675: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2676: 	/* no ROM, program will be copied by the main CPU */
  2677: 
  2678: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2679: 	ROM_LOAD( "nin-r00.rom",  0x00000, 0x20000, CRC(5f61d30b) SHA1(7754697e43f6117fa604f50885b76014b1dc5760) )	/* sprites */
  2680: 	ROM_LOAD( "nin-r10.rom",  0x20000, 0x20000, CRC(0caad107) SHA1(c4eff00327313e05ac8f7c6dbee3a0de1c83fadd) )
  2681: 	ROM_LOAD( "nin-r20.rom",  0x40000, 0x20000, CRC(ef3617d3) SHA1(16c175cf45559aacdea6e4002dd8a87f16817cfb) )
  2682: 	ROM_LOAD( "nin-r30.rom",  0x60000, 0x20000, CRC(175d2a24) SHA1(d1887efd4d8e74c38c53dbbc541ca8d17f29eb59) )
  2683: 
  2684: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  2685: 	ROM_LOAD( "nin-b-a0.rom", 0x00000, 0x10000, CRC(63f8f658) SHA1(82c02d0f7a2d95dfd8d300c46312d511524775ce) )	/* tiles #1 */
  2686: 	ROM_LOAD( "nin-b-a1.rom", 0x10000, 0x10000, CRC(75eb8306) SHA1(2abc359a0bb2863759a68ed60e730761b9751829) )
  2687: 	ROM_LOAD( "nin-b-a2.rom", 0x20000, 0x10000, CRC(df532172) SHA1(58b5a79a57e71405b3e1abd41d54cf6a4d12873a) )
  2688: 	ROM_LOAD( "nin-b-a3.rom", 0x30000, 0x10000, CRC(4dedd64c) SHA1(8a5c73a024d95e6fe3ab70daafcd5b235418ad36) )
  2689: 
  2690: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  2691: 	ROM_LOAD( "nin-b0.rom",   0x00000, 0x10000, CRC(1b0e08a6) SHA1(892686594970c264babbe8673c258929a5e480f6) )	/* tiles #2 */
  2692: 	ROM_LOAD( "nin-b1.rom",   0x10000, 0x10000, CRC(728727f0) SHA1(2f594c77a847ebee71c9da8a644f83ea2a1313d7) )
  2693: 	ROM_LOAD( "nin-b2.rom",   0x20000, 0x10000, CRC(f87efd75) SHA1(16474c7ab57b4fbb5cb50799ea6a2326c66706b5) )
  2694: 	ROM_LOAD( "nin-b3.rom",   0x30000, 0x10000, CRC(98856cb4) SHA1(aa4fbae972d2e827c75650a71ab4ef73a33cd018) )
  2695: 
  2696: 	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* samples */
  2697: 	ROM_LOAD( "nin-v0.rom",   0x00000, 0x10000, CRC(a32e8caf) SHA1(63d56ad3a63fb089056e4a170159120287594ea8) )
  2698: ROM_END
  2699: 
  2700: ROM_START( imgfight )
  2701: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2702: 	ROM_LOAD16_BYTE( "if-c-h0.bin",  0x00001, 0x10000, CRC(592d2d80) SHA1(d54916a9bfe4b65a972b62202af706135e73518d) )
  2703: 	ROM_LOAD16_BYTE( "if-c-l0.bin",  0x00000, 0x10000, CRC(61f89056) SHA1(3e0724dbc2b00a30193ea6cfac8b4331055d4fd4) )
  2704: 	ROM_LOAD16_BYTE( "if-c-h3.bin",  0x40001, 0x20000, CRC(ea030541) SHA1(ee4c12773ecced2d755443ce0ca78fb2b2c04805) )
  2705: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  2706: 	ROM_LOAD16_BYTE( "if-c-l3.bin",  0x40000, 0x20000, CRC(c66ae348) SHA1(eca5096ebd5bffc6e68f3fc9969cda9679bd921f) )
  2707: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  2708: 
  2709: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2710: 	/* no ROM, program will be copied by the main CPU */
  2711: 
  2712: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2713: 	ROM_LOAD( "if-c-00.bin",  0x00000, 0x20000, CRC(745e6638) SHA1(43fb1f9da4190fea67eee3aee8caf4219becc21b) )	/* sprites */
  2714: 	ROM_LOAD( "if-c-10.bin",  0x20000, 0x20000, CRC(b7108449) SHA1(1f41ebe7164fab86958caaf6749b99425e682657) )
  2715: 	ROM_LOAD( "if-c-20.bin",  0x40000, 0x20000, CRC(aef33cba) SHA1(2d8a8458207d0c790c81b1285366463c8540d190) )
  2716: 	ROM_LOAD( "if-c-30.bin",  0x60000, 0x20000, CRC(1f98e695) SHA1(5fddcfb17523f8e96f4b85f0cb15d837b81f2bd4) )
  2717: 
  2718: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  2719: 	ROM_LOAD( "if-a-a0.bin",  0x00000, 0x10000, CRC(34ee2d77) SHA1(38826e0318aa8da893fa4c93f217288c015df606) )	/* tiles #1 */
  2720: 	ROM_LOAD( "if-a-a1.bin",  0x10000, 0x10000, CRC(6bd2845b) SHA1(149cf14f919590da88b9a8e254690da010709862) )
  2721: 	ROM_LOAD( "if-a-a2.bin",  0x20000, 0x10000, CRC(090d50e5) SHA1(4f2a7c76320b3f8dafae90a246187e034fe7562b) )
  2722: 	ROM_LOAD( "if-a-a3.bin",  0x30000, 0x10000, CRC(3a8e3083) SHA1(8a75d556790b6bea41ead1a5f95589dd293bdf4e) )
  2723: 
  2724: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  2725: 	ROM_LOAD( "if-a-b0.bin",  0x00000, 0x10000, CRC(b425c829) SHA1(0ccd487dba00bb7cb0ff5d1c67f8fee3e68df5d8) )	/* tiles #2 */
  2726: 	ROM_LOAD( "if-a-b1.bin",  0x10000, 0x10000, CRC(e9bfe23e) SHA1(f97a68dbdce7e06d07faab19acf7625cdc8eeaa8) )
  2727: 	ROM_LOAD( "if-a-b2.bin",  0x20000, 0x10000, CRC(256e50f2) SHA1(9e9fda4f1f1449548942c0da4478f61fe0d263d1) )
  2728: 	ROM_LOAD( "if-a-b3.bin",  0x30000, 0x10000, CRC(4c682785) SHA1(f61f1227e0ad629fdfca106306b17a9f6a9959e3) )
  2729: 
  2730: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2731: 	ROM_LOAD( "if-c-v0.bin",  0x00000, 0x10000, CRC(cb64a194) SHA1(940fad6b9147bccc8290e112f5973f8ea062b52f) )
  2732: 	ROM_LOAD( "if-c-v1.bin",  0x10000, 0x10000, CRC(45b68bf5) SHA1(2fb28793019ca85b3b6d7c4c31eedff1d71f2d83) )
  2733: ROM_END
  2734: 
  2735: ROM_START( loht )
  2736: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2737: 	ROM_LOAD16_BYTE( "tom_c-h0.rom", 0x00001, 0x20000, CRC(a63204b6) SHA1(d217bc70650a1a1bbe0cf536ec3bb678f670718d) )
  2738: 	ROM_LOAD16_BYTE( "tom_c-l0.rom", 0x00000, 0x20000, CRC(e788002f) SHA1(35f509976b342fd47e645453381faa3d86645876) )
  2739: 	ROM_LOAD16_BYTE( "tom_c-h3.rom", 0x40001, 0x20000, CRC(714778b5) SHA1(e2eaa35d6b5fa5df5163fe0d7b45fa66667f9947) )
  2740: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  2741: 	ROM_LOAD16_BYTE( "tom_c-l3.rom", 0x40000, 0x20000, CRC(2f049b03) SHA1(21047cb10912b1fc23795673af3ea7de249328b7) )
  2742: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  2743: 
  2744: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2745: 	/* no ROM, program will be copied by the main CPU */
  2746: 
  2747: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2748: 	ROM_LOAD( "tom_m53.rom",  0x00000, 0x20000, CRC(0b83265f) SHA1(b31918d6442b79c9fe4f20410189788b050a994e) )	/* sprites */
  2749: 	ROM_LOAD( "tom_m51.rom",  0x20000, 0x20000, CRC(8ec5f6f3) SHA1(210f2753f5eeb06396758d21ab1778d459add247) )
  2750: 	ROM_LOAD( "tom_m49.rom",  0x40000, 0x20000, CRC(a41d3bfd) SHA1(536fb7c0321dbbc1a8b73e9647fba9c53a253fcc) )
  2751: 	ROM_LOAD( "tom_m47.rom",  0x60000, 0x20000, CRC(9d81a25b) SHA1(a354537c2fbba85f06485aa8487d7583a7133357) )
  2752: 
  2753: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  2754: 	ROM_LOAD( "tom_m21.rom",  0x00000, 0x10000, CRC(3ca3e771) SHA1(be052e01c5429ee89057c9d408794f2c7744047c) )	/* tiles #1 */
  2755: 	ROM_LOAD( "tom_m22.rom",  0x10000, 0x10000, CRC(7a05ee2f) SHA1(7d1ca5db9a5a85610129e3bc6c640ade036fe7f9) )
  2756: 	ROM_LOAD( "tom_m20.rom",  0x20000, 0x10000, CRC(79aa2335) SHA1(6b70c79d800a7b755aa7c9a368c4ea74029aaa1e) )
  2757: 	ROM_LOAD( "tom_m23.rom",  0x30000, 0x10000, CRC(789e8b24) SHA1(e957cd25c3c155ca295ab1aea03d610f91562cfb) )
  2758: 
  2759: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  2760: 	ROM_LOAD( "tom_m26.rom",  0x00000, 0x10000, CRC(44626bf6) SHA1(571ef74d42d30a272ff0fb33f830652b4a4bad29) )	/* tiles #2 */
  2761: 	ROM_LOAD( "tom_m27.rom",  0x10000, 0x10000, CRC(464952cf) SHA1(6b99360b6ba1ed5a72c257f51291f9f7a1ddf363) )
  2762: 	ROM_LOAD( "tom_m25.rom",  0x20000, 0x10000, CRC(3db9b2c7) SHA1(02a318ffc459c494b7f40827eff5f89b41ac0426) )
  2763: 	ROM_LOAD( "tom_m24.rom",  0x30000, 0x10000, CRC(f01fe899) SHA1(c5ab967b7af55a757638bcdc9975f4b15064022d) )
  2764: 
  2765: 	ROM_REGION( 0x10000, REGION_SOUND1, 0 )	/* samples */
  2766: 	ROM_LOAD( "tom_m44.rom",  0x00000, 0x10000, CRC(3ed51d1f) SHA1(84f3aa17d640df91387e5f1f5b5971cf8dcd4e17) )
  2767: ROM_END
  2768: 
  2769: ROM_START( xmultipl )
  2770: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2771: 	ROM_LOAD16_BYTE( "ch3.h3",       0x00001, 0x20000, CRC(20685021) SHA1(92f4216320bf525045223b9454fb5bb224c536d8) )
  2772: 	ROM_LOAD16_BYTE( "cl3.l3",       0x00000, 0x20000, CRC(93fdd200) SHA1(dd4244ba0ce6c621136b0648374179da44363c01) )
  2773: 	ROM_LOAD16_BYTE( "ch0.h0",       0x40001, 0x10000, CRC(9438dd8a) SHA1(dc85789c47d31a96300b4236dc43f065e1b01e4a) )
  2774: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2775: 	ROM_LOAD16_BYTE( "cl0.l0",       0x40000, 0x10000, CRC(06a9e213) SHA1(9831c110814642703d6e71d49848d854095b7d3a) )
  2776: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2777: 
  2778: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2779: 	/* no ROM, program will be copied by the main CPU */
  2780: 
  2781: 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
  2782: 	ROM_LOAD( "t44.00",       0x00000, 0x20000, CRC(db45186e) SHA1(8c8edeb4b7e6b0516f2597823dc27eba9c5d9528) )	/* sprites */
  2783: 	ROM_LOAD( "t45.01",       0x20000, 0x20000, CRC(4d0764d4) SHA1(4942333336a110b033f16ac1afa06ffef7b2dad6) )
  2784: 	ROM_LOAD( "t46.10",       0x40000, 0x20000, CRC(f0c465a4) SHA1(69c107c860d4e8736431fd86b6821b70a8367eb3) )
  2785: 	ROM_LOAD( "t47.11",       0x60000, 0x20000, CRC(1263b24b) SHA1(0445a5381df3a868bed6967c8e5de7169e4be6a3) )
  2786: 	ROM_LOAD( "t48.20",       0x80000, 0x20000, CRC(4129944f) SHA1(988b072032d1667c3ac0731fada32fb6978505dc) )
  2787: 	ROM_LOAD( "t49.21",       0xa0000, 0x20000, CRC(2346e6f9) SHA1(b3de017dd0353e04d279f57e151c47f5fcc70e9c) )
  2788: 	ROM_LOAD( "t50.30",       0xc0000, 0x20000, CRC(e322543e) SHA1(b4c3a7f202d81485d5f0a7b7668ee89fc1edb215) )
  2789: 	ROM_LOAD( "t51.31",       0xe0000, 0x20000, CRC(229bf7b1) SHA1(ae42c7efbb6278dd3fa56842361138391f2d49ca) )
  2790: 
  2791: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  2792: 	ROM_LOAD( "t53.a0",       0x00000, 0x20000, CRC(1a082494) SHA1(63a3a84a262833d2cafab41e35df8f10a5e317b1) )	/* tiles #1 */
  2793: 	ROM_LOAD( "t54.a1",       0x20000, 0x20000, CRC(076c16c5) SHA1(4be858806b916953d59aceee550e721eaf3996a6) )
  2794: 	ROM_LOAD( "t55.a2",       0x40000, 0x20000, CRC(25d877a5) SHA1(48c948bf714c432f534c098123c8f50d5561756f) )
  2795: 	ROM_LOAD( "t56.a3",       0x60000, 0x20000, CRC(5b1213f5) SHA1(87782aa0bd04d4378c4ba78b63028ae2709da2f1) )
  2796: 
  2797: 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )
  2798: 	ROM_LOAD( "t57.b0",       0x00000, 0x20000, CRC(0a84e0c7) SHA1(67ad181a7d2c431cb4bf45955e09754549a03576) )	/* tiles #2 */
  2799: 	ROM_LOAD( "t58.b1",       0x20000, 0x20000, CRC(a874121d) SHA1(1351d5901d55059c6472a4588a2e560396903861) )
  2800: 	ROM_LOAD( "t59.b2",       0x40000, 0x20000, CRC(69deb990) SHA1(1eed3183efbe576376661b45152a0a21240ecfc8) )
  2801: 	ROM_LOAD( "t60.b3",       0x60000, 0x20000, CRC(14c69f99) SHA1(4bea72f8bd421ef3ca559363f7473ce2e7038699) )
  2802: 
  2803: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2804: 	ROM_LOAD( "t52.v0",       0x00000, 0x20000, CRC(2db1bd80) SHA1(657006d0642ec7fb949bb52821d78fe51a599415) )
  2805: ROM_END
  2806: 
  2807: ROM_START( dbreed )
  2808: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2809: 	ROM_LOAD16_BYTE( "db_c-h3.rom",  0x00001, 0x20000, CRC(4bf3063c) SHA1(3f970c9ece2ac700738e217e0b31b3aba2848ab2) )
  2810: 	ROM_LOAD16_BYTE( "db_c-l3.rom",  0x00000, 0x20000, CRC(e4b89b79) SHA1(c312925940633e60fb5d0f05044c6e73e4f7fd54) )
  2811: 	ROM_LOAD16_BYTE( "db_c-h0.rom",  0x60001, 0x10000, CRC(5aa79fb2) SHA1(b7b862699ddccf90cf18d3822703078668aa1dc7) )
  2812: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2813: 	ROM_LOAD16_BYTE( "db_c-l0.rom",  0x60000, 0x10000, CRC(ed0f5e06) SHA1(9030840b15e83c18d59c884ed08c93c05fa70c5b) )
  2814: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2815: 
  2816: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2817: 	/* no ROM, program will be copied by the main CPU */
  2818: 
  2819: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2820: 	ROM_LOAD( "db_k800m.rom", 0x00000, 0x20000, CRC(c027a8cf) SHA1(534dc416b8f5587168c7f644d3f9438c8a190491) )	/* sprites */
  2821: 	ROM_LOAD( "db_k801m.rom", 0x20000, 0x20000, CRC(093faf33) SHA1(2704f644cdce87daf975984f143b1d55ba731c3f) )
  2822: 	ROM_LOAD( "db_k802m.rom", 0x40000, 0x20000, CRC(055b4c59) SHA1(71315dd7476612f138cb64b905648791d44eb7da) )
  2823: 	ROM_LOAD( "db_k803m.rom", 0x60000, 0x20000, CRC(8ed63922) SHA1(51daa8a23e637f6b4394598ff4a1d26f65b59c8b) )
  2824: 
  2825: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  2826: 	ROM_LOAD( "db_a0m.rom",   0x00000, 0x20000, CRC(4c83e92e) SHA1(6dade027435c48ab48bd4516d16a9961d4dd6fad) )	/* tiles #1 */
  2827: 	ROM_LOAD( "db_a1m.rom",   0x20000, 0x20000, CRC(835ef268) SHA1(89d0bb15201440dffad3ef745970f95505d7ab03) )
  2828: 	ROM_LOAD( "db_a2m.rom",   0x40000, 0x20000, CRC(5117f114) SHA1(a401a3e638209b32d4101a5c2e2a8b4612eaa21b) )
  2829: 	ROM_LOAD( "db_a3m.rom",   0x60000, 0x20000, CRC(8eb0c978) SHA1(7fc55bbe4d0923db88492bb7160a89de34e11cd6) )
  2830: 
  2831: 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )
  2832: 	ROM_LOAD( "db_b0m.rom",   0x00000, 0x20000, CRC(4c83e92e) SHA1(6dade027435c48ab48bd4516d16a9961d4dd6fad) )	/* tiles #2 */
  2833: 	ROM_LOAD( "db_b1m.rom",   0x20000, 0x20000, CRC(835ef268) SHA1(89d0bb15201440dffad3ef745970f95505d7ab03) )
  2834: 	ROM_LOAD( "db_b2m.rom",   0x40000, 0x20000, CRC(5117f114) SHA1(a401a3e638209b32d4101a5c2e2a8b4612eaa21b) )
  2835: 	ROM_LOAD( "db_b3m.rom",   0x60000, 0x20000, CRC(8eb0c978) SHA1(7fc55bbe4d0923db88492bb7160a89de34e11cd6) )
  2836: 
  2837: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2838: 	ROM_LOAD( "db_c-v0.rom",  0x00000, 0x20000, CRC(312f7282) SHA1(742d56980b4618180e9a0e02051c5aec4d5cdae4) )
  2839: ROM_END
  2840: 
  2841: ROM_START( rtype2 )
  2842: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2843: 	ROM_LOAD16_BYTE( "ic54.8d",      0x00001, 0x20000, CRC(d8ece6f4) SHA1(f7bb246fe8b75af24716d419bb3c6e7d9cd0971e) )
  2844: 	ROM_LOAD16_BYTE( "ic60.9d",      0x00000, 0x20000, CRC(32cfb2e4) SHA1(d4b44a40e2933040eddb2b09de7bfe28d76c5f25) )
  2845: 	ROM_LOAD16_BYTE( "ic53.8b",      0x40001, 0x20000, CRC(4f6e9b15) SHA1(ef733c2615951f54691877ad3e84d08107723324) )
  2846: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  2847: 	ROM_LOAD16_BYTE( "ic59.9b",      0x40000, 0x20000, CRC(0fd123bf) SHA1(1133163f6716e9a4bbb437b3a471477d0bd97051) )
  2848: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  2849: 
  2850: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2851: 	ROM_LOAD( "ic17.4f",      0x0000, 0x10000, CRC(73ffecb4) SHA1(4795bf0d6263060c3d3759b659bdb189a4087600) )
  2852: 
  2853: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2854: 	ROM_LOAD( "ic31.6l",      0x00000, 0x20000, CRC(2cd8f913) SHA1(a53752b35da95b420dd29a09176d265d292b3938) )	/* sprites */
  2855: 	ROM_LOAD( "ic21.4l",      0x20000, 0x20000, CRC(5033066d) SHA1(e125127f0610c63f9e59a585db547be5d49ed863) )
  2856: 	ROM_LOAD( "ic32.6m",      0x40000, 0x20000, CRC(ec3a0450) SHA1(632bdd397f1bc67f6970faf7d09ab8d911e105fe) )
  2857: 	ROM_LOAD( "ic22.4m",      0x60000, 0x20000, CRC(db6176fc) SHA1(1eaf72af0322490c98461aded202288e387caac1) )
  2858: 
  2859: 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )
  2860: 	ROM_LOAD( "ic50.7s",      0x00000, 0x20000, CRC(f3f8736e) SHA1(37872b30459ad05b2981d4ac84983f3b52d0d2d6) )	/* tiles */
  2861: 	ROM_LOAD( "ic51.7u",      0x20000, 0x20000, CRC(b4c543af) SHA1(56042eba711160fc701021c8787414dcaddcdecb) )
  2862: 	ROM_LOAD( "ic56.8s",      0x40000, 0x20000, CRC(4cb80d66) SHA1(31c5496c14b277e428a2f22195fe1742d6a577d4) )
  2863: 	ROM_LOAD( "ic57.8u",      0x60000, 0x20000, CRC(bee128e0) SHA1(b149dae5f8f67a329d6df033fadf50ad75c0a57a) )
  2864: 	ROM_LOAD( "ic65.9r",      0x80000, 0x20000, CRC(2dc9c71a) SHA1(124e89c17f3af034d5a387ff3eab906d289c27f7) )
  2865: 	ROM_LOAD( "ic66.9u",      0xa0000, 0x20000, CRC(7533c428) SHA1(ba435cfb6c3c49fcc4d716dcecf8f17545b8eec6) )
  2866: 	ROM_LOAD( "ic63.9m",      0xc0000, 0x20000, CRC(a6ad67f2) SHA1(b005b037ce8b3c932089982ecfbccdc922278fe3) )
  2867: 	ROM_LOAD( "ic64.9p",      0xe0000, 0x20000, CRC(3686d555) SHA1(d03754d9b8a6a3bfd4a85eeddacc35a36af197bd) )
  2868: 
  2869: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2870: 	ROM_LOAD( "ic14.4c",      0x00000, 0x20000, CRC(637172d5) SHA1(9dd0dc409306287238826bf301e2a7a12d6cd9ce) )
  2871: ROM_END
  2872: 
  2873: ROM_START( rtype2j )
  2874: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2875: 	ROM_LOAD16_BYTE( "rt2-a-h0.54",  0x00001, 0x20000, CRC(7857ccf6) SHA1(9f6774a8128ee2dbb5b6c42289095275337bc73e) )
  2876: 	ROM_LOAD16_BYTE( "rt2-a-l0.60",  0x00000, 0x20000, CRC(cb22cd6e) SHA1(a877cffbac9f55bca8932b12540a4686ba975684) )
  2877: 	ROM_LOAD16_BYTE( "rt2-a-h1.53",  0x40001, 0x20000, CRC(49e75d28) SHA1(956bafaaa6711a8a13f2bffe43e8d05d51d8a3c9) )
  2878: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  2879: 	ROM_LOAD16_BYTE( "rt2-a-l1.59",  0x40000, 0x20000, CRC(12ec1676) SHA1(10cee9a87dd954444b0e64fad7f15a5ae529890d) )
  2880: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  2881: 
  2882: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2883: 	ROM_LOAD( "ic17.4f",      0x0000, 0x10000, CRC(73ffecb4) SHA1(4795bf0d6263060c3d3759b659bdb189a4087600) )
  2884: 
  2885: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2886: 	ROM_LOAD( "ic31.6l",      0x00000, 0x20000, CRC(2cd8f913) SHA1(a53752b35da95b420dd29a09176d265d292b3938) )	/* sprites */
  2887: 	ROM_LOAD( "ic21.4l",      0x20000, 0x20000, CRC(5033066d) SHA1(e125127f0610c63f9e59a585db547be5d49ed863) )
  2888: 	ROM_LOAD( "ic32.6m",      0x40000, 0x20000, CRC(ec3a0450) SHA1(632bdd397f1bc67f6970faf7d09ab8d911e105fe) )
  2889: 	ROM_LOAD( "ic22.4m",      0x60000, 0x20000, CRC(db6176fc) SHA1(1eaf72af0322490c98461aded202288e387caac1) )
  2890: 
  2891: 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )
  2892: 	ROM_LOAD( "ic50.7s",      0x00000, 0x20000, CRC(f3f8736e) SHA1(37872b30459ad05b2981d4ac84983f3b52d0d2d6) )	/* tiles */
  2893: 	ROM_LOAD( "ic51.7u",      0x20000, 0x20000, CRC(b4c543af) SHA1(56042eba711160fc701021c8787414dcaddcdecb) )
  2894: 	ROM_LOAD( "ic56.8s",      0x40000, 0x20000, CRC(4cb80d66) SHA1(31c5496c14b277e428a2f22195fe1742d6a577d4) )
  2895: 	ROM_LOAD( "ic57.8u",      0x60000, 0x20000, CRC(bee128e0) SHA1(b149dae5f8f67a329d6df033fadf50ad75c0a57a) )
  2896: 	ROM_LOAD( "ic65.9r",      0x80000, 0x20000, CRC(2dc9c71a) SHA1(124e89c17f3af034d5a387ff3eab906d289c27f7) )
  2897: 	ROM_LOAD( "ic66.9u",      0xa0000, 0x20000, CRC(7533c428) SHA1(ba435cfb6c3c49fcc4d716dcecf8f17545b8eec6) )
  2898: 	ROM_LOAD( "ic63.9m",      0xc0000, 0x20000, CRC(a6ad67f2) SHA1(b005b037ce8b3c932089982ecfbccdc922278fe3) )
  2899: 	ROM_LOAD( "ic64.9p",      0xe0000, 0x20000, CRC(3686d555) SHA1(d03754d9b8a6a3bfd4a85eeddacc35a36af197bd) )
  2900: 
  2901: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2902: 	ROM_LOAD( "ic14.4c",      0x00000, 0x20000, CRC(637172d5) SHA1(9dd0dc409306287238826bf301e2a7a12d6cd9ce) )
  2903: ROM_END
  2904: 
  2905: ROM_START( majtitle )
  2906: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2907: 	ROM_LOAD16_BYTE( "mt_m0.bin",    0x00001, 0x20000, CRC(b9682c70) SHA1(b979c0a630397f2a2eb73709cf12c5262c973782) )
  2908: 	ROM_LOAD16_BYTE( "mt_l0.bin",    0x00000, 0x20000, CRC(702c9fd6) SHA1(84a5e9e64f4bf235d115f5648b4a108f710ade1d) )
  2909: 	ROM_LOAD16_BYTE( "mt_m1.bin",    0x40001, 0x20000, CRC(d9e97c30) SHA1(97f59b614eeeced0a414f8a1693590525a58f788) )
  2910: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  2911: 	ROM_LOAD16_BYTE( "mt_l1.bin",    0x40000, 0x20000, CRC(8dbd91b5) SHA1(2bd01f3fba0fa1ca4b6f8ff57e7dc4434c42ce48) )
  2912: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  2913: 
  2914: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2915: 	ROM_LOAD( "mt_sp.bin",    0x0000, 0x10000, CRC(e44260a9) SHA1(a2512033c8cca9a8064eae1ada721202edf06e8e) )
  2916: 
  2917: 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
  2918: 	ROM_LOAD( "mt_n0.bin",    0x00000, 0x40000, CRC(5618cddc) SHA1(16d34b431ab9b72067fa669d694e635c88aeb261) )	/* sprites #1 */
  2919: 	ROM_LOAD( "mt_n1.bin",    0x40000, 0x40000, CRC(483b873b) SHA1(654efd67b2102521e8c46cd57cefa2cc64cf4fd3) )
  2920: 	ROM_LOAD( "mt_n2.bin",    0x80000, 0x40000, CRC(4f5d665b) SHA1(f539d0f5c738ffabfac16121706abe3bb3b2a1fa) )
  2921: 	ROM_LOAD( "mt_n3.bin",    0xc0000, 0x40000, CRC(83571549) SHA1(ce0b89aa4b3e3e1cf6ec6136f956577267cdd9d3) )
  2922: 
  2923: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  2924: 	ROM_LOAD( "mt_c0.bin",    0x00000, 0x20000, CRC(780e7a02) SHA1(9776ecb8b5d86636061f8360464001a63bec0842) )	/* tiles */
  2925: 	ROM_LOAD( "mt_c1.bin",    0x20000, 0x20000, CRC(45ad1381) SHA1(de281398dcd1c547bde9fa86f8ca409dd8d4aa6c) )
  2926: 	ROM_LOAD( "mt_c2.bin",    0x40000, 0x20000, CRC(5df5856d) SHA1(f16163f672de6701b411315c9956ddb74c8464ce) )
  2927: 	ROM_LOAD( "mt_c3.bin",    0x60000, 0x20000, CRC(f5316cc8) SHA1(123892d4a7e8d98582ea736afe659afdba8c5f87) )
  2928: 
  2929: 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )
  2930: 	ROM_LOAD( "mt_f0.bin",    0x00000, 0x20000, CRC(2d5e05d5) SHA1(18bdc9c561dbf0f91642161ca985d2154bd58b5d) )	/* sprites #2 */
  2931: 	ROM_LOAD( "mt_f1.bin",    0x20000, 0x20000, CRC(c68cd65f) SHA1(8999b558b4af0f453ada9e4ef705163df96844e6) )
  2932: 	ROM_LOAD( "mt_f2.bin",    0x40000, 0x20000, CRC(a71feb2d) SHA1(47e366b422772bed08ee4d1c338970687d6c3b4c) )
  2933: 	ROM_LOAD( "mt_f3.bin",    0x60000, 0x20000, CRC(179f7562) SHA1(6d28b199daffc62e8fa9009878ac0bb976ccbb2a) )
  2934: 
  2935: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2936: 	ROM_LOAD( "mt_vo.bin",    0x00000, 0x20000, CRC(eb24bb2c) SHA1(9fca04fba0249e8213dd164eb6829e1a5acbee65) )
  2937: ROM_END
  2938: 
  2939: ROM_START( hharry )
  2940: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2941: 	ROM_LOAD16_BYTE( "a-h0-v.rom",   0x00001, 0x20000, CRC(c52802a5) SHA1(7180189c886aebe8d3e7fd38922916cecfddae32) )
  2942: 	ROM_LOAD16_BYTE( "a-l0-v.rom",   0x00000, 0x20000, CRC(f463074c) SHA1(aca86345610e65848c276ab278092d35ba215916) )
  2943: 	ROM_LOAD16_BYTE( "a-h1-0.rom",   0x60001, 0x10000, CRC(3ae21335) SHA1(780d7a0c5bebe4b914ea5b3741e30630f8c29a4f) )
  2944: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2945: 	ROM_LOAD16_BYTE( "a-l1-0.rom",   0x60000, 0x10000, CRC(bc6ac5f9) SHA1(c6afba4967a8055f6b63827697425eac743f5a75) )
  2946: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2947: 
  2948: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2949: 	ROM_LOAD( "a-sp-0.rom",   0x0000, 0x10000, CRC(80e210e7) SHA1(66cff58fb37c52e1d8e0567e13b774253e862585) )
  2950: 
  2951: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2952: 	ROM_LOAD( "hh_00.rom",    0x00000, 0x20000, CRC(ec5127ef) SHA1(014ac8ad7b19cd9b475b72a0f42a4991119501c4) )	/* sprites */
  2953: 	ROM_LOAD( "hh_10.rom",    0x20000, 0x20000, CRC(def65294) SHA1(23f5d99fa9f604fde37cb52113bff233d9be1d25) )
  2954: 	ROM_LOAD( "hh_20.rom",    0x40000, 0x20000, CRC(bb0d6ad4) SHA1(4ab617fadfc32efad90ed7f0555513f167b0c43a) )
  2955: 	ROM_LOAD( "hh_30.rom",    0x60000, 0x20000, CRC(4351044e) SHA1(0d3ce3f4f1473fd997e70de91e7b5b5a5ec60ad4) )
  2956: 
  2957: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  2958: 	ROM_LOAD( "hh_a0.rom",    0x00000, 0x20000, CRC(c577ba5f) SHA1(c882e58cf64deca8eee6f14f3df43ecc932488fc) )	/* tiles */
  2959: 	ROM_LOAD( "hh_a1.rom",    0x20000, 0x20000, CRC(429d12ab) SHA1(ccba25eab981fc4e664f76e06a2964066f2ae2e8) )
  2960: 	ROM_LOAD( "hh_a2.rom",    0x40000, 0x20000, CRC(b5b163b0) SHA1(82a708fea4953a7c4dcd1d4a1b07f302221ba30b) )
  2961: 	ROM_LOAD( "hh_a3.rom",    0x60000, 0x20000, CRC(8ef566a1) SHA1(3afb020a7317efe89c18b2a7773894ce28499d49) )
  2962: 
  2963: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2964: 	ROM_LOAD( "a-v0-0.rom",   0x00000, 0x20000, CRC(faaacaff) SHA1(ea3a3920255c07aa9c0a7e0191eae257a9f7f558) )
  2965: ROM_END
  2966: 
  2967: ROM_START( hharryu )
  2968: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2969: 	ROM_LOAD16_BYTE( "a-ho-u.8d",    0x00001, 0x20000, CRC(ede7f755) SHA1(adcec83d6b936ab1a14d039792b9375e9f803a08) )
  2970: 	ROM_LOAD16_BYTE( "a-lo-u.9d",    0x00000, 0x20000, CRC(df0726ae) SHA1(7ef163d2e8c14a14328d4365705bb31540bdc7cb) )
  2971: 	ROM_LOAD16_BYTE( "a-h1-f.8b",    0x60001, 0x10000, CRC(31b741c5) SHA1(46c1c4cea09477cc4989f3e06e08851d02743e62) )
  2972: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  2973: 	ROM_LOAD16_BYTE( "a-l1-f.9b",    0x60000, 0x10000, CRC(b23e966c) SHA1(f506f6d1f4f7874070e91d1df8f141cca031ce29) )
  2974: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  2975: 
  2976: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  2977: 	ROM_LOAD( "a-sp-0.rom",   0x0000, 0x10000, CRC(80e210e7) SHA1(66cff58fb37c52e1d8e0567e13b774253e862585) )
  2978: 
  2979: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  2980: 	ROM_LOAD( "hh_00.rom",    0x00000, 0x20000, CRC(ec5127ef) SHA1(014ac8ad7b19cd9b475b72a0f42a4991119501c4) )	/* sprites */
  2981: 	ROM_LOAD( "hh_10.rom",    0x20000, 0x20000, CRC(def65294) SHA1(23f5d99fa9f604fde37cb52113bff233d9be1d25) )
  2982: 	ROM_LOAD( "hh_20.rom",    0x40000, 0x20000, CRC(bb0d6ad4) SHA1(4ab617fadfc32efad90ed7f0555513f167b0c43a) )
  2983: 	ROM_LOAD( "hh_30.rom",    0x60000, 0x20000, CRC(4351044e) SHA1(0d3ce3f4f1473fd997e70de91e7b5b5a5ec60ad4) )
  2984: 
  2985: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  2986: 	ROM_LOAD( "hh_a0.rom",    0x00000, 0x20000, CRC(c577ba5f) SHA1(c882e58cf64deca8eee6f14f3df43ecc932488fc) )	/* tiles */
  2987: 	ROM_LOAD( "hh_a1.rom",    0x20000, 0x20000, CRC(429d12ab) SHA1(ccba25eab981fc4e664f76e06a2964066f2ae2e8) )
  2988: 	ROM_LOAD( "hh_a2.rom",    0x40000, 0x20000, CRC(b5b163b0) SHA1(82a708fea4953a7c4dcd1d4a1b07f302221ba30b) )
  2989: 	ROM_LOAD( "hh_a3.rom",    0x60000, 0x20000, CRC(8ef566a1) SHA1(3afb020a7317efe89c18b2a7773894ce28499d49) )
  2990: 
  2991: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  2992: 	ROM_LOAD( "a-v0-0.rom",   0x00000, 0x20000, CRC(faaacaff) SHA1(ea3a3920255c07aa9c0a7e0191eae257a9f7f558) )
  2993: ROM_END
  2994: 
  2995: ROM_START( dkgensan )
  2996: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  2997: 	ROM_LOAD16_BYTE( "gen-a-h0.bin", 0x00001, 0x20000, CRC(07a45f6d) SHA1(8ffbd395aad244747d9f87062d2b062f41a4829c) )
  2998: 	ROM_LOAD16_BYTE( "gen-a-l0.bin", 0x00000, 0x20000, CRC(46478fea) SHA1(fd4ff544588535333c1b98fbc08446ef49b11212) )
  2999: 	ROM_LOAD16_BYTE( "gen-a-h1.bin", 0x60001, 0x10000, CRC(54e5b73c) SHA1(5664f6e0a931b1c139e82dc98fcc9e38acd14616) )
  3000: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  3001: 	ROM_LOAD16_BYTE( "gen-a-l1.bin", 0x60000, 0x10000, CRC(894f8a9f) SHA1(57a0885c52a094def03b129a450cc891e6c075c6) )
  3002: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  3003: 
  3004: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  3005: 	ROM_LOAD( "gen-a-sp.bin", 0x0000, 0x10000, CRC(e83cfc2c) SHA1(3193bdd06a9712fc499e6fc90a33140463ef59fe) )
  3006: 
  3007: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  3008: 	ROM_LOAD( "hh_00.rom",    0x00000, 0x20000, CRC(ec5127ef) SHA1(014ac8ad7b19cd9b475b72a0f42a4991119501c4) )	/* sprites */
  3009: 	ROM_LOAD( "hh_10.rom",    0x20000, 0x20000, CRC(def65294) SHA1(23f5d99fa9f604fde37cb52113bff233d9be1d25) )
  3010: 	ROM_LOAD( "hh_20.rom",    0x40000, 0x20000, CRC(bb0d6ad4) SHA1(4ab617fadfc32efad90ed7f0555513f167b0c43a) )
  3011: 	ROM_LOAD( "hh_30.rom",    0x60000, 0x20000, CRC(4351044e) SHA1(0d3ce3f4f1473fd997e70de91e7b5b5a5ec60ad4) )
  3012: 
  3013: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  3014: 	ROM_LOAD( "hh_a0.rom",    0x00000, 0x20000, CRC(c577ba5f) SHA1(c882e58cf64deca8eee6f14f3df43ecc932488fc) )	/* tiles */
  3015: 	ROM_LOAD( "hh_a1.rom",    0x20000, 0x20000, CRC(429d12ab) SHA1(ccba25eab981fc4e664f76e06a2964066f2ae2e8) )
  3016: 	ROM_LOAD( "hh_a2.rom",    0x40000, 0x20000, CRC(b5b163b0) SHA1(82a708fea4953a7c4dcd1d4a1b07f302221ba30b) )
  3017: 	ROM_LOAD( "hh_a3.rom",    0x60000, 0x20000, CRC(8ef566a1) SHA1(3afb020a7317efe89c18b2a7773894ce28499d49) )
  3018: 
  3019: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  3020: 	ROM_LOAD( "gen-vo.bin",   0x00000, 0x20000, CRC(d8595c66) SHA1(97920c9947fbac609fb901415e5471c6e4ca066c) )
  3021: ROM_END
  3022: 
  3023: ROM_START( dkgenm72 )
  3024: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  3025: 	ROM_LOAD16_BYTE( "ge72-h0.bin",  0x00001, 0x20000, CRC(a0ad992c) SHA1(6de4105d8454c4e4e62762fdd7e22829acc2442b) )
  3026: 	ROM_LOAD16_BYTE( "ge72-l0.bin",  0x00000, 0x20000, CRC(996396f0) SHA1(1a2501ba46bcbc607f772765e8614bc442154a18) )
  3027: 	ROM_LOAD16_BYTE( "ge72-h3.bin",  0x60001, 0x10000, CRC(d8b86005) SHA1(dd626cfe50a823066c54cc24d9fdaaf03d61d1e7) )
  3028: 	ROM_RELOAD(                      0xe0001, 0x10000 )
  3029: 	ROM_LOAD16_BYTE( "ge72-l3.bin",  0x60000, 0x10000, CRC(23d303a5) SHA1(b62010f34d71afb590deae458493454f9af38f7c) )
  3030: 	ROM_RELOAD(                      0xe0000, 0x10000 )
  3031: 
  3032: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  3033: 	/* no ROM, program will be copied by the main CPU */
  3034: 
  3035: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  3036: 	ROM_LOAD( "hh_00.rom",    0x00000, 0x20000, CRC(ec5127ef) SHA1(014ac8ad7b19cd9b475b72a0f42a4991119501c4) )	/* sprites */
  3037: 	ROM_LOAD( "hh_10.rom",    0x20000, 0x20000, CRC(def65294) SHA1(23f5d99fa9f604fde37cb52113bff233d9be1d25) )
  3038: 	ROM_LOAD( "hh_20.rom",    0x40000, 0x20000, CRC(bb0d6ad4) SHA1(4ab617fadfc32efad90ed7f0555513f167b0c43a) )
  3039: 	ROM_LOAD( "hh_30.rom",    0x60000, 0x20000, CRC(4351044e) SHA1(0d3ce3f4f1473fd997e70de91e7b5b5a5ec60ad4) )
  3040: 
  3041: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  3042: 	ROM_LOAD( "ge72b-a0.bin", 0x00000, 0x10000, CRC(f5f56b2a) SHA1(4ef6602052fa70e765d6d7747e672b7108b44f59) )	/* tiles #1 */
  3043: 	ROM_LOAD( "ge72-a1.bin",  0x10000, 0x10000, CRC(d194ea08) SHA1(0270897049cd256472df42f3dda856ee707535cd) )
  3044: 	ROM_LOAD( "ge72-a2.bin",  0x20000, 0x10000, CRC(2b06bcc3) SHA1(36378a4a69f3c3da96d2dc8df48916af8de50009) )
  3045: 	ROM_LOAD( "ge72-a3.bin",  0x30000, 0x10000, CRC(94b96bfa) SHA1(33c1e9045e7a984097f3fe4954b20d954cffbafa) )
  3046: 
  3047: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  3048: 	ROM_LOAD( "ge72-b0.bin",  0x00000, 0x10000, CRC(208796b3) SHA1(38b90732c8d5c77ee84053364a8a7e3daaaabe66) )	/* tiles #2 */
  3049: 	ROM_LOAD( "ge72-b1.bin",  0x10000, 0x10000, CRC(b4a7f490) SHA1(851b40650fc8920b49f43f9cc6f19e845a25e945) )
  3050: 	ROM_LOAD( "ge72b-b2.bin", 0x20000, 0x10000, CRC(34fe8f7f) SHA1(fbf8839b26be55ad83ad4db538ba3e196c1ab945) )
  3051: 	ROM_LOAD( "ge72b-b3.bin", 0x30000, 0x10000, CRC(4b0e92f4) SHA1(16ad9220ca6708028cea18c1c4b57e2b6eb425b4) )
  3052: 
  3053: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  3054: 	ROM_LOAD( "gen-vo.bin",   0x00000, 0x20000, CRC(d8595c66) SHA1(97920c9947fbac609fb901415e5471c6e4ca066c) )
  3055: ROM_END
  3056: 
  3057: ROM_START( poundfor )
  3058: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  3059: 	ROM_LOAD16_BYTE( "ppa-h0-b.bin", 0x00001, 0x20000, CRC(50d4a2d8) SHA1(7fd62c6613cb58b512c6c3670fa66a5b9906e6a1) )
  3060: 	ROM_LOAD16_BYTE( "ppa-l0-b.bin", 0x00000, 0x20000, CRC(bd997942) SHA1(da484afe3b79e09e323c768a0b2165e6283971a7) )
  3061: 	ROM_LOAD16_BYTE( "ppa-h1.9f",    0x40001, 0x20000, CRC(f6c82f48) SHA1(b38a2f9f0f6439b2cf453fec87ca11d959777ee6) )
  3062: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  3063: 	ROM_LOAD16_BYTE( "ppa-l1.9c",    0x40000, 0x20000, CRC(5b07b087) SHA1(04a2403eb8c443cb92b880edc612542acdbcafa4) )
  3064: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  3065: 
  3066: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  3067: 	ROM_LOAD( "ppa-sp.4j",    0x0000, 0x10000, CRC(3f458a5b) SHA1(d73740b2a548bf8a895909da0841f18d9ed32668) )
  3068: 
  3069: 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
  3070: 	ROM_LOAD( "ppb-n0.bin",   0x00000, 0x40000, CRC(951a41f8) SHA1(59b64f63ea2452c2b42ff7ebf1ff6fc4e7879ce3) )	/* sprites */
  3071: 	ROM_LOAD( "ppb-n1.bin",   0x40000, 0x40000, CRC(c609b7f2) SHA1(1da3550c7e4d2a26d75d143934680d9177ba5c35) )
  3072: 	ROM_LOAD( "ppb-n2.bin",   0x80000, 0x40000, CRC(318c0b5f) SHA1(1d4cd17dc2f8fc4e523eaf679f21d83e1bfade4e) )
  3073: 	ROM_LOAD( "ppb-n3.bin",   0xc0000, 0x40000, CRC(93dc9490) SHA1(3df4d57a7bf19443f5aa6a416bcee968f81d9059) )
  3074: 
  3075: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  3076: 	ROM_LOAD( "ppa-g00.bin",  0x00000, 0x20000, CRC(8a88a174) SHA1(d360b9014aec31960538ee488894496248a820dc) )	/* tiles */
  3077: 	ROM_LOAD( "ppa-g10.bin",  0x20000, 0x20000, CRC(e48a66ac) SHA1(49b33db6a922d6f1d1417e28714a67431b7c0217) )
  3078: 	ROM_LOAD( "ppa-g20.bin",  0x40000, 0x20000, CRC(12b93e79) SHA1(f3d2b76a30874827c8998c1d13a55a3990b699b7) )
  3079: 	ROM_LOAD( "ppa-g30.bin",  0x60000, 0x20000, CRC(faa39aee) SHA1(9cc1a468b304437766c04189054d3b8f7ff1f958) )
  3080: 
  3081: 	ROM_REGION( 0x40000, REGION_SOUND1, 0 )	/* samples */
  3082: 	ROM_LOAD( "ppa-v0.bin",   0x00000, 0x40000, CRC(03321664) SHA1(51f2b2b712385c1cd55fd069829efac01838d603) )
  3083: ROM_END
  3084: 
  3085: ROM_START( poundfou )
  3086: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  3087: 	ROM_LOAD16_BYTE( "ppa-ho-a.9e",  0x00001, 0x20000, CRC(ff4c83a4) SHA1(1b7791c784bf7c4774e3200b76d65ab0bf0ff93b) )
  3088: 	ROM_LOAD16_BYTE( "ppa-lo-a.9d",  0x00000, 0x20000, CRC(3374ce8f) SHA1(7455f8339aeed0ef3d0567baa804b62ca3615283) )
  3089: 	ROM_LOAD16_BYTE( "ppa-h1.9f",    0x40001, 0x20000, CRC(f6c82f48) SHA1(b38a2f9f0f6439b2cf453fec87ca11d959777ee6) )
  3090: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  3091: 	ROM_LOAD16_BYTE( "ppa-l1.9c",    0x40000, 0x20000, CRC(5b07b087) SHA1(04a2403eb8c443cb92b880edc612542acdbcafa4) )
  3092: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  3093: 
  3094: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  3095: 	ROM_LOAD( "ppa-sp.4j",    0x0000, 0x10000, CRC(3f458a5b) SHA1(d73740b2a548bf8a895909da0841f18d9ed32668) )
  3096: 
  3097: 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
  3098: 	ROM_LOAD( "ppb-n0.bin",   0x00000, 0x40000, CRC(951a41f8) SHA1(59b64f63ea2452c2b42ff7ebf1ff6fc4e7879ce3) )	/* sprites */
  3099: 	ROM_LOAD( "ppb-n1.bin",   0x40000, 0x40000, CRC(c609b7f2) SHA1(1da3550c7e4d2a26d75d143934680d9177ba5c35) )
  3100: 	ROM_LOAD( "ppb-n2.bin",   0x80000, 0x40000, CRC(318c0b5f) SHA1(1d4cd17dc2f8fc4e523eaf679f21d83e1bfade4e) )
  3101: 	ROM_LOAD( "ppb-n3.bin",   0xc0000, 0x40000, CRC(93dc9490) SHA1(3df4d57a7bf19443f5aa6a416bcee968f81d9059) )
  3102: 
  3103: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  3104: 	ROM_LOAD( "ppa-g00.bin",  0x00000, 0x20000, CRC(8a88a174) SHA1(d360b9014aec31960538ee488894496248a820dc) )	/* tiles */
  3105: 	ROM_LOAD( "ppa-g10.bin",  0x20000, 0x20000, CRC(e48a66ac) SHA1(49b33db6a922d6f1d1417e28714a67431b7c0217) )
  3106: 	ROM_LOAD( "ppa-g20.bin",  0x40000, 0x20000, CRC(12b93e79) SHA1(f3d2b76a30874827c8998c1d13a55a3990b699b7) )
  3107: 	ROM_LOAD( "ppa-g30.bin",  0x60000, 0x20000, CRC(faa39aee) SHA1(9cc1a468b304437766c04189054d3b8f7ff1f958) )
  3108: 
  3109: 	ROM_REGION( 0x40000, REGION_SOUND1, 0 )	/* samples */
  3110: 	ROM_LOAD( "ppa-v0.bin",   0x00000, 0x40000, CRC(03321664) SHA1(51f2b2b712385c1cd55fd069829efac01838d603) )
  3111: ROM_END
  3112: 
  3113: ROM_START( airduel )
  3114: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  3115: 	ROM_LOAD16_BYTE( "ad-c-h0.bin",  0x00001, 0x20000, CRC(12140276) SHA1(f218c5f2e6795b6295dea064817d7d6b1a7762b6) )
  3116: 	ROM_LOAD16_BYTE( "ad-c-l0.bin",  0x00000, 0x20000, CRC(4ac0b91d) SHA1(97e2f633181cd5c25927fd0e2988af2acdb3f388) )
  3117: 	ROM_LOAD16_BYTE( "ad-c-h3.bin",  0x40001, 0x20000, CRC(9f7cfca3) SHA1(becf827aa7749c54f1c435ea224e1fd9c8b3f5f9) )
  3118: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  3119: 	ROM_LOAD16_BYTE( "ad-c-l3.bin",  0x40000, 0x20000, CRC(9dd343f7) SHA1(9f499936b6d3807aa5b5c18e9811c73c9a2c99f9) )
  3120: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  3121: 
  3122: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  3123: 	/* no ROM, program will be copied by the main CPU */
  3124: 
  3125: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  3126: 	ROM_LOAD( "ad-00.bin",    0x00000, 0x20000, CRC(2f0d599b) SHA1(a966f806b5e25bb98cc63c46c49e0e676a62afcf) )	/* sprites */
  3127: 	ROM_LOAD( "ad-10.bin",    0x20000, 0x20000, CRC(9865856b) SHA1(b18a06899ae29d45e2351594df544220f3f4485a) )
  3128: 	ROM_LOAD( "ad-20.bin",    0x40000, 0x20000, CRC(d392aef2) SHA1(0f639a07066cadddc3884eb490885a8745571567) )
  3129: 	ROM_LOAD( "ad-30.bin",    0x60000, 0x20000, CRC(923240c3) SHA1(f587a83329087a715a3e42110f74f104e8c8ef1f) )
  3130: 
  3131: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  3132: 	ROM_LOAD( "ad-a0.bin",    0x00000, 0x20000, CRC(ce134b47) SHA1(841358cc222c81b8a91edc262f355310d50b4dbb) )	/* tiles #1 */
  3133: 	ROM_LOAD( "ad-a1.bin",    0x20000, 0x20000, CRC(097fd853) SHA1(8e08f4f4a747c899bb8e21b347635e26af9edc2d) )
  3134: 	ROM_LOAD( "ad-a2.bin",    0x40000, 0x20000, CRC(6a94c1b9) SHA1(55174acbac54236e5fc1b80d120cd6da9fe5524c) )
  3135: 	ROM_LOAD( "ad-a3.bin",    0x60000, 0x20000, CRC(6637c349) SHA1(27cb7c89ab73292b43f8ae3c0d803a01ef3d3936) )
  3136: 
  3137: 	ROM_REGION( 0x080000, REGION_GFX3, ROMREGION_DISPOSE )
  3138: 	ROM_LOAD( "ad-b0.bin",    0x00000, 0x20000, CRC(ce134b47) SHA1(841358cc222c81b8a91edc262f355310d50b4dbb) )	/* tiles #2 */
  3139: 	ROM_LOAD( "ad-b1.bin",    0x20000, 0x20000, CRC(097fd853) SHA1(8e08f4f4a747c899bb8e21b347635e26af9edc2d) )
  3140: 	ROM_LOAD( "ad-b2.bin",    0x40000, 0x20000, CRC(6a94c1b9) SHA1(55174acbac54236e5fc1b80d120cd6da9fe5524c) )
  3141: 	ROM_LOAD( "ad-b3.bin",    0x60000, 0x20000, CRC(6637c349) SHA1(27cb7c89ab73292b43f8ae3c0d803a01ef3d3936) )
  3142: 
  3143: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  3144: 	ROM_LOAD( "ad-v0.bin",    0x00000, 0x20000, CRC(339f474d) SHA1(a81bb52598a0e31b2ed6a538755237c5d14d1844) )
  3145: ROM_END
  3146: 
  3147: ROM_START( cosmccop )
  3148: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  3149: 	ROM_LOAD16_BYTE( "cc-d-h0b.bin", 0x00001, 0x40000, CRC(38958b01) SHA1(7d7e217742e33a1fe096adf5bbc93d63ddcfb375) )
  3150: 	ROM_RELOAD(                      0x80001, 0x40000 )
  3151: 	ROM_LOAD16_BYTE( "cc-d-l0b.bin", 0x00000, 0x40000, CRC(eff87f70) SHA1(61f49b8738cf31546d4182680b761705274b01bf) )
  3152: 	ROM_RELOAD(                      0x80000, 0x40000 )
  3153: 
  3154: 	ROM_REGION( 0x10000, REGION_CPU2, 0 ) /* 64k for the audio CPU */
  3155: 	ROM_LOAD( "cc-d-sp.bin", 0x0000, 0x10000, CRC(3e3ace60) SHA1(d89b1b84de2887598bb7bcb17b1df1ec8d1862a9) )
  3156: 
  3157: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  3158: 	ROM_LOAD( "cc-c-00.bin", 0x00000, 0x20000, CRC(9d99deaa) SHA1(acf16bea0f482306107d2a305c568406b6c21e9a) )	// cc-b-n0
  3159: 	ROM_LOAD( "cc-c-10.bin", 0x20000, 0x20000, CRC(7eb083ed) SHA1(31fa7d532fd46e861c3d19d5b08661653f685a49) )	// cc-b-n1
  3160: 	ROM_LOAD( "cc-c-20.bin", 0x40000, 0x20000, CRC(9421489e) SHA1(e43d042bf8b4ebed93558d74ec479ec60a01ca5c) )	// cc-b-n2
  3161: 	ROM_LOAD( "cc-c-30.bin", 0x60000, 0x20000, CRC(920ec735) SHA1(2d0949b43dddce7317c45910d6e4868ddf010806) )	// cc-b-n3
  3162: 
  3163: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  3164: 	ROM_LOAD( "cc-d-g00.bin", 0x00000, 0x20000, CRC(e7f3d772) SHA1(c7f0bc42e8dde7bae334c7974c3d0ddba3856144) ) /* tiles */
  3165: 	ROM_LOAD( "cc-d-g10.bin", 0x20000, 0x20000, CRC(418b4e4c) SHA1(1191f12741ee7a360240f706534c9c83be8d5c2d) )
  3166: 	ROM_LOAD( "cc-d-g20.bin", 0x40000, 0x20000, CRC(a4b558eb) SHA1(0babf725de0065dbeca73fa170bd33565305d129) )
  3167: 	ROM_LOAD( "cc-d-g30.bin", 0x60000, 0x20000, CRC(f64a3166) SHA1(1661db2a37c76e6b4552e48c04966dbbccab8926) )
  3168: 
  3169: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 ) /* samples */
  3170: 	ROM_LOAD( "cc-c-v0.bin", 0x00000, 0x20000, CRC(6247bade) SHA1(4bc9f86acd09908c74b1ab0e7817c4ff1cad6f0b) )	// cc-d-v0
  3171: ROM_END
  3172: 
  3173: ROM_START( gallop )
  3174: 	ROM_REGION( 0x100000, REGION_CPU1, 0 )
  3175: 	ROM_LOAD16_BYTE( "cc-c-h0.bin",  0x00001, 0x20000, CRC(2217dcd0) SHA1(9485b6c3eec99e720439e69dcbe0e55798bbff1c) )
  3176: 	ROM_LOAD16_BYTE( "cc-c-l0.bin",  0x00000, 0x20000, CRC(ff39d7fb) SHA1(fad95f76050fce04464268b5edff6622b2cb798f) )
  3177: 	ROM_LOAD16_BYTE( "cc-c-h3.bin",  0x40001, 0x20000, CRC(9b2bbab9) SHA1(255d4dda55be667f5f1f4324e9e66111738e79b3) )
  3178: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  3179: 	ROM_LOAD16_BYTE( "cc-c-l3.bin",  0x40000, 0x20000, CRC(acd3278e) SHA1(83d7ddfbdb4bc9548a179b728351a21b3b0ac134) )
  3180: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  3181: 
  3182: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  3183: 	/* no ROM, program will be copied by the main CPU */
  3184: 
  3185: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  3186: 	ROM_LOAD( "cc-c-00.bin",  0x00000, 0x20000, CRC(9d99deaa) SHA1(acf16bea0f482306107d2a305c568406b6c21e9a) )	/* sprites */
  3187: 	ROM_LOAD( "cc-c-10.bin",  0x20000, 0x20000, CRC(7eb083ed) SHA1(31fa7d532fd46e861c3d19d5b08661653f685a49) )
  3188: 	ROM_LOAD( "cc-c-20.bin",  0x40000, 0x20000, CRC(9421489e) SHA1(e43d042bf8b4ebed93558d74ec479ec60a01ca5c) )
  3189: 	ROM_LOAD( "cc-c-30.bin",  0x60000, 0x20000, CRC(920ec735) SHA1(2d0949b43dddce7317c45910d6e4868ddf010806) )
  3190: 
  3191: 	ROM_REGION( 0x040000, REGION_GFX2, ROMREGION_DISPOSE )
  3192: 	ROM_LOAD( "cc-b-a0.bin",  0x00000, 0x10000, CRC(a33472bd) SHA1(962047fe3dd1fb996285ecef615a8ebdb529adef) )	/* tiles #1 */
  3193: 	ROM_LOAD( "cc-b-a1.bin",  0x10000, 0x10000, CRC(118b1f2d) SHA1(7413ccc67a8aa9dae156e6ee122b1ca5beeb9a76) )
  3194: 	ROM_LOAD( "cc-b-a2.bin",  0x20000, 0x10000, CRC(83cebf48) SHA1(12847827ecbf6b493eb9dbddd0a469729d87a451) )
  3195: 	ROM_LOAD( "cc-b-a3.bin",  0x30000, 0x10000, CRC(572903fc) SHA1(03305301bcf939e97044e746594736b1ca1d7c0a) )
  3196: 
  3197: 	ROM_REGION( 0x040000, REGION_GFX3, ROMREGION_DISPOSE )
  3198: 	ROM_LOAD( "cc-b-b0.bin",  0x00000, 0x10000, CRC(0df5b439) SHA1(0775cf92139a111542c8b5f940da0f7f43020982) )	/* tiles #2 */
  3199: 	ROM_LOAD( "cc-b-b1.bin",  0x10000, 0x10000, CRC(010b778f) SHA1(cc5bfeb0fbe0ed2fe513458c5785ec0ce5b02f53) )
  3200: 	ROM_LOAD( "cc-b-b2.bin",  0x20000, 0x10000, CRC(bda9f6fb) SHA1(a6b655ae5bff0568c1fb56ee8a3874fc6524052c) )
  3201: 	ROM_LOAD( "cc-b-b3.bin",  0x30000, 0x10000, CRC(d361ba3f) SHA1(7348fdae03e997e05187a2726eb221edb92553df) )
  3202: 
  3203: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  3204: 	ROM_LOAD( "cc-c-v0.bin",  0x00000, 0x20000, CRC(6247bade) SHA1(4bc9f86acd09908c74b1ab0e7817c4ff1cad6f0b) )
  3205: ROM_END
  3206: 
  3207: ROM_START( kengo )
  3208: 	ROM_REGION( 0x100000 * 2, REGION_CPU1, 0 )
  3209: 	ROM_LOAD16_BYTE( "ken_d-h0.rom", 0x00001, 0x20000, CRC(f4ddeea5) SHA1(bcf016e40886e11c171f2f50de39ac0d8cabcdd1) )
  3210: 	ROM_RELOAD(                      0xc0001, 0x20000 )
  3211: 	ROM_LOAD16_BYTE( "ken_d-l0.rom", 0x00000, 0x20000, CRC(04dc0f81) SHA1(b296529f0bc26d53b344449dfa5a08eca70f30d8) )
  3212: 	ROM_RELOAD(                      0xc0000, 0x20000 )
  3213: 
  3214: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* 64k for the audio CPU */
  3215: 	ROM_LOAD( "ken_d-sp.rom", 0x0000, 0x10000, CRC(233ca1cf) SHA1(4ebb6162773bd586a10016ccd77998a9b880f474) )
  3216: 
  3217: 	ROM_REGION( 0x080000, REGION_GFX1, ROMREGION_DISPOSE )
  3218: 	ROM_LOAD( "ken_m31.rom",  0x00000, 0x20000, CRC(e00b95a6) SHA1(6efcd8d58f8ebe3a42c60a0aa790b42c0e132777) )	/* sprites */
  3219: 	ROM_LOAD( "ken_m21.rom",  0x20000, 0x20000, CRC(d7722f87) SHA1(8606a53b8630934d2b5dfc986bd92ac4142f67e2) )
  3220: 	ROM_LOAD( "ken_m32.rom",  0x40000, 0x20000, CRC(30a844c4) SHA1(72b2caba3ee7a229ca56f004516dea8d3f0a7ba6) )
  3221: 	ROM_LOAD( "ken_m22.rom",  0x60000, 0x20000, CRC(a00dac85) SHA1(0c1ed852795046926f62843f6b256cbeecf9ebcf) )
  3222: 
  3223: 	ROM_REGION( 0x080000, REGION_GFX2, ROMREGION_DISPOSE )
  3224: 	ROM_LOAD( "ken_m51.rom",  0x00000, 0x20000, CRC(1646cf4f) SHA1(d240cb2bad3e766128e8e40aa7b1bf4f3b9a5559) )	/* tiles */
  3225: 	ROM_LOAD( "ken_m57.rom",  0x20000, 0x20000, CRC(a9f88d90) SHA1(c8d4a96fe55fed4b7499550f3c74b03d10306757) )
  3226: 	ROM_LOAD( "ken_m66.rom",  0x40000, 0x20000, CRC(e9d17645) SHA1(fbe18d6691686a1c458d4a91169c9850698b5ca7) )
  3227: 	ROM_LOAD( "ken_m64.rom",  0x60000, 0x20000, CRC(df46709b) SHA1(e7c2cd752e765bf7b8ff24637305d61031ce0baa) )
  3228: 
  3229: 	ROM_REGION( 0x20000, REGION_SOUND1, 0 )	/* samples */
  3230: 	ROM_LOAD( "ken_m14.rom",  0x00000, 0x20000, CRC(6651e9b7) SHA1(c42009f986c9a9f35732d5cd717d548536469b1c) )
  3231: ROM_END
  3232: 
  3233: 
  3234: 
  3235: static DRIVER_INIT( kengo )
  3236: {
  3237: 	irem_cpu_decrypt(0,gunforce_decryption_table);
  3238: }
  3239: 
  3240: 
  3241: 
  3242: GAMEX( 1987, rtype,    0,        rtype,    rtype,    0,        ROT0,   "Irem", "R-Type (Japan)", GAME_NO_COCKTAIL )
  3243: GAMEX( 1987, rtypepj,  rtype,    rtype,    rtypep,   0,        ROT0,   "Irem", "R-Type (Japan prototype)", GAME_NO_COCKTAIL )
  3244: GAMEX( 1987, rtypeu,   rtype,    rtype,    rtype,    0,        ROT0,   "Irem (Nintendo of America license)", "R-Type (US)", GAME_NO_COCKTAIL )
  3245: GAMEX( 1987, bchopper, 0,        m72,      bchopper, bchopper, ROT0,   "Irem", "Battle Chopper", GAME_NO_COCKTAIL )
  3246: GAMEX( 1987, mrheli,   bchopper, m72,      bchopper, mrheli,   ROT0,   "Irem", "Mr. HELI no Dai-Bouken", GAME_NO_COCKTAIL )
  3247: GAMEX( 1988, nspirit,  0,        m72,      nspirit,  nspirit,  ROT0,   "Irem", "Ninja Spirit", GAME_NO_COCKTAIL )
  3248: GAMEX( 1988, nspiritj, nspirit,  m72,      nspirit,  nspiritj, ROT0,   "Irem", "Saigo no Nindou (Japan)", GAME_NO_COCKTAIL )
  3249: GAMEX( 1988, imgfight, 0,        m72,      imgfight, imgfight, ROT270, "Irem", "Image Fight (Japan)", GAME_NO_COCKTAIL )
  3250: GAMEX( 1989, loht,     0,        m72,      loht,     loht,     ROT0,   "Irem", "Legend of Hero Tonma", GAME_NO_COCKTAIL )
  3251: GAMEX( 1989, xmultipl, 0,        xmultipl, xmultipl, xmultipl, ROT0,   "Irem", "X Multiply (Japan)", GAME_NO_COCKTAIL )
  3252: GAMEX( 1989, dbreed,   0,        dbreed,   dbreed,   dbreed,   ROT0,   "Irem", "Dragon Breed", GAME_NO_COCKTAIL )
  3253: GAMEX( 1989, rtype2,   0,        rtype2,   rtype2,   0,        ROT0,   "Irem", "R-Type II", GAME_NO_COCKTAIL )
  3254: GAMEX( 1989, rtype2j,  rtype2,   rtype2,   rtype2,   0,        ROT0,   "Irem", "R-Type II (Japan)", GAME_NO_COCKTAIL )
  3255: GAMEX( 1990, majtitle, 0,        majtitle, rtype2,   0,        ROT0,   "Irem", "Major Title (Japan)", GAME_NO_COCKTAIL )
  3256: GAMEX( 1990, hharry,   0,        hharry,   hharry,   0,        ROT0,   "Irem", "Hammerin' Harry (World)", GAME_NO_COCKTAIL )
  3257: GAMEX( 1990, hharryu,  hharry,   hharryu,  hharry,   0,        ROT0,   "Irem America", "Hammerin' Harry (US)", GAME_NO_COCKTAIL )
  3258: GAMEX( 1990, dkgensan, hharry,   hharryu,  hharry,   0,        ROT0,   "Irem", "Daiku no Gensan (Japan)", GAME_NO_COCKTAIL )
  3259: GAMEX( 1990, dkgenm72, hharry,   dkgenm72, hharry,   dkgenm72, ROT0,   "Irem", "Daiku no Gensan (Japan, M72)", GAME_NO_COCKTAIL )
  3260: GAMEX( 1990, poundfor, 0,        poundfor, poundfor, 0,        ROT270, "Irem", "Pound for Pound (World)", GAME_NO_COCKTAIL )
  3261: GAMEX( 1990, poundfou, poundfor, poundfor, poundfor, 0,        ROT270, "Irem America", "Pound for Pound (US)", GAME_NO_COCKTAIL )
  3262: GAMEX( 1990, airduel,  0,        m72,      airduel,  airduel,  ROT270, "Irem", "Air Duel (Japan)", GAME_NO_COCKTAIL )
  3263: GAMEX( 1991, cosmccop, 0,        kengo,    gallop,   0,        ROT0,   "Irem", "Cosmic Cop (World)", GAME_NO_COCKTAIL )
  3264: GAMEX( 1991, gallop,   cosmccop, m72,      gallop,   gallop,   ROT0,   "Irem", "Gallop - Armed police Unit (Japan)", GAME_NO_COCKTAIL )
  3265: GAMEX( 1991, kengo,    0,        kengo,    kengo,    kengo,    ROT0,   "Irem", "Ken-Go", GAME_NO_COCKTAIL )
  3266: 




powered by ggdb.com this page took approx. 0.002s