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 : Out Zone : VM Driver Source

Source Listing


     1: /***************************************************************************
     2: 
     3: 		ToaPlan game hardware from 1988-1991
     4: 		------------------------------------
     5: 		MAME Driver by: Darren Olafson
     6: 		Technical info: Carl-Henrik Skarstedt  &  Magnus Danielsson
     7: 		Driver updates: Quench
     8: 		Video updates : SUZ
     9: 
    10: 
    11: Supported games:
    12: 
    13: 	ROM set		Toaplan
    14: 	name		board No		Game name
    15: 	--------------------------------------------------
    16: 	rallybik	TP-012		Rally Bike/Dash Yarou
    17: 	truxton		TP-013B		Truxton/Tatsujin
    18: 	hellfire	TP-???		HellFire (2 Player version)
    19: 	hellfir1	TP-???		HellFire (1 Player version)
    20: 	zerowing	TP-015		Zero Wing
    21: 	demonwld	TP-016		Demon's World/Horror Story [1990]
    22: 	demonwl1	TP-016		Demon's World/Horror Story [1989] (Taito license)
    23: 	fireshrk	TP-017		Fire Shark (World)			 [1990]
    24: 	samesame	TP-017		Same! Same! Same! (Japan)	 [1989] (1 Player version)
    25: 	samesam2	TP-017		Same! Same! Same! (Japan)	 [1989] (2 Player version)
    26: 	outzone		TP-018		Out Zone
    27: 	outzonea	TP-018		Out Zone (From board serial number 2122)
    28: 	vimana		TP-019		Vimana (From board serial number 1547.04 [July '94])
    29: 	vimana1		TP-019		Vimana (older version)
    30: 	vimanan		TP-019		Vimana (Nova Apparate GMBH & Co  license)
    31: 
    32: 
    33: Notes:
    34: 	Fire Shark and Same! Same! Same! have a hidden function for the
    35: 	service input. When invulnerability is enabled, pressing the
    36: 	service input makes the screen scroll faster.
    37: 
    38: 	OutZone (set 2) has a bug in the 68K code. An Jump instruction at $3E6
    39: 	goes to to an invalid instruction at $13DA4. It should really jump to
    40: 	$13DAA. This bad jump is executed by flicking the 'Service DSW' while
    41: 	after the game has booted. The other Outzone set correctly goes to
    42: 	service mode, but this set just loses the plot.
    43: 
    44: 	OutZone sprite priorities are unusual. On level 4, a character with
    45: 	low priority (6) is hidden by a higher priority (8) character, yet it
    46: 	shouldn't be. The character is a shooting enemy hidden by a sliding
    47: 	left to right platform (which he should be standing on).
    48: 	So how does the real hardware deal with this ?
    49: 
    50: 	OutZone (set 2) uses different enemies in some stages and has extra
    51: 	bonuses compared to set 1. The music sequences are also in different
    52: 	orders between the sets. So which is the newest version ?
    53: 
    54: 	Demonwld (Toaplan copyright) is a newer version, and has a different game
    55: 	level sequence compared to the Taito licensed version.
    56: 
    57: 
    58: To Do:
    59: 	Add support for HD647180 (Z180) sound CPUs (once their internal
    60: 	ROMS are dumped). These are:
    61: 		Fire Shark/Same! Same! Same!
    62: 		Vimana
    63: 
    64: ***************************************************************************/
    65: 
    66: #include "driver.h" 
    67: #include "vidhrdw/generic.h" 
    68: #include "cpu/tms32010/tms32010.h" 
    69: #include "toaplan1.h" 
    70: 
    71: 
    72: 
    73: /* 68000 memory maps */
    74: static MEMORY_READ16_START( rallybik_readmem )
    75: 	{ 0x000000, 0x07ffff, MRA16_ROM },
    76: 	{ 0x080000, 0x083fff, MRA16_RAM },
    77: 	{ 0x0c0000, 0x0c0fff, MRA16_RAM },				/* sprite ram data */
    78: 	{ 0x100002, 0x100003, toaplan1_tileram_offs_r },
    79: 	{ 0x100004, 0x100007, rallybik_tileram16_r },	/* tile layers */
    80: 	{ 0x100010, 0x10001f, toaplan1_scroll_regs_r },
    81: 	{ 0x140000, 0x140001, input_port_0_word_r },
    82: 	{ 0x144000, 0x1447ff, toaplan1_colorram1_r },
    83: 	{ 0x146000, 0x1467ff, toaplan1_colorram2_r },
    84: 	{ 0x180000, 0x180fff, toaplan1_shared_r },
    85: MEMORY_END
    86: 
    87: static MEMORY_WRITE16_START( rallybik_writemem )
    88: 	{ 0x000000, 0x07ffff, MWA16_ROM },
    89: 	{ 0x080000, 0x083fff, MWA16_RAM },
    90: 	{ 0x0c0000, 0x0c0fff, MWA16_RAM, &spriteram16, &spriteram_size },
    91: 	{ 0x100000, 0x100001, rallybik_bcu_flipscreen_w },
    92: 	{ 0x100002, 0x100003, toaplan1_tileram_offs_w },
    93: 	{ 0x100004, 0x100007, toaplan1_tileram16_w },
    94: 	{ 0x100010, 0x10001f, toaplan1_scroll_regs_w },
    95: //	{ 0x140000, 0x140001, ?? video frame related ??  },
    96: 	{ 0x140002, 0x140003, toaplan1_intenable_w },
    97: 	{ 0x140008, 0x14000f, toaplan1_bcu_control_w },
    98: 	{ 0x144000, 0x1447ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
    99: 	{ 0x146000, 0x1467ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   100: 	{ 0x180000, 0x180fff, toaplan1_shared_w },
   101: 	{ 0x1c0000, 0x1c0003, toaplan1_tile_offsets_w },
   102: 	{ 0x1c8000, 0x1c8001, toaplan1_reset_sound },
   103: MEMORY_END
   104: 
   105: static MEMORY_READ16_START( truxton_readmem )
   106: 	{ 0x000000, 0x03ffff, MRA16_ROM },
   107: 	{ 0x080000, 0x083fff, MRA16_RAM },
   108: 	{ 0x0c0000, 0x0c0001, toaplan1_frame_done_r },
   109: 	{ 0x0c0002, 0x0c0003, toaplan1_spriteram_offs_r },
   110: 	{ 0x0c0004, 0x0c0005, toaplan1_spriteram16_r },
   111: 	{ 0x0c0006, 0x0c0007, toaplan1_spritesizeram16_r },
   112: 	{ 0x100002, 0x100003, toaplan1_tileram_offs_r },
   113: 	{ 0x100004, 0x100007, toaplan1_tileram16_r },
   114: 	{ 0x100010, 0x10001f, toaplan1_scroll_regs_r },
   115: 	{ 0x140000, 0x140001, input_port_0_word_r },
   116: 	{ 0x144000, 0x1447ff, toaplan1_colorram1_r },
   117: 	{ 0x146000, 0x1467ff, toaplan1_colorram2_r },
   118: 	{ 0x180000, 0x180fff, toaplan1_shared_r },
   119: MEMORY_END
   120: 
   121: static MEMORY_WRITE16_START( truxton_writemem )
   122: 	{ 0x000000, 0x03ffff, MWA16_ROM },
   123: 	{ 0x080000, 0x083fff, MWA16_RAM },
   124: 	{ 0x0c0002, 0x0c0003, toaplan1_spriteram_offs_w },
   125: 	{ 0x0c0004, 0x0c0005, toaplan1_spriteram16_w },
   126: 	{ 0x0c0006, 0x0c0007, toaplan1_spritesizeram16_w },
   127: 	{ 0x100000, 0x100001, toaplan1_bcu_flipscreen_w },
   128: 	{ 0x100002, 0x100003, toaplan1_tileram_offs_w },
   129: 	{ 0x100004, 0x100007, toaplan1_tileram16_w },
   130: 	{ 0x100010, 0x10001f, toaplan1_scroll_regs_w },
   131: //	{ 0x140000, 0x140001, ?? video frame related ??  },
   132: 	{ 0x140002, 0x140003, toaplan1_intenable_w },
   133: 	{ 0x140008, 0x14000f, toaplan1_bcu_control_w },
   134: 	{ 0x144000, 0x1447ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
   135: 	{ 0x146000, 0x1467ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   136: 	{ 0x180000, 0x180fff, toaplan1_shared_w },
   137: 	{ 0x1c0000, 0x1c0003, toaplan1_tile_offsets_w },
   138: 	{ 0x1c0006, 0x1c0007, toaplan1_fcu_flipscreen_w },
   139: 	{ 0x1d0000, 0x1d0001, toaplan1_reset_sound },
   140: MEMORY_END
   141: 
   142: static MEMORY_READ16_START( hellfire_readmem )
   143: 	{ 0x000000, 0x03ffff, MRA16_ROM },
   144: 	{ 0x040000, 0x047fff, MRA16_RAM },
   145: 	{ 0x080000, 0x080001, input_port_0_word_r },
   146: 	{ 0x084000, 0x0847ff, toaplan1_colorram1_r },
   147: 	{ 0x086000, 0x0867ff, toaplan1_colorram2_r },
   148: 	{ 0x0c0000, 0x0c0fff, toaplan1_shared_r },
   149: 	{ 0x100002, 0x100003, toaplan1_tileram_offs_r },
   150: 	{ 0x100004, 0x100007, toaplan1_tileram16_r },
   151: 	{ 0x100010, 0x10001f, toaplan1_scroll_regs_r },
   152: 	{ 0x140000, 0x140001, toaplan1_frame_done_r },
   153: 	{ 0x140002, 0x140003, toaplan1_spriteram_offs_r },
   154: 	{ 0x140004, 0x140005, toaplan1_spriteram16_r },
   155: 	{ 0x140006, 0x140007, toaplan1_spritesizeram16_r },
   156: MEMORY_END
   157: 
   158: static MEMORY_WRITE16_START( hellfire_writemem )
   159: 	{ 0x000000, 0x03ffff, MWA16_ROM },
   160: 	{ 0x040000, 0x047fff, MWA16_RAM },
   161: /*	{ 0x080000, 0x080001, ?? video frame related ??  },	*/
   162: 	{ 0x080002, 0x080003, toaplan1_intenable_w },
   163: 	{ 0x080008, 0x08000f, toaplan1_bcu_control_w },
   164: 	{ 0x084000, 0x0847ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
   165: 	{ 0x086000, 0x0867ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   166: 	{ 0x0c0000, 0x0c0fff, toaplan1_shared_w },
   167: 	{ 0x100000, 0x100001, toaplan1_bcu_flipscreen_w },
   168: 	{ 0x100002, 0x100003, toaplan1_tileram_offs_w },
   169: 	{ 0x100004, 0x100007, toaplan1_tileram16_w },
   170: 	{ 0x100010, 0x10001f, toaplan1_scroll_regs_w },
   171: 	{ 0x140002, 0x140003, toaplan1_spriteram_offs_w },
   172: 	{ 0x140004, 0x140005, toaplan1_spriteram16_w },
   173: 	{ 0x140006, 0x140007, toaplan1_spritesizeram16_w },
   174: 	{ 0x180000, 0x180003, toaplan1_tile_offsets_w },
   175: 	{ 0x180006, 0x180007, toaplan1_fcu_flipscreen_w },
   176: 	{ 0x180008, 0x180009, toaplan1_reset_sound },
   177: MEMORY_END
   178: 
   179: static MEMORY_READ16_START( zerowing_readmem )
   180: 	{ 0x000000, 0x07ffff, MRA16_ROM },
   181: 	{ 0x080000, 0x087fff, MRA16_RAM },
   182: 	{ 0x400000, 0x400001, input_port_0_word_r },
   183: 	{ 0x404000, 0x4047ff, toaplan1_colorram1_r },
   184: 	{ 0x406000, 0x4067ff, toaplan1_colorram2_r },
   185: 	{ 0x440000, 0x440fff, toaplan1_shared_r },
   186: 	{ 0x480002, 0x480003, toaplan1_tileram_offs_r },
   187: 	{ 0x480004, 0x480007, toaplan1_tileram16_r },
   188: 	{ 0x480010, 0x48001f, toaplan1_scroll_regs_r },
   189: 	{ 0x4c0000, 0x4c0001, toaplan1_frame_done_r },
   190: 	{ 0x4c0002, 0x4c0003, toaplan1_spriteram_offs_r },
   191: 	{ 0x4c0004, 0x4c0005, toaplan1_spriteram16_r },
   192: 	{ 0x4c0006, 0x4c0007, toaplan1_spritesizeram16_r },
   193: MEMORY_END
   194: 
   195: static MEMORY_WRITE16_START( zerowing_writemem )
   196: 	{ 0x000000, 0x07ffff, MWA16_ROM },
   197: 	{ 0x080000, 0x087fff, MWA16_RAM },
   198: 	{ 0x0c0000, 0x0c0003, toaplan1_tile_offsets_w },
   199: 	{ 0x0c0006, 0x0c0007, toaplan1_fcu_flipscreen_w },
   200: /*	{ 0x400000, 0x400001, ?? video frame related ??  },	*/
   201: 	{ 0x400002, 0x400003, toaplan1_intenable_w },
   202: 	{ 0x400008, 0x40000f, toaplan1_bcu_control_w },
   203: 	{ 0x404000, 0x4047ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
   204: 	{ 0x406000, 0x4067ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   205: 	{ 0x440000, 0x440fff, toaplan1_shared_w },
   206: 	{ 0x480000, 0x480001, toaplan1_bcu_flipscreen_w },
   207: 	{ 0x480002, 0x480003, toaplan1_tileram_offs_w },
   208: 	{ 0x480004, 0x480007, toaplan1_tileram16_w },
   209: 	{ 0x480010, 0x48001f, toaplan1_scroll_regs_w },
   210: 	{ 0x4c0002, 0x4c0003, toaplan1_spriteram_offs_w },
   211: 	{ 0x4c0004, 0x4c0005, toaplan1_spriteram16_w },
   212: 	{ 0x4c0006, 0x4c0007, toaplan1_spritesizeram16_w },
   213: MEMORY_END
   214: 
   215: static MEMORY_READ16_START( demonwld_readmem )
   216: 	{ 0x000000, 0x03ffff, MRA16_ROM },
   217: 	{ 0x400000, 0x400001, input_port_0_word_r },
   218: 	{ 0x404000, 0x4047ff, toaplan1_colorram1_r },
   219: 	{ 0x406000, 0x4067ff, toaplan1_colorram2_r },
   220: 	{ 0x600000, 0x600fff, toaplan1_shared_r },
   221: 	{ 0x800002, 0x800003, toaplan1_tileram_offs_r },
   222: 	{ 0x800004, 0x800007, toaplan1_tileram16_r },
   223: 	{ 0x800010, 0x80001f, toaplan1_scroll_regs_r },
   224: 	{ 0xa00000, 0xa00001, toaplan1_frame_done_r },
   225: 	{ 0xa00002, 0xa00003, toaplan1_spriteram_offs_r },
   226: 	{ 0xa00004, 0xa00005, toaplan1_spriteram16_r },
   227: 	{ 0xa00006, 0xa00007, toaplan1_spritesizeram16_r },
   228: 	{ 0xc00000, 0xc03fff, MRA16_RAM},
   229: MEMORY_END
   230: 
   231: static MEMORY_WRITE16_START( demonwld_writemem )
   232: 	{ 0x000000, 0x03ffff, MWA16_ROM },
   233: /*	{ 0x400000, 0x400001, ?? video frame related ??  },	*/
   234: 	{ 0x400002, 0x400003, toaplan1_intenable_w },
   235: 	{ 0x400008, 0x40000f, toaplan1_bcu_control_w },
   236: 	{ 0x404000, 0x4047ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
   237: 	{ 0x406000, 0x4067ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   238: 	{ 0x600000, 0x600fff, toaplan1_shared_w },
   239: 	{ 0x800000, 0x800001, toaplan1_bcu_flipscreen_w },
   240: 	{ 0x800002, 0x800003, toaplan1_tileram_offs_w },
   241: 	{ 0x800004, 0x800007, toaplan1_tileram16_w },
   242: 	{ 0x800010, 0x80001f, toaplan1_scroll_regs_w },
   243: 	{ 0xa00002, 0xa00003, toaplan1_spriteram_offs_w },
   244: 	{ 0xa00004, 0xa00005, toaplan1_spriteram16_w },
   245: 	{ 0xa00006, 0xa00007, toaplan1_spritesizeram16_w },
   246: 	{ 0xc00000, 0xc03fff, MWA16_RAM },
   247: 	{ 0xe00000, 0xe00003, toaplan1_tile_offsets_w },
   248: 	{ 0xe00006, 0xe00007, toaplan1_fcu_flipscreen_w },
   249: 	{ 0xe00008, 0xe00009, toaplan1_reset_sound },
   250: 	{ 0xe0000a, 0xe0000b, demonwld_dsp_ctrl_w },	/* DSP Comms control */
   251: MEMORY_END
   252: 
   253: static MEMORY_READ16_START( samesame_readmem )
   254: 	{ 0x000000, 0x00ffff, MRA16_ROM },
   255: 	{ 0x040000, 0x07ffff, MRA16_ROM },
   256: 	{ 0x0c0000, 0x0c3fff, MRA16_RAM },
   257: 	{ 0x100000, 0x100001, input_port_0_word_r },
   258: 	{ 0x104000, 0x1047ff, toaplan1_colorram1_r },
   259: 	{ 0x106000, 0x1067ff, toaplan1_colorram2_r },
   260: 	{ 0x140000, 0x140001, input_port_1_word_r },
   261: 	{ 0x140002, 0x140003, input_port_2_word_r },
   262: 	{ 0x140004, 0x140005, input_port_3_word_r },
   263: 	{ 0x140006, 0x140007, input_port_4_word_r },
   264: 	{ 0x140008, 0x140009, input_port_5_word_r },
   265: 	{ 0x14000a, 0x14000b, samesame_port_6_word_r },	/* Territory, and MCU ready */
   266: 	{ 0x180002, 0x180003, toaplan1_tileram_offs_r },
   267: 	{ 0x180004, 0x180007, toaplan1_tileram16_r },
   268: 	{ 0x180010, 0x18001f, toaplan1_scroll_regs_r },
   269: 	{ 0x1c0000, 0x1c0001, toaplan1_frame_done_r },
   270: 	{ 0x1c0002, 0x1c0003, toaplan1_spriteram_offs_r },
   271: 	{ 0x1c0004, 0x1c0005, toaplan1_spriteram16_r },
   272: 	{ 0x1c0006, 0x1c0007, toaplan1_spritesizeram16_r },
   273: MEMORY_END
   274: 
   275: static MEMORY_WRITE16_START( samesame_writemem )
   276: 	{ 0x000000, 0x00ffff, MWA16_ROM },
   277: 	{ 0x040000, 0x07ffff, MWA16_ROM },
   278: 	{ 0x080000, 0x080003, toaplan1_tile_offsets_w },
   279: 	{ 0x080006, 0x080007, toaplan1_fcu_flipscreen_w },
   280: 	{ 0x0c0000, 0x0c3fff, MWA16_RAM },			/* Frame done at $c1ada */
   281: /*	{ 0x100000, 0x100001, ?? video frame related ??  },	*/
   282: 	{ 0x100002, 0x100003, toaplan1_intenable_w },
   283: 	{ 0x100008, 0x10000f, toaplan1_bcu_control_w },
   284: 	{ 0x104000, 0x1047ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
   285: 	{ 0x106000, 0x1067ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   286: 	{ 0x14000c, 0x14000d, samesame_coin_w },	/* Coin counter/lockout */
   287: //	{ 0x14000e, 0x14000f, samesame_mcu_w },		/* Commands sent to HD647180 */
   288: 	{ 0x180000, 0x180001, toaplan1_bcu_flipscreen_w },
   289: 	{ 0x180002, 0x180003, toaplan1_tileram_offs_w },
   290: 	{ 0x180004, 0x180007, toaplan1_tileram16_w },
   291: 	{ 0x180010, 0x18001f, toaplan1_scroll_regs_w },
   292: /*	{ 0x1c0000, 0x1c0001, ??? },				disable sprite refresh ? */
   293: 	{ 0x1c0002, 0x1c0003, toaplan1_spriteram_offs_w },
   294: 	{ 0x1c0004, 0x1c0005, toaplan1_spriteram16_w },
   295: 	{ 0x1c0006, 0x1c0007, toaplan1_spritesizeram16_w },
   296: MEMORY_END
   297: 
   298: static MEMORY_READ16_START( outzone_readmem )
   299: 	{ 0x000000, 0x03ffff, MRA16_ROM },
   300: 	{ 0x100000, 0x100001, toaplan1_frame_done_r },
   301: 	{ 0x100002, 0x100003, toaplan1_spriteram_offs_r },
   302: 	{ 0x100004, 0x100005, toaplan1_spriteram16_r },
   303: 	{ 0x100006, 0x100007, toaplan1_spritesizeram16_r },
   304: 	{ 0x140000, 0x140fff, toaplan1_shared_r },
   305: 	{ 0x200002, 0x200003, toaplan1_tileram_offs_r },
   306: 	{ 0x200004, 0x200007, toaplan1_tileram16_r },
   307: 	{ 0x200010, 0x20001f, toaplan1_scroll_regs_r },
   308: 	{ 0x240000, 0x243fff, MRA16_RAM },
   309: 	{ 0x300000, 0x300001, input_port_0_word_r },
   310: 	{ 0x304000, 0x3047ff, toaplan1_colorram1_r },
   311: 	{ 0x306000, 0x3067ff, toaplan1_colorram2_r },
   312: MEMORY_END
   313: 
   314: static MEMORY_WRITE16_START( outzone_writemem )
   315: 	{ 0x000000, 0x03ffff, MWA16_ROM },
   316: 	{ 0x100002, 0x100003, toaplan1_spriteram_offs_w },
   317: 	{ 0x100004, 0x100005, toaplan1_spriteram16_w },
   318: 	{ 0x100006, 0x100007, toaplan1_spritesizeram16_w },
   319: 	{ 0x140000, 0x140fff, toaplan1_shared_w },
   320: 	{ 0x200000, 0x200001, toaplan1_bcu_flipscreen_w },
   321: 	{ 0x200002, 0x200003, toaplan1_tileram_offs_w },
   322: 	{ 0x200004, 0x200007, toaplan1_tileram16_w },
   323: 	{ 0x200010, 0x20001f, toaplan1_scroll_regs_w },
   324: 	{ 0x240000, 0x243fff, MWA16_RAM },
   325: /*	{ 0x300000, 0x300001, ?? video frame related ??  },	*/
   326: 	{ 0x300002, 0x300003, toaplan1_intenable_w },
   327: 	{ 0x300008, 0x30000f, toaplan1_bcu_control_w },
   328: 	{ 0x304000, 0x3047ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
   329: 	{ 0x306000, 0x3067ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   330: 	{ 0x340000, 0x340003, toaplan1_tile_offsets_w },
   331: 	{ 0x340006, 0x340007, toaplan1_fcu_flipscreen_w },
   332: MEMORY_END
   333: 
   334: static MEMORY_READ16_START( vimana_readmem )
   335: 	{ 0x000000, 0x03ffff, MRA16_ROM },
   336: 	{ 0x0c0000, 0x0c0001, toaplan1_frame_done_r },
   337: 	{ 0x0c0002, 0x0c0003, toaplan1_spriteram_offs_r },
   338: 	{ 0x0c0004, 0x0c0005, toaplan1_spriteram16_r },
   339: 	{ 0x0c0006, 0x0c0007, toaplan1_spritesizeram16_r },
   340: 	{ 0x400000, 0x400001, input_port_0_word_r },
   341: 	{ 0x404000, 0x4047ff, toaplan1_colorram1_r },
   342: 	{ 0x406000, 0x4067ff, toaplan1_colorram2_r },
   343: 	{ 0x440000, 0x440005, vimana_mcu_r },
   344: 	{ 0x440006, 0x440007, input_port_3_word_r },
   345: 	{ 0x440008, 0x440009, vimana_input_port_5_word_r },
   346: 	{ 0x44000a, 0x44000b, input_port_1_word_r },
   347: 	{ 0x44000c, 0x44000d, input_port_2_word_r },
   348: 	{ 0x44000e, 0x44000f, input_port_4_word_r },
   349: 	{ 0x440010, 0x440011, input_port_6_word_r },
   350: 	{ 0x480000, 0x487fff, MRA16_RAM },
   351: 	{ 0x4c0002, 0x4c0003, toaplan1_tileram_offs_r },
   352: 	{ 0x4c0004, 0x4c0007, toaplan1_tileram16_r },
   353: 	{ 0x4c0010, 0x4c001f, toaplan1_scroll_regs_r },
   354: MEMORY_END
   355: 
   356: static MEMORY_WRITE16_START( vimana_writemem )
   357: 	{ 0x000000, 0x03ffff, MWA16_ROM },
   358: 	{ 0x080000, 0x080003, toaplan1_tile_offsets_w },
   359: 	{ 0x080006, 0x080007, toaplan1_fcu_flipscreen_w },
   360: 	{ 0x0c0002, 0x0c0003, toaplan1_spriteram_offs_w },
   361: 	{ 0x0c0004, 0x0c0005, toaplan1_spriteram16_w },
   362: 	{ 0x0c0006, 0x0c0007, toaplan1_spritesizeram16_w },
   363: /*	{ 0x400000, 0x400001, ?? video frame related ??  },	*/
   364: 	{ 0x400002, 0x400003, toaplan1_intenable_w },
   365: 	{ 0x400008, 0x40000f, toaplan1_bcu_control_w },
   366: 	{ 0x404000, 0x4047ff, toaplan1_colorram1_w, &toaplan1_colorram1, &toaplan1_colorram1_size },
   367: 	{ 0x406000, 0x4067ff, toaplan1_colorram2_w, &toaplan1_colorram2, &toaplan1_colorram2_size },
   368: 	{ 0x440000, 0x440005, vimana_mcu_w },
   369: 	{ 0x480000, 0x487fff, MWA16_RAM },
   370: 	{ 0x4c0000, 0x4c0001, toaplan1_bcu_flipscreen_w },
   371: 	{ 0x4c0002, 0x4c0003, toaplan1_tileram_offs_w },
   372: 	{ 0x4c0004, 0x4c0007, toaplan1_tileram16_w },
   373: 	{ 0x4c0010, 0x4c001f, toaplan1_scroll_regs_w },
   374: MEMORY_END
   375: 
   376: 
   377: 
   378: /* Z80 memory/port maps */
   379: static MEMORY_READ_START( sound_readmem )
   380: 	{ 0x0000, 0x7fff, MRA_ROM },
   381: 	{ 0x8000, 0xffff, MRA_RAM },
   382: MEMORY_END
   383: 
   384: static MEMORY_WRITE_START( sound_writemem )
   385: 	{ 0x0000, 0x7fff, MWA_ROM },
   386: 	{ 0x8000, 0xffff, MWA_RAM, &toaplan1_sharedram },
   387: MEMORY_END
   388: 
   389: 
   390: static PORT_READ_START( truxton_sound_readport )
   391: 	{ 0x00, 0x00, input_port_1_r },	/* Player 1 */
   392: 	{ 0x10, 0x10, input_port_2_r },	/* Player 2 */
   393: 	{ 0x20, 0x20, input_port_5_r },	/* Coin/Start inputs */
   394: 	{ 0x40, 0x40, input_port_3_r },	/* DSW1 */
   395: 	{ 0x50, 0x50, input_port_4_r },	/* DSW2 */
   396: 	{ 0x60, 0x60, YM3812_status_port_0_r },
   397: 	{ 0x70, 0x70, input_port_6_r },	/* Territory Jumper Block for Truxton */
   398: PORT_END
   399: 
   400: static PORT_WRITE_START( truxton_sound_writeport )
   401: 	{ 0x30, 0x30, toaplan1_coin_w },	/* Coin counter/lockout */
   402: 	{ 0x60, 0x60, YM3812_control_port_0_w },
   403: 	{ 0x61, 0x61, YM3812_write_port_0_w },
   404: PORT_END
   405: 
   406: static PORT_WRITE_START( rallybik_sound_writeport )
   407: 	{ 0x30, 0x30, rallybik_coin_w },	/* Coin counter/lockout */
   408: 	{ 0x60, 0x60, YM3812_control_port_0_w },
   409: 	{ 0x61, 0x61, YM3812_write_port_0_w },
   410: PORT_END
   411: 
   412: static PORT_READ_START( hellfire_sound_readport )
   413: 	{ 0x00, 0x00, input_port_3_r },	/* DSW1 */
   414: 	{ 0x10, 0x10, input_port_4_r },	/* DSW2 */
   415: 	{ 0x20, 0x20, input_port_6_r },	/* Territory Jumper Block */
   416: 	{ 0x40, 0x40, input_port_1_r },	/* Player 1 */
   417: 	{ 0x50, 0x50, input_port_2_r },	/* Player 2 */
   418: 	{ 0x60, 0x60, input_port_5_r },	/* Coin/Start inputs */
   419: 	{ 0x70, 0x70, YM3812_status_port_0_r },
   420: PORT_END
   421: 
   422: static PORT_WRITE_START( hellfire_sound_writeport )
   423: 	{ 0x30, 0x30, toaplan1_coin_w },	/* Coin counter/lockout */
   424: 	{ 0x70, 0x70, YM3812_control_port_0_w },
   425: 	{ 0x71, 0x71, YM3812_write_port_0_w },
   426: PORT_END
   427: 
   428: static PORT_READ_START( zerowing_sound_readport )
   429: 	{ 0x00, 0x00, input_port_1_r },	/* Player 1 */
   430: 	{ 0x08, 0x08, input_port_2_r },	/* Player 2 */
   431: 	{ 0x20, 0x20, input_port_3_r },	/* DSW1 */
   432: 	{ 0x28, 0x28, input_port_4_r },	/* DSW2 */
   433: 	{ 0x80, 0x80, input_port_5_r },	/* Coin/Start inputs */
   434: 	{ 0x88, 0x88, input_port_6_r },	/* Territory Jumper Block */
   435: 	{ 0xa8, 0xa8, YM3812_status_port_0_r },
   436: PORT_END
   437: 
   438: static PORT_WRITE_START( zerowing_sound_writeport )
   439: 	{ 0xa0, 0xa0, toaplan1_coin_w },	/* Coin counter/lockout */
   440: 	{ 0xa8, 0xa8, YM3812_control_port_0_w },
   441: 	{ 0xa9, 0xa9, YM3812_write_port_0_w },
   442: PORT_END
   443: 
   444: static PORT_READ_START( demonwld_sound_readport )
   445: 	{ 0x00, 0x00, YM3812_status_port_0_r },
   446: 	{ 0x20, 0x20, input_port_6_r },
   447: 	{ 0x60, 0x60, input_port_5_r },
   448: 	{ 0x80, 0x80, input_port_1_r },
   449: 	{ 0xa0, 0xa0, input_port_4_r },
   450: 	{ 0xc0, 0xc0, input_port_2_r },
   451: 	{ 0xe0, 0xe0, input_port_3_r },
   452: PORT_END
   453: 
   454: static PORT_WRITE_START( demonwld_sound_writeport )
   455: 	{ 0x00, 0x00, YM3812_control_port_0_w },
   456: 	{ 0x01, 0x01, YM3812_write_port_0_w },
   457: 	{ 0x40, 0x40, toaplan1_coin_w },	/* Coin counter/lockout */
   458: PORT_END
   459: 
   460: static PORT_READ_START( outzone_sound_readport )
   461: 	{ 0x08, 0x08, input_port_3_r },
   462: 	{ 0x0c, 0x0c, input_port_4_r },
   463: 	{ 0x10, 0x10, input_port_5_r },
   464: 	{ 0x14, 0x14, input_port_1_r },
   465: 	{ 0x18, 0x18, input_port_2_r },
   466: 	{ 0x1c, 0x1c, input_port_6_r },
   467: 	{ 0x00, 0x00, YM3812_status_port_0_r },
   468: PORT_END
   469: 
   470: static PORT_WRITE_START( outzone_sound_writeport )
   471: 	{ 0x00, 0x00, YM3812_control_port_0_w },
   472: 	{ 0x01, 0x01, YM3812_write_port_0_w },
   473: 	{ 0x04, 0x04, toaplan1_coin_w },	/* Coin counter/lockout */
   474: PORT_END
   475: 
   476: 
   477: /* TMS32010 memory/port maps */
   478: static MEMORY_READ16_START( DSP_readmem )
   479: 	{ TMS32010_DATA_ADDR_RANGE(0x000, 0x08f), MRA16_RAM },	/* 90h words internal RAM */
   480: 	{ TMS32010_PGM_ADDR_RANGE(0x000, 0x7ff), MRA16_ROM },	/* 800h words. The real DSPs ROM is at */
   481: 									/* address 0 */
   482: 									/* View it at 8000h in the debugger */
   483: MEMORY_END
   484: 
   485: static MEMORY_WRITE16_START( DSP_writemem )
   486: 	{ TMS32010_DATA_ADDR_RANGE(0x000, 0x08f), MWA16_RAM },
   487: 	{ TMS32010_PGM_ADDR_RANGE(0x000, 0x7ff), MWA16_ROM },
   488: MEMORY_END
   489: 
   490: 
   491: static PORT_READ16_START( DSP_readport )
   492: 	{ TMS32010_PORT_RANGE(1, 1),  demonwld_dsp_r },
   493: 	{ TMS32010_PORT_RANGE(TMS32010_BIO, TMS32010_BIO), demonwld_BIO_r },
   494: PORT_END
   495: 
   496: static PORT_WRITE16_START( DSP_writeport )
   497: 	{ TMS32010_PORT_RANGE(0, 3), demonwld_dsp_w },
   498: PORT_END
   499: 
   500: 
   501: 
   502: /*****************************************************************************
   503: 	Input Port definitions
   504: *****************************************************************************/
   505: 
   506: #define  TOAPLAN1_PLAYER_INPUT( player, button3 )										\ 
   507: 	PORT_START																	\
   508: 	PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP    | IPF_8WAY | player )	\
   509: 	PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN  | IPF_8WAY | player )	\
   510: 	PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT  | IPF_8WAY | player )	\
   511: 	PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT | IPF_8WAY | player )	\
   512: 	PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 | player )						\
   513: 	PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON2 | player )						\
   514: 	PORT_BIT( 0x40, IP_ACTIVE_HIGH, button3 | player )									\
   515: 	PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
   516: 
   517: #define  TOAPLAN1_SYSTEM_INPUTS						\ 
   518: 	PORT_START										\
   519: 	PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SERVICE1 ) 	\
   520: 	PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_TILT )		\
   521: 	PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN )	\
   522: 	PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 )		\
   523: 	PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_COIN2 )		\
   524: 	PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )	\
   525: 	PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 )	\
   526: 	PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK )
   527: 
   528: #define  TOAPLAN1_VBLANK_INPUT						\ 
   529: 	PORT_START										\
   530: 	PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_VBLANK )	\
   531: 	PORT_BIT( 0xfffe, IP_ACTIVE_HIGH, IPT_UNKNOWN )
   532: 
   533: 
   534: INPUT_PORTS_START( rallybik )
   535: 	TOAPLAN1_VBLANK_INPUT
   536: 
   537: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
   538: 
   539: 	TOAPLAN1_PLAYER_INPUT( IPF_COCKTAIL, IPT_UNKNOWN )
   540: 
   541: 	PORT_START		/* DSW A */
   542: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
   543: 	PORT_DIPSETTING(    0x01, DEF_STR( Upright ) )
   544: 	PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
   545: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
   546: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   547: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   548: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
   549: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
   550: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
   551: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   552: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   553: 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) )
   554: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   555: 	PORT_DIPSETTING(    0x30, DEF_STR( 2C_3C ) )
   556: 	PORT_DIPSETTING(    0x10, DEF_STR( 1C_2C ) )
   557: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   558: 	PORT_DIPSETTING(    0x80, DEF_STR( 2C_1C ) )
   559: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   560: 	PORT_DIPSETTING(    0xc0, DEF_STR( 2C_3C ) )
   561: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_2C ) )
   562: 
   563: 	PORT_START		/* DSW B */
   564: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
   565: 	PORT_DIPSETTING(    0x01, "Easy" )
   566: 	PORT_DIPSETTING(    0x00, "Medium" )
   567: 	PORT_DIPSETTING(    0x02, "Hard" )
   568: 	PORT_DIPSETTING(    0x03, "Hardest" )
   569: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
   570: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   571: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
   572: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
   573: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   574: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
   575: 	PORT_DIPNAME( 0x30, 0x20, "Territory/Copyright" )
   576: 	PORT_DIPSETTING(    0x20, "World/Taito Corp Japan" )
   577: 	PORT_DIPSETTING(    0x10, "USA/Taito America" )
   578: 	PORT_DIPSETTING(    0x00, "Japan/Taito Corp" )
   579: 	PORT_DIPSETTING(    0x30, "USA/Taito America (Romstar)" )
   580: 	PORT_DIPNAME( 0x40, 0x00, "Dip Switch Display" )
   581: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   582: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
   583: 	PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
   584: 	PORT_DIPSETTING(    0x80, DEF_STR( No ) )
   585: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
   586: 
   587: 	TOAPLAN1_SYSTEM_INPUTS
   588: 
   589: INPUT_PORTS_END
   590: 
   591: INPUT_PORTS_START( truxton )
   592: 	TOAPLAN1_VBLANK_INPUT
   593: 
   594: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
   595: 
   596: 	TOAPLAN1_PLAYER_INPUT( IPF_COCKTAIL, IPT_UNKNOWN )
   597: 
   598: 	PORT_START		/* DSW A */
   599: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
   600: 	PORT_DIPSETTING(    0x01, DEF_STR( Upright ) )
   601: 	PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
   602: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
   603: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   604: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   605: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
   606: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
   607: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
   608: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   609: /* credits per coin options change, depending on the territory setting */
   610: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   611: 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) )
   612: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   613: 	PORT_DIPSETTING(    0x30, DEF_STR( 2C_3C ) )
   614: 	PORT_DIPSETTING(    0x10, DEF_STR( 1C_2C ) )
   615: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   616: 	PORT_DIPSETTING(    0x80, DEF_STR( 2C_1C ) )
   617: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   618: 	PORT_DIPSETTING(    0xc0, DEF_STR( 2C_3C ) )
   619: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_2C ) )
   620: /* The following are coin settings for Japan
   621: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   622: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
   623: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
   624: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
   625: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   626: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   627: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
   628: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
   629: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
   630: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
   631: */
   632: 
   633: 	PORT_START		/* DSW B */
   634: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
   635: 	PORT_DIPSETTING(    0x01, "Easy" )
   636: 	PORT_DIPSETTING(    0x00, "Medium" )
   637: 	PORT_DIPSETTING(    0x02, "Hard" )
   638: 	PORT_DIPSETTING(    0x03, "Hardest" )
   639: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
   640: 	PORT_DIPSETTING(    0x04, "50K, every 150K" )
   641: 	PORT_DIPSETTING(    0x00, "70K, every 200K" )
   642: 	PORT_DIPSETTING(    0x08, "100K only" )
   643: 	PORT_DIPSETTING(    0x0c, "None" )
   644: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
   645: 	PORT_DIPSETTING(    0x30, "2" )
   646: 	PORT_DIPSETTING(    0x00, "3" )
   647: 	PORT_DIPSETTING(    0x20, "4" )
   648: 	PORT_DIPSETTING(    0x10, "5" )
   649: 	PORT_DIPNAME( 0x40, 0x00, "Show Dip Switches" )
   650: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   651: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
   652: 	PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
   653: 	PORT_DIPSETTING(    0x80, DEF_STR( No ) )
   654: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
   655: 
   656: 	TOAPLAN1_SYSTEM_INPUTS
   657: 
   658: 	PORT_START		/* Territory Jumper Block */
   659: 	PORT_DIPNAME( 0x07, 0x02, "Territory/Copyright" )
   660: 	PORT_DIPSETTING(    0x02, "World/Taito Corp" )
   661: 	PORT_DIPSETTING(    0x06, "World/Taito America" )
   662: 	PORT_DIPSETTING(    0x04, "US/Taito America" )
   663: 	PORT_DIPSETTING(    0x01, "US/Romstar" )
   664: 	PORT_DIPSETTING(    0x00, "Japan/Taito Corp" )
   665: //	PORT_DIPSETTING(    0x05, "Same as 0x04" )
   666: //	PORT_DIPSETTING(    0x03, "Same as 0x02" )
   667: //	PORT_DIPSETTING(    0x07, "Same as 0x06" )
   668: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) )
   669: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   670: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
   671: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
   672: INPUT_PORTS_END
   673: 
   674: INPUT_PORTS_START( hellfire )
   675: 	TOAPLAN1_VBLANK_INPUT
   676: 
   677: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
   678: 
   679: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_UNKNOWN )
   680: 
   681: 	PORT_START		/* DSW A */
   682: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unused ) )
   683: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   684: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
   685: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
   686: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   687: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   688: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
   689: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
   690: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
   691: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   692: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   693: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
   694: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
   695: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
   696: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   697: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   698: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
   699: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
   700: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
   701: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
   702: 
   703: 	PORT_START		/* DSWB */
   704: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
   705: 	PORT_DIPSETTING(    0x01, "Easy" )
   706: 	PORT_DIPSETTING(    0x00, "Medium" )
   707: 	PORT_DIPSETTING(    0x02, "Hard" )
   708: 	PORT_DIPSETTING(    0x03, "Hardest" )
   709: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
   710: 	PORT_DIPSETTING(    0x00, "70K, every 200K" )
   711: 	PORT_DIPSETTING(    0x04, "100K, every 250K" )
   712: 	PORT_DIPSETTING(    0x08, "100K" )
   713: 	PORT_DIPSETTING(    0x0c, "200K" )
   714: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
   715: 	PORT_DIPSETTING(    0x30, "2" )
   716: 	PORT_DIPSETTING(    0x00, "3" )
   717: 	PORT_DIPSETTING(    0x20, "4" )
   718: 	PORT_DIPSETTING(    0x10, "5" )
   719: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
   720: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   721: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
   722: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
   723: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   724: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
   725: 
   726: 	TOAPLAN1_SYSTEM_INPUTS
   727: 
   728: 	PORT_START		/* Territory Jumper block */
   729: 	PORT_DIPNAME( 0x03, 0x02, "Territory" )
   730: 	PORT_DIPSETTING(    0x02, "Europe" )
   731: //	PORT_DIPSETTING(    0x03, "Europe" )
   732: 	PORT_DIPSETTING(    0x01, "US" )
   733: 	PORT_DIPSETTING(    0x00, "Japan" )
   734: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unused ) )
   735: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   736: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
   737: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) )
   738: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   739: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
   740: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
   741: INPUT_PORTS_END
   742: 
   743: INPUT_PORTS_START( hellfir1 )
   744: 	TOAPLAN1_VBLANK_INPUT
   745: 
   746: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
   747: 
   748: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_UNKNOWN )
   749: 
   750: 	PORT_START		/* DSW A */
   751: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
   752: 	PORT_DIPSETTING(    0x01, DEF_STR( Upright ) )
   753: 	PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
   754: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
   755: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   756: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   757: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
   758: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
   759: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
   760: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   761: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   762: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
   763: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
   764: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
   765: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   766: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   767: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
   768: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
   769: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
   770: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
   771: 
   772: 	PORT_START		/* DSWB */
   773: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
   774: 	PORT_DIPSETTING(    0x01, "Easy" )
   775: 	PORT_DIPSETTING(    0x00, "Medium" )
   776: 	PORT_DIPSETTING(    0x02, "Hard" )
   777: 	PORT_DIPSETTING(    0x03, "Hardest" )
   778: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
   779: 	PORT_DIPSETTING(    0x00, "70K, every 200K" )
   780: 	PORT_DIPSETTING(    0x04, "100K, every 250K" )
   781: 	PORT_DIPSETTING(    0x08, "100K" )
   782: 	PORT_DIPSETTING(    0x0c, "200K" )
   783: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
   784: 	PORT_DIPSETTING(    0x30, "2" )
   785: 	PORT_DIPSETTING(    0x00, "3" )
   786: 	PORT_DIPSETTING(    0x20, "4" )
   787: 	PORT_DIPSETTING(    0x10, "5" )
   788: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
   789: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   790: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
   791: 	PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
   792: 	PORT_DIPSETTING(    0x80, DEF_STR( No ) )
   793: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
   794: 
   795: 	TOAPLAN1_SYSTEM_INPUTS
   796: 
   797: 	PORT_START		/* Territory Jumper block */
   798: 	PORT_DIPNAME( 0x03, 0x02, "Territory" )
   799: 	PORT_DIPSETTING(    0x02, "Europe" )
   800: //	PORT_DIPSETTING(    0x03, "Europe" )
   801: 	PORT_DIPSETTING(    0x01, "US" )
   802: 	PORT_DIPSETTING(    0x00, "Japan" )
   803: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unused ) )
   804: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   805: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
   806: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) )
   807: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   808: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
   809: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
   810: INPUT_PORTS_END
   811: 
   812: INPUT_PORTS_START( zerowing )
   813: 	TOAPLAN1_VBLANK_INPUT
   814: 
   815: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
   816: 
   817: 	TOAPLAN1_PLAYER_INPUT( IPF_COCKTAIL, IPT_UNKNOWN )
   818: 
   819: 	PORT_START		/* DSW A */
   820: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
   821: 	PORT_DIPSETTING(    0x01, DEF_STR( Upright ) )
   822: 	PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
   823: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
   824: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   825: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   826: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
   827: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
   828: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
   829: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   830: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   831: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
   832: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
   833: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
   834: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   835: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   836: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
   837: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
   838: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
   839: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
   840: 
   841: 	PORT_START		/* DSW B */
   842: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
   843: 	PORT_DIPSETTING(    0x01, "Easy" )
   844: 	PORT_DIPSETTING(    0x00, "Medium" )
   845: 	PORT_DIPSETTING(    0x02, "Hard" )
   846: 	PORT_DIPSETTING(    0x03, "Hardest" )
   847: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
   848: 	PORT_DIPSETTING(    0x00, "200K, every 500K" )
   849: 	PORT_DIPSETTING(    0x04, "500K, every 1M" )
   850: 	PORT_DIPSETTING(    0x08, "500K" )
   851: 	PORT_DIPSETTING(    0x0c, "None" )
   852: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
   853: 	PORT_DIPSETTING(    0x30, "2" )
   854: 	PORT_DIPSETTING(    0x00, "3" )
   855: 	PORT_DIPSETTING(    0x20, "4" )
   856: 	PORT_DIPSETTING(    0x10, "5" )
   857: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
   858: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   859: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
   860: 	PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
   861: 	PORT_DIPSETTING(    0x80, DEF_STR( No ) )
   862: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
   863: 
   864: 	TOAPLAN1_SYSTEM_INPUTS
   865: 
   866: 	PORT_START		/* Territory Jumper block */
   867: 	PORT_DIPNAME( 0x03, 0x02, "Territory" )
   868: 	PORT_DIPSETTING(    0x02, "Europe" )
   869: //	PORT_DIPSETTING(    0x03, "Europe" )
   870: 	PORT_DIPSETTING(    0x01, "US" )
   871: 	PORT_DIPSETTING(    0x00, "Japan" )
   872: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unused ) )
   873: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   874: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
   875: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) )
   876: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   877: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
   878: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
   879: INPUT_PORTS_END
   880: 
   881: INPUT_PORTS_START( demonwld )
   882: 	TOAPLAN1_VBLANK_INPUT
   883: 
   884: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_BUTTON3 )
   885: 
   886: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_BUTTON3 )
   887: 
   888: 	PORT_START		/* DSW A */
   889: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unused ) )
   890: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   891: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
   892: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
   893: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   894: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   895: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
   896: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
   897: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
   898: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   899: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   900: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
   901: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
   902: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
   903: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   904: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   905: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
   906: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
   907: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
   908: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
   909: 
   910: 	PORT_START		/* DSW B */
   911: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
   912: 	PORT_DIPSETTING(    0x01, "Easy" )
   913: 	PORT_DIPSETTING(    0x00, "Medium" )
   914: 	PORT_DIPSETTING(    0x02, "Hard" )
   915: 	PORT_DIPSETTING(    0x03, "Hardest" )
   916: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
   917: 	PORT_DIPSETTING(    0x00, "30K, every 100K" )
   918: 	PORT_DIPSETTING(    0x04, "50K and 100K" )
   919: 	PORT_DIPSETTING(    0x08, "100K only" )
   920: 	PORT_DIPSETTING(    0x0c, "None" )
   921: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
   922: 	PORT_DIPSETTING(    0x30, "1" )
   923: 	PORT_DIPSETTING(    0x20, "2" )
   924: 	PORT_DIPSETTING(    0x00, "3" )
   925: 	PORT_DIPSETTING(    0x10, "5" )
   926: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
   927: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   928: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
   929: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
   930: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   931: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
   932: 
   933: 	TOAPLAN1_SYSTEM_INPUTS
   934: 
   935: 	PORT_START		/* Territory Jumper Block */
   936: 	PORT_DIPNAME( 0x01, 0x01, "Territory/Copyright" )
   937: 	PORT_DIPSETTING(    0x01, "Toaplan" )
   938: 	PORT_DIPSETTING(    0x00, "Japan/Taito Corp" )
   939: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
   940: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   941: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   942: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
   943: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   944: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
   945: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
   946: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   947: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
   948: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
   949: INPUT_PORTS_END
   950: 
   951: INPUT_PORTS_START( demonwl1 )
   952: 	TOAPLAN1_VBLANK_INPUT
   953: 
   954: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_BUTTON3 )
   955: 
   956: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_BUTTON3 )
   957: 
   958: 	PORT_START		/* DSW A */
   959: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unused ) )
   960: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   961: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
   962: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
   963: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   964: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
   965: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
   966: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
   967: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
   968: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
   969: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
   970: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
   971: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
   972: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
   973: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
   974: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
   975: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
   976: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
   977: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
   978: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
   979: 
   980: 	PORT_START		/* DSW B */
   981: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
   982: 	PORT_DIPSETTING(    0x01, "Easy" )
   983: 	PORT_DIPSETTING(    0x00, "Medium" )
   984: 	PORT_DIPSETTING(    0x02, "Hard" )
   985: 	PORT_DIPSETTING(    0x03, "Hardest" )
   986: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
   987: 	PORT_DIPSETTING(    0x00, "30K, every 100K" )
   988: 	PORT_DIPSETTING(    0x04, "50K and 100K" )
   989: 	PORT_DIPSETTING(    0x08, "100K only" )
   990: 	PORT_DIPSETTING(    0x0c, "None" )
   991: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
   992: 	PORT_DIPSETTING(    0x30, "1" )
   993: 	PORT_DIPSETTING(    0x20, "2" )
   994: 	PORT_DIPSETTING(    0x00, "3" )
   995: 	PORT_DIPSETTING(    0x10, "5" )
   996: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
   997: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
   998: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
   999: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
  1000: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1001: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
  1002: 
  1003: 	TOAPLAN1_SYSTEM_INPUTS
  1004: 
  1005: 	PORT_START		/* Territory Jumper Block */
  1006: 	PORT_DIPNAME( 0x03, 0x02, "Territory/Copyright" )
  1007: 	PORT_DIPSETTING(    0x02, "World/Taito Japan" )
  1008: 	PORT_DIPSETTING(    0x03, "US/Toaplan" )
  1009: 	PORT_DIPSETTING(    0x01, "US/Taito America" )
  1010: 	PORT_DIPSETTING(    0x00, "Japan/Taito Corp" )
  1011: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
  1012: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1013: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
  1014: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
  1015: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1016: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
  1017: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1018: INPUT_PORTS_END
  1019: 
  1020: INPUT_PORTS_START( samesame )
  1021: 	TOAPLAN1_VBLANK_INPUT
  1022: 
  1023: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
  1024: 
  1025: 	TOAPLAN1_PLAYER_INPUT( IPF_COCKTAIL, IPT_UNKNOWN )
  1026: 
  1027: 	PORT_START		/* DSW A */
  1028: 	PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
  1029: 	PORT_DIPSETTING(    0x01, DEF_STR( Upright ) )
  1030: 	PORT_DIPSETTING(    0x00, DEF_STR( Cocktail ) )
  1031: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
  1032: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1033: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1034: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
  1035: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1036: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1037: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1038: 	PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
  1039: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1040: 	PORT_DIPSETTING(    0x10, DEF_STR( On ) )
  1041: 	PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
  1042: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1043: 	PORT_DIPSETTING(    0x20, DEF_STR( On ) )
  1044: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
  1045: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1046: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1047: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
  1048: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1049: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
  1050: /* settings listed in service mode, but not actually used ???
  1051: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
  1052: 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) )
  1053: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1054: 	PORT_DIPSETTING(    0x30, DEF_STR( 2C_3C ) )
  1055: 	PORT_DIPSETTING(    0x10, DEF_STR( 1C_2C ) )
  1056: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
  1057: 	PORT_DIPSETTING(    0x80, DEF_STR( 2C_1C ) )
  1058: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1059: 	PORT_DIPSETTING(    0xc0, DEF_STR( 2C_3C ) )
  1060: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_2C ) )
  1061: */
  1062: 
  1063: 	PORT_START		/* DSW B */
  1064: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
  1065: 	PORT_DIPSETTING(    0x01, "Easy" )
  1066: 	PORT_DIPSETTING(    0x00, "Medium" )
  1067: 	PORT_DIPSETTING(    0x02, "Hard" )
  1068: 	PORT_DIPSETTING(    0x03, "Hardest" )
  1069: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
  1070: 	PORT_DIPSETTING(    0x04, "50K, every 150K" )
  1071: 	PORT_DIPSETTING(    0x00, "70K, every 200K" )
  1072: 	PORT_DIPSETTING(    0x08, "100K" )
  1073: 	PORT_DIPSETTING(    0x0c, "None" )
  1074: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
  1075: 	PORT_DIPSETTING(    0x30, "2" )
  1076: 	PORT_DIPSETTING(    0x00, "3" )
  1077: 	PORT_DIPSETTING(    0x20, "4" )
  1078: 	PORT_DIPSETTING(    0x10, "5" )
  1079: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1080: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1081: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1082: 	PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
  1083: 	PORT_DIPSETTING(    0x80, DEF_STR( No ) )
  1084: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
  1085: 
  1086: 	TOAPLAN1_SYSTEM_INPUTS
  1087: 
  1088: 	PORT_START		/* Territory Jumper Block */
  1089: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
  1090: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1091: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
  1092: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unknown ) )
  1093: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1094: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1095: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
  1096: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1097: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
  1098: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
  1099: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1100: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
  1101: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1102: INPUT_PORTS_END
  1103: 
  1104: INPUT_PORTS_START( samesam2 )
  1105: 	TOAPLAN1_VBLANK_INPUT
  1106: 
  1107: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
  1108: 
  1109: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_UNKNOWN )
  1110: 
  1111: 	PORT_START		/* DSW A */
  1112: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
  1113: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1114: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
  1115: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
  1116: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1117: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1118: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
  1119: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1120: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1121: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1122: 	PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) )
  1123: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1124: 	PORT_DIPSETTING(    0x10, DEF_STR( On ) )
  1125: 	PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) )
  1126: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1127: 	PORT_DIPSETTING(    0x20, DEF_STR( On ) )
  1128: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) )
  1129: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1130: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1131: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
  1132: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1133: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
  1134: /* settings listed in service mode, but not actually used ???
  1135: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
  1136: 	PORT_DIPSETTING(    0x20, DEF_STR( 2C_1C ) )
  1137: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1138: 	PORT_DIPSETTING(    0x30, DEF_STR( 2C_3C ) )
  1139: 	PORT_DIPSETTING(    0x10, DEF_STR( 1C_2C ) )
  1140: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
  1141: 	PORT_DIPSETTING(    0x80, DEF_STR( 2C_1C ) )
  1142: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1143: 	PORT_DIPSETTING(    0xc0, DEF_STR( 2C_3C ) )
  1144: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_2C ) )
  1145: */
  1146: 
  1147: 	PORT_START		/* DSW B */
  1148: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
  1149: 	PORT_DIPSETTING(    0x01, "Easy" )
  1150: 	PORT_DIPSETTING(    0x00, "Medium" )
  1151: 	PORT_DIPSETTING(    0x02, "Hard" )
  1152: 	PORT_DIPSETTING(    0x03, "Hardest" )
  1153: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
  1154: 	PORT_DIPSETTING(    0x04, "50K, every 150K" )
  1155: 	PORT_DIPSETTING(    0x00, "70K, every 200K" )
  1156: 	PORT_DIPSETTING(    0x08, "100K" )
  1157: 	PORT_DIPSETTING(    0x0c, "None" )
  1158: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
  1159: 	PORT_DIPSETTING(    0x30, "2" )
  1160: 	PORT_DIPSETTING(    0x00, "3" )
  1161: 	PORT_DIPSETTING(    0x20, "4" )
  1162: 	PORT_DIPSETTING(    0x10, "5" )
  1163: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1164: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1165: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1166: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
  1167: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1168: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
  1169: 
  1170: 	TOAPLAN1_SYSTEM_INPUTS
  1171: 
  1172: 	PORT_START		/* Territory Jumper Block */
  1173: /* settings listed in service mode, but not actually used
  1174: 	PORT_DIPNAME( 0x03, 0x00, "Territory" )
  1175: //	PORT_DIPSETTING(    0x01, "Europe" )
  1176: //	PORT_DIPSETTING(    0x02, "Europe" )
  1177: 	PORT_DIPSETTING(    0x03, "Europe" )
  1178: 	PORT_DIPSETTING(    0x00, "USA" )
  1179: */
  1180: 	PORT_DIPNAME( 0x01, 0x00, "Show Territory Notice" )
  1181: 	PORT_DIPSETTING(    0x01, DEF_STR( No ) )
  1182: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
  1183: //	PORT_DIPNAME( 0x02, 0x00, "Show Territory Notice" )	/* Same as Bit 1 */
  1184: //	PORT_DIPSETTING(    0x02, DEF_STR( No ) )
  1185: //	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
  1186: 	PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unknown ) )
  1187: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1188: 	PORT_DIPSETTING(    0x04, DEF_STR( On ) )
  1189: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
  1190: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1191: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
  1192: 	PORT_BIT( 0xf2, IP_ACTIVE_HIGH, IPT_UNKNOWN )	/* Mask bit 2 aswell */
  1193: INPUT_PORTS_END
  1194: 
  1195: INPUT_PORTS_START( fireshrk )
  1196: 	TOAPLAN1_VBLANK_INPUT
  1197: 
  1198: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_UNKNOWN )
  1199: 
  1200: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_UNKNOWN )
  1201: 
  1202: 	PORT_START		/* DSW A */
  1203: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unused ) )
  1204: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1205: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
  1206: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
  1207: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1208: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1209: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
  1210: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1211: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1212: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1213: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
  1214: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
  1215: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
  1216: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
  1217: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1218: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
  1219: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
  1220: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
  1221: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
  1222: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
  1223: 
  1224: 	PORT_START		/* DSW B */
  1225: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
  1226: 	PORT_DIPSETTING(    0x01, "Easy" )
  1227: 	PORT_DIPSETTING(    0x00, "Medium" )
  1228: 	PORT_DIPSETTING(    0x02, "Hard" )
  1229: 	PORT_DIPSETTING(    0x03, "Hardest" )
  1230: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
  1231: 	PORT_DIPSETTING(    0x04, "50K, every 150K" )
  1232: 	PORT_DIPSETTING(    0x00, "70K, every 200K" )
  1233: 	PORT_DIPSETTING(    0x08, "100K" )
  1234: 	PORT_DIPSETTING(    0x0c, "None" )
  1235: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
  1236: 	PORT_DIPSETTING(    0x30, "2" )
  1237: 	PORT_DIPSETTING(    0x00, "3" )
  1238: 	PORT_DIPSETTING(    0x20, "4" )
  1239: 	PORT_DIPSETTING(    0x10, "5" )
  1240: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1241: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1242: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1243: 	PORT_DIPNAME( 0x80,	0x00, DEF_STR( Unused ) )
  1244: 	PORT_DIPSETTING(	0x00, DEF_STR( Off ) )
  1245: 	PORT_DIPSETTING(	0x80, DEF_STR( On ) )
  1246: 
  1247: 	TOAPLAN1_SYSTEM_INPUTS
  1248: 
  1249: 	PORT_START		/* Territory Jumper Block */
  1250: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
  1251: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1252: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
  1253: 	PORT_DIPNAME( 0x06, 0x02, "Territory" )
  1254: 	PORT_DIPSETTING(    0x02, "Europe" )
  1255: 	PORT_DIPSETTING(    0x04, "USA" )
  1256: 	PORT_DIPSETTING(    0x00, "USA (Romstar)" )
  1257: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
  1258: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1259: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
  1260: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1261: INPUT_PORTS_END
  1262: 
  1263: INPUT_PORTS_START( outzone )
  1264: 	TOAPLAN1_VBLANK_INPUT
  1265: 
  1266: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_BUTTON3 )
  1267: 
  1268: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_BUTTON3 )
  1269: 
  1270: 	PORT_START		/* DSW A */
  1271: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unused ) )
  1272: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1273: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
  1274: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
  1275: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1276: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1277: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
  1278: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1279: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1280: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1281: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
  1282: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
  1283: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
  1284: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
  1285: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1286: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
  1287: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
  1288: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
  1289: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
  1290: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
  1291: 
  1292: 	PORT_START		/* DSW B */
  1293: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
  1294: 	PORT_DIPSETTING(    0x01, "Easy" )
  1295: 	PORT_DIPSETTING(    0x00, "Medium" )
  1296: 	PORT_DIPSETTING(    0x02, "Hard" )
  1297: 	PORT_DIPSETTING(    0x03, "Hardest" )
  1298: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
  1299: 	PORT_DIPSETTING(    0x00, "Every 300K" )
  1300: 	PORT_DIPSETTING(    0x04, "200K and 500K" )
  1301: 	PORT_DIPSETTING(    0x08, "300K only" )
  1302: 	PORT_DIPSETTING(    0x0c, "None" )
  1303: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
  1304: 	PORT_DIPSETTING(    0x30, "1" )
  1305: 	PORT_DIPSETTING(    0x20, "2" )
  1306: 	PORT_DIPSETTING(    0x00, "3" )
  1307: 	PORT_DIPSETTING(    0x10, "5" )
  1308: 	PORT_BITX( 0x40,    0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", 0 ,0 )
  1309: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1310: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1311: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
  1312: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1313: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
  1314: 
  1315: 	TOAPLAN1_SYSTEM_INPUTS
  1316: 
  1317: 	PORT_START		/* Territory Jumper Block */
  1318: 	PORT_DIPNAME( 0x07, 0x02, "Territory" )
  1319: 	PORT_DIPSETTING(    0x02, "Europe" )
  1320: 	PORT_DIPSETTING(    0x01, "US" )
  1321: 	PORT_DIPSETTING(    0x00, "Japan" )
  1322: 	PORT_DIPSETTING(    0x03, "Hong Kong" )
  1323: 	PORT_DIPSETTING(    0x04, "Korea" )
  1324: 	PORT_DIPSETTING(    0x05, "Taiwan" )
  1325: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
  1326: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1327: 	PORT_DIPSETTING(    0x08, DEF_STR( On ) )
  1328: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1329: INPUT_PORTS_END
  1330: 
  1331: INPUT_PORTS_START( vimana )
  1332: 	TOAPLAN1_VBLANK_INPUT
  1333: 
  1334: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_BUTTON3 )
  1335: 
  1336: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_BUTTON3 )
  1337: 
  1338: 	PORT_START		/* DSW A */
  1339: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unused ) )
  1340: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1341: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
  1342: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
  1343: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1344: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1345: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
  1346: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1347: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1348: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1349: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
  1350: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
  1351: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
  1352: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
  1353: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1354: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
  1355: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
  1356: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
  1357: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
  1358: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
  1359: 
  1360: 	PORT_START		/* DSW B */
  1361: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
  1362: 	PORT_DIPSETTING(    0x01, "Easy" )
  1363: 	PORT_DIPSETTING(    0x00, "Medium" )
  1364: 	PORT_DIPSETTING(    0x02, "Hard" )
  1365: 	PORT_DIPSETTING(    0x03, "Hardest" )
  1366: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
  1367: 	PORT_DIPSETTING(    0x00, "70K and 200K" )
  1368: 	PORT_DIPSETTING(    0x04, "100K and 250K" )
  1369: 	PORT_DIPSETTING(    0x08, "100K" )
  1370: 	PORT_DIPSETTING(    0x0c, "200K" )
  1371: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
  1372: 	PORT_DIPSETTING(    0x30, "2" )
  1373: 	PORT_DIPSETTING(    0x00, "3" )
  1374: 	PORT_DIPSETTING(    0x20, "4" )
  1375: 	PORT_DIPSETTING(    0x10, "5" )
  1376: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1377: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1378: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1379: 	PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
  1380: 	PORT_DIPSETTING(    0x80, DEF_STR( No ) )
  1381: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
  1382: 
  1383: 	TOAPLAN1_SYSTEM_INPUTS
  1384: 
  1385: 	PORT_START		/* Territory Jumper Block */
  1386: 	PORT_DIPNAME( 0x0f, 0x02, "Territory" )
  1387: 	PORT_DIPSETTING(    0x02, "Europe" )
  1388: 	PORT_DIPSETTING(    0x01, "US" )
  1389: 	PORT_DIPSETTING(    0x00, "Japan" )
  1390: 	PORT_DIPSETTING(    0x03, "Hong Kong" )
  1391: 	PORT_DIPSETTING(    0x04, "Korea" )
  1392: 	PORT_DIPSETTING(    0x05, "Taiwan" )
  1393: //	PORT_DIPSETTING(    0x06, "Taiwan" )
  1394: //	PORT_DIPSETTING(    0x07, "US" )
  1395: //	PORT_DIPSETTING(    0x08, "Hong Kong" )
  1396: //	PORT_DIPSETTING(    0x09, DEF_STR( Unused ) )
  1397: //	PORT_DIPSETTING(    0x0a, DEF_STR( Unused ) )
  1398: //	PORT_DIPSETTING(    0x0b, DEF_STR( Unused ) )
  1399: //	PORT_DIPSETTING(    0x0c, DEF_STR( Unused ) )
  1400: //	PORT_DIPSETTING(    0x0d, DEF_STR( Unused ) )
  1401: //	PORT_DIPSETTING(    0x0e, DEF_STR( Unused ) )
  1402: //	PORT_DIPSETTING(    0x0f, "Japan" )
  1403: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1404: INPUT_PORTS_END
  1405: 
  1406: INPUT_PORTS_START( vimanan )
  1407: 	TOAPLAN1_VBLANK_INPUT
  1408: 
  1409: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER1, IPT_BUTTON3 )
  1410: 
  1411: 	TOAPLAN1_PLAYER_INPUT( IPF_PLAYER2, IPT_BUTTON3 )
  1412: 
  1413: 	PORT_START		/* DSW A */
  1414: 	PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unused ) )
  1415: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1416: 	PORT_DIPSETTING(    0x01, DEF_STR( On ) )
  1417: 	PORT_DIPNAME( 0x02, 0x00, DEF_STR( Flip_Screen ) )
  1418: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1419: 	PORT_DIPSETTING(    0x02, DEF_STR( On ) )
  1420: 	PORT_SERVICE( 0x04, IP_ACTIVE_HIGH )
  1421: 	PORT_DIPNAME( 0x08, 0x00, DEF_STR( Demo_Sounds ) )
  1422: 	PORT_DIPSETTING(    0x08, DEF_STR( Off ) )
  1423: 	PORT_DIPSETTING(    0x00, DEF_STR( On ) )
  1424: 	PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) )
  1425: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1426: 	PORT_DIPSETTING(    0x10, DEF_STR( On ) )
  1427: 	PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unused ) )
  1428: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1429: 	PORT_DIPSETTING(    0x20, DEF_STR( On ) )
  1430: 	PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unused ) )
  1431: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1432: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1433: 	PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
  1434: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1435: 	PORT_DIPSETTING(    0x80, DEF_STR( On ) )
  1436: /* settings for other territories (non Nova license)
  1437: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coin_A ) )
  1438: 	PORT_DIPSETTING(    0x30, DEF_STR( 4C_1C ) )
  1439: 	PORT_DIPSETTING(    0x20, DEF_STR( 3C_1C ) )
  1440: 	PORT_DIPSETTING(    0x10, DEF_STR( 2C_1C ) )
  1441: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_1C ) )
  1442: 	PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coin_B ) )
  1443: 	PORT_DIPSETTING(    0x00, DEF_STR( 1C_2C ) )
  1444: 	PORT_DIPSETTING(    0x40, DEF_STR( 1C_3C ) )
  1445: 	PORT_DIPSETTING(    0x80, DEF_STR( 1C_4C ) )
  1446: 	PORT_DIPSETTING(    0xc0, DEF_STR( 1C_6C ) )
  1447: */
  1448: 
  1449: 	PORT_START		/* DSW B */
  1450: 	PORT_DIPNAME( 0x03, 0x00, DEF_STR( Difficulty ) )
  1451: 	PORT_DIPSETTING(    0x01, "Easy" )
  1452: 	PORT_DIPSETTING(    0x00, "Medium" )
  1453: 	PORT_DIPSETTING(    0x02, "Hard" )
  1454: 	PORT_DIPSETTING(    0x03, "Hardest" )
  1455: 	PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
  1456: 	PORT_DIPSETTING(    0x00, "70K and 200K" )
  1457: 	PORT_DIPSETTING(    0x04, "100K and 250K" )
  1458: 	PORT_DIPSETTING(    0x08, "100K" )
  1459: 	PORT_DIPSETTING(    0x0c, "200K" )
  1460: 	PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
  1461: 	PORT_DIPSETTING(    0x30, "2" )
  1462: 	PORT_DIPSETTING(    0x00, "3" )
  1463: 	PORT_DIPSETTING(    0x20, "4" )
  1464: 	PORT_DIPSETTING(    0x10, "5" )
  1465: 	PORT_BITX(    0x40, 0x00, IPT_DIPSWITCH_NAME | IPF_CHEAT, "Invulnerability", IP_KEY_NONE, IP_JOY_NONE )
  1466: 	PORT_DIPSETTING(    0x00, DEF_STR( Off ) )
  1467: 	PORT_DIPSETTING(    0x40, DEF_STR( On ) )
  1468: 	PORT_DIPNAME( 0x80, 0x00, "Allow Continue" )
  1469: 	PORT_DIPSETTING(    0x80, DEF_STR( No ) )
  1470: 	PORT_DIPSETTING(    0x00, DEF_STR( Yes ) )
  1471: 
  1472: 	TOAPLAN1_SYSTEM_INPUTS
  1473: 
  1474: 	PORT_START		/* Territory Jumper Block */
  1475: 	PORT_DIPNAME( 0x0f, 0x02, "Territory" )
  1476: 	PORT_DIPSETTING(    0x02, "Europe" )
  1477: 	PORT_DIPSETTING(    0x01, "US" )
  1478: 	PORT_DIPSETTING(    0x00, "Japan" )
  1479: 	PORT_DIPSETTING(    0x03, "Hong Kong" )
  1480: 	PORT_DIPSETTING(    0x04, "Korea" )
  1481: 	PORT_DIPSETTING(    0x05, "Taiwan" )
  1482: //	PORT_DIPSETTING(    0x06, "Taiwan" )
  1483: //	PORT_DIPSETTING(    0x07, "US" )
  1484: //	PORT_DIPSETTING(    0x08, "Hong Kong" )
  1485: //	PORT_DIPSETTING(    0x09, DEF_STR( Unused ) )
  1486: //	PORT_DIPSETTING(    0x0a, DEF_STR( Unused ) )
  1487: //	PORT_DIPSETTING(    0x0b, DEF_STR( Unused ) )
  1488: //	PORT_DIPSETTING(    0x0c, DEF_STR( Unused ) )
  1489: //	PORT_DIPSETTING(    0x0d, DEF_STR( Unused ) )
  1490: //	PORT_DIPSETTING(    0x0e, DEF_STR( Unused ) )
  1491: //	PORT_DIPSETTING(    0x0f, "Japan" )
  1492: 	PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
  1493: INPUT_PORTS_END
  1494: 
  1495: 
  1496: static struct GfxLayout tilelayout =
  1497: {
  1498: 	8,8,	/* 8x8 */
  1499: 	16384,	/* 16384 tiles */
  1500: 	4,		/* 4 bits per pixel */
  1501: 	{ 3*8*0x20000, 2*8*0x20000, 1*8*0x20000, 0*8*0x20000 },
  1502: 	{ 0, 1, 2, 3, 4, 5, 6, 7 },
  1503: 	{ 0, 0x08, 0x10, 0x18, 0x20, 0x28, 0x30, 0x38 },
  1504: 	64
  1505: };
  1506: 
  1507: static struct GfxLayout rallybik_spr_layout =
  1508: {
  1509: 	16,16,	/* 16*16 sprites */
  1510: 	2048,	/* 2048 sprites */
  1511: 	4,		/* 4 bits per pixel */
  1512: 	{ 0*2048*32*8, 1*2048*32*8, 2*2048*32*8, 3*2048*32*8 },
  1513: 	{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 },
  1514: 	{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
  1515: 			8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
  1516: 	32*8	/* every sprite takes 32 consecutive bytes */
  1517: };
  1518: 
  1519: static struct GfxLayout vm_tilelayout =
  1520: {
  1521: 	8,8,	/* 8x8 */
  1522: 	32768,	/* 32768 tiles */
  1523: 	4,		/* 4 bits per pixel */
  1524: 	{ 8*0x80000+8, 8*0x80000, 8, 0 },
  1525: 	{ 0, 1, 2, 3, 4, 5, 6, 7 },
  1526: 	{ 0, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70 },
  1527: 	128
  1528: };
  1529: 
  1530: 
  1531: static struct GfxDecodeInfo gfxdecodeinfo[] =
  1532: {
  1533: 	{ REGION_GFX1, 0x00000, &tilelayout,		0, 64 },
  1534: 	{ REGION_GFX2, 0x00000, &tilelayout,	64*16, 64 },
  1535: 	{ -1 } /* end of array */
  1536: };
  1537: 
  1538: static struct GfxDecodeInfo rallybik_gfxdecodeinfo[] =
  1539: {
  1540: 	{ REGION_GFX1, 0x00000, &tilelayout,			  0, 64 },
  1541: 	{ REGION_GFX2, 0x00000, &rallybik_spr_layout, 64*16, 64 },
  1542: 	{ -1 } /* end of array */
  1543: };
  1544: 
  1545: static struct GfxDecodeInfo outzone_gfxdecodeinfo[] =
  1546: {
  1547: 	{ REGION_GFX1, 0x00000, &vm_tilelayout, 	0, 64 },
  1548: 	{ REGION_GFX2, 0x00000, &tilelayout,	64*16, 64 },
  1549: 	{ -1 } /* end of array */
  1550: };
  1551: 
  1552: static struct GfxDecodeInfo vm_gfxdecodeinfo[] =
  1553: {
  1554: 	{ REGION_GFX1, 0x00000, &tilelayout,		0, 64 },
  1555: 	{ REGION_GFX2, 0x00000, &vm_tilelayout, 64*16, 64 },
  1556: 	{ -1 } /* end of array */
  1557: };
  1558: 
  1559: 
  1560: static void irqhandler(int linestate)
  1561: {
  1562: 	cpu_set_irq_line(1,0,linestate);
  1563: }
  1564: 
  1565: static struct YM3812interface ym3812_interface =
  1566: {
  1567: 	1,
  1568: 	28000000/8,		/* 3.5MHz (28MHz Oscillator) */
  1569: 	{ 100 },
  1570: 	{ irqhandler },
  1571: };
  1572: 
  1573: 
  1574: 
  1575: static MACHINE_DRIVER_START( rallybik )
  1576: 
  1577: 	/* basic machine hardware */
  1578: 	MDRV_CPU_ADD(M68000, 10000000)
  1579: 	MDRV_CPU_MEMORY(rallybik_readmem,rallybik_writemem)
  1580: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1581: 
  1582: 	MDRV_CPU_ADD(Z80,28000000/8)		/* 3.5MHz (28MHz Oscillator) */
  1583: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  1584: 	MDRV_CPU_PORTS(truxton_sound_readport,rallybik_sound_writeport)
  1585: 
  1586: 	MDRV_FRAMES_PER_SECOND(60)
  1587: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1588: 	MDRV_INTERLEAVE(10)
  1589: 
  1590: 	MDRV_MACHINE_INIT(toaplan1)
  1591: 
  1592: 	/* video hardware */
  1593: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK | VIDEO_BUFFERS_SPRITERAM)
  1594: 	MDRV_SCREEN_SIZE(320, 240)
  1595: 	MDRV_VISIBLE_AREA(0, 319, 0, 239)
  1596: 	MDRV_GFXDECODE(rallybik_gfxdecodeinfo)
  1597: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1598: 
  1599: 	MDRV_VIDEO_START(rallybik)
  1600: 	MDRV_VIDEO_EOF(rallybik)
  1601: 	MDRV_VIDEO_UPDATE(rallybik)
  1602: 
  1603: 	/* sound hardware */
  1604: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1605: MACHINE_DRIVER_END
  1606: 
  1607: 
  1608: static MACHINE_DRIVER_START( truxton )
  1609: 
  1610: 	/* basic machine hardware */
  1611: 	MDRV_CPU_ADD(M68000, 10000000)
  1612: 	MDRV_CPU_MEMORY(truxton_readmem,truxton_writemem)
  1613: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1614: 
  1615: 	MDRV_CPU_ADD(Z80,28000000/8)		/* 3.5MHz (28MHz Oscillator) */
  1616: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  1617: 	MDRV_CPU_PORTS(truxton_sound_readport,truxton_sound_writeport)
  1618: 
  1619: 	MDRV_FRAMES_PER_SECOND( (28000000.0 / 4) / (450 * 270) )
  1620: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1621: 	MDRV_INTERLEAVE(10)
  1622: 
  1623: 
  1624: 	MDRV_MACHINE_INIT(toaplan1)
  1625: 
  1626: 	/* video hardware */
  1627: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
  1628: 	MDRV_SCREEN_SIZE(320, 240)
  1629: 	MDRV_VISIBLE_AREA(0, 319, 0, 239)
  1630: 	MDRV_GFXDECODE(gfxdecodeinfo)
  1631: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1632: 
  1633: 	MDRV_VIDEO_START(toaplan1)
  1634: 	MDRV_VIDEO_EOF(toaplan1)
  1635: 	MDRV_VIDEO_UPDATE(toaplan1)
  1636: 
  1637: 	/* sound hardware */
  1638: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1639: MACHINE_DRIVER_END
  1640: 
  1641: 
  1642: static MACHINE_DRIVER_START( hellfire )
  1643: 
  1644: 	/* basic machine hardware */
  1645: 	MDRV_CPU_ADD(M68000, 10000000)
  1646: 	MDRV_CPU_MEMORY(hellfire_readmem,hellfire_writemem)
  1647: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1648: 
  1649: 	MDRV_CPU_ADD(Z80,28000000/8)		/* 3.5MHz (28MHz Oscillator) */
  1650: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  1651: 	MDRV_CPU_PORTS(hellfire_sound_readport,hellfire_sound_writeport)
  1652: 
  1653: 	MDRV_FRAMES_PER_SECOND(60)
  1654: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1655: 	MDRV_INTERLEAVE(10)
  1656: 
  1657: 	MDRV_MACHINE_INIT(toaplan1)
  1658: 
  1659: 	/* video hardware */
  1660: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
  1661: 	MDRV_SCREEN_SIZE(320, 256)
  1662: 	MDRV_VISIBLE_AREA(0, 319, 16, 255)
  1663: 	MDRV_GFXDECODE(gfxdecodeinfo)
  1664: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1665: 
  1666: 	MDRV_VIDEO_START(toaplan1)
  1667: 	MDRV_VIDEO_EOF(toaplan1)
  1668: 	MDRV_VIDEO_UPDATE(toaplan1)
  1669: 
  1670: 	/* sound hardware */
  1671: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1672: MACHINE_DRIVER_END
  1673: 
  1674: 
  1675: static MACHINE_DRIVER_START( zerowing )
  1676: 
  1677: 	/* basic machine hardware */
  1678: 	MDRV_CPU_ADD(M68000, 10000000)
  1679: 	MDRV_CPU_MEMORY(zerowing_readmem,zerowing_writemem)
  1680: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1681: 
  1682: 	MDRV_CPU_ADD(Z80,28000000/8)		/* 3.5MHz (28MHz Oscillator) */
  1683: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  1684: 	MDRV_CPU_PORTS(zerowing_sound_readport,zerowing_sound_writeport)
  1685: 
  1686: 	MDRV_FRAMES_PER_SECOND(60)
  1687: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1688: 	MDRV_INTERLEAVE(10)
  1689: 
  1690: 	MDRV_MACHINE_INIT(zerozone)
  1691: 
  1692: 	/* video hardware */
  1693: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
  1694: 	MDRV_SCREEN_SIZE(320, 256)
  1695: 	MDRV_VISIBLE_AREA(0, 319, 16, 255)
  1696: 	MDRV_GFXDECODE(gfxdecodeinfo)
  1697: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1698: 
  1699: 	MDRV_VIDEO_START(toaplan1)
  1700: 	MDRV_VIDEO_EOF(toaplan1)
  1701: 	MDRV_VIDEO_UPDATE(zerowing)
  1702: 
  1703: 	/* sound hardware */
  1704: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1705: MACHINE_DRIVER_END
  1706: 
  1707: 
  1708: static MACHINE_DRIVER_START( demonwld )
  1709: 
  1710: 	/* basic machine hardware */
  1711: 	MDRV_CPU_ADD(M68000, 10000000)
  1712: 	MDRV_CPU_MEMORY(demonwld_readmem,demonwld_writemem)
  1713: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1714: 
  1715: 	MDRV_CPU_ADD(Z80,28000000/8)		/* 3.5MHz (28MHz Oscillator) */
  1716: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  1717: 	MDRV_CPU_PORTS(demonwld_sound_readport,demonwld_sound_writeport)
  1718: 
  1719: 	MDRV_CPU_ADD(TMS32010,28000000/2)	/* 14MHz CLKin */
  1720: 	MDRV_CPU_MEMORY(DSP_readmem,DSP_writemem)
  1721: 	MDRV_CPU_PORTS(DSP_readport,DSP_writeport)
  1722: 
  1723: 	MDRV_FRAMES_PER_SECOND(60)
  1724: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1725: 	MDRV_INTERLEAVE(10)
  1726: 
  1727: 	MDRV_MACHINE_INIT(demonwld)
  1728: 
  1729: 	/* video hardware */
  1730: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
  1731: 	MDRV_SCREEN_SIZE(320, 256)
  1732: 	MDRV_VISIBLE_AREA(0, 319, 16, 255)
  1733: 	MDRV_GFXDECODE(gfxdecodeinfo)
  1734: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1735: 
  1736: 	MDRV_VIDEO_START(toaplan1)
  1737: 	MDRV_VIDEO_EOF(toaplan1)
  1738: 	MDRV_VIDEO_UPDATE(demonwld)
  1739: 
  1740: 	/* sound hardware */
  1741: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1742: MACHINE_DRIVER_END
  1743: 
  1744: 
  1745: static MACHINE_DRIVER_START( samesame )
  1746: 
  1747: 	/* basic machine hardware */
  1748: 	MDRV_CPU_ADD(M68000, 10000000)
  1749: 	MDRV_CPU_MEMORY(samesame_readmem,samesame_writemem)
  1750: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1751: 
  1752: 	MDRV_FRAMES_PER_SECOND( (28000000.0 / 4) / (450 * 270) )
  1753: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1754: 
  1755: 	MDRV_MACHINE_INIT(toaplan1)
  1756: 
  1757: 	/* video hardware */
  1758: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
  1759: 	MDRV_SCREEN_SIZE(320, 240)
  1760: 	MDRV_VISIBLE_AREA(0, 319, 0, 239)
  1761: 	MDRV_GFXDECODE(gfxdecodeinfo)
  1762: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1763: 
  1764: 	MDRV_VIDEO_START(toaplan1)
  1765: 	MDRV_VIDEO_EOF(samesame)
  1766: 	MDRV_VIDEO_UPDATE(toaplan1)
  1767: 
  1768: 	/* sound hardware */
  1769: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1770: MACHINE_DRIVER_END
  1771: 
  1772: 
  1773: static MACHINE_DRIVER_START( outzone )
  1774: 
  1775: 	/* basic machine hardware */
  1776: 	MDRV_CPU_ADD(M68000, 10000000)
  1777: 	MDRV_CPU_MEMORY(outzone_readmem,outzone_writemem)
  1778: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1779: 
  1780: 	MDRV_CPU_ADD(Z80,28000000/8)		/* 3.5MHz (28MHz Oscillator) */
  1781: 	MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
  1782: 	MDRV_CPU_PORTS(outzone_sound_readport,outzone_sound_writeport)
  1783: 
  1784: 	MDRV_FRAMES_PER_SECOND( (28000000.0 / 4) / (450 * 282) )
  1785: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1786: 	MDRV_INTERLEAVE(10)
  1787: 
  1788: 	MDRV_MACHINE_INIT(zerozone)
  1789: 
  1790: 	/* video hardware */
  1791: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
  1792: 	MDRV_SCREEN_SIZE(320, 240)
  1793: 	MDRV_VISIBLE_AREA(0, 319, 0, 239)
  1794: 	MDRV_GFXDECODE(outzone_gfxdecodeinfo)
  1795: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1796: 
  1797: 	MDRV_VIDEO_START(toaplan1)
  1798: 	MDRV_VIDEO_EOF(toaplan1)
  1799: 	MDRV_VIDEO_UPDATE(toaplan1)
  1800: 
  1801: 	/* sound hardware */
  1802: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1803: MACHINE_DRIVER_END
  1804: 
  1805: 
  1806: static MACHINE_DRIVER_START( vimana )
  1807: 
  1808: 	/* basic machine hardware */
  1809: 	MDRV_CPU_ADD(M68000, 10000000)
  1810: 	MDRV_CPU_MEMORY(vimana_readmem,vimana_writemem)
  1811: 	MDRV_CPU_VBLANK_INT(toaplan1_interrupt,1)
  1812: 
  1813: 	MDRV_FRAMES_PER_SECOND(60)
  1814: 	MDRV_VBLANK_DURATION(DEFAULT_REAL_60HZ_VBLANK_DURATION)
  1815: 
  1816: 	MDRV_MACHINE_INIT(vimana)
  1817: 
  1818: 	/* video hardware */
  1819: 	MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER | VIDEO_UPDATE_BEFORE_VBLANK)
  1820: 	MDRV_SCREEN_SIZE(320, 240)
  1821: 	MDRV_VISIBLE_AREA(0, 319, 0, 239)
  1822: 	MDRV_GFXDECODE(vm_gfxdecodeinfo)
  1823: 	MDRV_PALETTE_LENGTH((64*16)+(64*16))
  1824: 
  1825: 	MDRV_VIDEO_START(toaplan1)
  1826: 	MDRV_VIDEO_EOF(toaplan1)
  1827: 	MDRV_VIDEO_UPDATE(toaplan1)
  1828: 
  1829: 	/* sound hardware */
  1830: 	MDRV_SOUND_ADD(YM3812, ym3812_interface)
  1831: MACHINE_DRIVER_END
  1832: 
  1833: 
  1834: 
  1835: 
  1836: /***************************************************************************
  1837: 
  1838:   Game driver(s)
  1839: 
  1840: ***************************************************************************/
  1841: 
  1842: ROM_START( rallybik )
  1843: 	ROM_REGION( 0x080000, REGION_CPU1, 0 )	/* Main 68K code */
  1844: 	ROM_LOAD16_BYTE( "b45-02.rom",  0x000000, 0x08000, CRC(383386d7) SHA1(fc420b6adc79a408a68f0661d0c62ed7dbe8b6d7) )
  1845: 	ROM_LOAD16_BYTE( "b45-01.rom",  0x000001, 0x08000, CRC(7602f6a7) SHA1(2939c261a4bc63586681080f5643916c85e81c7d) )
  1846: 	ROM_LOAD16_BYTE( "b45-04.rom",  0x040000, 0x20000, CRC(e9b005b1) SHA1(19b5acfd5fb2683a56a701400b11ee6f64a9bdf1) )
  1847: 	ROM_LOAD16_BYTE( "b45-03.rom",  0x040001, 0x20000, CRC(555344ce) SHA1(398963f488fe6f19c0b8518d80c946c242d0fc45) )
  1848: 
  1849: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  1850: 	ROM_LOAD( "b45-05.rom",  0x0000, 0x4000, CRC(10814601) SHA1(bad7a834d8849752a7f3000bb5154ec0fa50d695) )
  1851: 
  1852: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  1853: 	ROM_LOAD( "b45-09.bin",  0x00000, 0x20000, CRC(1dc7b010) SHA1(67e8633bd787ffcae0e7867e7e591c492c4f2d63) )
  1854: 	ROM_LOAD( "b45-08.bin",  0x20000, 0x20000, CRC(fab661ba) SHA1(acc43cd6d979b1c6a348727f315643d7b8f1496a) )
  1855: 	ROM_LOAD( "b45-07.bin",  0x40000, 0x20000, CRC(cd3748b4) SHA1(a20eb19a0f813112b4e5d9cd91db29de9b37af17) )
  1856: 	ROM_LOAD( "b45-06.bin",  0x60000, 0x20000, CRC(144b085c) SHA1(84b7412d58fe9c5e9915896db92e80a621571b74) )
  1857: 
  1858: 	ROM_REGION( 0x40000, REGION_GFX2, ROMREGION_DISPOSE )
  1859: 	ROM_LOAD( "b45-11.rom",  0x00000, 0x10000, CRC(0d56e8bb) SHA1(c29cb53f846c73b7cf9936051fb0f9dd3805f53f) )
  1860: 	ROM_LOAD( "b45-10.rom",  0x10000, 0x10000, CRC(dbb7c57e) SHA1(268132965cd65b5e972ca9d0258c30b8a86f3703) )
  1861: 	ROM_LOAD( "b45-12.rom",  0x20000, 0x10000, CRC(cf5aae4e) SHA1(5832c52d2e9b86414d8ee2926fa190abe9e41da4) )
  1862: 	ROM_LOAD( "b45-13.rom",  0x30000, 0x10000, CRC(1683b07c) SHA1(54356893357cd1297f24f1d85b7289d80740262d) )
  1863: 
  1864: 	ROM_REGION( 0x240, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  1865: 	ROM_LOAD( "b45-15.bpr",  0x000, 0x100, CRC(24e7d62f) SHA1(1c06a1ef1b6a722794ca1d5ee2c476ecaa5178a3) )	/* sprite priority control ?? */
  1866: 	ROM_LOAD( "b45-16.bpr",  0x100, 0x100, CRC(a50cef09) SHA1(55cafb5b2551b80ae708e9b966cf37c70a16d310) )	/* sprite priority control ?? */
  1867: 	ROM_LOAD( "b45-14.bpr",  0x200, 0x020, CRC(f72482db) SHA1(b0cb911f9c81f6088a5aa8760916ddae1f8534d7) )	/* sprite control ?? */
  1868: 	ROM_LOAD( "b45-17.bpr",  0x220, 0x020, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  1869: ROM_END
  1870: 
  1871: ROM_START( truxton )
  1872: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  1873: 	ROM_LOAD16_BYTE( "b65_11.bin",  0x000000, 0x20000, CRC(1a62379a) SHA1(b9470d4b70c38f2523b22636874d742abe4099eb) )
  1874: 	ROM_LOAD16_BYTE( "b65_10.bin",  0x000001, 0x20000, CRC(aff5195d) SHA1(a7f379dc35e3acf9e7a8ae8a47a9b5b4193f93a1) )
  1875: 
  1876: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  1877: 	ROM_LOAD( "b65_09.bin",  0x0000, 0x8000, CRC(f1c0f410) SHA1(05deb759f8acb14fff92c56b536134cfd84516a8) )
  1878: 
  1879: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  1880: 	ROM_LOAD( "b65_08.bin",  0x00000, 0x20000, CRC(d2315b37) SHA1(eb42a884df319728c830c067c2423043ed4536ee) )
  1881: 	ROM_LOAD( "b65_07.bin",  0x20000, 0x20000, CRC(fb83252a) SHA1(48a38584d223f56286137f7acdfaec86ee6588e7) )
  1882: 	ROM_LOAD( "b65_06.bin",  0x40000, 0x20000, CRC(36cedcbe) SHA1(f79d4b1e98b3c9091ae907fb671ad201d3698b42) )
  1883: 	ROM_LOAD( "b65_05.bin",  0x60000, 0x20000, CRC(81cd95f1) SHA1(526a437fbe033ac21054ee5c3bf1ba2fed354c7a) )
  1884: 
  1885: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  1886: 	ROM_LOAD( "b65_04.bin",  0x00000, 0x20000, CRC(8c6ff461) SHA1(5199e31f4eb23bad01f7d1079f3618fe39d8a32e) )
  1887: 	ROM_LOAD( "b65_03.bin",  0x20000, 0x20000, CRC(58b1350b) SHA1(7eb2fe329579a6f651d3c1aed9155ac6ffefbc4b) )
  1888: 	ROM_LOAD( "b65_02.bin",  0x40000, 0x20000, CRC(1dd55161) SHA1(c537456ac56801dea0ac48fb1389228530d00a61) )
  1889: 	ROM_LOAD( "b65_01.bin",  0x60000, 0x20000, CRC(e974937f) SHA1(ab282472c04ce6d9ed368956c427403275bc9080) )
  1890: 
  1891: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  1892: 	ROM_LOAD( "b65_12.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  1893: 	ROM_LOAD( "b65_13.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  1894: ROM_END
  1895: 
  1896: ROM_START( hellfire )
  1897: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  1898: 	ROM_LOAD16_BYTE( "b90_14.0",   0x000000, 0x20000, CRC(101df9f5) SHA1(27e1430d4c96fe2c830143999a760470c8381ada) )
  1899: 	ROM_LOAD16_BYTE( "b90_15.1",   0x000001, 0x20000, CRC(e67fd452) SHA1(baec2a702238f000d0499705d79d7c7577fc2279) )
  1900: 
  1901: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  1902: 	ROM_LOAD( "b90_03.2",   0x0000, 0x8000, CRC(4058fa67) SHA1(155c364273c270cd74955f447efc804bb4c9b560) )
  1903: 
  1904: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  1905: 	ROM_LOAD( "b90_04.3",   0x00000, 0x20000, CRC(ea6150fc) SHA1(1116947d10ce14fbc6a3b86368fc2024c6f51803) )
  1906: 	ROM_LOAD( "b90_05.4",   0x20000, 0x20000, CRC(bb52c507) SHA1(b0b1821476647f10c7023f92a66a7f54b92f50c3) )
  1907: 	ROM_LOAD( "b90_06.5",   0x40000, 0x20000, CRC(cf5b0252) SHA1(e2102967af61afb11d2290a40d13d2faf9ef1e12) )
  1908: 	ROM_LOAD( "b90_07.6",   0x60000, 0x20000, CRC(b98af263) SHA1(54d636a50a41dbb58b54c22dfab3eabfdb452575) )
  1909: 
  1910: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  1911: 	ROM_LOAD( "b90_11.10",  0x00000, 0x20000, CRC(c33e543c) SHA1(b85cba30cc651f820aeedd41e04584df92078ed9) )
  1912: 	ROM_LOAD( "b90_10.9",   0x20000, 0x20000, CRC(35fd1092) SHA1(5e136a35eea45034ccd4aea52cc0ffeec944e27e) )
  1913: 	ROM_LOAD( "b90_09.8",   0x40000, 0x20000, CRC(cf01009e) SHA1(e260c479fa97f23a65c220e5071aaf2dc2baf46d) )
  1914: 	ROM_LOAD( "b90_08.7",   0x60000, 0x20000, CRC(3404a5e3) SHA1(f717b9e31c2a093dbb060b8ea54a8c3f52688d7a) )
  1915: 
  1916: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  1917: 	ROM_LOAD( "3w.bpr",     0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  1918: 	ROM_LOAD( "6b.bpr",     0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  1919: ROM_END
  1920: 
  1921: ROM_START( hellfir1 )
  1922: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  1923: 	ROM_LOAD16_BYTE( "b90_14x.0",   0x000000, 0x20000, CRC(a3141ea5) SHA1(9b456cb908e193198110a628d98567a3b8351591) )
  1924: 	ROM_LOAD16_BYTE( "b90_15x.1",   0x000001, 0x20000, CRC(e864daf4) SHA1(382f02df8419310cef5d7fb68a9376eeac2f3685) )
  1925: 
  1926: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  1927: 	ROM_LOAD( "b90_03x.2",  0x0000, 0x8000, CRC(f58c368f) SHA1(2ee5396a4b70a3374f3a3bbd791b1d962f6a8a52) )
  1928: 
  1929: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  1930: 	ROM_LOAD( "b90_04.3",   0x00000, 0x20000, CRC(ea6150fc) SHA1(1116947d10ce14fbc6a3b86368fc2024c6f51803) )
  1931: 	ROM_LOAD( "b90_05.4",   0x20000, 0x20000, CRC(bb52c507) SHA1(b0b1821476647f10c7023f92a66a7f54b92f50c3) )
  1932: 	ROM_LOAD( "b90_06.5",   0x40000, 0x20000, CRC(cf5b0252) SHA1(e2102967af61afb11d2290a40d13d2faf9ef1e12) )
  1933: 	ROM_LOAD( "b90_07.6",   0x60000, 0x20000, CRC(b98af263) SHA1(54d636a50a41dbb58b54c22dfab3eabfdb452575) )
  1934: 
  1935: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  1936: 	ROM_LOAD( "b90_11.10",  0x00000, 0x20000, CRC(c33e543c) SHA1(b85cba30cc651f820aeedd41e04584df92078ed9) )
  1937: 	ROM_LOAD( "b90_10.9",   0x20000, 0x20000, CRC(35fd1092) SHA1(5e136a35eea45034ccd4aea52cc0ffeec944e27e) )
  1938: 	ROM_LOAD( "b90_09.8",   0x40000, 0x20000, CRC(cf01009e) SHA1(e260c479fa97f23a65c220e5071aaf2dc2baf46d) )
  1939: 	ROM_LOAD( "b90_08.7",   0x60000, 0x20000, CRC(3404a5e3) SHA1(f717b9e31c2a093dbb060b8ea54a8c3f52688d7a) )
  1940: 
  1941: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  1942: 	ROM_LOAD( "3w.bpr",     0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  1943: 	ROM_LOAD( "6b.bpr",     0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  1944: ROM_END
  1945: 
  1946: ROM_START( zerowing )
  1947: 	ROM_REGION( 0x080000, REGION_CPU1, 0 )	/* Main 68K code */
  1948: 	ROM_LOAD16_BYTE( "o15-11.rom",  0x000000, 0x08000, CRC(6ff2b9a0) SHA1(c9f2a631f185689dfc42a451d85fac23c2f4b64b) )
  1949: 	ROM_LOAD16_BYTE( "o15-12.rom",  0x000001, 0x08000, CRC(9773e60b) SHA1(b733e9d38a233d010cc5ea41e7e61695082c3a22) )
  1950: 	ROM_LOAD16_BYTE( "o15-09.rom",  0x040000, 0x20000, CRC(13764e95) SHA1(61da49b73ba81edd951e96e9ce6673c1c3bd65f2) )
  1951: 	ROM_LOAD16_BYTE( "o15-10.rom",  0x040001, 0x20000, CRC(351ba71a) SHA1(937331549140506711b08252497cc0f2efa58268) )
  1952: 
  1953: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  1954: 	ROM_LOAD( "o15-13.rom",  0x0000, 0x8000, CRC(e7b72383) SHA1(ea1f6f33a86d14d58bd396fd46081462f00177d5) )
  1955: 
  1956: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  1957: 	ROM_LOAD( "o15-05.rom",  0x00000, 0x20000, CRC(4e5dd246) SHA1(5366b4a6f3c900a4f57a6583b7399163a06f42d7) )
  1958: 	ROM_LOAD( "o15-06.rom",  0x20000, 0x20000, CRC(c8c6d428) SHA1(76ee5bcb8f10fe201fc5c32697beee3de9d8b751) )
  1959: 	ROM_LOAD( "o15-07.rom",  0x40000, 0x20000, CRC(efc40e99) SHA1(a04fad4197a7fb4787cd9bebf43e1d9b02b2f61b) )
  1960: 	ROM_LOAD( "o15-08.rom",  0x60000, 0x20000, CRC(1b019eab) SHA1(c9569ca85696825142acc5cde9ac829e82b1ca1b) )
  1961: 
  1962: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  1963: 	ROM_LOAD( "o15-03.rom",  0x00000, 0x20000, CRC(7f245fd3) SHA1(efbcb3663d4accc4f8128a8fee5475bc109bc17a) )
  1964: 	ROM_LOAD( "o15-04.rom",  0x20000, 0x20000, CRC(0b1a1289) SHA1(ce6c06342392d11952873e3b1d6aea8dc02a551c) )
  1965: 	ROM_LOAD( "o15-01.rom",  0x40000, 0x20000, CRC(70570e43) SHA1(acc9baec71b0930cb2f193677e0663efa5d5551d) )
  1966: 	ROM_LOAD( "o15-02.rom",  0x60000, 0x20000, CRC(724b487f) SHA1(06af31520866eea69aebbd5d428f80e882289a15) )
  1967: 
  1968: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  1969: 	ROM_LOAD( "tp015_14.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  1970: 	ROM_LOAD( "tp015_15.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  1971: ROM_END
  1972: 
  1973: ROM_START( demonwld )
  1974: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  1975: 	ROM_LOAD16_BYTE( "rom10.v2",  0x000000, 0x20000, CRC(ca8194f3) SHA1(176da6739b35ba38b40150fc62380108bcae5a24) )
  1976: 	ROM_LOAD16_BYTE( "rom09.v2",  0x000001, 0x20000, CRC(7baea7ba) SHA1(ae2b40f9efb4440ff7edbcc4f80641655f7c4671) )
  1977: 
  1978: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  1979: 	ROM_LOAD( "rom11.v2",  0x0000, 0x8000, CRC(dbe08c85) SHA1(536a242bfe916d15744b079261507af6f12b5b50) )
  1980: 
  1981: 	ROM_REGION( 0x10000, REGION_CPU3, 0 )	/* Co-Processor TMS320C10 MCU code */
  1982: 	ROM_LOAD16_BYTE( "dsp_21.bin",  0x8000, 0x0800, CRC(2d135376) SHA1(67a2cc774d272ee1cd6e6bc1c5fc33fc6968837e) )
  1983: 	ROM_LOAD16_BYTE( "dsp_22.bin",  0x8001, 0x0800, CRC(79389a71) SHA1(14ec4c1c9b06702319e89a7a250d0038393437f4) )
  1984: 
  1985: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  1986: 	ROM_LOAD( "rom05",  0x00000, 0x20000, CRC(6506c982) SHA1(6d4c1ef91e5617724789ff196abb7abf23e4a7fb) )
  1987: 	ROM_LOAD( "rom07",  0x20000, 0x20000, CRC(a3a0d993) SHA1(50311b9447eb04271b17b212ca31d083ab5b2414) )
  1988: 	ROM_LOAD( "rom06",  0x40000, 0x20000, CRC(4fc5e5f3) SHA1(725d4b009d575ff8ffbe1c00df352ccf235465d7) )
  1989: 	ROM_LOAD( "rom08",  0x60000, 0x20000, CRC(eb53ab09) SHA1(d98195cc1b65b76335b5b24adb31deae1b313f3a) )
  1990: 
  1991: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  1992: 	ROM_LOAD( "rom01",  0x00000, 0x20000, CRC(1b3724e9) SHA1(3dbb0450ab1e40e6df2b7c7356352419cd3f113d) )
  1993: 	ROM_LOAD( "rom02",  0x20000, 0x20000, CRC(7b20a44d) SHA1(4dc1a2fa2058077b112c73492808ee9381060ec7) )
  1994: 	ROM_LOAD( "rom03",  0x40000, 0x20000, CRC(2cacdcd0) SHA1(92216d1c6859e05d39363c30e0beb45bc0ae4e1c) )
  1995: 	ROM_LOAD( "rom04",  0x60000, 0x20000, CRC(76fd3201) SHA1(7a12737bf90bd9760074132edeb22f3fd3e16b4f) )
  1996: 
  1997: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  1998: 	ROM_LOAD( "prom12.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  1999: 	ROM_LOAD( "prom13.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2000: ROM_END
  2001: 
  2002: ROM_START( demonwl1 )
  2003: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  2004: 	ROM_LOAD16_BYTE( "rom10",  0x000000, 0x20000, CRC(036ee46c) SHA1(60868e5e08e0c9a538ae786de0de6b2531b30b11) )
  2005: 	ROM_LOAD16_BYTE( "rom09",  0x000001, 0x20000, CRC(bed746e3) SHA1(056668edb7df99bbd240e387af17cf252d1448f3) )
  2006: 
  2007: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  2008: 	ROM_LOAD( "rom11",  0x0000, 0x8000, CRC(397eca1b) SHA1(84073ff6d1bc46ec6162d66ec5de305700938380) )
  2009: 
  2010: 	ROM_REGION( 0x10000, REGION_CPU3, 0 )	/* Co-Processor TMS320C10 MCU code */
  2011: 	ROM_LOAD16_BYTE( "dsp_21.bin",  0x8000, 0x0800, CRC(2d135376) SHA1(67a2cc774d272ee1cd6e6bc1c5fc33fc6968837e) )
  2012: 	ROM_LOAD16_BYTE( "dsp_22.bin",  0x8001, 0x0800, CRC(79389a71) SHA1(14ec4c1c9b06702319e89a7a250d0038393437f4) )
  2013: 
  2014: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2015: 	ROM_LOAD( "rom05",  0x00000, 0x20000, CRC(6506c982) SHA1(6d4c1ef91e5617724789ff196abb7abf23e4a7fb) )
  2016: 	ROM_LOAD( "rom07",  0x20000, 0x20000, CRC(a3a0d993) SHA1(50311b9447eb04271b17b212ca31d083ab5b2414) )
  2017: 	ROM_LOAD( "rom06",  0x40000, 0x20000, CRC(4fc5e5f3) SHA1(725d4b009d575ff8ffbe1c00df352ccf235465d7) )
  2018: 	ROM_LOAD( "rom08",  0x60000, 0x20000, CRC(eb53ab09) SHA1(d98195cc1b65b76335b5b24adb31deae1b313f3a) )
  2019: 
  2020: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  2021: 	ROM_LOAD( "rom01",  0x00000, 0x20000, CRC(1b3724e9) SHA1(3dbb0450ab1e40e6df2b7c7356352419cd3f113d) )
  2022: 	ROM_LOAD( "rom02",  0x20000, 0x20000, CRC(7b20a44d) SHA1(4dc1a2fa2058077b112c73492808ee9381060ec7) )
  2023: 	ROM_LOAD( "rom03",  0x40000, 0x20000, CRC(2cacdcd0) SHA1(92216d1c6859e05d39363c30e0beb45bc0ae4e1c) )
  2024: 	ROM_LOAD( "rom04",  0x60000, 0x20000, CRC(76fd3201) SHA1(7a12737bf90bd9760074132edeb22f3fd3e16b4f) )
  2025: 
  2026: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2027: 	ROM_LOAD( "prom12.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2028: 	ROM_LOAD( "prom13.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2029: ROM_END
  2030: 
  2031: ROM_START( samesame )
  2032: 	ROM_REGION( 0x080000, REGION_CPU1, 0 )	/* Main 68K code */
  2033: 	ROM_LOAD16_BYTE( "o17_09.bin",  0x000000, 0x08000, CRC(3f69e437) SHA1(f2a40fd42cb5ecb2e514b72e7550aa479a9f9ad6) )
  2034: 	ROM_LOAD16_BYTE( "o17_10.bin",  0x000001, 0x08000, CRC(4e723e0a) SHA1(e06394d50addeda1045c02c646964afbc6005a82) )
  2035: 	ROM_LOAD16_BYTE( "o17_11.bin",  0x040000, 0x20000, CRC(be07d101) SHA1(1eda14ba24532b565d6ad57490b73ff312f98b53) )
  2036: 	ROM_LOAD16_BYTE( "o17_12.bin",  0x040001, 0x20000, CRC(ef698811) SHA1(4c729704eba0bf469599c79009327e4fa5dc540b) )
  2037: 
  2038: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound HD647180 code */
  2039: 	/* sound CPU is a HD647180 (Z180) with internal ROM - not yet supported */
  2040: 	ROM_LOAD( "hd647180.017",  0x00000, 0x08000, NO_DUMP )
  2041: 
  2042: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2043: 	ROM_LOAD( "o17_05.bin",  0x00000, 0x20000, CRC(565315f8) SHA1(6b1c5ef52359483228b329c89c2e1174e3fbf017) )
  2044: 	ROM_LOAD( "o17_06.bin",  0x20000, 0x20000, CRC(95262d4c) SHA1(16f3aabecb1c87ce7eadf4f0ff61b29a4c017614) )
  2045: 	ROM_LOAD( "o17_07.bin",  0x40000, 0x20000, CRC(4c4b735c) SHA1(812c3bf46bd7764b2bb812bd2b9eb0331ed257ae) )
  2046: 	ROM_LOAD( "o17_08.bin",  0x60000, 0x20000, CRC(95c6586c) SHA1(ff87901f79d80f73ad09664b0c0d892898570616) )
  2047: 
  2048: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  2049: 	ROM_LOAD( "o17_01.bin",  0x00000, 0x20000, CRC(ea12e491) SHA1(02190722b7c5383471e0af9596be7039a5367240) )
  2050: 	ROM_LOAD( "o17_02.bin",  0x20000, 0x20000, CRC(32a13a9f) SHA1(1446acdfd21cd41f3d97aaf30f498c0c5d890605) )
  2051: 	ROM_LOAD( "o17_03.bin",  0x40000, 0x20000, CRC(68723dc9) SHA1(4f1b7aa2469c955e03737b611a7d2524f1e4f61e) )
  2052: 	ROM_LOAD( "o17_04.bin",  0x60000, 0x20000, CRC(fe0ecb13) SHA1(634a49262b9c092c25f11b14c6757fe94ea9eddc) )
  2053: 
  2054: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2055: 	ROM_LOAD( "tp017_13.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2056: 	ROM_LOAD( "tp017_14.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2057: ROM_END
  2058: 
  2059: ROM_START( samesam2 )
  2060: 	ROM_REGION( 0x080000, REGION_CPU1, 0 )	/* Main 68K code */
  2061: 	ROM_LOAD16_BYTE( "o17_09x.bin", 0x000000, 0x08000, CRC(3472e03e) SHA1(a0f12622a1963bfac2d5f357afbfb5d7db2cd8df) )
  2062: 	ROM_LOAD16_BYTE( "o17_10x.bin", 0x000001, 0x08000, CRC(a3ac49b5) SHA1(c5adf026b9129b64acee5a079e102377a8488220) )
  2063: 	ROM_LOAD16_BYTE( "o17_11x.bin", 0x040000, 0x20000, CRC(6beac378) SHA1(041ba98a89a4bac32575858db8a061bdf7804594) )
  2064: 	ROM_LOAD16_BYTE( "o17_12x.bin", 0x040001, 0x20000, CRC(6adb6eb5) SHA1(9b6e63aa50d271c2bb0b4cf822fc6f3684f10230) )
  2065: 
  2066: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound HD647180 code */
  2067: 	/* sound CPU is a HD647180 (Z180) with internal ROM - not yet supported */
  2068: 	ROM_LOAD( "hd647180.017",  0x00000, 0x08000, NO_DUMP )
  2069: 
  2070: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2071: 	ROM_LOAD( "o17_05.bin",  0x00000, 0x20000, CRC(565315f8) SHA1(6b1c5ef52359483228b329c89c2e1174e3fbf017) )
  2072: 	ROM_LOAD( "o17_06.bin",  0x20000, 0x20000, CRC(95262d4c) SHA1(16f3aabecb1c87ce7eadf4f0ff61b29a4c017614) )
  2073: 	ROM_LOAD( "o17_07.bin",  0x40000, 0x20000, CRC(4c4b735c) SHA1(812c3bf46bd7764b2bb812bd2b9eb0331ed257ae) )
  2074: 	ROM_LOAD( "o17_08.bin",  0x60000, 0x20000, CRC(95c6586c) SHA1(ff87901f79d80f73ad09664b0c0d892898570616) )
  2075: 
  2076: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  2077: 	ROM_LOAD( "o17_01.bin",  0x00000, 0x20000, CRC(ea12e491) SHA1(02190722b7c5383471e0af9596be7039a5367240) )
  2078: 	ROM_LOAD( "o17_02.bin",  0x20000, 0x20000, CRC(32a13a9f) SHA1(1446acdfd21cd41f3d97aaf30f498c0c5d890605) )
  2079: 	ROM_LOAD( "o17_03.bin",  0x40000, 0x20000, CRC(68723dc9) SHA1(4f1b7aa2469c955e03737b611a7d2524f1e4f61e) )
  2080: 	ROM_LOAD( "o17_04.bin",  0x60000, 0x20000, CRC(fe0ecb13) SHA1(634a49262b9c092c25f11b14c6757fe94ea9eddc) )
  2081: 
  2082: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2083: 	ROM_LOAD( "tp017_13.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2084: 	ROM_LOAD( "tp017_14.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2085: ROM_END
  2086: 
  2087: ROM_START( fireshrk )
  2088: 	ROM_REGION( 0x080000, REGION_CPU1, 0 )	/* Main 68K code */
  2089: 	ROM_LOAD16_BYTE( "09.bin",      0x000000, 0x08000, CRC(f0c70e6f) SHA1(037690448786d61aa116b24b638430c577ea78e2) )
  2090: 	ROM_LOAD16_BYTE( "10.bin",      0x000001, 0x08000, CRC(9d253d77) SHA1(0414d1f475abb9ccfd7daa11c2f400a14f25db09) )
  2091: 	ROM_LOAD16_BYTE( "o17_11x.bin", 0x040000, 0x20000, CRC(6beac378) SHA1(041ba98a89a4bac32575858db8a061bdf7804594) )
  2092: 	ROM_LOAD16_BYTE( "o17_12x.bin", 0x040001, 0x20000, CRC(6adb6eb5) SHA1(9b6e63aa50d271c2bb0b4cf822fc6f3684f10230) )
  2093: 
  2094: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound HD647180 code */
  2095: 	/* sound CPU is a HD647180 (Z180) with internal ROM - not yet supported */
  2096: 	ROM_LOAD( "hd647180.017",  0x00000, 0x08000, NO_DUMP )
  2097: 
  2098: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2099: 	ROM_LOAD( "o17_05.bin",  0x00000, 0x20000, CRC(565315f8) SHA1(6b1c5ef52359483228b329c89c2e1174e3fbf017) )
  2100: 	ROM_LOAD( "o17_06.bin",  0x20000, 0x20000, CRC(95262d4c) SHA1(16f3aabecb1c87ce7eadf4f0ff61b29a4c017614) )
  2101: 	ROM_LOAD( "o17_07.bin",  0x40000, 0x20000, CRC(4c4b735c) SHA1(812c3bf46bd7764b2bb812bd2b9eb0331ed257ae) )
  2102: 	ROM_LOAD( "o17_08.bin",  0x60000, 0x20000, CRC(95c6586c) SHA1(ff87901f79d80f73ad09664b0c0d892898570616) )
  2103: 
  2104: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  2105: 	ROM_LOAD( "o17_01.bin",  0x00000, 0x20000, CRC(ea12e491) SHA1(02190722b7c5383471e0af9596be7039a5367240) )
  2106: 	ROM_LOAD( "o17_02.bin",  0x20000, 0x20000, CRC(32a13a9f) SHA1(1446acdfd21cd41f3d97aaf30f498c0c5d890605) )
  2107: 	ROM_LOAD( "o17_03.bin",  0x40000, 0x20000, CRC(68723dc9) SHA1(4f1b7aa2469c955e03737b611a7d2524f1e4f61e) )
  2108: 	ROM_LOAD( "o17_04.bin",  0x60000, 0x20000, CRC(fe0ecb13) SHA1(634a49262b9c092c25f11b14c6757fe94ea9eddc) )
  2109: 
  2110: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2111: 	ROM_LOAD( "tp017_13.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2112: 	ROM_LOAD( "tp017_14.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2113: ROM_END
  2114: 
  2115: ROM_START( outzone )
  2116: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  2117: 	ROM_LOAD16_BYTE( "rom7.bin",  0x000000, 0x20000, CRC(936e25d8) SHA1(ffb7990ea1539d868a9ad2fb711b0febd90f098d) )
  2118: 	ROM_LOAD16_BYTE( "rom8.bin",  0x000001, 0x20000, CRC(d19b3ecf) SHA1(b406999b9f1e2104d958b42cc745bf79dbfe50b3) )
  2119: 
  2120: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  2121: 	ROM_LOAD( "rom9.bin",  0x0000, 0x8000, CRC(73d8e235) SHA1(f37ad497259a467cdf2ec8b3e6e7d3e873087e6c) )
  2122: 
  2123: 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
  2124: 	ROM_LOAD( "rom5.bin",  0x00000, 0x80000, CRC(c64ec7b6) SHA1(e73b51c3713c2ea7a572a02531c15d1261ddeaa0) )
  2125: 	ROM_LOAD( "rom6.bin",  0x80000, 0x80000, CRC(64b6c5ac) SHA1(07fa20115f603445c0d51af3465c0471c09d76b1) )
  2126: 
  2127: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  2128: 	ROM_LOAD( "rom2.bin",  0x00000, 0x20000, CRC(6bb72d16) SHA1(a127b10d9c255542bd09fcb5df057c12fd28c0d1) )
  2129: 	ROM_LOAD( "rom1.bin",  0x20000, 0x20000, CRC(0934782d) SHA1(e4a775ead23227d7d6e76aea23aa3103b511d031) )
  2130: 	ROM_LOAD( "rom3.bin",  0x40000, 0x20000, CRC(ec903c07) SHA1(75906f31200877fc8f6e78c2606ad5be49778165) )
  2131: 	ROM_LOAD( "rom4.bin",  0x60000, 0x20000, CRC(50cbf1a8) SHA1(cfab1504746654b4a61912155e9aeca746c65321) )
  2132: 
  2133: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2134: 	ROM_LOAD( "tp018_10.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2135: 	ROM_LOAD( "tp018_11.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2136: ROM_END
  2137: 
  2138: ROM_START( outzonea )					/* From board serial number 2122 */
  2139: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  2140: 	ROM_LOAD16_BYTE( "18.bin",  0x000000, 0x20000, CRC(31a171bb) SHA1(4ee707e758ab21d2809b65daf0081f86bd9328d9) )
  2141: 	ROM_LOAD16_BYTE( "19.bin",  0x000001, 0x20000, CRC(804ecfd1) SHA1(7dead8064445c6d44ebd0889583deb5e17b1954a) )
  2142: 
  2143: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound Z80 code */
  2144: 	ROM_LOAD( "rom9.bin",  0x0000, 0x8000, CRC(73d8e235) SHA1(f37ad497259a467cdf2ec8b3e6e7d3e873087e6c) )
  2145: 
  2146: 	ROM_REGION( 0x100000, REGION_GFX1, ROMREGION_DISPOSE )
  2147: 	ROM_LOAD( "rom5.bin",  0x00000, 0x80000, CRC(c64ec7b6) SHA1(e73b51c3713c2ea7a572a02531c15d1261ddeaa0) )
  2148: 	ROM_LOAD( "rom6.bin",  0x80000, 0x80000, CRC(64b6c5ac) SHA1(07fa20115f603445c0d51af3465c0471c09d76b1) )
  2149: /* a pirate board exists using the same data in a different layout
  2150: 	ROM_LOAD16_BYTE( "04.bin",  0x000000, 0x10000, CRC(3d11eae0) )
  2151: 	ROM_LOAD16_BYTE( "08.bin",  0x000001, 0x10000, CRC(c7628891) )
  2152: 	ROM_LOAD16_BYTE( "13.bin",  0x080000, 0x10000, CRC(b23dd87e) )
  2153: 	ROM_LOAD16_BYTE( "09.bin",  0x080001, 0x10000, CRC(445651ba) )
  2154: 	ROM_LOAD16_BYTE( "03.bin",  0x020000, 0x10000, CRC(6b347646) )
  2155: 	ROM_LOAD16_BYTE( "07.bin",  0x020001, 0x10000, CRC(461b47f9) )
  2156: 	ROM_LOAD16_BYTE( "14.bin",  0x0a0000, 0x10000, CRC(b28ae37a) )
  2157: 	ROM_LOAD16_BYTE( "10.bin",  0x0a0001, 0x10000, CRC(6596a076) )
  2158: 	ROM_LOAD16_BYTE( "02.bin",  0x040000, 0x10000, CRC(11a781c3) )
  2159: 	ROM_LOAD16_BYTE( "06.bin",  0x040001, 0x10000, CRC(1055da17) )
  2160: 	ROM_LOAD16_BYTE( "15.bin",  0x0c0000, 0x10000, CRC(9c9e811b) )
  2161: 	ROM_LOAD16_BYTE( "11.bin",  0x0c0001, 0x10000, CRC(4c4d44dc) )
  2162: 	ROM_LOAD16_BYTE( "01.bin",  0x060000, 0x10000, CRC(e8c46aea) )
  2163: 	ROM_LOAD16_BYTE( "05.bin",  0x060001, 0x10000, CRC(f8a2fe01) )
  2164: 	ROM_LOAD16_BYTE( "16.bin",  0x0e0000, 0x10000, CRC(cffcb99b) )
  2165: 	ROM_LOAD16_BYTE( "12.bin",  0x0e0001, 0x10000, CRC(90d37ded) )
  2166: */
  2167: 
  2168: 	ROM_REGION( 0x80000, REGION_GFX2, ROMREGION_DISPOSE )
  2169: 	ROM_LOAD( "rom2.bin",  0x00000, 0x20000, CRC(6bb72d16) SHA1(a127b10d9c255542bd09fcb5df057c12fd28c0d1) )
  2170: 	ROM_LOAD( "rom1.bin",  0x20000, 0x20000, CRC(0934782d) SHA1(e4a775ead23227d7d6e76aea23aa3103b511d031) )
  2171: 	ROM_LOAD( "rom3.bin",  0x40000, 0x20000, CRC(ec903c07) SHA1(75906f31200877fc8f6e78c2606ad5be49778165) )
  2172: 	ROM_LOAD( "rom4.bin",  0x60000, 0x20000, CRC(50cbf1a8) SHA1(cfab1504746654b4a61912155e9aeca746c65321) )
  2173: 
  2174: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2175: 	ROM_LOAD( "tp018_10.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2176: 	ROM_LOAD( "tp018_11.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2177: ROM_END
  2178: 
  2179: ROM_START( vimana )			/* From board serial number 1547.04 (July '94) */
  2180: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  2181: 	ROM_LOAD16_BYTE( "tp019-7a.bin",  0x000000, 0x20000, CRC(5a4bf73e) SHA1(9a43d822bc24b59278f294d0b3275595de997d16) )
  2182: 	ROM_LOAD16_BYTE( "tp019-8a.bin",  0x000001, 0x20000, CRC(03ba27e8) SHA1(edb5fe741d2a6a7fe5cde9a82317ea1e9447cf73) )
  2183: 
  2184: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound HD647180 code */
  2185: 	/* sound CPU is a HD647180 (Z180) with internal ROM - not yet supported */
  2186: 	ROM_LOAD( "hd647180.019",  0x00000, 0x08000, NO_DUMP )
  2187: 
  2188: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2189: 	ROM_LOAD( "vim6.bin",  0x00000, 0x20000, CRC(2886878d) SHA1(f44933d87bbcd3bd58f46e0f0f89b05c409b713b) )
  2190: 	ROM_LOAD( "vim5.bin",  0x20000, 0x20000, CRC(61a63d7a) SHA1(5cdebc03110252cc43d31b6f87f9a23556892977) )
  2191: 	ROM_LOAD( "vim4.bin",  0x40000, 0x20000, CRC(b0515768) SHA1(9907b52b4d30ce5324270a12c40250068adafca8) )
  2192: 	ROM_LOAD( "vim3.bin",  0x60000, 0x20000, CRC(0b539131) SHA1(07f3e3b9b28c8218e36668c24d16dbb6e9a66889) )
  2193: 
  2194: 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )
  2195: 	ROM_LOAD( "vim1.bin",  0x00000, 0x80000, CRC(cdde26cd) SHA1(27893af4692ec7bcbaac9e790c0707c98df84e62) )
  2196: 	ROM_LOAD( "vim2.bin",  0x80000, 0x80000, CRC(1dbfc118) SHA1(4fd039a3172f73ad910349b2d360e8ae77ccddb2) )
  2197: 
  2198: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2199: 	ROM_LOAD( "tp019-09.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2200: 	ROM_LOAD( "tp019-10.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2201: ROM_END
  2202: 
  2203: ROM_START( vimana1 )
  2204: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  2205: 	ROM_LOAD16_BYTE( "vim07.bin",  0x000000, 0x20000, CRC(1efaea84) SHA1(f9c5d2365d8948fa66dbe61d355919db15843a28) )
  2206: 	ROM_LOAD16_BYTE( "vim08.bin",  0x000001, 0x20000, CRC(e45b7def) SHA1(6b92a91d64581954da8ecdbeb5fed79bcc9c5217) )
  2207: 
  2208: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound HD647180 code */
  2209: 	/* sound CPU is a HD647180 (Z180) with internal ROM - not yet supported */
  2210: 	ROM_LOAD( "hd647180.019",  0x00000, 0x08000, NO_DUMP )
  2211: 
  2212: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2213: 	ROM_LOAD( "vim6.bin",  0x00000, 0x20000, CRC(2886878d) SHA1(f44933d87bbcd3bd58f46e0f0f89b05c409b713b) )
  2214: 	ROM_LOAD( "vim5.bin",  0x20000, 0x20000, CRC(61a63d7a) SHA1(5cdebc03110252cc43d31b6f87f9a23556892977) )
  2215: 	ROM_LOAD( "vim4.bin",  0x40000, 0x20000, CRC(b0515768) SHA1(9907b52b4d30ce5324270a12c40250068adafca8) )
  2216: 	ROM_LOAD( "vim3.bin",  0x60000, 0x20000, CRC(0b539131) SHA1(07f3e3b9b28c8218e36668c24d16dbb6e9a66889) )
  2217: 
  2218: 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )
  2219: 	ROM_LOAD( "vim1.bin",  0x00000, 0x80000, CRC(cdde26cd) SHA1(27893af4692ec7bcbaac9e790c0707c98df84e62) )
  2220: 	ROM_LOAD( "vim2.bin",  0x80000, 0x80000, CRC(1dbfc118) SHA1(4fd039a3172f73ad910349b2d360e8ae77ccddb2) )
  2221: 
  2222: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2223: 	ROM_LOAD( "tp019-09.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2224: 	ROM_LOAD( "tp019-10.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2225: ROM_END
  2226: 
  2227: ROM_START( vimanan )
  2228: 	ROM_REGION( 0x040000, REGION_CPU1, 0 )	/* Main 68K code */
  2229: 	ROM_LOAD16_BYTE( "tp019-07.rom",  0x000000, 0x20000, CRC(78888ff2) SHA1(7e1d248f806d585952eb35ceec6a7e63ae4e22f9) )
  2230: 	ROM_LOAD16_BYTE( "tp019-08.rom",  0x000001, 0x20000, CRC(6cd2dc3c) SHA1(029d974eb938c5e2fbe7575f0dda342b4b12b731) )
  2231: 
  2232: 	ROM_REGION( 0x10000, REGION_CPU2, 0 )	/* Sound HD647180 code */
  2233: 	/* sound CPU is a HD647180 (Z180) with internal ROM - not yet supported */
  2234: 	ROM_LOAD( "hd647180.019",  0x00000, 0x08000, NO_DUMP )
  2235: 
  2236: 	ROM_REGION( 0x80000, REGION_GFX1, ROMREGION_DISPOSE )
  2237: 	ROM_LOAD( "vim6.bin",  0x00000, 0x20000, CRC(2886878d) SHA1(f44933d87bbcd3bd58f46e0f0f89b05c409b713b) )
  2238: 	ROM_LOAD( "vim5.bin",  0x20000, 0x20000, CRC(61a63d7a) SHA1(5cdebc03110252cc43d31b6f87f9a23556892977) )
  2239: 	ROM_LOAD( "vim4.bin",  0x40000, 0x20000, CRC(b0515768) SHA1(9907b52b4d30ce5324270a12c40250068adafca8) )
  2240: 	ROM_LOAD( "vim3.bin",  0x60000, 0x20000, CRC(0b539131) SHA1(07f3e3b9b28c8218e36668c24d16dbb6e9a66889) )
  2241: 
  2242: 	ROM_REGION( 0x100000, REGION_GFX2, ROMREGION_DISPOSE )
  2243: 	ROM_LOAD( "vim1.bin",  0x00000, 0x80000, CRC(cdde26cd) SHA1(27893af4692ec7bcbaac9e790c0707c98df84e62) )
  2244: 	ROM_LOAD( "vim2.bin",  0x80000, 0x80000, CRC(1dbfc118) SHA1(4fd039a3172f73ad910349b2d360e8ae77ccddb2) )
  2245: 
  2246: 	ROM_REGION( 0x40, REGION_PROMS, 0 )		/* nibble bproms, lo/hi order to be determined */
  2247: 	ROM_LOAD( "tp019-09.bpr",  0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) )	/* sprite attribute (flip/position) ?? */
  2248: 	ROM_LOAD( "tp019-10.bpr",  0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) )	/* ??? */
  2249: ROM_END
  2250: 
  2251: 
  2252: 
  2253: GAME ( 1988, rallybik, 0,        rallybik, rallybik, 0, ROT270, "[Toaplan] Taito Corporation", "Rally Bike / Dash Yarou" )
  2254: GAME ( 1988, truxton,  0,        truxton,  truxton,  0, ROT270, "[Toaplan] Taito Corporation", "Truxton / Tatsujin" )
  2255: GAME ( 1989, hellfire, 0,        hellfire, hellfire, 0, ROT0,   "Toaplan (Taito license)", "Hellfire" )
  2256: GAME ( 1989, hellfir1, hellfire, hellfire, hellfir1, 0, ROT0,   "Toaplan (Taito license)", "Hellfire (1P Ver.)" )
  2257: GAME ( 1989, zerowing, 0,        zerowing, zerowing, 0, ROT0,   "Toaplan", "Zero Wing" )
  2258: GAME ( 1990, demonwld, 0,        demonwld, demonwld, 0, ROT0,   "Toaplan", "Demon's World / Horror Story" )
  2259: GAME ( 1989, demonwl1, demonwld, demonwld, demonwl1, 0, ROT0,   "Toaplan (Taito license)", "Demon's World / Horror Story (Taito license)" )
  2260: GAMEX( 1990, fireshrk, 0,        samesame, fireshrk, 0, ROT270, "Toaplan", "Fire Shark", GAME_NO_SOUND )
  2261: GAMEX( 1989, samesame, fireshrk, samesame, samesame, 0, ROT270, "Toaplan", "Same! Same! Same!", GAME_NO_SOUND )
  2262: GAMEX( 1989, samesam2, fireshrk, samesame, samesam2, 0, ROT270, "Toaplan", "Same! Same! Same! (2P Ver.)", GAME_NO_SOUND )
  2263: GAME ( 1990, outzone,  0,        outzone,  outzone,  0, ROT270, "Toaplan", "Out Zone (set 1)" )
  2264: GAME ( 1990, outzonea, outzone,  outzone,  outzone,  0, ROT270, "Toaplan", "Out Zone (set 2)" )
  2265: GAMEX( 1991, vimana,   0,        vimana,   vimana,   0, ROT270, "Toaplan", "Vimana", GAME_NO_SOUND )
  2266: GAMEX( 1991, vimana1,  vimana,   vimana,   vimana,   0, ROT270, "Toaplan", "Vimana (old set)", GAME_NO_SOUND )
  2267: GAMEX( 1991, vimanan,  vimana,   vimana,   vimanan,  0, ROT270, "Toaplan (Nova Apparate GMBH & Co license)", "Vimana (Nova Apparate GMBH & Co)", GAME_NO_SOUND )
  2268: 




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