diff options
Diffstat (limited to 'src/mame/drivers/taito_z.cpp')
-rw-r--r-- | src/mame/drivers/taito_z.cpp | 5558 |
1 files changed, 0 insertions, 5558 deletions
diff --git a/src/mame/drivers/taito_z.cpp b/src/mame/drivers/taito_z.cpp deleted file mode 100644 index 365883db565..00000000000 --- a/src/mame/drivers/taito_z.cpp +++ /dev/null @@ -1,5558 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:David Graves -// thanks-to:Richard Bush -/*************************************************************************** - -Taito Z System [twin 68K with optional Z80] -------------------------------------------- - -David Graves - -(this is based on the F2 driver by Bryan McPhail, Brad Oliver, Andrew Prime, -Nicola Salmoria. Thanks to Richard Bush and the Raine team, whose open -source was very helpful in many areas particularly the sprites.) - - -The Taito Z system has a number of similarities with the Taito F2 system, -and uses some of the same custom Taito components. - -Taito Z supports 5 separate layers of graphics - one 64x64 tiled scrolling -background plane of 8x8 tiles, a similar foreground plane, another optional -plane used for drawing a road (e.g. Chasehq), a sprite plane [with varying -properties], and a text plane with character definitions held in ram. - -(Double Axle has four rather than two background planes, and they contain -32x32 16x16 tiles. This is because it uses a TC0480SCP rather than the -older TC0100SCN tilemap generator used in previous Taito Z games. The -hardware for Taito's Super Chase was a further development of this, with a -68020 for main CPU and Ensoniq sound - standard features of Taito's F3 -system. Taito's F3 system superseded both Taito B and F2 systems, but the -Taito Z system was enhanced with F3 features and continued in games like -Super Chase and Under Fire up to the mid 1990s.) - -Each Taito Z game used one of the following sprite systems - allowing the -use of big sprites with minimal CPU overhead [*]: - -(i) 16x8 tiles aggregated through a spritemap rom into 128x128 sprites -(ii) 16x16 tiles aggregated through a spritemap rom into three sprite sizes: - 128 x 128 - 64 x 128 - 32 x 128 -(iii) 16x8 tiles aggregated through a spritemap rom into 64x64 sprites - -[* in Taito B/F2/F3 the CPU has to keep track of all the 16x16 tiles within -a big sprite] - -The Z system has twin 68K CPUs which communicate via shared ram. -Typically they share $4000 bytes, but Spacegun / Dbleaxle share $10000. - -The first 68000 handles screen, palette and sprites, and sometimes other -jobs [e.g. inputs; in one game it also handles the road]. - -The second 68000 may handle functions such as: - (i) inputs/dips, sound (through a YM2610) and/or - (ii) the "road" that's in every TaitoZ game except Spacegun. - -Most Z system games have a Z80 as well, which takes over sound duties. -Commands are written to it by the one of the 68000s. - -The memory map for the Taito Z games is similar in outline but usually -shuffled around: some games have different I/O because of analogue -sticks, light guns, cockpit hardware etc. - - -**************************************************************************** - -Contcirc board (B.Troha) --------------- - -Taito Sound PCB J1100137A K1100314A: - - Zilog Z0840004PSC XTAL OSC Yamaha - Z80 CPU 16.000 MHz YM2610 - - TC0060DCA B33-30 - TC0060DCA - TC0140SYT - - B33-08 - B33-09 - B33-10 - -Notes: B33-30 is a OKI M27512-15 - - -Taito Video Board PCB J1100139A K1100316A: - - B33-03 TC0050VDZ TC0050VDZ TC0050VDZ - B33-04 - B33-05 - B33-06 TC0020VAR - - B14-31 - - B33-07 - - B14-30 - -Notes: B14-31 is 27HC64 (Sharp LH5763J-70) - B14-30 is OKI M27512-15 -DG: TC0020VAR + 3xTC0050VDZ may be precursor to 370MSO/300FLA combo - - -Taito CPU Board J110138A K1100315A: - - XTAL OSC XTAL OSC - 24.000MHz 26.686MHz - - B33-02 -B33-01 - TC0150ROD TC0100SCN NEC D43256C-10L - NEC D43256C-10L - - TC0110PCR - - TC0070RGB - MC6800P12 IC-25 MC68000P12 IC-35 - IC-26 IC 36 TC0040IOC - DSWA DSWB - -Notes: IC-41 Is 271001 Listed as JH1 (unsocketed / unused) - IC-42 Is 271001 Listed as JL1 (unsocketed / unused) - - - -**************************************************************************** - -Aquajack -Taito, 1990 - -This game runs on Taito Z hardware - -Main PCB Layout ---------------- - -J1100196A -K1100456A -K1100457A AQUA JACK (sticker) -|--------------------------------------------------------------------------| -|B77-17.1 2063 B77-07.33 B77-05.105 DSWA(8) DSWB(8) | -| 2063 |------| | -| |---------| |---------| |---------| |TAITO | 2063 |-| -| | TAITO | | TAITO | | TAITO | |TC0110| TC0070RGB | -| |TC0050VDZ| |TC0150ROD| B77-19.46 |TC0100SCN| |PCR | 2063 |-| -| |(QFP100) | |(QFP160) | |(QFP160) | |------| | -| | | | | | | MB3771 | -| |---------| |---------| |---------| |------| | -| 58257 58257 |TAITO | (G) 2| -| 2018 |---------| |TC0220| TC0060DCA 8| -| 2018 | TAITO | |---------| |IOC | TC0060DCA W| -| 2018 |TC0020VAR| | TAITO | |------| A| -| 2018 |(QFP124) | |TC0320OBR| 2063 TL074 MB3735 Y| -| | | |(QFP144) | TL074 VOL | -| 2018 |---------| | | B77_20.54 YM3016 | -| 2018 B77-18.37 |---------| Z80 YM2610 |-| -| 2018 B77-06.39 MB3735 | -| 2018 |---------| |---------| VOL |-| -| | TAITO | 16MHz TL074| TAITO | | -| |TC0050VDZ| |TC0100SYT| B77-15.89 | -| B77-01.13 |(QFP100) | 2018 B77-08.57 |(QFP120) | |-| -| | | 2018 B77-09.58 | | | | -| B77-02.14 |---------| |--------------| |---------| | | -| |---------| | MC68000P12 | (M)| | -| B77-03.15 | TAITO | |--------------| 2063 | | -| |TC0050VDZ| 2063 |-| -| B77-04.16 |(QFP100) | B77-14.60 B77_23.67|---------| | -| | | B77-13.51 2063 | TAITO | B77-16.94 | -| |---------| |--------------| |TC0170ABT| | -| | MC68000P12 | B77_24.69|(QFP120) | 24MHz| -| B77_25.17 B77_22.31 |--------------| 2063 | | 26.686MHz | -| 2063 2063 |---------| | -|--------------------------------------------------------------------------| -Notes: - 68000 - Motorola MC68000P12 CPUs, running at 12.000MHz [24/2] - Z80 - Zilog Z0840004PSC Z80 CPU, running at 4.000MHz [16/4] - YM2610 - Yahama YM2610 sound chip, running at 8.000MHz [16/2] - 2063 - Toshiba TMM2063 8K x8 SRAM (DIP28) - 2018 - Toshiba TMM2018 2K x8 SRAM (DIP24) - 58257 - Sony CXK58257 32K x8 SRAM (DIP28) - MB3771 - Fujitsu MB3771 System Reset IC (DIP8) - (G) - 28-Way Connector (Not JAMMA) - (M) - 50-pin Flat Cable Connector Joining Main PCB To Analog Control PCB - - OSC: 26.686, 24.000, 16.000 - - Taito custom ICs - - TC0070RGB - RGB/Video Mixer (Ceramic Flat Pack SIP25) - TC0060DCA - Digital to Analog Conversion for Audio (Ceramic Flat Pack SIP20) - TC0100SYT - Sound Communication - TC0220IOC - Input/Output. This chip also provides the master reset via the MB3771. It probably does more things too, - including video output. For example, if the harness is connected backwards, this chip blows and kills - the PCB. Even manually resetting the 68000's cannot restart the PCB, and it just shows a wavey pattern - on screen. - TC0110PCR - Palette Generator - TC0100SCN - Tilemap Generator - TC0150ROD - Road Generator - TC0050VDZ - \ Motion Object Generator Combo? - TC0170ABT - / - TC0020VAR - ? - TC0320OBR - Road Object Generator? (tied to TC0150ROD) - - ROMs - - - -Analog Control PCB ------------------- -J9100175A -K9100227A ADII PCB -K9100227A AQUA JACK (sticker) -|------------------| -| | -| 74LS244 |-| -| | | -| | | -| ADC0809 | | -| (M)| | -| | | -| 74LS245 | | -|(H) | | -| | | -| 74HC74 | | -| |-| -| 4.9152MHz | -|------------------| -Notes: - All components listed - - (H) - 6 pin connector for attachment of Analog Controls - (M) - 50-pin Flat Cable Connector For Joining Analog Control PCB to Main PCB - ADC0809 - Texas Instruments ADC0809N Analog To Digital Convertor IC (DIP28) - - - -**************************************************************************** -Guru-Readme for Chase HQ (Taito 1988) - -CPU Board ---------- - -K1100357A -J1100157A CPU PCB -K1100357A CHASE HQ UP (sticker for upright) -M4300099A CHASE HQ DX (sticker for DX cabinet) -|------------------------------------------------------------------------| -| B52-113.IC73 |---------| B52-119.IC20(PAL20L8)| -| |TAITO | 68000-12 B52-118.IC21(PAL20L8)| -| B52-114.IC72 |TC0140SYT| |-| -|M | | B52-131.IC37 B52-129.IC30 | | -| B52-115.IC71 |---------| B52-130.IC36 B52-136.IC29 | | -| TMM2063 TMM2063 | | -| B52-116.IC70 Z80 | | -| B52-137.IC51 B52-29.IC27 26.686MHz | | -| TD62003 |---------| 24MHz | | -|V YM2610 |TAITO | | | -| |TC0100SCN| 43256 |-| -| 16MHz | | | -| TMM2063 |---------| 43256 | -| TC0050DCA |---------| |-| -| Y3016-F TMM2063 |TAITO | |------| | | -| |TC0170ABT| |TAITO | | | -| TL074 TL074 | | |TC0110| B52-01.IC7 | | -| MB3735 VOLUME B52-121.IC57(PAL20L8)|---------| |PCR | | | -|G PC050CM B52-120.IC56(PAL16L8) |------| | | -| |---------| 68000-12 |---------| B52-06.IC24 B52-28.IC4 | | -| |TCOO40IOC| B52-133.IC55 |TAITO | TMM2063 TMM2063 | | -| |---------| B52-132.IC39 |TC0150ROD| TMM2063 TMM2063 |-| -| MB3771 | | | -| DIPSWB DIPSWA TMM2063 TMM2063 |---------| TC0070RGB | -|------------------------------------------------------------------------| -Notes: - 68000 - Motorola MC68000P12 CPUs, clock input 12.000MHz [24/2] - Z80 - Zilog Z0840004PSC Z80 CPU, clock input 4.000MHz [16/4] - YM2610 - Yamaha YM2610 sound chip, clock input 8.000MHz [16/2] - Y3016-F - Yamaha Y3016-F 2-Channel Serial & Binary Input Floating D/A Converter (SOIC16) - Clock input 2.66666MHz (16/2/3, source = pin 64 of YM2610) - TMM2063 - Toshiba TMM2063AP-70 8k x8-bit SRAM (DIP28) - 43256 - NEC D43256AC-10L 32k x8-bit SRAM (DIP28) - MB3771 - Fujitsu MB3771 System Reset IC (DIP8) - MB3735 - Fujitsu MB3735 20w BTL Mono Power AMP. Note this amp chip has one input and one output, so sound - is mono. Where two speakers are present (cockpit/DX) the same sounds are output to both speakers - because the edge connector pins 10+L and 11+M are hard-wired together. - TL074 - Texas Instruments TL074 JFET Low-Noise Quad OP Amp - TD62003 - Toshiba TD62003 PNP 50V 0.5A Quad Darlington Switch (for driving CPU-controlled lamps via 2x NEC 2SB1150 PNP Darlington Transistors) - G - 28-Way Connector (Not JAMMA, but power/ground pins are the same as JAMMA) - V - 5-pin video connector - M - 50-pin flat cable connector. Only populated on the moving cabinet version. This is used to connect the motor PCB to the - main PCB. This connector and some adjacent 74LS244/245 logic chips are not populated on the upright PCB version. - - Syncs - Horizontal: 15.675kHz - Vertical: 60.0554Hz - - ROMs - - B52-137.IC51 - Z80 Sound Program - - B52-131.IC37 \ - B52-129.IC30 | Main 68k Program (27C1001 EPROMs) - B52-130.IC36 | - B52-136.IC29 / - - B52-133.IC55 \ Sub 68k Program (27C512 EPROMs) - B52-132.IC39 / - - B52-29.IC27 - Tilemaps (23C4000 mask ROM) - - B52-01.IC7 - Road/Sprite Priority & Palette Select (MMI63S141 BI-POLAR PROM) - - B52-06.IC24 - Road A/B Internal Priority (MMI63S141 BI-POLAR PROM) - - B52-28.IC4 - TC0150ROD ROM for Road data (23C4000 mask ROM) - - Note: These ROMs match the World ROM-set in MAME ('chasehq'). These are the same ROMs found on a Chase HQ DX cabinet - board-set which suggests any/all Chase HQ ROM-sets will work with the deluxe motion cabinet providing the Motor - PCB is present and working. - -Taito custom ICs - - TC0070RGB - 5-bit RGB Video Mixer/RGB DAC (Ceramic Flat Pack SIL25) - PC050CM - Coin/Counter/Lockout Functions - TC0060DCA - 2-Channel Digital to Analog Conversion for Audio (Ceramic Flat Pack SIL20) - Note: 2 channel audio from the YM2610 is input and output separately here but on the output it is - merged via 2x 2.7k resistors to a single audio signal and fed to the MB3735 AMP chip on pin 1. - The output from the MB3735 is mono. - TC0140SYT - Sound Communication - TC0040IOC - I/O Controls (start/shift/wheel/accelerator etc) and DIP switch management. - This chip provides the master reset output on pin 2. - On the upright cabinet, the accelerate pedal is a normally open switch (it is either off or on). - The shift lever is a normally open switch (off/on). When open it is set to low gear and when closed - (i.e. when pin 20 of connector G is grounded) it is set to high gear. - The steering wheel hardware on Chase HQ uses one half of a trackball mechanism (left/right only) - which is basically like a spinner. There is a segmented disc with optical sensor and another optical - sensor to detect the wheel center position. The wheel returns to the center position with the help of - a centering spring. The cockpit & DX cabs use 5k pots for the steering and accelerator, although - micro-switches will also work fine with the correct control mechanisms. - TC0110PCR - Palette Generator - TC0100SCN - Tilemap Generator - TC0150ROD - Road Generator - TC0170ABT - Motion Object Generator - - -Edge Connector Pinouts (NOTE! This is correct as per schematics. Pinout found on the internet is not accurate) ----------------------- - - COMPONENT | SOLDER Video Connector (NOTE: when facing the edge connector, pin 5 is on the left) - ------------+------------ --------------- - GND | 1 | A | GND 1 GROUND - GND | 2 | B | GND 2 RED - +5V | 3 | C | +5V 3 GREEN - +5V | 4 | D | +5V 4 BLUE - -5V | 5 | E | -5V 5 SYNC - +12V | 6 | F | +12V - KEY | | | KEY - Counter 1 | 8 | J | Counter 2 - Lockout 1 | 9 | K | Lockout 2 Connector "H" (on video board. Note the PCB will work without this connector wired up) - Speaker 1 + |10---L | Speaker 2 + (cockpit/DX ------------- - Speaker 1 - |11---M | Speaker 2 - (cockpit/DX) 1 GND - Volume 1 |12 | N | Volume 2 (cockpit/DX) 2 GND - N/C |13 | P | 3 GND - GND |14 | R | Service Coin 4 GND - GND |15 | S | Brake 5 +5V - Coin 1 |16 | T | Coin 2 6 +5V - |17 | U | 7 +5V - Nitro |18 | V | Tilt 8 +5V -Wheel Center Sense |19 | W | Start 9 N/C - Shift |20 | X | Accelerate 10 N/C - |21 | Y | 11 N/C - Lamp 1 |22 | Z | Lamp 2 12 N/C - N/C |23 | a | - |24 | b | - |25 | c | - Steering Left |26 | d | Steering Right - GND |27 | e | GND - GND |28 | f | GND - -Note: - - 22 & Z are used to drive CPU-controlled lamps in the top header. - - N/C means there is no trace connected to this edge connector pad. - - Speaker 1 and 2 are hard-wired together at the edge connector and - the PCB has a single mono amp chip so sound is mono regardless - of how many speakers are in the cabinet. - - -Connector "M" (to Motor Control PCB, using standard 50-pin flat cable) -Note the labels shown are the signals. - - ------------+-------------- - /MTRES | A | 1 | MTA0 \ - GND | B | 2 | MTA1 | - GND | C | 3 | MTA2 | - GND | D | 4 | MTA3 | - GND | E | 5 | MTA4 | - GND | F | 6 | MTA5 | 11-bit Address Bus to/from Motor PCB - GND | H | 7 | MTA6 | - GND | J | 8 | MTA7 | - GND | K | 9 | MTA8 | - GND | L | 10| MTA9 | - GND | M | 11| MTA10 / - GND | N | 12| MTD0 \ - GND | P | 13| MTD1 | - GND | R | 14| MTD2 | - GND | S | 15| MTD3 | - GND | T | 16| MTD4 | 8-bit Data Bus to/from Motor PCB - GND | U | 17| MTD5 | - GND | V | 18| MTD6 | - GND | W | 19| MTD7 / - GND | X | 20| MTR/W Read/Write to/from Motor PCB - GND | Y | 21| MOTOR Motor On/Off Signal? - GND | Z | 22| MTDTA Acknowledge Signal? - GND | a | 23| GND - GND | b | 24| MTCK Z80 clock from main board = 3.000MHz (24/8) - GND | c | 25| GND - -/MTRES is the Z80 reset signal. This stays low in upright cabinet mode, but when the -cabinet DIPs are set to deluxe this will go high to reset the Z80 on the motor PCB. -If the motor PCB is not present the signal will toggle low then high trying to reset -the Z80 until an acknowledge/ready signal (possibly MTDTA) comes back from the motor PCB. -Note none of these signals are present at the edge connector "M" if the 4 IC's at -IC78, IC79, IC80 & IC81 are not populated (i.e. if it's an upright PCB version). -Also note all these signals are present somewhere on the main PCB even if those logic chips -are not populated and regardless of the ROM set used. Most likely any ROM set will work -as a Deluxe version if the Motor PCB is present and working. - - -DIP Switches ------------- - -DIPSWA -|--------------------------------|---------------|-------------------------------| -| 1 2 3 4 5 6 7 8 | Function | Option | -|--------------------------------|---------------|-------------------------------| -|OFF OFF | Cabinet | Upright / Steering Lock* | -|ON OFF | | Upright / Free Steering | -|OFF ON | | Cockpit / Steering Lock | -|ON ON | | Deluxe / Free Steering | -|--------------------------------|---------------|-------------------------------| -| OFF | Test Mode | Game* | -| ON | | Test | -|--------------------------------|---------------|-------------------------------| -| OFF | Demo Sounds | On* | -| ON | | Off | -|--------------------------------|---------------|-------------------------------| -| OFF OFF | Coin A | 1 Coin 1 Credit* | -| ON OFF | | 2 Coins 1 Credit | -| OFF ON | | 3 Coins 1 Credit | -| ON ON | | 4 Coins 1 Credit | -|--------------------------------|---------------|-------------------------------| -| OFF OFF | Coin B | 1 Coin 2 Credits* | -| ON OFF | | 1 Coin 3 Credits | -| OFF ON | | 1 Coin 4 Credits | -| ON ON | | 1 Coin 6 Credits | -|--------------------------------|---------------|-------------------------------| -Notes: -* = Factory default setting - -Coinage varies by region. Coinage shown is World Coinage. - -DIPSWA 1 & 2 must be set to upright/cockpit cabinets otherwise there is an error on boot-up. -If both SW1 & SW2 are on, it enables the deluxe motion cabinet and the Motor PCB must be -present and working otherwise the game will complain with an error on boot-up "DIPSW A INITIAL ERROR!" - -Upright uses digital pedals. Digital Pedals means pedals are micro-switch (on/off only) -Cockpit/Deluxe uses analog pedals. Analog Pedals means pedals use 5k-ohm potentiometers. -Steering Lock means steering wheel uses 5k-ohm potentiometers and restricted wheel movement. -Free Steering means steering wheel uses spinner-like mechanism with additional sensor for center position and spring to re-center the wheel. - -DIPSWB -|--------------------------------|----------------|-------------------------------| -| 1 2 3 4 5 6 7 8 | Function | Option | -|--------------------------------|----------------|-------------------------------| -|OFF OFF | Difficulty | Medium* | -|ON OFF | | Easy | -|OFF ON | | Hard | -|ON ON | | Hardest | -|--------------------------------|----------------|-------------------------------| -| OFF OFF | Timer | 60 Seconds* | -| ON OFF | | 70 Seconds | -| OFF ON | | 65 Seconds | -| ON ON | | 55 Seconds | -|--------------------------------|----------------|-------------------------------| -| OFF | Number of | 3* | -| ON | Nitros | 5 | -|--------------------------------|----------------|-------------------------------| -| OFF | Discount On | Yes. 1 Coin To Continue* | -| ON | Continue | No Discount To Continue | -|--------------------------------|----------------|-------------------------------| -| OFF | Criminal Damage| Clear* | -| ON | On Continue | Carry Over To Continued Game | -|--------------------------------|----------------|-------------------------------| -| OFF | Allow Continue | Yes* | -| ON | | No | -|--------------------------------|----------------|-------------------------------| -* = Factory default setting - - -Video Board ------------ - -K1100358A -J1100158A VIDEO PCB -K1100358A CHASE HQ CP (sticker) -|------------------------------------------------------------------------| -| B52-26.IC15 B52-26.IC52 | -| B52-17.IC16 B52-17.IC53 | -| H B52-26.IC17 B52-26.IC54 |-| -| B52-17.IC18 B52-17.IC55 | | -| | | -| 62256 62256 62256 62256 62256 62256 62256 62256 | | -| | | -| 62256 62256 62256 62256 62256 62256 62256 62256 | | -| | | -| B52-30.IC4 |---------| B52-127.IC156 | | -| |TAITO | |-| -| B52-34.IC5 |TC0020VAR| | -| | | B52-03.IC135 | -| B52-31.IC6 |---------| B52-126.IC136 |-| -| B52-27.IC64 B52-124.IC180| | -| B52-35.IC7 B52-51.IC65 | | -| B52-50.IC66 B52-25.IC123 | | -| B52-32.IC8 B52-125.IC112 B52-122.IC124 | | -| B52-49.IC68 B52-123.IC125 | | -| B52-36.IC9 | | -| B52-16.IC92 | | -| B52-33.IC10 B52-19.IC33 B52-18.IC93 |-| -| B52-38.IC34 B52-16.IC94 2018 | -| B52-37.IC11 B52-20.IC35 B52-21.IC51 2018 | -|------------------------------------------------------------------------| -Notes: - 2018 - 2k x8-bit SRAM - 62256 - 32k x8-bit SRAM - IC4/5/6 - MB834100 Mask ROM - IC7/8/9/10/11/34 - 23C4000 Mask ROM - IC15/16/17/18/52/53/54/55 - PAL20R8 - IC33/35/51/112/124/125/180 - PAL16L8 - IC92/93/94 - 63S141 Bi-Polar PROM - IC64/IC123 - PAL20L8 - IC135/136/156 - 63S441 Bi-Polar PROM - IC68 - 27C64 EPROM - IC65/66 - 27C512 EPROM - TC0020VAR - Taito custom IC Sprite Generator - - -Motor PCB (only for full motion DX cabinet) ---------- - -J9100093A -K9100120A -DRIVE LOGIC P.C.B. -|-----------------------------------------------| -| BRT BRY T1 T2 Y1 Y2 OPT | <-- 7 LEDs -| | -| B14-32.IC27 HC14 | -| 4584 B14-33.IC26 LS07 TL081 TL081 | -|1 4584 LS02 b1| -|8 D4701 LS32 TL081 TL081 | -|W TLP521-4 LS139 | -|A D4701 LS74 TL081 TL081 | -|Y LS393 b2| -| LS273 LS393 | -| LS273 LS161 LS30 | -| LS273 LS161 LS04 | -| LS244 LS273 LS161 LS138 | -| LS245 LS245 LS161 | -| LS157 2016 | -| 2016 | -|R LS157 LS138 27C256.IC17 | -| | -| LS157 B14-34.IC6 Z80 | -| | -|-----------------------------------------------| -Notes: (all IC's shown) - R - 50 pin flat cable connector joining to main board connector M - 18WAY - 36 pin card edge connector joining to numerous sensors and switches on the DX cabinet - b1/b2 - 20 pin flat cable joining 2x Motor Power PCBs to Drive Logic PCB - Z80 - Z80A CPU. Clock input 3.000MHz from main board (24/8) - 27C256 - 32k x8-bit EPROM - TLP521-4 - Toshiba TLP521-4 Photocoupler With 4 Isolated Channels - D4701 - NEC D4701 Incremental Encoder Counter - TL081 - Texas Instruments TL081 JFET-Input Operational Amplifier - 4584 - Hex Schmitt Trigger Logic IC - 2016 - 2k x8-bit SRAM - B14-* - PAL16L8. Note the PALs and this Drive Logic PCB come from a Top Speed DX. - The Chase HQ DX cabs are just converted Top Speed DX cabs. - - -**************************************************************************** - -ChaseHQ2(SCI) custom chips (Guru) (DG: same as Bshark except 0140SYT?) --------------------------- - -CPU PCB: -TC0170ABT -TC0150ROD -TC0140SYT -TC0220IOC - -c09-23.rom is a -PROM type AM27S21PC, location looks like this... - -------------- -| 68000 | -------------- - -c09-25 c09-26 -c09-24 - -|-------| -| | -| ABT | -| | -|-------| - -c09-23 c09-07 - -|-------| -| | -| ROD | -| | -|-------| - -c09-32 c09-33 -------------- -| 68000 | -------------- - -c09-21 c09-22 - -Lower PCB: -TC0270MOD -TC0300FLA -TC0260DAR -TC0370MSO -TC0100SCN -TC0380BSH - -c09-16.rom is located next to -c09-05, which is located next to Taito TC0370MSO. - -SCI (Guru) -Taito, 1989 - -Controls for this game are one wheel, one switch for shift lever (used for high gear) -and one switch each for accelerate, brake, gun and nitro. - -Note that the gear is low by default and is shifted to high gear by a lever which -holds the switch closed. The lever is not self-centering or spring-loaded to go back to -low. The lever must be physically shifted back to low when required. - - -PCB Layout ----------- - -CPU PCB K1100490A J1100209A -|----------------------------------------------------| -| 24MHz C09-14.42 TC0140SYT C09-22.3 C09-21.2 | -| C09-13.43 68000 | -| C09-12.44 C09-33.6 C09-32.5 | -| YM2610 C09-15.29 6264 6264 | -| YM3016 TL074 TL074 Z80 | -| C09-34.31 6264 TC0150ROD | -|D VOL 6264 6264 | -| | -| MB3735 C09-07.15 C09-23.14 | -| D633 16MHz | -| 62064 6264 6264 TC0170ABT | -| C09-28.37 6264 | -|G 62003 C09-36.38 C09-24.22 | -| TC0220IOC 6264 C09-26.26 C09-25.25 | -| C09-30.40 68000 | -| DSWB DSWA C09-31.41 | -|----------------------------------------------------| - -Notes: - Clocks: - 68000 : 16.000MHz (both) - Z80 : 4.000MHz - YM2610: 8.000MHz - - Vsync: 60Hz - - Misc parts: - MB3735: 15w Power AMP with dual output (used for stereo sounds ; CH1/CH2) - TL074 : JFET Lo Noise Quad OP Amp - 6264 : 8k x8 SRAM - TD62064 : NPN 50V 1.5A Quad Darlinton Switch (for driving coin meters) - TD62003 : PNP 50V 0.5A Quad Darlinton Switch (for driving coin meters) - D633 : Si NPN POWER transistor used in 68k reset circuit (TIP122 compatible) - ROMs: - C09-12 to C09-14 - MB834100 - C09-07 - HN62404 - C09-32 to C09-33 - AM27C512 - C09-30 to C09-31 - TC571000 - C09-38 and C09-36 - TC571000 - C09-23 - AM27S21 - C09-22 and C09-26 - MMI PAL16L8B - C09-21 and - C09-24 to C09-25 - MMI PAL20L8B - -PINOUT CONNECTOR D (Note: All pinouts typed from an original Taito document) ------------------- - -1 +24V -2 +24V -3 GND -4 GND -5 D OUT - -Question: +24V and D OUT are for? - - -PINOUT CONNECTOR G (the meanings of some of these is a bit vague - PTL OUTx, DRV0, HANDLE CENTER SW etc) - - PARTS | SOLDER - ---------------|--------------- - GND 1|A GND - GND 2|B GND - +5V 3|C +5V - +5V 4|D +5V - -5V 5|E -5V - +12V 6|F +12V - KEY 7|H KEY - COUNTER A 8|J COUNTER B - C LOCKOUT A 9|K C LOCKOUT B - SPK CH1+ 10|L SPK CH2+ - SPK CH1- 11|M SPK CH2- - VOLUME2 12|N VOLUME1 - VOLUME3 13|P MUTE - GND 14|R SERVICE SW - GND 15|S BRAKE SW0 - COIN A 16|T COIN B - BRAKE SW1 17|U BRAKE SW2 - NITRO SW 18|V TILT -HANDLE CENTER SW 19|W START SW - SHIFT SW 20|X ACCEL SW0 - ACCEL SW1 21|Y ACCEL SW2 - PTL OUT1 22|Z PTL OUT2 - DRV0 23|a GUN SW - PADL X1 24|b PADL X2 - PADL Y1 25|c PADL Y2 - HANDLE Z1 26|d HANDLE Z2 - GND 27|e GND - GND 28|f GND - -Question: What hardware is used for steering and where is it connected? It doesn't seem to use - a regular potentiometer for the steering?? - - -PCB Layout ----------- - -VIDEO PCB K1100491A J1100210A -|-----------------------------------------------------| -| TC0370MSO C09-17.24 43256 | -|H C09-18.25 43256 | -| C09-05.16 | -| C09-16.17 26.686MHz TC0100SCN 6264 | -| C1815 | -|V C1815 6264 | -| C1815 TC0260DAR C09-06.37 | -|6264 | -| | -| TC0380BSH C09-19.67| -|TC0270MOD TC0300FLA | -| | -|43256 43256 43256 43256 C09-04.52 C09-20.71| -|43256 43256 43256 43256 C09-03.53 | -|43256 43256 43256 43256 C09-02.54 | -|43256 43256 43256 43256 C09-01.55 | -|-----------------------------------------------------| - -Notes: - ROMs: - C09-01 to C09-05 - 234000 - C09-06 - HN62404 - C09-17 to C09-18 - MMI 63S441 - C09-19 - MMI PAL16L8B - C09-20 - AM27S21 - - Misc parts: - 6264: 8k x8 SRAM - 43256: 32k x8 SRAM - C1815: transistor used for driving RGB - -PINOUT CONNECTOR H ------------------- - -1 GND -2 GND -3 GND -4 GND -5 +5V -6 +5V -7 +5V -8 +5V -9 -5V -10 POST -11 +12V -12 NC - - -PINOUT CONNECTOR V ------------------- - -1 GND -2 RED -3 GREEN -4 BLUE -5 SYNC -6 NC -7 NC - - - -**************************************************************************** - -Enforce PCB info ------------------- - -Taito, 198?/199? - -Taito Z hardware -PCB No: K1100406A J1100175A (CPU PCB) - K1100407A J1100176A (VIDEO PCB) - -CPU: MC68000P12 (x2) -SND: Z80, YM2610, TC0040IOC, YM3016F -OSC: 26.686MHz, 24.000MHz, 16.000MHz -DIPs: 8 Position (x2) - -Taito Chips: -CPU board - TC0100SCN, TC0140SYT, TC0170ABT, TC0110PCR -Video Board - TC0150ROD, TC0050VDZ (x3), TC0020VAR - -Ram: CPU BOARD - 6264 (x9), 43256 (x2), - VIDEO BOARD - 2018 (x10), 6264 (x2) - -PALs/PROMs: -CPU BOARD - All located near/around the 68000's -b58-15 (PAL20L8) -b58-16 (PAL20L8) -b58-14 (PAL20L8) -b58-13 (PAL16L8) -b58-11 (PAL16L8) -b58-12 (PAL16L8) - -VIDEO BOARD - -b58-22 (PAL16L8) \ -b58-23 (63s141) | near TC0150ROD -b58-24 (63s141) / - -b58-20 (PAL16L8) \ -b58-21 (PAL16R4) | -b58-17 (PAL16L8) | near TC0020VAR -b58-18 (PAL16R4) / - -b58-25 (63S141) near b58-27 -b58-19 (PAL16R4) near b58-04/03/02/01 - -ROMs: -CPU BOARD - b58-18 , 27C010 \ - b58-19 , 27C010 | 68k Program - b58-26 , 27C010 | - b58-27 , 27C010 / - - b58-07 , 27C4096 \ - b58-08 , 27C4096 | - b58-09 , 27C4100 | near TC0100SCN & TC0140SYT - b58-10 , 27C4096 / - - b58-32 , 27C512 z80 program - -VIDEO PCB - b58-06 , 27C4100 near TC0150ROD - - b58-26a, 27C512 ? - b58-27 , LH5763 ? - - b58-01 , 27C4100 \ - b58-02 , 27C4100 | - b58-03 , 27C4100 | near TC0050VDZ's - b58-04 , 27C4100 / - - - -**************************************************************************** - -BShark custom chips -------------------- - -TC0220IOC (known io chip) -TC0260DAR (known palette chip) -TC0400YSC substitute for TC0140SYT when 68K writes directly to YM2610 ?? -TC0170ABT = same in Dblaxle -TC0100SCN (known tilemap chip) -TC0370MSO = same in Dblaxle, Motion Objects ? -TC0300FLA = same in Dblaxle -TC0270MOD ??? -TC0380BSH ??? -TC0150ROD (known road generator chip) - - - -**************************************************************************** - -DblAxle custom chip info ------------------------- - -TC0150ROD is next to road lines gfx chip [c78-09] but also -c78-15, an unused 256 byte rom. Perhaps this contains color -info for the road lines? Raine makes an artificial "pal map" -for the road, AFAICS. - -TC0170ABT is between 68000 CPUA and the TC0140SYT. Next to -that is the Z80A, the YM2610, and the three adpcm roms. - -On the graphics board we have the TC0480SCP next to its two -scr gfx roms: c78-10 & 11. - -The STY object mapping rom is next to c78-25, an unused -0x10000 byte rom which compresses by 98%. To right of this -are TC0370MSO (motion objects?), then TC0300FLA. - -Below c78-25 are two unused 1K roms: c84-10 and c84-11. -Below right is another unused 256 byte rom, c78-21. -(At the bottom are the 5 obj gfx roms.) - -K11000635A ----------- - 43256 c78-11 SCN1 CHR - 43256 c78-10 SCN0 CHR TC0480SCP - - c78-04 - STY ROM - c78-25 TC0370MSO TC0300FLA - c84-10 - c84-11 c78-21 - - 43256 43256 43256 43256 - 43256 43256 43256 43256 43256 - 43256 43256 43256 43256 43256 - 43256 43256 - - c78-05L - c78-06 OBJ1 - c78-05H - - c78-08 OBJ3 c78-07 OBJ2 - -Power Wheels ------------- - -Cpu PCB - -CPU: 68000-16 x2 -Sound: Z80-A - YM2610 -OSC: 32.000MHz -Chips: TC0140SYT - TC0150ROD - TC0170ABT - TC0310FAM - TC0510NIO - - -Video PCB - -OSC: 26.686MHz -Chips: TC0260DAR - TC0270MOD - TC0300FLA - TC0370MSO - TC0380BSH - TC0480SCP - - -LAN interface board - -OSC: 40.000MHz - 16.000MHz -Chips: uPD72105C - - - -**************************************************************************** - -Racing Beat -------------- - -M43E0227A -K11E0674A -K1100650A J1100264A CPU PCB -|-------------------------------------------------------------| -|6264 62256 32MHz DSWA DSWB | -| 62256 | -|C84-104.2 | -|C84-110.3 TC0170ABT TC0510NIO | -|C84-103.4 | -|C84-111.5 MB3771 | -| C84_101.42 | -|6264 TC0140SYT | -| 6264 | -| | -| | -| C84-85.31 Z80 | -|68000 | -| | -| | -|PAL PAL YM2610 | -| C84-86.33 | -|PAL | -| 6264 C84-87.46 | -| | -| | -| PAL C84-99.35 YM3016 | -|6264 6264 | -| | -| PAL C84-100.36 TL074 | -| TC0150ROD | -|C84-84.12 6264 | -| PAL | -| TL074 | -| C84-07.22 MB3735 | -| 68000 | -|-------------------------------------------------------------| -Notes: - 68000s running at 16MHz - Z80 running at 4MHz - YM2610 running at 8MHz - - -K11X0675A -K1100635A -J1100256A VIDEO PCB -|-------------------------------------------------------------| -| 26.686MHz 6264 | -|62256 C84-89.11 TC0260DAR | -| | -|62256 C84-90.12 | -| TC0480SCP 6264 | -| | -| 6264 | -|C84-88.3 | -| | -| | -| C84-19.15 | -| TC0370MSO TC0300FLA PAL | -| C84-10.16 | -| C84-11.17 | -| C84-09.74| -| | -| 62256 62256 62256 62256 | -| | -| | -| 62256 62256 62256 62256 62256 | -| | -| | -| 62256 62256 62256 62256 62256 | -| | -| | -| 62256 62256 | -| C84-91.23 C84-93.31 | -| | -| TC0380BSH TC0270MOD | -| C84-92.25 C84-94.33 | -| | -|-------------------------------------------------------------| - - -TODO Lists -========== - -Is the no-Z80 sound handling correct: some voices in Bshark -aren't that clear. - -Make taitosnd cpu-independent so we can restore Z80 to CPU3. - -Cockpit hardware - -DIPs - e.g. coinage - -Sprite zooming - dimensions may be got from the unused 64K rom -on the video board (it's in the right place for it, both with -Contcirc video chips and the chips used on later boards). These -64K roms compare as follows - makes sense as these groups -comprise the three sprite layout types used in TaitoZ games: - - Contcirc / Enforce =IDENTICAL - ChaseHQ / Nightstr =IDENTICAL - Bshark / SCI / Dblaxle / Racingb =IDENTICAL - - Missing from Aquajack / Spacegun dumps (I would bet they are - the same as Bshark). Can anyone dump these two along with any - proms on the video board? - - -Continental Circus ------------------- - -Road priority incompletely understood - e.g. start barrier should -be darkening LH edge of road as well as RH edge. - -Junk (?) stuff often written in high byte of sound word. - -Speculative YM2610 a/b/c channel filtering as these may be -outputs to subwoofer (vibration). They sound better, anyway. - - -Chasehq -------- - -Motor CPU: appears to be identical to one in Topspeed. - -[Used to have junk sprites when you reach criminal car (the 'criminals -here' sprite): two bits above tile number are used. Are these -meaningless, or is some effect missing?] - - -Enforce -------- - -Test mode - SHIFT: LO/HI is not understood (appears to depend on Demo -Sound DSW) - -Landscape in the background can be made to scroll rapidly with DSW. -True to original? - -Some layer offsets are out a little. - -Road layer has wrong colors--regression? - - -Battle Shark ------------- - -Is road on the road stages correct? Hard to tell. - -Does the original have the "seeking" crosshair effect, making it a -challenge to control? - - -SCI ---- - -Road seems ok, but are the green bushes in round 1 a little too far -to the edge of the interroad verge? - -Sprite frames were plotted in opposite order so flickered. Reversing -this has lost us alternate frames: probably need to buffer sprite -ram by one frame to solve this? - - -Night Striker -------------- - -Road A/B priority problems will manifest in the choice tunnels with, -one or the other having higher priority in top and bottom halves. Can -someone provide a sequence of screenshots showing exactly what happens -at the road split point. - -Strange page in test mode which lets you alter all sorts of settings, -may relate to sit-in cockpit version. Can't find a dip that disables -this. <- Test Mode 1? That's used for lamps and motor testing... -AS - -Motors (located at the 0xe000**) are mirrored, they use both bytes of a -word, the high one is used during gameplay and the other one is used on service -mode. The gameplay port is xor'ed (!). -It works like this: ---xx xx-- Force Feedback power ----- --x- "Reverse" motor ----- ---x "Turn" motor - -TC0220IOC offset 3 is used for lamps, both upright and cockpit version afaik: -x--- ---- spot 2 lamp (right) --x-- ---- spot 1 lamp (left) ---x- ---- motor lamp 3 (right) ----x ---- motor lamp 2 (center) ----- x--- motor lamp 1 (left) ----- -x-- trigger lamp ----- --x- start lamp ----- ---x shot lamp -The two spot lamps are big red lamps located at the sides of the screen (at least -in the upright version), they lights when the player gets hit and/or if he's dying. - - -Aqua Jack ---------- - -Some wrong colors. Hovercraft body should be red. 1st level sky/water -should be blue. - -Sprites left on screen under hiscore table. Deliberate? Or is there -a sprite disable bit somewhere. - -Should road body be largely transparent as I've implemented it? - -Sprite/sprite priorities often look bad. Sprites go to max size for -a frame before they explode - surely a bug. - -Hangs briefly fairly often without massive cpu interleaving (500). -Keys aren't very responsive in test mode. - -The problem code is this: - -CPUA -$1fe02 hangs waiting for ($6002,A5) in shared ram to be zero. - -CPUB -$1056 calls $11ea routine which starts by setting ($6002,A5) non- -zero. At end (after $1218 waiting for a bit from sound comm port) -it alters ($6002,A5) to zero (but this value lasts briefly!). - -Unless context rapidly switches back to cpua this change is missed -because $11ea gets called again *very* rapidly at times when sounds -are being written [that's when the problem manifested]. - -$108a-c2 reads 0x20 bytes from unmapped area, not sure -what it's doing. Perhaps this machine had some optional -exotic input device... - - -Spacegun --------- - -Problem with the zoomed sprites not matching up very well -when forming the background. They jerk a bit relative to -each other... probably a cpu sync thing, perhaps also some -fine-tuning required on the zoomed sprite dimension calcs. - -ADC clock unknown. - - -Double Axle ------------ - -Road occasionally has incorrectly unclipped line appearing at top -(ice stage). Also road 'ghost' often remains on screen - also an -interrupt issue I presume. - -Double Axle has poor sound: one ADPCM rom should be twice as long? -[In log we saw stuff like this, suggesting extra ADPCM rom needed: -YM2610: ADPCM-A end out of range: $001157ff -YM2610: ADPCM-A start out of range: $00111f00] - -Various sprites go missing e.g. mountains half way through cross -country course. Fall off the ledge and crash and you will see -the explosion sprites make other mountain sprites vanish, as -though their entries in spriteram are being overwritten. (Perhaps -an int6 timing/number issue: sprites seem to be ChaseHQ2ish with -a spriteframe toggle - currently this never changes which may be -wrong.) - -Double Axle seems to keep only 1 sprite frame in sprite ram, -which is probably wrong. Game seems to work with no int 6's -at all. Cpu control byte has 0,4,8,c poked into 2nd nibble -and it seems possible this should be causing int6's ? - - -Racing Beat ------------ - -Graphics problems: -- tearing in the main road (tile layer 3 offset?) - likely cause is mame/video/tc0480scp.c in bg23_draw: - ** flawed calc ?? ** - x_index -= (m_x_offset - 0x1f + layer * 4) * ((row_zoom & 0xff) << 8); -- car sprites palette flickering -- layer missing sometimes (random?) ie. motor block sprite after inserting coin - -LAN board is unemulated - -DIP switches are not verified - - -***************************************************************************/ - -#include "emu.h" -#include "includes/taito_z.h" -#include "includes/taitoipt.h" - -#include "cpu/m68000/m68000.h" -#include "cpu/z80/z80.h" -#include "machine/adc0808.h" -#include "machine/eepromser.h" -#include "sound/2610intf.h" -#include "screen.h" -#include "speaker.h" - -#include "contcirc.lh" -#include "dblaxle.lh" - - -void taitoz_state::parse_cpu_control() -{ - /* bit 0 enables cpu B */ - m_subcpu->set_input_line(INPUT_LINE_RESET, (m_cpua_ctrl & 0x1) ? CLEAR_LINE : ASSERT_LINE); -} - -void taitoz_state::cpua_ctrl_w(offs_t offset, u16 data, u16 mem_mask) -{ - //logerror("CPU #0 PC %06x: write %04x to cpu control\n", m_maincpu->pc(), data); - - if (mem_mask == 0xff00) data >>= 8; - data &= 0xff; - - m_cpua_ctrl = data; - parse_cpu_control(); -} - -void taitoz_state::chasehq_cpua_ctrl_w(offs_t offset, u16 data, u16 mem_mask) -{ - cpua_ctrl_w(offset, data, mem_mask); - - m_lamps[0] = BIT(m_cpua_ctrl, 5); - m_lamps[1] = BIT(m_cpua_ctrl, 6); -} - -void taitoz_state::dblaxle_cpua_ctrl_w(offs_t offset, u16 data, u16 mem_mask) -{ - cpua_ctrl_w(offset, data, mem_mask); - - output().set_value("Wheel_Vibration", BIT(data, 2)); -} - - -/*********************************************************** - INTERRUPTS -***********************************************************/ - -void taitoz_state::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) -{ - switch (id) - { - case TIMER_TAITOZ_INTERRUPT6: - /* 68000 A */ - m_maincpu->set_input_line(6, HOLD_LINE); - break; - default: - throw emu_fatalerror("Unknown id in taitoz_state::device_timer"); - } -} - -/***** Routines for particular games *****/ - -INTERRUPT_GEN_MEMBER(taitoz_state::sci_interrupt) -{ - /* Need 2 int4's per int6 else (-$6b63,A5) never set to 1 which - causes all sprites to vanish! Spriteram has areas for 2 frames - so in theory only needs updating every other frame. */ - - m_sci_int6 = !m_sci_int6; - - if (m_sci_int6) - timer_set(downcast<cpu_device *>(&device)->cycles_to_attotime(200000 - 500), TIMER_TAITOZ_INTERRUPT6); - - device.execute().set_input_line(4, HOLD_LINE); -} - - -/****************************************************************** - EEPROM -******************************************************************/ - -static const u16 spacegun_default_eeprom[64]= -{ - 0x0000,0x00ff,0x0001,0x4141,0x0000,0x00ff,0x0000,0xf0f0, - 0x0000,0x00ff,0x0001,0x4141,0x0000,0x00ff,0x0000,0xf0f0, - 0x0080,0x0080,0x0080,0x0080,0x0001,0x4000,0x0000,0xf000, - 0x0001,0x4285,0x0000,0xf1e3,0x0001,0x4000,0x0000,0xf000, - 0x0001,0x4285,0x0000,0xf1e3,0xcccb,0xffff,0xffff,0xffff, - 0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff, - 0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff, - 0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff,0xffff -}; - - -#if 0 -READ16_MEMBER(taitoz_state::eep_latch_r) -{ - return m_eep_latch; -} -#endif - -void taitoz_state::spacegun_eeprom_w(u8 data) -{ -/* 0000xxxx (unused) - 000x0000 eeprom reset (active low) - 00x00000 eeprom clock - 0x000000 eeprom data - x0000000 (unused) */ - - m_eep_latch = data; - m_io_eepromout->write(data, 0xff); -} - - -/********************************************************** - GAME INPUTS -**********************************************************/ - -CUSTOM_INPUT_MEMBER(taitoz_state::gas_pedal_r) -{ - static const u8 retval[8] = { 0,1,3,2,6,7,5,4 }; - return retval[m_gas.read_safe(0) & 7]; -} - -CUSTOM_INPUT_MEMBER(taitoz_state::brake_pedal_r) -{ - static const u8 retval[8] = { 0,1,3,2,6,7,5,4 }; - return retval[m_brake.read_safe(0) & 7]; -} - - -u8 taitoz_state::contcirc_input_bypass_r() -{ - /* Bypass TC0040IOC controller for analog input */ - - u8 port = m_tc0040ioc->port_r(); /* read port number */ - u16 steer = 0xff80 + m_steer.read_safe(0x80); - - switch (port) - { - case 0x08: - return steer & 0xff; - - case 0x09: - return steer >> 8; - - default: - return m_tc0040ioc->portreg_r(); - } -} - - -u8 taitoz_state::chasehq_input_bypass_r() -{ - /* Bypass TC0040IOC controller for extra inputs */ - - u8 port = m_tc0040ioc->port_r(); /* read port number */ - u16 steer = 0xff80 + m_steer.read_safe(0x80); - - switch (port) - { - case 0x08: - return ioport("UNK1")->read(); - - case 0x09: - return ioport("UNK2")->read(); - - case 0x0a: - return ioport("UNK3")->read(); - - case 0x0b: - return ioport("UNK4")->read(); - - case 0x0c: - return steer & 0xff; - - case 0x0d: - return steer >> 8; - - default: - return m_tc0040ioc->portreg_r(); - } -} - - -u16 taitoz_state::sci_steer_input_r(offs_t offset) -{ - u16 steer = 0xff80 + m_steer.read_safe(0x80); - - switch (offset) - { - case 0x04: - return (steer & 0xff); - - case 0x05: - return (steer & 0xff00) >> 8; - } - - logerror("CPU #0 PC %06x: warning - read unmapped steer input offset %06x\n", m_maincpu->pc(), offset); - - return 0xff; -} - - -void taitoz_state::spacegun_gun_output_w(u16 data) -{ - output().set_value("Player1_Gun_Recoil", BIT(data, 0)); - output().set_value("Player2_Gun_Recoil", BIT(data, 1)); -} - - -u16 taitoz_state::dblaxle_steer_input_r(offs_t offset) -{ - u16 steer = 0xff80 + m_steer.read_safe(0x80); - - switch (offset) - { - case 0x04: - return steer >> 8; - - case 0x05: - return steer & 0xff; - } - - logerror("CPU #0 PC %06x: warning - read unmapped steer input offset %02x\n", m_maincpu->pc(), offset); - - return 0x00; -} - -// TODO: proper motorcpu hook-up - - -u16 taitoz_state::chasehq_motor_r(offs_t offset) -{ - switch (offset) - { - case 0x0: - return (machine().rand() &0xff); /* motor status ?? */ - - case 0x101: - return 0x55; /* motor cpu status ? */ - - default: - logerror("CPU #0 PC %06x: warning - read motor cpu %03x\n",m_maincpu->pc(),offset); - return 0; - } -} - -void taitoz_state::chasehq_motor_w(offs_t offset, u16 data) -{ - /* Writes $e00000-25 and $e00200-219 */ - switch (offset) - { - case 0x0: - break; - - case 0x101: - /* outputs will go here, but driver is still broken */ - break; - } - - logerror("CPU #0 PC %06x: warning - write %04x to motor cpu %03x\n",m_maincpu->pc(),data,offset); -} - - -void taitoz_state::nightstr_motor_w(offs_t offset, u16 data) -{ - /* Despite the informative notes at the top, the high end of the word doesn't seem to output any useful data. */ - /* I've added this so someone else can finish it. */ - switch (offset) - { - case 0: - output().set_value("Motor_1_Direction",0); - if (BIT(data, 0)) output().set_value("Motor_1_Direction",1); - if (BIT(data, 1)) output().set_value("Motor_1_Direction",2); - output().set_value("Motor_1_Speed",(data & 60)/4); - - break; - - case 4: - output().set_value("Motor_2_Direction",0); - if (BIT(data, 0)) output().set_value("Motor_2_Direction",1); - if (BIT(data, 1)) output().set_value("Motor_2_Direction",2); - output().set_value("Motor_2_Speed",(data & 60)/4); - - break; - - case 8: - output().set_value("Motor_3_Direction",0); - if (BIT(data, 0)) output().set_value("Motor_3_Direction",1); - if (BIT(data, 1)) output().set_value("Motor_3_Direction",2); - output().set_value("Motor_3_Speed",(data & 60)/4); - - break; - - default: - output().set_value("motor_debug",data); - break; - } - -} - - -void taitoz_state::coin_control_w(u8 data) -{ - machine().bookkeeping().coin_lockout_w(0, BIT(~data, 0)); - machine().bookkeeping().coin_lockout_w(1, BIT(~data, 1)); - machine().bookkeeping().coin_counter_w(0, BIT( data, 2)); - machine().bookkeeping().coin_counter_w(1, BIT( data, 3)); -} - - -u16 taitoz_state::aquajack_unknown_r() -{ - return 0xff; -} - - -/***************************************************** - SOUND -*****************************************************/ - -void taitoz_state::sound_bankswitch_w(u8 data) -{ - m_z80bank->set_entry(data & 7); -} - - -/**** sound pan control ****/ -void taitoz_state::pancontrol_w(offs_t offset, u8 data) -{ - m_filter[offset & 3]->flt_volume_set_volume(data / 255.0f); -} - - -/*********************************************************** - MEMORY STRUCTURES -***********************************************************/ - - -void taitoz_state::contcirc_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x080000, 0x083fff).ram(); - map(0x084000, 0x087fff).ram().share("share1"); - map(0x090001, 0x090001).w(FUNC(taitoz_state::contcirc_out_w)); /* road palette bank, sub CPU reset, 3d glasses control */ - map(0x100000, 0x100007).rw(m_tc0110pcr, FUNC(tc0110pcr_device::word_r), FUNC(tc0110pcr_device::step1_rbswap_word_w)); /* palette */ - map(0x200000, 0x20ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0x220000, 0x22000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); - map(0x300000, 0x301fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); /* "root ram" */ - map(0x400000, 0x4006ff).ram().share("spriteram"); -} - -void taitoz_state::contcirc_cpub_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x080000, 0x083fff).ram(); - map(0x084000, 0x087fff).ram().share("share1"); - map(0x100001, 0x100001).r(FUNC(taitoz_state::contcirc_input_bypass_r)).w(m_tc0040ioc, FUNC(tc0040ioc_device::portreg_w)).umask16(0x00ff); - map(0x100003, 0x100003).rw(m_tc0040ioc, FUNC(tc0040ioc_device::watchdog_r), FUNC(tc0040ioc_device::port_w)); - map(0x200001, 0x200001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x200003, 0x200003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); -} - - -void taitoz_state::chasehq_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x100000, 0x107fff).ram(); - map(0x108000, 0x10bfff).ram().share("share1"); - map(0x10c000, 0x10ffff).ram(); - map(0x400001, 0x400001).r(FUNC(taitoz_state::chasehq_input_bypass_r)).w(m_tc0040ioc, FUNC(tc0040ioc_device::portreg_w)).umask16(0x00ff); - map(0x400003, 0x400003).rw(m_tc0040ioc, FUNC(tc0040ioc_device::watchdog_r), FUNC(tc0040ioc_device::port_w)); - map(0x800000, 0x800001).w(FUNC(taitoz_state::chasehq_cpua_ctrl_w)); - map(0x820001, 0x820001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x820003, 0x820003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); - map(0xa00000, 0xa00007).rw(m_tc0110pcr, FUNC(tc0110pcr_device::word_r), FUNC(tc0110pcr_device::step1_word_w)); /* palette */ - map(0xc00000, 0xc0ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0xc20000, 0xc2000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); - map(0xd00000, 0xd007ff).ram().share("spriteram"); - map(0xe00000, 0xe003ff).rw(FUNC(taitoz_state::chasehq_motor_r), FUNC(taitoz_state::chasehq_motor_w)); /* motor cpu */ -} - -void taitoz_state::chq_cpub_map(address_map &map) -{ - map(0x000000, 0x01ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x108000, 0x10bfff).ram().share("share1"); - map(0x800000, 0x801fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); -} - - -void taitoz_state::enforce_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x104000, 0x107fff).ram().share("share1"); - map(0x200000, 0x200001).w(FUNC(taitoz_state::cpua_ctrl_w)); // works without? - map(0x300000, 0x3006ff).ram().share("spriteram"); - map(0x400000, 0x401fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); /* "root ram" ??? */ - map(0x500000, 0x500007).rw(m_tc0110pcr, FUNC(tc0110pcr_device::word_r), FUNC(tc0110pcr_device::step1_rbswap_word_w)); /* palette */ - map(0x600000, 0x60ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0x620000, 0x62000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); -} - -void taitoz_state::enforce_cpub_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x104000, 0x107fff).ram().share("share1"); - map(0x200001, 0x200001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x200003, 0x200003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); - map(0x300000, 0x300003).rw(m_tc0040ioc, FUNC(tc0040ioc_device::read), FUNC(tc0040ioc_device::write)).umask16(0x00ff); -} - - -void taitoz_state::bshark_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x100000, 0x10ffff).ram(); - map(0x110000, 0x113fff).ram().share("share1"); - map(0x400000, 0x40000f).rw(m_tc0220ioc, FUNC(tc0220ioc_device::read), FUNC(tc0220ioc_device::write)).umask16(0x00ff); - map(0x600000, 0x600001).w(FUNC(taitoz_state::cpua_ctrl_w)); - map(0x800000, 0x80000f).rw("adc", FUNC(adc0808_device::data_r), FUNC(adc0808_device::address_offset_start_w)).umask16(0x00ff); - map(0xa00000, 0xa01fff).ram().w("palette", FUNC(palette_device::write16)).share("palette"); - map(0xc00000, 0xc00fff).ram().share("spriteram"); - map(0xd00000, 0xd0ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0xd20000, 0xd2000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); -} - -void taitoz_state::bsharkjjs_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x100000, 0x10ffff).ram(); - map(0x110000, 0x113fff).ram().share("share1"); - map(0x400000, 0x40000f).rw(m_tc0220ioc, FUNC(tc0220ioc_device::read), FUNC(tc0220ioc_device::write)).umask16(0x00ff); - map(0x600000, 0x600001).w(FUNC(taitoz_state::cpua_ctrl_w)); -// map(0x800000, 0x80000f) // No analog stick, this is the Joystick version - map(0xa00000, 0xa01fff).ram().w("palette", FUNC(palette_device::write16)).share("palette"); - map(0xc00000, 0xc00fff).ram().share("spriteram"); - map(0xd00000, 0xd0ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0xd20000, 0xd2000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); -} - -void taitoz_state::bshark_cpub_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x108000, 0x10bfff).ram(); - map(0x110000, 0x113fff).ram().share("share1"); - map(0x400000, 0x400007).w(FUNC(taitoz_state::pancontrol_w)).umask16(0x00ff); /* pan */ -// map(0x40000a, 0x40000b).r(FUNC(taitoz_state::taitoz_unknown_r)); // ??? - map(0x600000, 0x600007).rw("ymsnd", FUNC(ym2610_device::read), FUNC(ym2610_device::write)).umask16(0x00ff); - map(0x60000c, 0x60000d).noprw(); // interrupt controller? - map(0x60000e, 0x60000f).noprw(); - map(0x800000, 0x801fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); -} - - -void taitoz_state::sci_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x100000, 0x107fff).ram(); - map(0x108000, 0x10bfff).ram().share("share1"); - map(0x10c000, 0x10ffff).ram(); - map(0x200000, 0x20000f).rw(m_tc0220ioc, FUNC(tc0220ioc_device::read), FUNC(tc0220ioc_device::write)).umask16(0x00ff); - map(0x200010, 0x20001f).r(FUNC(taitoz_state::sci_steer_input_r)); -// map(0x400000, 0x400001).w(FUNC(taitoz_state::cpua_ctrl_w)); // ?? doesn't seem to fit what's written - map(0x420001, 0x420001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x420003, 0x420003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); - map(0x800000, 0x801fff).ram().w("palette", FUNC(palette_device::write16)).share("palette"); - map(0xa00000, 0xa0ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0xa20000, 0xa2000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); - map(0xc00000, 0xc03fff).ram().share("spriteram"); - map(0xc08000, 0xc08001).rw(FUNC(taitoz_state::sci_spriteframe_r), FUNC(taitoz_state::sci_spriteframe_w)); -} - -void taitoz_state::sci_cpub_map(address_map &map) -{ - map(0x000000, 0x01ffff).rom(); - map(0x200000, 0x203fff).ram(); - map(0x208000, 0x20bfff).ram().share("share1"); - map(0xa00000, 0xa01fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); -} - - -void taitoz_state::nightstr_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x100000, 0x10ffff).ram(); - map(0x110000, 0x113fff).ram().share("share1"); - map(0x400000, 0x40000f).rw(m_tc0220ioc, FUNC(tc0220ioc_device::read), FUNC(tc0220ioc_device::write)).umask16(0x00ff); - map(0x800000, 0x800001).w(FUNC(taitoz_state::cpua_ctrl_w)); - map(0x820001, 0x820001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x820003, 0x820003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); - map(0xa00000, 0xa00007).rw(m_tc0110pcr, FUNC(tc0110pcr_device::word_r), FUNC(tc0110pcr_device::step1_word_w)); /* palette */ - map(0xc00000, 0xc0ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0xc20000, 0xc2000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); - map(0xd00000, 0xd007ff).ram().share("spriteram"); - map(0xe00000, 0xe00011).w(FUNC(taitoz_state::nightstr_motor_w)); /* Motor outputs */ - map(0xe40000, 0xe4000f).rw("adc", FUNC(adc0808_device::data_r), FUNC(adc0808_device::address_offset_start_w)).umask16(0x00ff); -} - -void taitoz_state::nightstr_cpub_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x104000, 0x107fff).ram().share("share1"); - map(0x800000, 0x801fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); -} - - -void taitoz_state::aquajack_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x104000, 0x107fff).ram().share("share1"); - map(0x200000, 0x200001).w(FUNC(taitoz_state::cpua_ctrl_w)); // not needed, but it's probably like the others - map(0x300000, 0x300007).rw(m_tc0110pcr, FUNC(tc0110pcr_device::word_r), FUNC(tc0110pcr_device::step1_word_w)); /* palette */ - map(0x800000, 0x801fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); - map(0xa00000, 0xa0ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0xa20000, 0xa2000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); - map(0xc40000, 0xc403ff).ram().share("spriteram"); -} - -void taitoz_state::aquajack_cpub_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x104000, 0x107fff).ram().share("share1"); - map(0x200000, 0x20000f).rw(m_tc0220ioc, FUNC(tc0220ioc_device::read), FUNC(tc0220ioc_device::write)).umask16(0x00ff); - map(0x300001, 0x300001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x300003, 0x300003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); - map(0x800800, 0x80083f).r(FUNC(taitoz_state::aquajack_unknown_r)); // Read regularly after write to 800800... -// map(0x800800, 0x800801).w(FUNC(taitoz_state::taitoz_unknown_w)); -// map(0x900000, 0x900007).rw(FUNC(taitoz_state::taitoz_unknown_r), FUNC(taitoz_state::taitoz_unknown_w)); -} - - -void taitoz_state::spacegun_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x30c000, 0x30ffff).ram(); - map(0x310000, 0x31ffff).ram().share("share1"); - map(0x500000, 0x5005ff).ram().share("spriteram"); - map(0x900000, 0x90ffff).rw(m_tc0100scn, FUNC(tc0100scn_device::ram_r), FUNC(tc0100scn_device::ram_w)); /* tilemaps */ - map(0x920000, 0x92000f).rw(m_tc0100scn, FUNC(tc0100scn_device::ctrl_r), FUNC(tc0100scn_device::ctrl_w)); - map(0xb00000, 0xb00007).rw(m_tc0110pcr, FUNC(tc0110pcr_device::word_r), FUNC(tc0110pcr_device::step1_rbswap_word_w)); /* palette */ -} - -void taitoz_state::spacegun_cpub_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x20c000, 0x20ffff).ram(); - map(0x210000, 0x21ffff).ram().share("share1"); - map(0x800000, 0x80000f).rw(m_tc0510nio, FUNC(tc0510nio_device::read), FUNC(tc0510nio_device::write)).umask16(0x00ff).cswidth(16); - map(0xc00000, 0xc00007).rw("ymsnd", FUNC(ym2610_device::read), FUNC(ym2610_device::write)).umask16(0x00ff); - map(0xc0000c, 0xc0000d).noprw(); // interrupt controller? - map(0xc0000e, 0xc0000f).noprw(); - map(0xc20000, 0xc20007).w(FUNC(taitoz_state::pancontrol_w)).umask16(0x00ff); /* pan */ - map(0xe00000, 0xe00001).w(FUNC(taitoz_state::spacegun_gun_output_w)); /* gun outputs */ - map(0xf00000, 0xf0000f).rw("adc", FUNC(adc0808_device::data_r), FUNC(adc0808_device::address_offset_start_w)).umask16(0x00ff); -} - - -void taitoz_state::dblaxle_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x200000, 0x203fff).ram(); - map(0x210000, 0x21ffff).ram().share("share1"); - map(0x400000, 0x40000f).rw(m_tc0510nio, FUNC(tc0510nio_device::halfword_wordswap_r), FUNC(tc0510nio_device::halfword_wordswap_w)); - map(0x400010, 0x40001f).r(FUNC(taitoz_state::dblaxle_steer_input_r)); - map(0x600000, 0x600001).w(FUNC(taitoz_state::dblaxle_cpua_ctrl_w)); /* could this be causing int6 ? */ - map(0x620001, 0x620001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x620003, 0x620003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); - map(0x800000, 0x801fff).ram().w("palette", FUNC(palette_device::write16)).share("palette"); - map(0x900000, 0x90ffff).rw(m_tc0480scp, FUNC(tc0480scp_device::ram_r), FUNC(tc0480scp_device::ram_w)); /* tilemap mirror */ - map(0xa00000, 0xa0ffff).rw(m_tc0480scp, FUNC(tc0480scp_device::ram_r), FUNC(tc0480scp_device::ram_w)); /* tilemaps */ - map(0xa30000, 0xa3002f).rw(m_tc0480scp, FUNC(tc0480scp_device::ctrl_r), FUNC(tc0480scp_device::ctrl_w)); - map(0xc00000, 0xc03fff).ram().share("spriteram"); /* mostly unused ? */ - map(0xc08000, 0xc08001).rw(FUNC(taitoz_state::sci_spriteframe_r), FUNC(taitoz_state::sci_spriteframe_w)); /* set in int6, seems to stay zero */ -} - -void taitoz_state::dblaxle_cpub_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x110000, 0x11ffff).ram().share("share1"); - map(0x300000, 0x301fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); - map(0x500000, 0x503fff).ram(); /* network ram ? (see Gunbustr) */ -} - - -void taitoz_state::racingb_map(address_map &map) -{ - map(0x000000, 0x07ffff).rom(); - map(0x100000, 0x103fff).ram(); - map(0x110000, 0x11ffff).ram().share("share1"); - map(0x300000, 0x30000f).rw(m_tc0510nio, FUNC(tc0510nio_device::halfword_wordswap_r), FUNC(tc0510nio_device::halfword_wordswap_w)); - map(0x300010, 0x30001f).r(FUNC(taitoz_state::dblaxle_steer_input_r)); - map(0x500002, 0x500003).w(FUNC(taitoz_state::cpua_ctrl_w)); - map(0x520001, 0x520001).w(m_tc0140syt, FUNC(tc0140syt_device::master_port_w)); - map(0x520003, 0x520003).rw(m_tc0140syt, FUNC(tc0140syt_device::master_comm_r), FUNC(tc0140syt_device::master_comm_w)); - map(0x700000, 0x701fff).ram().w("palette", FUNC(palette_device::write16)).share("palette"); - map(0x900000, 0x90ffff).rw(m_tc0480scp, FUNC(tc0480scp_device::ram_r), FUNC(tc0480scp_device::ram_w)); /* tilemaps */ - map(0x930000, 0x93002f).rw(m_tc0480scp, FUNC(tc0480scp_device::ctrl_r), FUNC(tc0480scp_device::ctrl_w)); - map(0xb00000, 0xb03fff).ram().share("spriteram"); /* mostly unused ? */ - map(0xb08000, 0xb08001).rw(FUNC(taitoz_state::sci_spriteframe_r), FUNC(taitoz_state::sci_spriteframe_w)); /* alternates 0/0x100 */ -} - -void taitoz_state::racingb_cpub_map(address_map &map) -{ - map(0x000000, 0x03ffff).rom(); - map(0x400000, 0x403fff).ram(); - map(0x410000, 0x41ffff).ram().share("share1"); - map(0xa00000, 0xa01fff).rw(m_tc0150rod, FUNC(tc0150rod_device::word_r), FUNC(tc0150rod_device::word_w)); - map(0xd00000, 0xd03fff).ram(); /* network ram ? */ -} - - -/***************************************************************************/ - -void taitoz_state::z80_sound_map(address_map &map) -{ - map(0x0000, 0x3fff).rom(); - map(0x4000, 0x7fff).bankr("z80bank"); - map(0xc000, 0xdfff).ram(); - map(0xe000, 0xe003).rw("ymsnd", FUNC(ym2610_device::read), FUNC(ym2610_device::write)); - map(0xe200, 0xe200).nopr().w(m_tc0140syt, FUNC(tc0140syt_device::slave_port_w)); - map(0xe201, 0xe201).rw(m_tc0140syt, FUNC(tc0140syt_device::slave_comm_r), FUNC(tc0140syt_device::slave_comm_w)); - map(0xe400, 0xe403).w(FUNC(taitoz_state::pancontrol_w)); /* pan */ - map(0xea00, 0xea00).nopr(); - map(0xee00, 0xee00).nopw(); /* ? */ - map(0xf000, 0xf000).nopw(); /* ? */ - map(0xf200, 0xf200).w(FUNC(taitoz_state::sound_bankswitch_w)); -} - - -/*********************************************************** - INPUT PORTS, DIPs -***********************************************************/ - -#define TAITO_Z_ANALOG_ADJUST( str ) \ - PORT_DIPNAME( 0xff, 0x80, str ) \ - PORT_DIPSETTING( 0x00, "-80" ) \ - PORT_DIPSETTING( 0x01, "-7F" ) \ - PORT_DIPSETTING( 0x02, "-7E" ) \ - PORT_DIPSETTING( 0x03, "-7D" ) \ - PORT_DIPSETTING( 0x04, "-7C" ) \ - PORT_DIPSETTING( 0x05, "-7B" ) \ - PORT_DIPSETTING( 0x06, "-7A" ) \ - PORT_DIPSETTING( 0x07, "-79" ) \ - PORT_DIPSETTING( 0x08, "-78" ) \ - PORT_DIPSETTING( 0x09, "-77" ) \ - PORT_DIPSETTING( 0x0a, "-76" ) \ - PORT_DIPSETTING( 0x0b, "-75" ) \ - PORT_DIPSETTING( 0x0c, "-74" ) \ - PORT_DIPSETTING( 0x0d, "-73" ) \ - PORT_DIPSETTING( 0x0e, "-72" ) \ - PORT_DIPSETTING( 0x0f, "-71" ) \ - PORT_DIPSETTING( 0x10, "-70" ) \ - PORT_DIPSETTING( 0x11, "-6F" ) \ - PORT_DIPSETTING( 0x12, "-6E" ) \ - PORT_DIPSETTING( 0x13, "-6D" ) \ - PORT_DIPSETTING( 0x14, "-6C" ) \ - PORT_DIPSETTING( 0x15, "-6B" ) \ - PORT_DIPSETTING( 0x16, "-6A" ) \ - PORT_DIPSETTING( 0x17, "-69" ) \ - PORT_DIPSETTING( 0x18, "-68" ) \ - PORT_DIPSETTING( 0x19, "-67" ) \ - PORT_DIPSETTING( 0x1a, "-66" ) \ - PORT_DIPSETTING( 0x1b, "-65" ) \ - PORT_DIPSETTING( 0x1c, "-64" ) \ - PORT_DIPSETTING( 0x1d, "-63" ) \ - PORT_DIPSETTING( 0x1e, "-62" ) \ - PORT_DIPSETTING( 0x1f, "-61" ) \ - PORT_DIPSETTING( 0x20, "-60" ) \ - PORT_DIPSETTING( 0x21, "-5F" ) \ - PORT_DIPSETTING( 0x22, "-5E" ) \ - PORT_DIPSETTING( 0x23, "-5D" ) \ - PORT_DIPSETTING( 0x24, "-5C" ) \ - PORT_DIPSETTING( 0x25, "-5B" ) \ - PORT_DIPSETTING( 0x26, "-5A" ) \ - PORT_DIPSETTING( 0x27, "-59" ) \ - PORT_DIPSETTING( 0x28, "-58" ) \ - PORT_DIPSETTING( 0x29, "-57" ) \ - PORT_DIPSETTING( 0x2a, "-56" ) \ - PORT_DIPSETTING( 0x2b, "-55" ) \ - PORT_DIPSETTING( 0x2c, "-54" ) \ - PORT_DIPSETTING( 0x2d, "-53" ) \ - PORT_DIPSETTING( 0x2e, "-52" ) \ - PORT_DIPSETTING( 0x2f, "-51" ) \ - PORT_DIPSETTING( 0x30, "-50" ) \ - PORT_DIPSETTING( 0x31, "-4F" ) \ - PORT_DIPSETTING( 0x32, "-4E" ) \ - PORT_DIPSETTING( 0x33, "-4D" ) \ - PORT_DIPSETTING( 0x34, "-4C" ) \ - PORT_DIPSETTING( 0x35, "-4B" ) \ - PORT_DIPSETTING( 0x36, "-4A" ) \ - PORT_DIPSETTING( 0x37, "-49" ) \ - PORT_DIPSETTING( 0x38, "-48" ) \ - PORT_DIPSETTING( 0x39, "-47" ) \ - PORT_DIPSETTING( 0x3a, "-46" ) \ - PORT_DIPSETTING( 0x3b, "-45" ) \ - PORT_DIPSETTING( 0x3c, "-44" ) \ - PORT_DIPSETTING( 0x3d, "-43" ) \ - PORT_DIPSETTING( 0x3e, "-42" ) \ - PORT_DIPSETTING( 0x3f, "-41" ) \ - PORT_DIPSETTING( 0x40, "-40" ) \ - PORT_DIPSETTING( 0x41, "-3F" ) \ - PORT_DIPSETTING( 0x42, "-3E" ) \ - PORT_DIPSETTING( 0x43, "-3D" ) \ - PORT_DIPSETTING( 0x44, "-3C" ) \ - PORT_DIPSETTING( 0x45, "-3B" ) \ - PORT_DIPSETTING( 0x46, "-3A" ) \ - PORT_DIPSETTING( 0x47, "-39" ) \ - PORT_DIPSETTING( 0x48, "-38" ) \ - PORT_DIPSETTING( 0x49, "-37" ) \ - PORT_DIPSETTING( 0x4a, "-36" ) \ - PORT_DIPSETTING( 0x4b, "-35" ) \ - PORT_DIPSETTING( 0x4c, "-34" ) \ - PORT_DIPSETTING( 0x4d, "-33" ) \ - PORT_DIPSETTING( 0x4e, "-32" ) \ - PORT_DIPSETTING( 0x4f, "-31" ) \ - PORT_DIPSETTING( 0x50, "-30" ) \ - PORT_DIPSETTING( 0x51, "-2F" ) \ - PORT_DIPSETTING( 0x52, "-2E" ) \ - PORT_DIPSETTING( 0x53, "-2D" ) \ - PORT_DIPSETTING( 0x54, "-2C" ) \ - PORT_DIPSETTING( 0x55, "-2B" ) \ - PORT_DIPSETTING( 0x56, "-2A" ) \ - PORT_DIPSETTING( 0x57, "-29" ) \ - PORT_DIPSETTING( 0x58, "-28" ) \ - PORT_DIPSETTING( 0x59, "-27" ) \ - PORT_DIPSETTING( 0x5a, "-26" ) \ - PORT_DIPSETTING( 0x5b, "-25" ) \ - PORT_DIPSETTING( 0x5c, "-24" ) \ - PORT_DIPSETTING( 0x5d, "-23" ) \ - PORT_DIPSETTING( 0x5e, "-22" ) \ - PORT_DIPSETTING( 0x5f, "-21" ) \ - PORT_DIPSETTING( 0x60, "-20" ) \ - PORT_DIPSETTING( 0x61, "-1F" ) \ - PORT_DIPSETTING( 0x62, "-1E" ) \ - PORT_DIPSETTING( 0x63, "-1D" ) \ - PORT_DIPSETTING( 0x64, "-1C" ) \ - PORT_DIPSETTING( 0x65, "-1B" ) \ - PORT_DIPSETTING( 0x66, "-1A" ) \ - PORT_DIPSETTING( 0x67, "-19" ) \ - PORT_DIPSETTING( 0x68, "-18" ) \ - PORT_DIPSETTING( 0x69, "-17" ) \ - PORT_DIPSETTING( 0x6a, "-16" ) \ - PORT_DIPSETTING( 0x6b, "-15" ) \ - PORT_DIPSETTING( 0x6c, "-14" ) \ - PORT_DIPSETTING( 0x6d, "-13" ) \ - PORT_DIPSETTING( 0x6e, "-12" ) \ - PORT_DIPSETTING( 0x6f, "-11" ) \ - PORT_DIPSETTING( 0x70, "-10" ) \ - PORT_DIPSETTING( 0x71, "-0F" ) \ - PORT_DIPSETTING( 0x72, "-0E" ) \ - PORT_DIPSETTING( 0x73, "-0D" ) \ - PORT_DIPSETTING( 0x74, "-0C" ) \ - PORT_DIPSETTING( 0x75, "-0B" ) \ - PORT_DIPSETTING( 0x76, "-0A" ) \ - PORT_DIPSETTING( 0x77, "-09" ) \ - PORT_DIPSETTING( 0x78, "-08" ) \ - PORT_DIPSETTING( 0x79, "-07" ) \ - PORT_DIPSETTING( 0x7a, "-06" ) \ - PORT_DIPSETTING( 0x7b, "-05" ) \ - PORT_DIPSETTING( 0x7c, "-04" ) \ - PORT_DIPSETTING( 0x7d, "-03" ) \ - PORT_DIPSETTING( 0x7e, "-02" ) \ - PORT_DIPSETTING( 0x7f, "-01" ) \ - PORT_DIPSETTING( 0x80, "+00" ) \ - PORT_DIPSETTING( 0x81, "+01" ) \ - PORT_DIPSETTING( 0x82, "+02" ) \ - PORT_DIPSETTING( 0x83, "+03" ) \ - PORT_DIPSETTING( 0x84, "+04" ) \ - PORT_DIPSETTING( 0x85, "+05" ) \ - PORT_DIPSETTING( 0x86, "+06" ) \ - PORT_DIPSETTING( 0x87, "+07" ) \ - PORT_DIPSETTING( 0x88, "+08" ) \ - PORT_DIPSETTING( 0x89, "+09" ) \ - PORT_DIPSETTING( 0x8a, "+0A" ) \ - PORT_DIPSETTING( 0x8b, "+0B" ) \ - PORT_DIPSETTING( 0x8c, "+0C" ) \ - PORT_DIPSETTING( 0x8d, "+0D" ) \ - PORT_DIPSETTING( 0x8e, "+0E" ) \ - PORT_DIPSETTING( 0x8f, "+0F" ) \ - PORT_DIPSETTING( 0x90, "+10" ) \ - PORT_DIPSETTING( 0x91, "+11" ) \ - PORT_DIPSETTING( 0x92, "+12" ) \ - PORT_DIPSETTING( 0x93, "+13" ) \ - PORT_DIPSETTING( 0x94, "+14" ) \ - PORT_DIPSETTING( 0x95, "+15" ) \ - PORT_DIPSETTING( 0x96, "+16" ) \ - PORT_DIPSETTING( 0x97, "+17" ) \ - PORT_DIPSETTING( 0x98, "+18" ) \ - PORT_DIPSETTING( 0x99, "+19" ) \ - PORT_DIPSETTING( 0x9a, "+1A" ) \ - PORT_DIPSETTING( 0x9b, "+1B" ) \ - PORT_DIPSETTING( 0x9c, "+1C" ) \ - PORT_DIPSETTING( 0x9d, "+1D" ) \ - PORT_DIPSETTING( 0x9e, "+1E" ) \ - PORT_DIPSETTING( 0x9f, "+1F" ) \ - PORT_DIPSETTING( 0xa0, "+20" ) \ - PORT_DIPSETTING( 0xa1, "+21" ) \ - PORT_DIPSETTING( 0xa2, "+22" ) \ - PORT_DIPSETTING( 0xa3, "+23" ) \ - PORT_DIPSETTING( 0xa4, "+24" ) \ - PORT_DIPSETTING( 0xa5, "+25" ) \ - PORT_DIPSETTING( 0xa6, "+26" ) \ - PORT_DIPSETTING( 0xa7, "+27" ) \ - PORT_DIPSETTING( 0xa8, "+28" ) \ - PORT_DIPSETTING( 0xa9, "+29" ) \ - PORT_DIPSETTING( 0xaa, "+2A" ) \ - PORT_DIPSETTING( 0xab, "+2B" ) \ - PORT_DIPSETTING( 0xac, "+2C" ) \ - PORT_DIPSETTING( 0xad, "+2D" ) \ - PORT_DIPSETTING( 0xae, "+2E" ) \ - PORT_DIPSETTING( 0xaf, "+2F" ) \ - PORT_DIPSETTING( 0xb0, "+30" ) \ - PORT_DIPSETTING( 0xb1, "+31" ) \ - PORT_DIPSETTING( 0xb2, "+32" ) \ - PORT_DIPSETTING( 0xb3, "+33" ) \ - PORT_DIPSETTING( 0xb4, "+34" ) \ - PORT_DIPSETTING( 0xb5, "+35" ) \ - PORT_DIPSETTING( 0xb6, "+36" ) \ - PORT_DIPSETTING( 0xb7, "+37" ) \ - PORT_DIPSETTING( 0xb8, "+38" ) \ - PORT_DIPSETTING( 0xb9, "+39" ) \ - PORT_DIPSETTING( 0xba, "+3A" ) \ - PORT_DIPSETTING( 0xbb, "+3B" ) \ - PORT_DIPSETTING( 0xbc, "+3C" ) \ - PORT_DIPSETTING( 0xbd, "+3D" ) \ - PORT_DIPSETTING( 0xbe, "+3E" ) \ - PORT_DIPSETTING( 0xbf, "+3F" ) \ - PORT_DIPSETTING( 0xc0, "+40" ) \ - PORT_DIPSETTING( 0xc1, "+41" ) \ - PORT_DIPSETTING( 0xc2, "+42" ) \ - PORT_DIPSETTING( 0xc3, "+43" ) \ - PORT_DIPSETTING( 0xc4, "+44" ) \ - PORT_DIPSETTING( 0xc5, "+45" ) \ - PORT_DIPSETTING( 0xc6, "+46" ) \ - PORT_DIPSETTING( 0xc7, "+47" ) \ - PORT_DIPSETTING( 0xc8, "+48" ) \ - PORT_DIPSETTING( 0xc9, "+49" ) \ - PORT_DIPSETTING( 0xca, "+4A" ) \ - PORT_DIPSETTING( 0xcb, "+4B" ) \ - PORT_DIPSETTING( 0xcc, "+4C" ) \ - PORT_DIPSETTING( 0xcd, "+4D" ) \ - PORT_DIPSETTING( 0xce, "+4E" ) \ - PORT_DIPSETTING( 0xcf, "+4F" ) \ - PORT_DIPSETTING( 0xd0, "+50" ) \ - PORT_DIPSETTING( 0xd1, "+51" ) \ - PORT_DIPSETTING( 0xd2, "+52" ) \ - PORT_DIPSETTING( 0xd3, "+53" ) \ - PORT_DIPSETTING( 0xd4, "+54" ) \ - PORT_DIPSETTING( 0xd5, "+55" ) \ - PORT_DIPSETTING( 0xd6, "+56" ) \ - PORT_DIPSETTING( 0xd7, "+57" ) \ - PORT_DIPSETTING( 0xd8, "+58" ) \ - PORT_DIPSETTING( 0xd9, "+59" ) \ - PORT_DIPSETTING( 0xda, "+5A" ) \ - PORT_DIPSETTING( 0xdb, "+5B" ) \ - PORT_DIPSETTING( 0xdc, "+5C" ) \ - PORT_DIPSETTING( 0xdd, "+5D" ) \ - PORT_DIPSETTING( 0xde, "+5E" ) \ - PORT_DIPSETTING( 0xdf, "+5F" ) \ - PORT_DIPSETTING( 0xe0, "+60" ) \ - PORT_DIPSETTING( 0xe1, "+61" ) \ - PORT_DIPSETTING( 0xe2, "+62" ) \ - PORT_DIPSETTING( 0xe3, "+63" ) \ - PORT_DIPSETTING( 0xe4, "+64" ) \ - PORT_DIPSETTING( 0xe5, "+65" ) \ - PORT_DIPSETTING( 0xe6, "+66" ) \ - PORT_DIPSETTING( 0xe7, "+67" ) \ - PORT_DIPSETTING( 0xe8, "+68" ) \ - PORT_DIPSETTING( 0xe9, "+69" ) \ - PORT_DIPSETTING( 0xea, "+6A" ) \ - PORT_DIPSETTING( 0xeb, "+6B" ) \ - PORT_DIPSETTING( 0xec, "+6C" ) \ - PORT_DIPSETTING( 0xed, "+6D" ) \ - PORT_DIPSETTING( 0xee, "+6E" ) \ - PORT_DIPSETTING( 0xef, "+6F" ) \ - PORT_DIPSETTING( 0xf0, "+70" ) \ - PORT_DIPSETTING( 0xf1, "+71" ) \ - PORT_DIPSETTING( 0xf2, "+72" ) \ - PORT_DIPSETTING( 0xf3, "+73" ) \ - PORT_DIPSETTING( 0xf4, "+74" ) \ - PORT_DIPSETTING( 0xf5, "+75" ) \ - PORT_DIPSETTING( 0xf6, "+76" ) \ - PORT_DIPSETTING( 0xf7, "+77" ) \ - PORT_DIPSETTING( 0xf8, "+78" ) \ - PORT_DIPSETTING( 0xf9, "+79" ) \ - PORT_DIPSETTING( 0xfa, "+7A" ) \ - PORT_DIPSETTING( 0xfb, "+7B" ) \ - PORT_DIPSETTING( 0xfc, "+7C" ) \ - PORT_DIPSETTING( 0xfd, "+7D" ) \ - PORT_DIPSETTING( 0xfe, "+7E" ) \ - PORT_DIPSETTING( 0xff, "+7F" ) - - -static INPUT_PORTS_START( contcirc ) - PORT_START("DSWA") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW A:1") - PORT_DIPSETTING( 0x01, "Cockpit" ) // analog pedals - PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) // digital pedals, no brake?, allow free steering wheel - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Continue_Price ) ) PORT_DIPLOCATION("SW A:2") - PORT_DIPSETTING( 0x02, "Same as Start" ) - PORT_DIPSETTING( 0x00, "Discount" ) - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - PORT_DIPNAME( 0x03, 0x03, "Difficulty 1 (time/speed)" ) PORT_DIPLOCATION("SW B:1,2") - PORT_DIPSETTING( 0x02, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x03, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x01, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x0c, 0x0c, "Difficulty 2 (other cars)" ) PORT_DIPLOCATION("SW B:3,4") - PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x0c, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x10, 0x00, "Steering Wheel" ) PORT_DIPLOCATION("SW B:5") // no function in Cockpit cabinet? - PORT_DIPSETTING( 0x10, "Free" ) - PORT_DIPSETTING( 0x00, "Locked" ) - PORT_DIPNAME( 0x20, 0x00, "3D Effect" ) PORT_DIPLOCATION("SW B:6") // unlisted in manual - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x20, DEF_STR( On ) ) - PORT_DIPUNUSED_DIPLOC( 0x40, 0x40, "SW B:7" ) - PORT_DIPUNUSED_DIPLOC( 0x80, 0x80, "SW B:8" ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN2 ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_CUSTOM_MEMBER(taitoz_state, gas_pedal_r) PORT_CONDITION("DSWA", 0x01, EQUALS, 0x01) - PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Gas Switch") PORT_CONDITION("DSWA", 0x01, EQUALS, 0x00) - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Shifter") PORT_TOGGLE - PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_CUSTOM_MEMBER(taitoz_state, brake_pedal_r) PORT_CONDITION("DSWA", 0x01, EQUALS, 0x01) - PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Brake Switch") PORT_CONDITION("DSWA", 0x01, EQUALS, 0x00) // no function? - - PORT_START("IN2") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("STEER") - PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x20, 0xe0) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_REVERSE PORT_NAME("Steering Wheel") PORT_CONDITION("DSWB", 0x10, EQUALS, 0x00) - PORT_BIT( 0xffff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(100) PORT_KEYDELTA(2) PORT_REVERSE PORT_NAME("Steering Wheel") PORT_CONDITION("DSWB", 0x10, EQUALS, 0x10) - - PORT_START("GAS") - PORT_BIT( 0x07, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(1) PORT_NAME("Gas Pedal") PORT_CONDITION("DSWA", 0x01, EQUALS, 0x01) - - PORT_START("BRAKE") - PORT_BIT( 0x07, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(25) PORT_KEYDELTA(1) PORT_NAME("Brake Pedal") PORT_CONDITION("DSWA", 0x01, EQUALS, 0x01) -INPUT_PORTS_END - -static INPUT_PORTS_START( contcrcu ) - PORT_INCLUDE(contcirc) - - PORT_MODIFY("DSWA") // confirmed - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( contcrcj ) - PORT_INCLUDE(contcirc) - - PORT_MODIFY("DSWA") // confirmed correct for US set as well - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) - - PORT_MODIFY("DSWB") - PORT_DIPUNUSED_DIPLOC( 0x20, 0x20, "SW B:6" ) // Japan & US set 2 CANNOT turn off 3D effect!! -INPUT_PORTS_END - -static INPUT_PORTS_START( chasehq ) // IN3-6 perhaps used with cockpit setup? // - PORT_START("DSWA") - PORT_DIPNAME( 0x03, 0x03, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW A:1,2") /* US Manual states DIPS 1 & 2 "MUST REMAIN OFF" */ - PORT_DIPSETTING( 0x03, "Upright / Steering Lock" ) // digital pedals, locked steering wheel - PORT_DIPSETTING( 0x02, "Upright / No Steering Lock" ) // digital pedals, free steering wheel - PORT_DIPSETTING( 0x01, "Full Throttle Convert, Cockpit" ) // analog pedals, locked steering wheel - PORT_DIPSETTING( 0x00, "Full Throttle Convert, Deluxe" ) // analog pedals, locked steering wheel, motor - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPNAME( 0x0c, 0x0c, "Timer Setting" ) PORT_DIPLOCATION("SW B:3,4") - PORT_DIPSETTING( 0x08, "70 Seconds" ) - PORT_DIPSETTING( 0x04, "65 Seconds" ) - PORT_DIPSETTING( 0x0c, "60 Seconds" ) - PORT_DIPSETTING( 0x00, "55 Seconds" ) - PORT_DIPNAME( 0x10, 0x10, "Turbos Stocked" ) PORT_DIPLOCATION("SW B:5") - PORT_DIPSETTING( 0x10, "3" ) - PORT_DIPSETTING( 0x00, "5" ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Continue_Price ) ) PORT_DIPLOCATION("SW B:6") - PORT_DIPSETTING( 0x20, "Same as Start" ) - PORT_DIPSETTING( 0x00, "Discount" ) - PORT_DIPNAME( 0x40, 0x40, "Clear Damage on Continue" ) PORT_DIPLOCATION("SW B:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW B:8") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x80, DEF_STR( On ) ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN2 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_CUSTOM_MEMBER(taitoz_state, brake_pedal_r) PORT_CONDITION("DSWA", 0x02, EQUALS, 0x00) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Brake Switch") PORT_CONDITION("DSWA", 0x02, EQUALS, 0x02) - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Turbo") - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Calibrate") // ? - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Shifter") PORT_TOGGLE - PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_CUSTOM ) PORT_CUSTOM_MEMBER(taitoz_state, gas_pedal_r) PORT_CONDITION("DSWA", 0x02, EQUALS, 0x00) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Gas Switch") PORT_CONDITION("DSWA", 0x02, EQUALS, 0x02) - - PORT_START("IN2") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("UNK1") /* ??? */ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("UNK2") /* ??? */ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("UNK3") /* ??? */ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("UNK4") /* ??? */ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("STEER") - PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x20, 0xe0) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_NAME("Steering Wheel") PORT_CONDITION("DSWA", 0x03, NOTEQUALS, 0x02) - PORT_BIT( 0xffff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(100) PORT_KEYDELTA(2) PORT_NAME("Steering Wheel") PORT_CONDITION("DSWA", 0x03, EQUALS, 0x02) - - PORT_START("GAS") - PORT_BIT( 0x07, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(25) PORT_KEYDELTA(1) PORT_NAME("Gas Pedal") PORT_CONDITION("DSWA", 0x02, EQUALS, 0x00) - - PORT_START("BRAKE") - PORT_BIT( 0x07, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(25) PORT_KEYDELTA(1) PORT_NAME("Brake Pedal") PORT_CONDITION("DSWA", 0x02, EQUALS, 0x00) -INPUT_PORTS_END - -static INPUT_PORTS_START( chasehqj ) - PORT_INCLUDE(chasehq) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( enforce ) - PORT_START("DSWA") - PORT_DIPUNUSED_DIPLOC( 0x01, 0x01, "SW A:1" ) - PORT_DIPUNUSED_DIPLOC( 0x02, 0x02, "SW A:2" ) - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) // Says SHIFT HI in test mode !? - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) // Says SHIFT LO in test mode !? - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPUNUSED_DIPLOC( 0x04, 0x04, "SW B:3" ) - PORT_DIPUNUSED_DIPLOC( 0x08, 0x08, "SW B:4" ) - PORT_DIPNAME( 0x10, 0x00, "Background scenery" ) PORT_DIPLOCATION("SW B:5") - PORT_DIPSETTING( 0x10, "Crazy scrolling" ) - PORT_DIPSETTING( 0x00, DEF_STR( Normal ) ) - PORT_DIPUNUSED_DIPLOC( 0x20, 0x20, "SW B:6" ) - PORT_DIPUNUSED_DIPLOC( 0x40, 0x40, "SW B:7" ) - PORT_DIPUNUSED_DIPLOC( 0x80, 0x80, "SW B:8" ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN2 ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) /* Bomb */ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) /* Laser */ - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) - - PORT_START("IN2") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) -INPUT_PORTS_END - -static INPUT_PORTS_START( enforcej ) - PORT_INCLUDE(enforce) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( enforceja ) - PORT_INCLUDE(enforce) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) - - PORT_MODIFY("DSWB") - PORT_DIPNAME( 0x30, 0x30, "3D Effects" ) PORT_DIPLOCATION("SW B:5,6") - PORT_DIPSETTING( 0x30, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x20, DEF_STR( On ) ) - PORT_DIPSETTING( 0x10, "In Game Only" ) - PORT_DIPSETTING( 0x00, "In Game Only" ) -INPUT_PORTS_END - -static INPUT_PORTS_START( bshark ) - PORT_START("DSWA") - PORT_DIPNAME( 0x01, 0x01, "Mirror screen" ) PORT_DIPLOCATION("SW A:1") // manual says it must be off - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPUNUSED_DIPLOC( 0x02, 0x02, "SW A:2" ) // manual says it must be off - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPNAME( 0x0c, 0x04, "Speed of Sight" ) PORT_DIPLOCATION("SW B:3,4") - PORT_DIPSETTING( 0x0c, "Slow" ) - PORT_DIPSETTING( 0x08, DEF_STR( Medium ) ) - PORT_DIPSETTING( 0x04, "Fast" ) - PORT_DIPSETTING( 0x00, "Fastest" ) - PORT_DIPUNUSED_DIPLOC( 0x10, 0x10, "SW B:5" ) // manual says all these must be off - PORT_DIPUNUSED_DIPLOC( 0x20, 0x20, "SW B:6" ) - PORT_DIPUNUSED_DIPLOC( 0x40, 0x40, "SW B:7" ) - PORT_DIPUNUSED_DIPLOC( 0x80, 0x80, "SW B:8" ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN1") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("IN2") /* b2-5 affect sound num in service mode but otherwise useless (?) */ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) /* "Fire" */ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) /* same as "Fire" */ - - PORT_START("STICKX") /* values chosen to match allowed crosshair area */ - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_MINMAX(0x35, 0xcc) PORT_SENSITIVITY(20) PORT_KEYDELTA(4) PORT_REVERSE PORT_PLAYER(1) - - PORT_START("X_ADJUST") /* declare as DIP SWITCH instead of VARIABLE REGISTER */ - TAITO_Z_ANALOG_ADJUST( "Adjust Stick H (VARIABLE REGISTER)" ) - - PORT_START("STICKY") /* values chosen to match allowed crosshair area */ - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_MINMAX(0x32, 0xd5) PORT_SENSITIVITY(20) PORT_KEYDELTA(4) PORT_PLAYER(1) - - PORT_START("Y_ADJUST") /* declare as DIP SWITCH instead of VARIABLE REGISTER */ - TAITO_Z_ANALOG_ADJUST( "Adjust Stick V (VARIABLE REGISTER)" ) -INPUT_PORTS_END - -static INPUT_PORTS_START( bsharku ) - PORT_INCLUDE(bshark) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_US_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( bsharkj ) - PORT_INCLUDE(bshark) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( bsharkjjs ) - PORT_START("DSWA") - PORT_DIPNAME( 0x01, 0x01, "Mirror screen" ) PORT_DIPLOCATION("SW A:1") // manual says it must be off - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPUNUSED_DIPLOC( 0x02, 0x02, "SW A:2" ) // manual says it must be off - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPNAME( 0x0c, 0x04, "Speed of Sight" ) PORT_DIPLOCATION("SW B:3,4") - PORT_DIPSETTING( 0x0c, "Slow" ) - PORT_DIPSETTING( 0x08, DEF_STR( Medium ) ) - PORT_DIPSETTING( 0x04, "Fast" ) - PORT_DIPSETTING( 0x00, "Fastest" ) - PORT_DIPUNUSED_DIPLOC( 0x10, 0x10, "SW B:5" ) // manual says all these must be off - PORT_DIPUNUSED_DIPLOC( 0x20, 0x20, "SW B:6" ) - PORT_DIPUNUSED_DIPLOC( 0x40, 0x40, "SW B:7" ) - PORT_DIPUNUSED_DIPLOC( 0x80, 0x80, "SW B:8" ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN1") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Fire") PORT_PLAYER(1) /* "Fire" */ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Warp") PORT_PLAYER(1) /* Same as Fire, but called "Warp" in Service Mode */ -INPUT_PORTS_END - -static INPUT_PORTS_START( sci ) - PORT_START("DSWA") - PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW A:1") - PORT_DIPSETTING( 0x01, "Cockpit" ) - PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) - PORT_DIPUNUSED_DIPLOC( 0x02, 0x02, "SW A:2" ) /* Manual states "MUST REMAIN OFF" */ - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPNAME( 0x0c, 0x0c, "Timer Setting" ) PORT_DIPLOCATION("SW B:3,4") - PORT_DIPSETTING( 0x08, "70 Seconds" ) - PORT_DIPSETTING( 0x04, "65 Seconds" ) - PORT_DIPSETTING( 0x0c, "60 Seconds" ) - PORT_DIPSETTING( 0x00, "55 Seconds" ) - PORT_DIPNAME( 0x10, 0x10, "Turbos Stocked" ) PORT_DIPLOCATION("SW B:5") - PORT_DIPSETTING( 0x10, "3" ) - PORT_DIPSETTING( 0x00, "5" ) - PORT_DIPNAME( 0x20, 0x20, "Steering Radius" ) PORT_DIPLOCATION("SW B:6") - PORT_DIPSETTING( 0x00, "270 Degree" ) - PORT_DIPSETTING( 0x20, "360 Degree" ) - PORT_DIPNAME( 0x40, 0x40, "Clear Damage on Continue" ) PORT_DIPLOCATION("SW B:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, "Siren Volume" ) PORT_DIPLOCATION("SW B:8") - PORT_DIPSETTING( 0x80, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Low ) ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Gun Trigger") - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Brake Switch") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Turbo") - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Center") - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Shifter") PORT_TOGGLE - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Gas Switch") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN2") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("STEER") /* steering */ - PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x20, 0xe0) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_NAME("Steering Wheel") -INPUT_PORTS_END - -static INPUT_PORTS_START( sciu ) - PORT_INCLUDE(sci) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_US_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( scij ) - PORT_INCLUDE(sci) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( nightstr ) - PORT_START("DSWA") - PORT_DIPNAME( 0x01, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW A:1") - PORT_DIPSETTING( 0x01, "Cockpit" ) - PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) - PORT_DIPUNUSED_DIPLOC( 0x02, 0x02, "SW A:2" ) // manual says it must be off - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPNAME( 0x0c, 0x0c, "Bonus Shields" ) PORT_DIPLOCATION("SW B:3,4") - PORT_DIPSETTING( 0x08, "3" ) - PORT_DIPSETTING( 0x04, "2" ) - PORT_DIPSETTING( 0x0c, "1" ) - PORT_DIPSETTING( 0x00, DEF_STR( None ) ) - PORT_DIPNAME( 0x30, 0x30, "Shields" ) PORT_DIPLOCATION("SW B:5,6") - PORT_DIPSETTING( 0x00, "3" ) - PORT_DIPSETTING( 0x10, "4" ) - PORT_DIPSETTING( 0x30, "5" ) - PORT_DIPSETTING( 0x20, "6" ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW B:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, "Trigger Turbo" ) PORT_DIPLOCATION("SW B:8") - PORT_DIPSETTING( 0x80, "7 Shots / Second" ) - PORT_DIPSETTING( 0x00, "10 Shots / Second" ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT ) - - PORT_START("IN1") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - - PORT_START("STICKX") - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(60) PORT_KEYDELTA(15) PORT_PLAYER(1) - - PORT_START("STICKY") - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(60) PORT_KEYDELTA(15) PORT_REVERSE PORT_PLAYER(1) - - PORT_START("X_ADJUST") /* declare as DIP SWITCH instead of VARIABLE REGISTER */ - TAITO_Z_ANALOG_ADJUST( "Adjust Stick H (VARIABLE REGISTER)" ) - - PORT_START("Y_ADJUST") /* declare as DIP SWITCH instead of VARIABLE REGISTER */ - TAITO_Z_ANALOG_ADJUST( "Adjust Stick V (VARIABLE REGISTER)" ) -INPUT_PORTS_END - -static INPUT_PORTS_START( nghtstrj ) - PORT_INCLUDE( nightstr ) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( nghtstru ) - PORT_INCLUDE( nightstr ) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_US_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( aquajack ) - PORT_START("DSWA") - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW A:1") - PORT_DIPSETTING( 0x80, "Cockpit" ) - PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) - PORT_DIPUNUSED_DIPLOC( 0x40, 0x40, "SW A:2" ) /* Dip 2 shown as "Must Remain in "Off" Position" in manual */ - PORT_SERVICE_DIPLOC( 0x20, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x10, DEF_STR( On ) ) - PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW A:6,5") - PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x08, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) - PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW A:8,7") /* The Romstar (US version) manual list this as "Continue Pricing" */ - PORT_DIPSETTING( 0x03, DEF_STR( 1C_2C ) ) /* Same pricing as Coin A */ - PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) /* 1 Coin to Continue */ - PORT_DIPSETTING( 0x02, DEF_STR( 1C_4C ) ) /* 2 Coins to Continue */ - PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) ) /* 3 Coins to Continue */ - - PORT_START("DSWB") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW B:2,1") - PORT_DIPSETTING( 0x40, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW B:4,3") - PORT_DIPSETTING( 0x00, "30k" ) - PORT_DIPSETTING( 0x30, "50k" ) - PORT_DIPSETTING( 0x10, "80k" ) - PORT_DIPSETTING( 0x20, "100k" ) - PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW B:6,5") - PORT_DIPSETTING( 0x08, "1" ) - PORT_DIPSETTING( 0x04, "2" ) - PORT_DIPSETTING( 0x0c, "3" ) - PORT_DIPSETTING( 0x00, "5" ) - PORT_DIPUNUSED_DIPLOC( 0x02, 0x02, "SW B:7" ) /* Dip 7 shown as "Do Not Touch" in manuals */ - PORT_DIPUNUSED_DIPLOC( 0x01, 0x01, "SW B:8" ) /* Dip 8 */ - /* The previous taito_z.c said --- - The Romstar (US version) manual list this as "Endless Game" - Has no effect on "World" version - --- , and declared it as unused switch. - */ - /* PORT_DIPNAME( 0x01, 0x01, "Endless Game" ) PORT_DIPLOCATION("SW B:8") */ - /* PORT_DIPSETTING( 0x01, "Normal Game" ) */ - /* PORT_DIPSETTING( 0x00, "Endless Game" ) */ - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN2") /* what is it ??? */ - PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_PLAYER(1) -INPUT_PORTS_END - -static INPUT_PORTS_START( aquajckj ) - PORT_INCLUDE(aquajack) - - PORT_MODIFY("DSWA") - PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW A:6,5") - PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) ) - PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW A:8,7") - PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) -INPUT_PORTS_END - -static INPUT_PORTS_START( spacegun ) - PORT_START("DSWA") - PORT_DIPUNUSED_DIPLOC( 0x01, 0x01, "SW A:1" ) // Manual says Always Off - PORT_DIPNAME( 0x02, 0x02, "Always have gunsight power up" ) PORT_DIPLOCATION("SW A:2") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPUNUSED_DIPLOC( 0x04, 0x04, "SW B:3" ) // Manual lists dips 3 through 6 and 8 as Always off - PORT_DIPUNUSED_DIPLOC( 0x08, 0x08, "SW B:4" ) - PORT_DIPUNUSED_DIPLOC( 0x10, 0x10, "SW B:5" ) - PORT_DIPUNUSED_DIPLOC( 0x20, 0x20, "SW B:6" ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW B:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, "Disable Pedal (?)" ) PORT_DIPLOCATION("SW B:8") - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2) - - PORT_START("IN1") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START( "EEPROMOUT" ) - PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_serial_93cxx_device, cs_write) - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_serial_93cxx_device, clk_write) - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_serial_93cxx_device, di_write) - - PORT_START("STICKX1") - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_CROSSHAIR(X, 1.0, 0.0, 0) PORT_SENSITIVITY(25) PORT_KEYDELTA(13) PORT_CENTERDELTA(0) PORT_REVERSE PORT_PLAYER(1) - - PORT_START("STICKY1") - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(25) PORT_KEYDELTA(13) PORT_CENTERDELTA(0) PORT_PLAYER(1) - - PORT_START("STICKX2") - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_CROSSHAIR(X, 1.0, 0.0, 0) PORT_SENSITIVITY(25) PORT_KEYDELTA(13) PORT_CENTERDELTA(0) PORT_REVERSE PORT_PLAYER(2) - - PORT_START("STICKY2") - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(25) PORT_KEYDELTA(13) PORT_CENTERDELTA(0) PORT_PLAYER(2) -INPUT_PORTS_END - -static INPUT_PORTS_START( spacegnj ) - PORT_INCLUDE( spacegun ) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( spacegnu ) - PORT_INCLUDE( spacegun ) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_US_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( dblaxle ) // Side by Side linkable versions - PORT_START("DSWA") - PORT_DIPUNUSED_DIPLOC( 0x01, 0x01, "SW A:1" ) - PORT_DIPNAME( 0x02, 0x02, "Gear shift" ) PORT_DIPLOCATION("SW A:2") - PORT_DIPSETTING( 0x02, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, "Inverted" ) - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_US_LOC(SW A) - - PORT_START("DSWB") - TAITO_DIFFICULTY_LOC(SW B) - PORT_DIPNAME( 0x04, 0x00, "Network?" ) PORT_DIPLOCATION("SW B:3") // doesn't boot if on - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x04, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, "Player Truck" ) PORT_DIPLOCATION("SW B:4") - PORT_DIPSETTING( 0x08, "Red" ) - PORT_DIPSETTING( 0x00, "Blue" ) - PORT_DIPNAME( 0x10, 0x10, "Back button" ) PORT_DIPLOCATION("SW B:5") - PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, "Inverted" ) - PORT_DIPUNUSED_DIPLOC( 0x20, 0x20, "SW B:6" ) // causes "Root CPU Error" on "Icy Road" (Tourniquet) - PORT_DIPUNUSED_DIPLOC( 0x40, 0x40, "SW B:7" ) - PORT_DIPUNUSED_DIPLOC( 0x80, 0x80, "SW B:8" ) - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Shifter") PORT_TOGGLE - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Brake Switch") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Reverse") - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nitro") - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Center") - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Gas Switch") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN2") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("STEER") - PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x40, 0xc0) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_NAME("Steering Wheel") -INPUT_PORTS_END - -static INPUT_PORTS_START( dblaxles ) // Single player versions - PORT_INCLUDE(dblaxle) - - PORT_MODIFY("DSWA") - PORT_DIPNAME( 0x01, 0x01, "Handle Pulse" ) PORT_DIPLOCATION("SW A:1") - PORT_DIPSETTING( 0x01, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, "Fast" ) - - PORT_MODIFY("DSWB") - PORT_DIPNAME( 0x04, 0x00, "Back Gear" ) PORT_DIPLOCATION("SW B:3") // If set to NORMAL you need to keep REVERSE pressed to go forward - PORT_DIPSETTING( 0x04, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, "No Back Gear" ) - PORT_DIPNAME( 0x08, 0x08, "Vibration Mode" ) PORT_DIPLOCATION("SW B:4") - PORT_DIPSETTING( 0x08, "Partial Vibration" ) - PORT_DIPSETTING( 0x00, "All The Time Vibration" ) - PORT_DIPNAME( 0x10, 0x10, "Steering Wheel Vibration" ) PORT_DIPLOCATION("SW B:5") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x10, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, "Select Round" ) PORT_DIPLOCATION("SW B:6") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x20, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW B:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x00, "Buy-In" ) PORT_DIPLOCATION("SW B:8") // manual states "In countries except North America this setting should be ON" - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x80, DEF_STR( On ) ) // You buy truck upgrades like Big Tires, Engine and Nitro canisters before the race -INPUT_PORTS_END - -static INPUT_PORTS_START( pwheelsj ) - PORT_INCLUDE(dblaxle) - - PORT_MODIFY("DSWA") - TAITO_COINAGE_JAPAN_OLD_LOC(SW A) -INPUT_PORTS_END - -static INPUT_PORTS_START( racingb ) - PORT_START("DSWA") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW A:1") // don't know what is what - PORT_DIPSETTING( 0x00, "Type 0" ) // free steering wheel - PORT_DIPSETTING( 0x01, "Type 1" ) // locked steering wheel - PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW A:2" ) - PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW A:3" ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW A:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - TAITO_COINAGE_WORLD_LOC(SW A) - - PORT_START("DSWB") - PORT_DIPUNKNOWN_DIPLOC( 0x01, 0x01, "SW B:1" ) - PORT_DIPUNKNOWN_DIPLOC( 0x02, 0x02, "SW B:2" ) - PORT_DIPNAME( 0x04, 0x04, "Steering Wheel Range" ) PORT_DIPLOCATION("SW B:3") // no function in Type 0 cabinet? - PORT_DIPSETTING( 0x04, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( High ) ) - PORT_DIPNAME( 0x08, 0x08, "Steering Wheel Type" ) PORT_DIPLOCATION("SW B:4") // no function in Type 0 cabinet? - PORT_DIPSETTING( 0x00, "Free" ) - PORT_DIPSETTING( 0x08, "Locked" ) - PORT_DIPNAME( 0x10, 0x10, "Network" ) PORT_DIPLOCATION("SW B:5") // gives a LAN error - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x60, 0x60, "Player Car" ) PORT_DIPLOCATION("SW B:6,7") - PORT_DIPSETTING( 0x60, "Red" ) - PORT_DIPSETTING( 0x40, "Blue" ) - PORT_DIPSETTING( 0x20, "Green" ) - PORT_DIPSETTING( 0x00, "Yellow" ) - PORT_DIPUNKNOWN_DIPLOC( 0x80, 0x80, "SW B:8" ) // affects car color too? - - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Shifter") PORT_TOGGLE - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Brake Switch") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Pit In") - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Center") - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Gas Switch") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("IN2") /* unused */ - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_START("STEER") - PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_NAME("Steering Wheel") PORT_CONDITION("DSWB", 0x08, EQUALS, 0x08) - PORT_BIT( 0xffff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_NAME("Steering Wheel") PORT_CONDITION("DSWB", 0x08, EQUALS, 0x00) -INPUT_PORTS_END - - -/*********************************************************** - GFX DECODING -***********************************************************/ - -static const gfx_layout tile16x8_layout = -{ - 16,8, /* 16*8 sprites */ - RGN_FRAC(1,1), - 4, /* 4 bits per pixel */ - { STEP4(0,16) }, - { STEP16(0,1) }, - { STEP8(0,16*4) }, - 64*8 /* every sprite takes 64 consecutive bytes */ -}; - -static const gfx_layout tile16x16_layout = -{ - 16,16, /* 16*16 sprites */ - RGN_FRAC(1,1), - 4, /* 4 bits per pixel */ - { STEP4(0,16) }, - { STEP16(0,1) }, - { STEP16(0,16*4) }, - 64*16 /* every sprite takes 128 consecutive bytes */ -}; - -static GFXDECODE_START( gfx_taitoz ) - GFXDECODE_ENTRY( "sprites", 0x0, tile16x8_layout, 0, 256 ) /* sprite parts */ -GFXDECODE_END - -static GFXDECODE_START( gfx_chasehq ) - GFXDECODE_ENTRY( "sprites", 0x0, tile16x16_layout, 0, 256 ) /* sprite parts */ - GFXDECODE_ENTRY( "sprites2", 0x0, tile16x16_layout, 0, 256 ) /* sprite parts */ -GFXDECODE_END - - -/*********************************************************** - MACHINE DRIVERS - -CPU Interleaving ----------------- - -Chasehq2 needs high interleaving to have sound (not checked -since May 2001 - may have changed). - -Enforce with interleave of 1 sometimes lets you take over from -the demo game when you coin up! Set to 10 seems to cure this. - -Bshark needs the high cpu interleaving to run test mode. - -Nightstr needs the high cpu interleaving to get through init. - -Aquajack has it VERY high to cure frequent sound-related -hangs. - -Dblaxle has 10 to boot up reliably but very occasionally gets -a "root cpu error" still. - -Racingb inherited interleave from Dblaxle - other values not -tested! - -Mostly it's the 2nd 68K which writes to road chip, so syncing -between it and the master 68K may be important. Contcirc -and ChaseHQ have interleave of only 1 - possible cause of -Contcirc road glitchiness in attract? - -***********************************************************/ - -/*********************************************************** - SAVE STATES -***********************************************************/ - -void taitoz_state::device_post_load() -{ - parse_cpu_control(); -} - -void taitoz_state::machine_start() -{ - if (m_z80bank) - { - int banks = memregion("audiocpu")->bytes() / 0x4000; - m_z80bank->configure_entries(0, banks, memregion("audiocpu")->base(), 0x4000); - } - - save_item(NAME(m_cpua_ctrl)); - - /* these are specific to various games: we ought to split the inits */ - save_item(NAME(m_sci_int6)); - save_item(NAME(m_ioc220_port)); -} - -MACHINE_START_MEMBER(taitoz_state,chasehq) -{ - m_lamps.resolve(); - machine_start(); -} - -void taitoz_state::machine_reset() -{ - m_cpua_ctrl = 0xff; - m_sci_int6 = 0; - m_ioc220_port = 0; -} - -/* Contcirc vis area seems narrower than the other games... */ - -void taitoz_state::contcirc(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 12000000); /* 12 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::contcirc_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq6_line_hold)); - - Z80(config, m_audiocpu, 16000000/4); /* 4 MHz ??? */ - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, 12000000); /* 12 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::contcirc_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq6_line_hold)); - - TC0040IOC(config, m_tc0040ioc, 0); - m_tc0040ioc->read_0_callback().set_ioport("DSWA"); - m_tc0040ioc->read_1_callback().set_ioport("DSWB"); - m_tc0040ioc->read_2_callback().set_ioport("IN0"); - m_tc0040ioc->read_3_callback().set_ioport("IN1"); - m_tc0040ioc->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0040ioc->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 3*8, 31*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_contcirc)); - screen.set_palette(m_tc0110pcr); - - GFXDECODE(config, m_gfxdecode, m_tc0110pcr, gfx_taitoz); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_palette(m_tc0110pcr); - - TC0150ROD(config, m_tc0150rod, 0); - - TC0110PCR(config, m_tc0110pcr, 0); - - /* sound hardware */ - SPEAKER(config, "front").front_center(); - SPEAKER(config, "rear").rear_center(); - SPEAKER(config, "subwoofer").set_position(0.0, 0.0, 0.0); // FIXME: where is this speaker located? - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "subwoofer", 0.20); - ymsnd.add_route(1, "2610.1.l", 2.0); - ymsnd.add_route(1, "2610.1.r", 2.0); - ymsnd.add_route(2, "2610.2.l", 2.0); - ymsnd.add_route(2, "2610.2.r", 2.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rear", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "front", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rear", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "front", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - -void taitoz_state::chasehq(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 12000000); /* 12 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::chasehq_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - Z80(config, m_audiocpu, 16000000/4); /* 4 MHz ??? */ - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, 12000000); /* 12 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::chq_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - MCFG_MACHINE_START_OVERRIDE(taitoz_state,chasehq) - - TC0040IOC(config, m_tc0040ioc, 0); - m_tc0040ioc->read_0_callback().set_ioport("DSWA"); - m_tc0040ioc->read_1_callback().set_ioport("DSWB"); - m_tc0040ioc->read_2_callback().set_ioport("IN0"); - m_tc0040ioc->read_3_callback().set_ioport("IN1"); - m_tc0040ioc->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0040ioc->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_chasehq)); - screen.set_palette(m_tc0110pcr); - - GFXDECODE(config, m_gfxdecode, m_tc0110pcr, gfx_chasehq); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_palette(m_tc0110pcr); - - TC0150ROD(config, m_tc0150rod, 0); - - TC0110PCR(config, m_tc0110pcr, 0); - - /* sound hardware */ - SPEAKER(config, "front").front_center(); - SPEAKER(config, "rear").rear_center(); - SPEAKER(config, "subwoofer").set_position(0.0, 0.0, 0.0); // FIXME: where is this speaker located? - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "subwoofer", 0.20); - ymsnd.add_route(1, "2610.1.l", 1.0); - ymsnd.add_route(1, "2610.1.r", 1.0); - ymsnd.add_route(2, "2610.2.l", 1.0); - ymsnd.add_route(2, "2610.2.r", 1.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rear", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "front", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rear", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "front", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - -void taitoz_state::enforce(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 12000000); /* 12 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::enforce_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq6_line_hold)); - - Z80(config, m_audiocpu, 16000000/4); /* 4 MHz ??? */ - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, 12000000); /* 12 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::enforce_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq6_line_hold)); - - config.set_maximum_quantum(attotime::from_hz(600)); - - TC0040IOC(config, m_tc0040ioc, 0); - m_tc0040ioc->read_0_callback().set_ioport("DSWA"); - m_tc0040ioc->read_1_callback().set_ioport("DSWB"); - m_tc0040ioc->read_2_callback().set_ioport("IN0"); - m_tc0040ioc->read_3_callback().set_ioport("IN1"); - m_tc0040ioc->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0040ioc->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 31*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_contcirc)); - screen.set_palette(m_tc0110pcr); - - GFXDECODE(config, m_gfxdecode, m_tc0110pcr, gfx_taitoz); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_palette(m_tc0110pcr); - - TC0150ROD(config, m_tc0150rod, 0); - - TC0110PCR(config, m_tc0110pcr, 0); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "lspeaker", 0.25); - ymsnd.add_route(0, "rspeaker", 0.25); - ymsnd.add_route(1, "2610.1.l", 20.0); - ymsnd.add_route(1, "2610.1.r", 20.0); - ymsnd.add_route(2, "2610.2.l", 20.0); - ymsnd.add_route(2, "2610.2.r", 20.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - -void taitoz_state::bshark_base(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 12000000); /* 12 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::bshark_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - M68000(config, m_subcpu, 12000000); /* 12 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::bshark_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - config.set_maximum_quantum(attotime::from_hz(6000)); - - TC0220IOC(config, m_tc0220ioc, 0); - m_tc0220ioc->read_0_callback().set_ioport("DSWA"); - m_tc0220ioc->read_1_callback().set_ioport("DSWB"); - m_tc0220ioc->read_2_callback().set_ioport("IN0"); - m_tc0220ioc->read_3_callback().set_ioport("IN1"); - m_tc0220ioc->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0220ioc->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_bshark)); - screen.set_palette("palette"); - - GFXDECODE(config, m_gfxdecode, "palette", gfx_taitoz); - PALETTE(config, "palette").set_format(palette_device::xBGR_555, 4096); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_palette("palette"); - - TC0150ROD(config, m_tc0150rod, 0); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - //ymsnd.irq_handler().set_inputline(m_audiocpu, 0); // DG: this is probably specific to Z80 and wrong? - ymsnd.add_route(0, "lspeaker", 0.25); - ymsnd.add_route(0, "rspeaker", 0.25); - ymsnd.add_route(1, "2610.1.l", 28.0); - ymsnd.add_route(1, "2610.1.r", 28.0); - ymsnd.add_route(2, "2610.2.l", 28.0); - ymsnd.add_route(2, "2610.2.r", 28.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); -} - -void taitoz_state::bshark(machine_config &config) -{ - bshark_base(config); - - adc0809_device &adc(ADC0809(config, "adc", 500000)); // clock unknown - adc.eoc_ff_callback().set_inputline("maincpu", 6); - adc.in_callback<0>().set_ioport("STICKX"); - adc.in_callback<1>().set_ioport("X_ADJUST"); - adc.in_callback<2>().set_ioport("STICKY"); - adc.in_callback<3>().set_ioport("Y_ADJUST"); -} - -void taitoz_state::bsharkjjs(machine_config &config) -{ - bshark_base(config); - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::bsharkjjs_map); -} - - -void taitoz_state::sci(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 12000000); /* 12 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::sci_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::sci_interrupt)); - - Z80(config, m_audiocpu, 16000000/4); /* 4 MHz ??? */ - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, 12000000); /* 12 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::sci_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - config.set_maximum_quantum(attotime::from_hz(3000)); - - TC0220IOC(config, m_tc0220ioc, 0); - m_tc0220ioc->read_0_callback().set_ioport("DSWA"); - m_tc0220ioc->read_1_callback().set_ioport("DSWB"); - m_tc0220ioc->read_2_callback().set_ioport("IN0"); - m_tc0220ioc->read_3_callback().set_ioport("IN1"); - m_tc0220ioc->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0220ioc->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_sci)); - screen.set_palette("palette"); - - GFXDECODE(config, m_gfxdecode, "palette", gfx_taitoz); - PALETTE(config, "palette").set_format(palette_device::xBGR_555, 4096); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_palette("palette"); - - TC0150ROD(config, m_tc0150rod, 0); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "lspeaker", 0.25); - ymsnd.add_route(0, "rspeaker", 0.25); - ymsnd.add_route(1, "2610.1.l", 2.0); - ymsnd.add_route(1, "2610.1.r", 2.0); - ymsnd.add_route(2, "2610.2.l", 2.0); - ymsnd.add_route(2, "2610.2.r", 2.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - -void taitoz_state::nightstr(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 12000000); /* 12 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::nightstr_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - Z80(config, m_audiocpu, 16000000/4); /* 4 MHz ??? */ - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, 12000000); /* 12 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::nightstr_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - config.set_maximum_quantum(attotime::from_hz(6000)); - - adc0809_device &adc(ADC0809(config, "adc", 500000)); // clock unknown - adc.eoc_ff_callback().set_inputline("maincpu", 6); - adc.in_callback<0>().set_ioport("STICKX"); - adc.in_callback<1>().set_ioport("STICKY"); - adc.in_callback<2>().set_ioport("X_ADJUST"); - adc.in_callback<3>().set_ioport("Y_ADJUST"); - - TC0220IOC(config, m_tc0220ioc, 0); - m_tc0220ioc->read_0_callback().set_ioport("DSWA"); - m_tc0220ioc->read_1_callback().set_ioport("DSWB"); - m_tc0220ioc->read_2_callback().set_ioport("IN0"); - m_tc0220ioc->read_3_callback().set_ioport("IN1"); - m_tc0220ioc->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0220ioc->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_chasehq)); - screen.set_palette(m_tc0110pcr); - - GFXDECODE(config, m_gfxdecode, m_tc0110pcr, gfx_chasehq); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_palette(m_tc0110pcr); - - TC0150ROD(config, m_tc0150rod, 0); - - TC0110PCR(config, m_tc0110pcr, 0); - - /* sound hardware */ - SPEAKER(config, "front").front_center(); - SPEAKER(config, "rear").rear_center(); - SPEAKER(config, "subwoofer").set_position(0.0, 0.0, 0.0); // FIXME: where is this located in the cabinet? - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "subwoofer", 0.20); - ymsnd.add_route(1, "2610.1.l", 2.0); - ymsnd.add_route(1, "2610.1.r", 2.0); - ymsnd.add_route(2, "2610.2.l", 2.0); - ymsnd.add_route(2, "2610.2.r", 2.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rear", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "front", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rear", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "front", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - -void taitoz_state::aquajack(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 12000000); /* 12 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::aquajack_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - Z80(config, m_audiocpu, 16000000/4); /* 4 MHz ??? */ - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, 12000000); /* 12 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::aquajack_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - config.set_maximum_quantum(attotime::from_hz(30000)); - - TC0220IOC(config, m_tc0220ioc, 0); - m_tc0220ioc->read_0_callback().set_ioport("DSWA"); - m_tc0220ioc->read_1_callback().set_ioport("DSWB"); - m_tc0220ioc->read_2_callback().set_ioport("IN0"); - m_tc0220ioc->read_3_callback().set_ioport("IN1"); - m_tc0220ioc->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0220ioc->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_aquajack)); - screen.set_palette(m_tc0110pcr); - - GFXDECODE(config, m_gfxdecode, m_tc0110pcr, gfx_taitoz); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_palette(m_tc0110pcr); - - TC0150ROD(config, m_tc0150rod, 0); - - TC0110PCR(config, m_tc0110pcr, 0); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "lspeaker", 0.25); - ymsnd.add_route(0, "rspeaker", 0.25); - ymsnd.add_route(1, "2610.1.l", 2.0); - ymsnd.add_route(1, "2610.1.r", 2.0); - ymsnd.add_route(2, "2610.2.l", 2.0); - ymsnd.add_route(2, "2610.2.r", 2.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - -void taitoz_state::spacegun(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, 16000000); /* 16 MHz ??? */ - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::spacegun_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - M68000(config, m_subcpu, 16000000); /* 16 MHz ??? */ - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::spacegun_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - EEPROM_93C46_16BIT(config, m_eeprom).default_data(spacegun_default_eeprom, 128); - - adc0809_device &adc(ADC0809(config, "adc", 500000)); // clock unknown - adc.eoc_ff_callback().set_inputline("sub", 5); - adc.in_callback<0>().set_ioport("STICKX1"); - adc.in_callback<1>().set_ioport("STICKY1"); - adc.in_callback<2>().set_ioport("STICKX2"); - adc.in_callback<3>().set_ioport("STICKY2"); - - TC0510NIO(config, m_tc0510nio, 0); - m_tc0510nio->read_0_callback().set_ioport("DSWA"); - m_tc0510nio->read_1_callback().set_ioport("DSWB"); - m_tc0510nio->read_2_callback().set_ioport("IN0"); - m_tc0510nio->read_3_callback().set(m_eeprom, FUNC(eeprom_serial_93cxx_device::do_read)).lshift(7); - m_tc0510nio->write_3_callback().set(FUNC(taitoz_state::spacegun_eeprom_w)); - m_tc0510nio->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0510nio->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_spacegun)); - screen.set_palette(m_tc0110pcr); - - GFXDECODE(config, m_gfxdecode, m_tc0110pcr, gfx_taitoz); - - TC0100SCN(config, m_tc0100scn, 0); - m_tc0100scn->set_offsets(4, 0); - m_tc0100scn->set_palette(m_tc0110pcr); - - TC0110PCR(config, m_tc0110pcr, 0); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ym2610_device &ymsnd(YM2610(config, "ymsnd", 16000000/2)); - //ymsnd.irq_handler().set_inputline(m_audiocpu, 0); // DG: this is probably specific to Z80 and wrong? - ymsnd.add_route(0, "lspeaker", 0.25); - ymsnd.add_route(0, "rspeaker", 0.25); - ymsnd.add_route(1, "2610.1.l", 8.0); - ymsnd.add_route(1, "2610.1.r", 8.0); - ymsnd.add_route(2, "2610.2.l", 8.0); - ymsnd.add_route(2, "2610.2.r", 8.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); -} - -void taitoz_state::dblaxle(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, XTAL(32'000'000)/2); - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::dblaxle_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - Z80(config, m_audiocpu, XTAL(32'000'000)/8); - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, XTAL(32'000'000)/2); - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::dblaxle_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - // make quantum time to be a multiple of the xtal (fixes road layer stuck on continue) - config.set_maximum_quantum(attotime::from_hz(XTAL(32'000'000)/1024)); - - TC0510NIO(config, m_tc0510nio, 0); - m_tc0510nio->read_0_callback().set_ioport("DSWA"); - m_tc0510nio->read_1_callback().set_ioport("DSWB"); - m_tc0510nio->read_2_callback().set_ioport("IN0"); - m_tc0510nio->read_3_callback().set_ioport("IN1"); - m_tc0510nio->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0510nio->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_dblaxle)); - screen.set_palette("palette"); - - GFXDECODE(config, m_gfxdecode, "palette", gfx_taitoz); - PALETTE(config, "palette").set_format(palette_device::xBGR_555, 4096); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0480SCP(config, m_tc0480scp, 0); - m_tc0480scp->set_palette("palette"); - m_tc0480scp->set_offsets(0x1f, 0x08); - - TC0150ROD(config, m_tc0150rod, 0); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ym2610_device &ymsnd(YM2610(config, "ymsnd", XTAL(32'000'000)/4)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "lspeaker", 0.25); - ymsnd.add_route(0, "rspeaker", 0.25); - ymsnd.add_route(1, "2610.1.l", 8.0); - ymsnd.add_route(1, "2610.1.r", 8.0); - ymsnd.add_route(2, "2610.2.l", 8.0); - ymsnd.add_route(2, "2610.2.r", 8.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - -void taitoz_state::racingb(machine_config &config) -{ - /* basic machine hardware */ - M68000(config, m_maincpu, XTAL(32'000'000)/2); - m_maincpu->set_addrmap(AS_PROGRAM, &taitoz_state::racingb_map); - m_maincpu->set_vblank_int("screen", FUNC(taitoz_state::sci_interrupt)); - - Z80(config, m_audiocpu, XTAL(32'000'000)/8); - m_audiocpu->set_addrmap(AS_PROGRAM, &taitoz_state::z80_sound_map); - - M68000(config, m_subcpu, XTAL(32'000'000)/2); - m_subcpu->set_addrmap(AS_PROGRAM, &taitoz_state::racingb_cpub_map); - m_subcpu->set_vblank_int("screen", FUNC(taitoz_state::irq4_line_hold)); - - config.set_maximum_quantum(attotime::from_hz(600)); - - TC0510NIO(config, m_tc0510nio, 0); - m_tc0510nio->read_0_callback().set_ioport("DSWA"); - m_tc0510nio->read_1_callback().set_ioport("DSWB"); - m_tc0510nio->read_2_callback().set_ioport("IN0"); - m_tc0510nio->read_3_callback().set_ioport("IN1"); - m_tc0510nio->write_4_callback().set(FUNC(taitoz_state::coin_control_w)); - m_tc0510nio->read_7_callback().set_ioport("IN2"); - - /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(60); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); - screen.set_size(40*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 2*8, 32*8-1); - screen.set_screen_update(FUNC(taitoz_state::screen_update_racingb)); - screen.set_palette("palette"); - - GFXDECODE(config, m_gfxdecode, "palette", gfx_taitoz); - PALETTE(config, "palette").set_format(palette_device::xBGR_555, 4096); - - MCFG_VIDEO_START_OVERRIDE(taitoz_state,taitoz) - - TC0480SCP(config, m_tc0480scp, 0); - m_tc0480scp->set_palette("palette"); - m_tc0480scp->set_offsets(0x1f, 0x08); - - TC0150ROD(config, m_tc0150rod, 0); - - /* sound hardware */ - SPEAKER(config, "lspeaker").front_left(); - SPEAKER(config, "rspeaker").front_right(); - - ym2610_device &ymsnd(YM2610(config, "ymsnd", XTAL(32'000'000)/4)); - ymsnd.irq_handler().set_inputline(m_audiocpu, 0); - ymsnd.add_route(0, "lspeaker", 0.25); - ymsnd.add_route(0, "rspeaker", 0.25); - ymsnd.add_route(1, "2610.1.l", 8.0); - ymsnd.add_route(1, "2610.1.r", 8.0); - ymsnd.add_route(2, "2610.2.l", 8.0); - ymsnd.add_route(2, "2610.2.r", 8.0); - - FILTER_VOLUME(config, "2610.1.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.1.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.r").add_route(ALL_OUTPUTS, "rspeaker", 1.0); - FILTER_VOLUME(config, "2610.2.l").add_route(ALL_OUTPUTS, "lspeaker", 1.0); - - TC0140SYT(config, m_tc0140syt, 0); - m_tc0140syt->set_master_tag(m_subcpu); - m_tc0140syt->set_slave_tag(m_audiocpu); -} - - -/*************************************************************************** - DRIVERS - -Contcirc, Dblaxle sound sample rom order is uncertain as sound imperfect -***************************************************************************/ - -ROM_START( contcirc ) /* 3D Effects controlled via dipswitch, when on can toggle effect with START1 button */ - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b33-ww.ic25", 0x00000, 0x20000, CRC(f5c92e42) SHA1(42dfa1895e601df76d7022b83f05c4e5c843fd12) ) /* Needs actual Taito ID number here */ - ROM_LOAD16_BYTE( "b33-xx.ic26", 0x00001, 0x20000, CRC(e7c1d1fa) SHA1(75e851629a54facb8804ee8a953ab3265633bbf4) ) /* Needs actual Taito ID number here */ - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b33-yy.ic35", 0x00000, 0x20000, CRC(16522f2d) SHA1(1d2823d61518936d342df3ed712da5bdfdf6e55a) ) /* Needs actual Taito ID number here */ - ROM_LOAD16_BYTE( "cc_36.bin", 0x00001, 0x20000, CRC(a1732ea5) SHA1(b773add433c20633e7acbc99d5cfeb7ccde83371) ) /* Needs actual Taito ID number here */ - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b33-30.11", 0x00000, 0x10000, CRC(d8746234) SHA1(39132eedfe2ff4e3133f8020304da0d04dd757db) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b33-02.57", 0x00000, 0x80000, CRC(f6fb3ba2) SHA1(19b7c4cf33c4737405ebe53e7342578454e6ef95) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b33-06", 0x000000, 0x080000, CRC(2cb40599) SHA1(48b269610f80a42608f563742e5266dcf11638d1) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b33-05", 0x000002, 0x080000, CRC(bddf9eea) SHA1(284f4ba3dc107b4e26424963d8206c5ec4882983) ) - ROM_LOAD64_WORD_SWAP( "b33-04", 0x000004, 0x080000, CRC(8df866a2) SHA1(6b87d8e683fe7d31070b16620ebfee4edf7711b8) ) - ROM_LOAD64_WORD_SWAP( "b33-03", 0x000006, 0x080000, CRC(4f6c36d9) SHA1(18b15a991c3daf22b7f3f144edf3bd2abb3917eb) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b33-01.3", 0x00000, 0x80000, CRC(f11f2be8) SHA1(72ae08dc5bf5f6901fbb52d3b1dabcba90929b38) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b33-07.64", 0x00000, 0x80000, CRC(151e1f52) SHA1(118c673d74f27c4e76b321cc0e84f166d9f0d412) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b33-09.18", 0x00000, 0x80000, CRC(1e6724b5) SHA1(48bb96b648605a9ceb88ff3b175a87226583c3d6) ) - ROM_LOAD( "b33-10.17", 0x80000, 0x80000, CRC(e9ce03ab) SHA1(17324e8f0422118bc0912eba5750d80469f40b78) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b33-08.19", 0x00000, 0x80000, CRC(caa1c4c8) SHA1(15ef4f36e56fab793d2249252c456677ca6a85c9) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b14-30.97", 0x00000, 0x10000, CRC(dccb0c7f) SHA1(42f0af72f559133b74912a4478e1323062be4b77) ) // sprite vertical zoom - ROM_LOAD( "b14-31.50", 0x00000, 0x02000, CRC(5c6b013d) SHA1(6d02d4560076213b6fb6fe856143bb533090603e) ) // sprite horizontal zoom - ROM_LOAD( "b33-17.16", 0x00000, 0x00100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - ROM_LOAD( "b33-18.17", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -ROM_END - -ROM_START( contcircu ) /* 3D Effects controlled via dipswitch, when on can toggle effect with START1 button */ - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b33-ww.ic25", 0x00000, 0x20000, CRC(f5c92e42) SHA1(42dfa1895e601df76d7022b83f05c4e5c843fd12) ) /* Needs actual Taito ID number here */ - ROM_LOAD16_BYTE( "b33-xx.ic26", 0x00001, 0x20000, CRC(e7c1d1fa) SHA1(75e851629a54facb8804ee8a953ab3265633bbf4) ) /* Needs actual Taito ID number here */ - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b33-yy.ic35", 0x00000, 0x20000, CRC(16522f2d) SHA1(1d2823d61518936d342df3ed712da5bdfdf6e55a) ) /* Needs actual Taito ID number here */ - ROM_LOAD16_BYTE( "b33-zz.ic36", 0x00001, 0x20000, CRC(d6741e33) SHA1(8e86789e1664a34ceed85434fd3186f2571f0c4a) ) /* Needs actual Taito ID number here */ - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b33-30.11", 0x00000, 0x10000, CRC(d8746234) SHA1(39132eedfe2ff4e3133f8020304da0d04dd757db) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b33-02.57", 0x00000, 0x80000, CRC(f6fb3ba2) SHA1(19b7c4cf33c4737405ebe53e7342578454e6ef95) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b33-06", 0x000000, 0x080000, CRC(2cb40599) SHA1(48b269610f80a42608f563742e5266dcf11638d1) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b33-05", 0x000002, 0x080000, CRC(bddf9eea) SHA1(284f4ba3dc107b4e26424963d8206c5ec4882983) ) - ROM_LOAD64_WORD_SWAP( "b33-04", 0x000004, 0x080000, CRC(8df866a2) SHA1(6b87d8e683fe7d31070b16620ebfee4edf7711b8) ) - ROM_LOAD64_WORD_SWAP( "b33-03", 0x000006, 0x080000, CRC(4f6c36d9) SHA1(18b15a991c3daf22b7f3f144edf3bd2abb3917eb) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b33-01.3", 0x00000, 0x80000, CRC(f11f2be8) SHA1(72ae08dc5bf5f6901fbb52d3b1dabcba90929b38) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b33-07.64", 0x00000, 0x80000, CRC(151e1f52) SHA1(118c673d74f27c4e76b321cc0e84f166d9f0d412) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b33-09.18", 0x00000, 0x80000, CRC(1e6724b5) SHA1(48bb96b648605a9ceb88ff3b175a87226583c3d6) ) - ROM_LOAD( "b33-10.17", 0x80000, 0x80000, CRC(e9ce03ab) SHA1(17324e8f0422118bc0912eba5750d80469f40b78) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b33-08.19", 0x00000, 0x80000, CRC(caa1c4c8) SHA1(15ef4f36e56fab793d2249252c456677ca6a85c9) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b14-30.97", 0x00000, 0x10000, CRC(dccb0c7f) SHA1(42f0af72f559133b74912a4478e1323062be4b77) ) // sprite vertical zoom - ROM_LOAD( "b14-31.50", 0x00000, 0x02000, CRC(5c6b013d) SHA1(6d02d4560076213b6fb6fe856143bb533090603e) ) // sprite horizontal zoom - ROM_LOAD( "b33-17.16", 0x00000, 0x00100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - ROM_LOAD( "b33-18.17", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -ROM_END - -ROM_START( contcircua ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b33-34.ic25", 0x00000, 0x20000, CRC(e1e016c1) SHA1(d6ca3bcf03828dc296eab73185f773860bbaaae6) ) /* 3D Effects ALWAYS ON */ - ROM_LOAD16_BYTE( "b33-33.ic26", 0x00001, 0x20000, CRC(f539d44b) SHA1(1b77d97376f9bf3bbd728d459f0a0afbadc6d756) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b33-21-2.ic35", 0x00000, 0x20000, CRC(2723f9e3) SHA1(18a86e352bb0aeec6ad6c537294ddd0d33823ea6) ) - ROM_LOAD16_BYTE( "b33-31-1.ic36", 0x00001, 0x20000, CRC(438431f7) SHA1(9be4ac6526d5aee01c3691f189583a2cfdad0e45) ) /* Is this really B33 31-2 ?? */ - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b33-30.11", 0x00000, 0x10000, CRC(d8746234) SHA1(39132eedfe2ff4e3133f8020304da0d04dd757db) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b33-02.57", 0x00000, 0x80000, CRC(f6fb3ba2) SHA1(19b7c4cf33c4737405ebe53e7342578454e6ef95) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b33-06", 0x000000, 0x080000, CRC(2cb40599) SHA1(48b269610f80a42608f563742e5266dcf11638d1) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b33-05", 0x000002, 0x080000, CRC(bddf9eea) SHA1(284f4ba3dc107b4e26424963d8206c5ec4882983) ) - ROM_LOAD64_WORD_SWAP( "b33-04", 0x000004, 0x080000, CRC(8df866a2) SHA1(6b87d8e683fe7d31070b16620ebfee4edf7711b8) ) - ROM_LOAD64_WORD_SWAP( "b33-03", 0x000006, 0x080000, CRC(4f6c36d9) SHA1(18b15a991c3daf22b7f3f144edf3bd2abb3917eb) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b33-01.3", 0x00000, 0x80000, CRC(f11f2be8) SHA1(72ae08dc5bf5f6901fbb52d3b1dabcba90929b38) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b33-07.64", 0x00000, 0x80000, CRC(151e1f52) SHA1(118c673d74f27c4e76b321cc0e84f166d9f0d412) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b33-09.18", 0x00000, 0x80000, CRC(1e6724b5) SHA1(48bb96b648605a9ceb88ff3b175a87226583c3d6) ) - ROM_LOAD( "b33-10.17", 0x80000, 0x80000, CRC(e9ce03ab) SHA1(17324e8f0422118bc0912eba5750d80469f40b78) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b33-08.19", 0x00000, 0x80000, CRC(caa1c4c8) SHA1(15ef4f36e56fab793d2249252c456677ca6a85c9) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b14-30.97", 0x00000, 0x10000, CRC(dccb0c7f) SHA1(42f0af72f559133b74912a4478e1323062be4b77) ) // sprite vertical zoom - ROM_LOAD( "b14-31.50", 0x00000, 0x02000, CRC(5c6b013d) SHA1(6d02d4560076213b6fb6fe856143bb533090603e) ) // sprite horizontal zoom - ROM_LOAD( "b33-17.16", 0x00000, 0x00100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - ROM_LOAD( "b33-18.17", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -ROM_END - -ROM_START( contcircj ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b33-19.ic25", 0x00000, 0x20000, CRC(b85360c8) SHA1(a52550c0889b99453b845dcfab2ed9581f9fdbe8) ) /* 3D Effects ALWAYS ON */ - ROM_LOAD16_BYTE( "b33-20.ic26", 0x00001, 0x20000, CRC(9f88378b) SHA1(dc4f3dbeb98031ced0591623a2ba7a2653cb6ff4) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b33-21-2.ic35", 0x00000, 0x20000, CRC(2723f9e3) SHA1(18a86e352bb0aeec6ad6c537294ddd0d33823ea6) ) - ROM_LOAD16_BYTE( "b33-22-2.ic36", 0x00001, 0x20000, CRC(da8d604d) SHA1(31a4b686d12511a2522c7047a39aa09c0778f230) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b33-30.11", 0x00000, 0x10000, CRC(d8746234) SHA1(39132eedfe2ff4e3133f8020304da0d04dd757db) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b33-02.57", 0x00000, 0x80000, CRC(f6fb3ba2) SHA1(19b7c4cf33c4737405ebe53e7342578454e6ef95) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b33-06", 0x000000, 0x080000, CRC(2cb40599) SHA1(48b269610f80a42608f563742e5266dcf11638d1) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b33-05", 0x000002, 0x080000, CRC(bddf9eea) SHA1(284f4ba3dc107b4e26424963d8206c5ec4882983) ) - ROM_LOAD64_WORD_SWAP( "b33-04", 0x000004, 0x080000, CRC(8df866a2) SHA1(6b87d8e683fe7d31070b16620ebfee4edf7711b8) ) - ROM_LOAD64_WORD_SWAP( "b33-03", 0x000006, 0x080000, CRC(4f6c36d9) SHA1(18b15a991c3daf22b7f3f144edf3bd2abb3917eb) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b33-01.3", 0x00000, 0x80000, CRC(f11f2be8) SHA1(72ae08dc5bf5f6901fbb52d3b1dabcba90929b38) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b33-07.64", 0x00000, 0x80000, CRC(151e1f52) SHA1(118c673d74f27c4e76b321cc0e84f166d9f0d412) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b33-09.18", 0x00000, 0x80000, CRC(1e6724b5) SHA1(48bb96b648605a9ceb88ff3b175a87226583c3d6) ) - ROM_LOAD( "b33-10.17", 0x80000, 0x80000, CRC(e9ce03ab) SHA1(17324e8f0422118bc0912eba5750d80469f40b78) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b33-08.19", 0x00000, 0x80000, CRC(caa1c4c8) SHA1(15ef4f36e56fab793d2249252c456677ca6a85c9) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b14-30.97", 0x00000, 0x10000, CRC(dccb0c7f) SHA1(42f0af72f559133b74912a4478e1323062be4b77) ) // sprite vertical zoom - ROM_LOAD( "b14-31.50", 0x00000, 0x02000, CRC(5c6b013d) SHA1(6d02d4560076213b6fb6fe856143bb533090603e) ) // sprite horizontal zoom - ROM_LOAD( "b33-17.16", 0x00000, 0x00100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - ROM_LOAD( "b33-18.17", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -ROM_END - -ROM_START( chasehq ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b52-130.36", 0x00000, 0x20000, CRC(4e7beb46) SHA1(b8890c4a2121aa93cfc3a41ddbb3b840d0804cfa) ) - ROM_LOAD16_BYTE( "b52-136.29", 0x00001, 0x20000, CRC(2f414df0) SHA1(0daad8b1f7512a5af0722983751841b5b18064ac) ) - ROM_LOAD16_BYTE( "b52-131.37", 0x40000, 0x20000, CRC(aa945d83) SHA1(9d8a8186a199cacc0e24cf1ee75d81ab8b056406) ) - ROM_LOAD16_BYTE( "b52-129.30", 0x40001, 0x20000, CRC(0eaebc08) SHA1(1dde3304b251ddeb52f1378ef3845269c3667169) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b52-132.39", 0x00000, 0x10000, CRC(a2f54789) SHA1(941a6470e3a5ae35d079657260a8d7d6a9fca122) ) - ROM_LOAD16_BYTE( "b52-133.55", 0x00001, 0x10000, CRC(12232f95) SHA1(2894b95fc1d0a6e5b323bf3e7f1968f02b30a845) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b52-137.51", 0x00000, 0x10000, CRC(37abb74a) SHA1(1feb1e49102c13a90e02c150472545cd9f6334da) ) - - ROM_REGION( 0x8000, "motorcpu", 0 ) - ROM_LOAD( "27c256.ic17", 0x0000, 0x8000, CRC(e52dfee1) SHA1(6e58e18eb2de3c899b950a4307ea21cd23683657) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b52-29.27", 0x00000, 0x80000, CRC(8366d27c) SHA1(d7c5f588b39742927228ce73e5d69bda1e903df6) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-34.5", 0x000000, 0x080000, CRC(7d8dce36) SHA1(ca082e647d10378144c05a70a8e4fe352d95eeaf) ) - ROM_LOAD64_WORD_SWAP( "b52-35.7", 0x000002, 0x080000, CRC(78eeec0d) SHA1(2e82186ca17c579816865ef21c52aef9e133fbf5) ) /* OBJ A 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-36.9", 0x000004, 0x080000, CRC(61e89e91) SHA1(f655b3caa37a8835c2eb11f4d72e985636ac5379) ) - ROM_LOAD64_WORD_SWAP( "b52-37.11", 0x000006, 0x080000, CRC(f02e47b9) SHA1(093864bd18bd58dafa57990e999f394ca3124452) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b52-28.4", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION( 0x200000, "sprites2", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-30.4", 0x000000, 0x080000, CRC(1b8cc647) SHA1(8807fe01b6804507564fc179adf995bf86521fda) ) - ROM_LOAD64_WORD_SWAP( "b52-31.6", 0x000002, 0x080000, CRC(f1998e20) SHA1(b03d4e373e88933391f3533b885817edfca4cfdf) ) /* OBJ B 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-32.8", 0x000004, 0x080000, CRC(8620780c) SHA1(2545fd8fb03dcddc3da86d5ea06a6dc915acd1a1) ) - ROM_LOAD64_WORD_SWAP( "b52-33.10", 0x000006, 0x080000, CRC(e6f4b8c4) SHA1(8d15c75a16953aa56fb3dc6fd3b691e227bef622) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b52-38.34", 0x00000, 0x80000, CRC(5b5bf7f6) SHA1(71dd5b40b83870d351c9ecaccc4fb98c3a6740ae) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b52-115.71", 0x000000, 0x080000, CRC(4e117e93) SHA1(51d893fa21793335878c76f6d5987d99da60be04) ) - ROM_LOAD( "b52-114.72", 0x080000, 0x080000, CRC(3a73d6b1) SHA1(419f02a875b30913331db207e344d0eaa275297e) ) - ROM_LOAD( "b52-113.73", 0x100000, 0x080000, CRC(2c6a3a05) SHA1(f2f0dfbbbb6930bf53025064ebae9c07a95c6deb) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b52-116.70", 0x00000, 0x80000, CRC(ad46983c) SHA1(6fcad67456fbd8c967cd4786815f70b57a24a969) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b52-01.7", 0x00000, 0x00100, CRC(89719d17) SHA1(50181b8172b0fc08b149db18caf10659be9c517f) ) // road/sprite priority and palette select - ROM_LOAD( "b52-03.135", 0x00000, 0x00400, CRC(a3f8490d) SHA1(349b8c9ba914603f72f800a3fc8e8277d756deb1) ) - ROM_LOAD( "b52-06.24", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b52-18.93", 0x00000, 0x00100, CRC(60bdaf1a) SHA1(0cb9c6b821de9ccc1f38336608dd7ead46cb8d24) ) // identical to b52-18b - ROM_LOAD( "b52-18a", 0x00000, 0x00100, CRC(6271be0d) SHA1(84282af98fc0de10e88282f7187cd865133ed6ce) ) - ROM_LOAD( "b52-49.68", 0x00000, 0x02000, CRC(60dd2ed1) SHA1(8673b6b3355975fb91cd1491e0ac7c0f590e3824) ) - ROM_LOAD( "b52-50.66", 0x00000, 0x10000, CRC(c189781c) SHA1(af3904ce51f715970965d110313491dbacf188b8) ) - ROM_LOAD( "b52-51.65", 0x00000, 0x10000, CRC(30cc1f79) SHA1(3b0e3e6e8bce7a7d04a5b0103e2ce4e18e52a68e) ) - ROM_LOAD( "b52-126.136", 0x00000, 0x00400, CRC(fa2f840e) SHA1(dd61ee6833bd43bbf619d36ec46f2bfa00880f40) ) - ROM_LOAD( "b52-127.156", 0x00000, 0x00400, CRC(77682a4f) SHA1(da2b3143f1c8688a22d8ec47bbb73b2f2e578480) ) - - ROM_REGION( 0x02a00, "plds", 0 ) - ROM_LOAD( "pal20l8b-b52-17.ic18", 0x0000, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic16", 0x0200, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic53", 0x0400, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic55", 0x0600, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal16l8b-b52-19.ic33", 0x0800, 0x0104, CRC(3ba292dc) SHA1(ce904e92e9c0d73802e6f53dc747204c194281c5) ) - ROM_LOAD( "pal16l8b-b52-20.ic35", 0x0a00, 0x0104, CRC(bd39ad73) SHA1(03120f3d7d0b9b9105990e226388f9cdd53e5789) ) - ROM_LOAD( "pal16l8b-b52-21.ic51", 0x0c00, 0x0104, CRC(2fe76aa4) SHA1(9ea187cff3e0edb58b019400cfc4bf342d4304c3) ) - ROM_LOAD( "pal20l8b-b52-25.ic123", 0x0e00, 0x0144, CRC(372b632d) SHA1(84631489c9f56907a97d686c35b15284fab09e8d) ) - ROM_LOAD( "pal20l8b-b52-26.ic15", 0x1000, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic18", 0x1200, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic52", 0x1400, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic54", 0x1600, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-27.ic64", 0x1800, 0x0144, CRC(61c2ab26) SHA1(8540d452a21581739b1ab08708b0c799dd2d2393) ) - ROM_LOAD( "pal20l8b-b52-118.ic20", 0x1a00, 0x0144, CRC(9c5fe4af) SHA1(1fbc6461f067eeac9679ca32c126563951a99c09) ) - ROM_LOAD( "pal20l8b-b52-119.ic21", 0x1c00, 0x0144, CRC(8b8e2106) SHA1(be59baae5cada9901c2ea8891f99731f010364db) ) - ROM_LOAD( "pal16l8b-b52-120.ic56", 0x1e00, 0x0104, CRC(3e7effa0) SHA1(0e8c09613b6a9311261aa8fa8bafab0f27081741) ) - ROM_LOAD( "pal20l8b-b52-121.ic57", 0x2000, 0x0144, CRC(7056fd1d) SHA1(fc032f24b95ff7a8bf5a7badddef51c5447c445d) ) - ROM_LOAD( "pal16l8b-b52-122.ic124", 0x2200, 0x0104, CRC(04c0fb04) SHA1(53dfeb747e213c67a78c1407e43cdad4cec2cb7e) ) - ROM_LOAD( "pal16l8b-b52-123.ic125", 0x2400, 0x0104, CRC(3865d1c8) SHA1(2d77326be4fb047243c3d5c33c442b009bf6fc04) ) - ROM_LOAD( "pal16l8b-b52-124.ic180", 0x2600, 0x0104, CRC(d448a25a) SHA1(9339a7969418af30493f4c14cd9bce47d030d1ad) ) /* is this read protected? - taken from chasehqju */ - ROM_LOAD( "pal16l8b-b52-125.ic112", 0x2800, 0x0104, CRC(7628c557) SHA1(11bf628e091dc02e0c2e17ae726061ac04705a54) ) -ROM_END - -ROM_START( chasehqj ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b52-140.36", 0x00000, 0x20000, CRC(c1298a4b) SHA1(41981b72c9ebbea8f8a4aa32e74b9ed46dd71e32) ) - ROM_LOAD16_BYTE( "b52-139.29", 0x00001, 0x20000, CRC(997f732e) SHA1(0f7bd4b3c53e1f14830b3c288f2175e7c125c2cc) ) - ROM_LOAD16_BYTE( "b52-131.37", 0x40000, 0x20000, CRC(aa945d83) SHA1(9d8a8186a199cacc0e24cf1ee75d81ab8b056406) ) - ROM_LOAD16_BYTE( "b52-129.30", 0x40001, 0x20000, CRC(0eaebc08) SHA1(1dde3304b251ddeb52f1378ef3845269c3667169) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b52-132.39", 0x00000, 0x10000, CRC(a2f54789) SHA1(941a6470e3a5ae35d079657260a8d7d6a9fca122) ) - ROM_LOAD16_BYTE( "b52-133.55", 0x00001, 0x10000, CRC(12232f95) SHA1(2894b95fc1d0a6e5b323bf3e7f1968f02b30a845) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b52-134.51", 0x00000, 0x10000, CRC(91faac7f) SHA1(05f00e0909444566877d0ef678bae49f107e1628) ) - - ROM_REGION( 0x8000, "motorcpu", 0 ) - ROM_LOAD( "27c256.ic17", 0x0000, 0x8000, CRC(e52dfee1) SHA1(6e58e18eb2de3c899b950a4307ea21cd23683657) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b52-29.27", 0x00000, 0x80000, CRC(8366d27c) SHA1(d7c5f588b39742927228ce73e5d69bda1e903df6) ) /* SCR 8x8*/ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-34.5", 0x000000, 0x080000, CRC(7d8dce36) SHA1(ca082e647d10378144c05a70a8e4fe352d95eeaf) ) - ROM_LOAD64_WORD_SWAP( "b52-35.7", 0x000002, 0x080000, CRC(78eeec0d) SHA1(2e82186ca17c579816865ef21c52aef9e133fbf5) ) /* OBJ A 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-36.9", 0x000004, 0x080000, CRC(61e89e91) SHA1(f655b3caa37a8835c2eb11f4d72e985636ac5379) ) - ROM_LOAD64_WORD_SWAP( "b52-37.11", 0x000006, 0x080000, CRC(f02e47b9) SHA1(093864bd18bd58dafa57990e999f394ca3124452) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b52-28.4", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION( 0x200000, "sprites2", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-30.4", 0x000000, 0x080000, CRC(1b8cc647) SHA1(8807fe01b6804507564fc179adf995bf86521fda) ) - ROM_LOAD64_WORD_SWAP( "b52-31.6", 0x000002, 0x080000, CRC(f1998e20) SHA1(b03d4e373e88933391f3533b885817edfca4cfdf) ) /* OBJ B 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-32.8", 0x000004, 0x080000, CRC(8620780c) SHA1(2545fd8fb03dcddc3da86d5ea06a6dc915acd1a1) ) - ROM_LOAD64_WORD_SWAP( "b52-33.10", 0x000006, 0x080000, CRC(e6f4b8c4) SHA1(8d15c75a16953aa56fb3dc6fd3b691e227bef622) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b52-38.34", 0x00000, 0x80000, CRC(5b5bf7f6) SHA1(71dd5b40b83870d351c9ecaccc4fb98c3a6740ae) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b52-41.71", 0x000000, 0x80000, CRC(8204880c) SHA1(4dfd6454b4a4c04db3593e98648afbfe8d1f59ed) ) - ROM_LOAD( "b52-40.72", 0x080000, 0x80000, CRC(f0551055) SHA1(4498cd058a52d5e87c6d502e844908a5df3abf2a) ) - ROM_LOAD( "b52-39.73", 0x100000, 0x80000, CRC(ac9cbbd3) SHA1(792f41fef37ff35067fd0173d944f90279176649) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b52-42.70", 0x00000, 0x80000, CRC(6e617df1) SHA1(e3d1678132130c66506f2e1419db2f6b5b062f74) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b52-01.7", 0x00000, 0x00100, CRC(89719d17) SHA1(50181b8172b0fc08b149db18caf10659be9c517f) ) // road/sprite priority and palette select - ROM_LOAD( "b52-03.135", 0x00000, 0x00400, CRC(a3f8490d) SHA1(349b8c9ba914603f72f800a3fc8e8277d756deb1) ) - ROM_LOAD( "b52-06.24", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b52-18.93", 0x00000, 0x00100, CRC(60bdaf1a) SHA1(0cb9c6b821de9ccc1f38336608dd7ead46cb8d24) ) // identical to b52-18b - ROM_LOAD( "b52-18a", 0x00000, 0x00100, CRC(6271be0d) SHA1(84282af98fc0de10e88282f7187cd865133ed6ce) ) - ROM_LOAD( "b52-49.68", 0x00000, 0x02000, CRC(60dd2ed1) SHA1(8673b6b3355975fb91cd1491e0ac7c0f590e3824) ) - ROM_LOAD( "b52-50.66", 0x00000, 0x10000, CRC(c189781c) SHA1(af3904ce51f715970965d110313491dbacf188b8) ) - ROM_LOAD( "b52-51.65", 0x00000, 0x10000, CRC(30cc1f79) SHA1(3b0e3e6e8bce7a7d04a5b0103e2ce4e18e52a68e) ) - ROM_LOAD( "b52-126.136", 0x00000, 0x00400, CRC(fa2f840e) SHA1(dd61ee6833bd43bbf619d36ec46f2bfa00880f40) ) - ROM_LOAD( "b52-127.156", 0x00000, 0x00400, CRC(77682a4f) SHA1(da2b3143f1c8688a22d8ec47bbb73b2f2e578480) ) - - ROM_REGION( 0x02a00, "plds", 0 ) - ROM_LOAD( "pal20l8b-b52-17.ic18", 0x0000, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic16", 0x0200, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic53", 0x0400, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic55", 0x0600, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal16l8b-b52-19.ic33", 0x0800, 0x0104, CRC(3ba292dc) SHA1(ce904e92e9c0d73802e6f53dc747204c194281c5) ) - ROM_LOAD( "pal16l8b-b52-20.ic35", 0x0a00, 0x0104, CRC(bd39ad73) SHA1(03120f3d7d0b9b9105990e226388f9cdd53e5789) ) - ROM_LOAD( "pal16l8b-b52-21.ic51", 0x0c00, 0x0104, CRC(2fe76aa4) SHA1(9ea187cff3e0edb58b019400cfc4bf342d4304c3) ) - ROM_LOAD( "pal20l8b-b52-25.ic123", 0x0e00, 0x0144, CRC(372b632d) SHA1(84631489c9f56907a97d686c35b15284fab09e8d) ) - ROM_LOAD( "pal20l8b-b52-26.ic15", 0x1000, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic18", 0x1200, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic52", 0x1400, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic54", 0x1600, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-27.ic64", 0x1800, 0x0144, CRC(61c2ab26) SHA1(8540d452a21581739b1ab08708b0c799dd2d2393) ) - ROM_LOAD( "pal20l8b-b52-118.ic20", 0x1a00, 0x0144, CRC(9c5fe4af) SHA1(1fbc6461f067eeac9679ca32c126563951a99c09) ) - ROM_LOAD( "pal20l8b-b52-119.ic21", 0x1c00, 0x0144, CRC(8b8e2106) SHA1(be59baae5cada9901c2ea8891f99731f010364db) ) - ROM_LOAD( "pal16l8b-b52-120.ic56", 0x1e00, 0x0104, CRC(3e7effa0) SHA1(0e8c09613b6a9311261aa8fa8bafab0f27081741) ) - ROM_LOAD( "pal20l8b-b52-121.ic57", 0x2000, 0x0144, CRC(7056fd1d) SHA1(fc032f24b95ff7a8bf5a7badddef51c5447c445d) ) - ROM_LOAD( "pal16l8b-b52-122.ic124", 0x2200, 0x0104, CRC(04c0fb04) SHA1(53dfeb747e213c67a78c1407e43cdad4cec2cb7e) ) - ROM_LOAD( "pal16l8b-b52-123.ic125", 0x2400, 0x0104, CRC(3865d1c8) SHA1(2d77326be4fb047243c3d5c33c442b009bf6fc04) ) - ROM_LOAD( "pal16l8b-b52-124.ic180", 0x2600, 0x0104, CRC(d448a25a) SHA1(9339a7969418af30493f4c14cd9bce47d030d1ad) ) /* is this read protected? - taken from chasehqju */ - ROM_LOAD( "pal16l8b-b52-125.ic112", 0x2800, 0x0104, CRC(7628c557) SHA1(11bf628e091dc02e0c2e17ae726061ac04705a54) ) -ROM_END - -ROM_START( chasehqju ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b52-130.36", 0x00000, 0x20000, CRC(4e7beb46) SHA1(b8890c4a2121aa93cfc3a41ddbb3b840d0804cfa) ) // == b52-130.36 chasehq Chase H.Q. (World) - ROM_LOAD16_BYTE( "b52-128.29", 0x00001, 0x20000, CRC(c14f2cdc) SHA1(7136da9211d02534109fc1aa678b77b950c07942) ) - ROM_LOAD16_BYTE( "b52-131.37", 0x40000, 0x20000, CRC(aa945d83) SHA1(9d8a8186a199cacc0e24cf1ee75d81ab8b056406) ) - ROM_LOAD16_BYTE( "b52-129.30", 0x40001, 0x20000, CRC(0eaebc08) SHA1(1dde3304b251ddeb52f1378ef3845269c3667169) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b52-132.39", 0x00000, 0x10000, CRC(a2f54789) SHA1(941a6470e3a5ae35d079657260a8d7d6a9fca122) ) - ROM_LOAD16_BYTE( "b52-133.55", 0x00001, 0x10000, CRC(12232f95) SHA1(2894b95fc1d0a6e5b323bf3e7f1968f02b30a845) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b52-134.51", 0x00000, 0x10000, CRC(91faac7f) SHA1(05f00e0909444566877d0ef678bae49f107e1628) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b52-29.27", 0x00000, 0x80000, CRC(8366d27c) SHA1(d7c5f588b39742927228ce73e5d69bda1e903df6) ) /* SCR 8x8*/ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-34.5", 0x000000, 0x080000, CRC(7d8dce36) SHA1(ca082e647d10378144c05a70a8e4fe352d95eeaf) ) - ROM_LOAD64_WORD_SWAP( "b52-35.7", 0x000002, 0x080000, CRC(78eeec0d) SHA1(2e82186ca17c579816865ef21c52aef9e133fbf5) ) /* OBJ A 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-36.9", 0x000004, 0x080000, CRC(61e89e91) SHA1(f655b3caa37a8835c2eb11f4d72e985636ac5379) ) - ROM_LOAD64_WORD_SWAP( "b52-37.11", 0x000006, 0x080000, CRC(f02e47b9) SHA1(093864bd18bd58dafa57990e999f394ca3124452) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b52-28.4", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION( 0x200000, "sprites2", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-30.4", 0x000000, 0x080000, CRC(1b8cc647) SHA1(8807fe01b6804507564fc179adf995bf86521fda) ) - ROM_LOAD64_WORD_SWAP( "b52-31.6", 0x000002, 0x080000, CRC(f1998e20) SHA1(b03d4e373e88933391f3533b885817edfca4cfdf) ) /* OBJ B 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-32.8", 0x000004, 0x080000, CRC(8620780c) SHA1(2545fd8fb03dcddc3da86d5ea06a6dc915acd1a1) ) - ROM_LOAD64_WORD_SWAP( "b52-33.10", 0x000006, 0x080000, CRC(e6f4b8c4) SHA1(8d15c75a16953aa56fb3dc6fd3b691e227bef622) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b52-38.34", 0x00000, 0x80000, CRC(5b5bf7f6) SHA1(71dd5b40b83870d351c9ecaccc4fb98c3a6740ae) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b52-41.71", 0x000000, 0x80000, CRC(8204880c) SHA1(4dfd6454b4a4c04db3593e98648afbfe8d1f59ed) ) - ROM_LOAD( "b52-40.72", 0x080000, 0x80000, CRC(f0551055) SHA1(4498cd058a52d5e87c6d502e844908a5df3abf2a) ) - ROM_LOAD( "b52-39.73", 0x100000, 0x80000, CRC(ac9cbbd3) SHA1(792f41fef37ff35067fd0173d944f90279176649) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b52-42.70", 0x00000, 0x80000, CRC(6e617df1) SHA1(e3d1678132130c66506f2e1419db2f6b5b062f74) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b52-01.7", 0x00000, 0x00100, CRC(89719d17) SHA1(50181b8172b0fc08b149db18caf10659be9c517f) ) // road/sprite priority and palette select - ROM_LOAD( "b52-03.135", 0x00000, 0x00400, CRC(a3f8490d) SHA1(349b8c9ba914603f72f800a3fc8e8277d756deb1) ) - ROM_LOAD( "b52-06.24", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b52-18.93", 0x00000, 0x00100, CRC(60bdaf1a) SHA1(0cb9c6b821de9ccc1f38336608dd7ead46cb8d24) ) // identical to b52-18b - ROM_LOAD( "b52-18a", 0x00000, 0x00100, CRC(6271be0d) SHA1(84282af98fc0de10e88282f7187cd865133ed6ce) ) - ROM_LOAD( "b52-49.68", 0x00000, 0x02000, CRC(60dd2ed1) SHA1(8673b6b3355975fb91cd1491e0ac7c0f590e3824) ) - ROM_LOAD( "b52-50.66", 0x00000, 0x10000, CRC(c189781c) SHA1(af3904ce51f715970965d110313491dbacf188b8) ) - ROM_LOAD( "b52-51.65", 0x00000, 0x10000, CRC(30cc1f79) SHA1(3b0e3e6e8bce7a7d04a5b0103e2ce4e18e52a68e) ) - ROM_LOAD( "b52-126.136", 0x00000, 0x00400, CRC(fa2f840e) SHA1(dd61ee6833bd43bbf619d36ec46f2bfa00880f40) ) - ROM_LOAD( "b52-127.156", 0x00000, 0x00400, CRC(77682a4f) SHA1(da2b3143f1c8688a22d8ec47bbb73b2f2e578480) ) - - ROM_REGION( 0x02a00, "plds", 0 ) - ROM_LOAD( "pal20l8b-b52-17.ic18", 0x0000, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic16", 0x0200, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic53", 0x0400, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic55", 0x0600, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal16l8b-b52-19.ic33", 0x0800, 0x0104, CRC(3ba292dc) SHA1(ce904e92e9c0d73802e6f53dc747204c194281c5) ) - ROM_LOAD( "pal16l8b-b52-20.ic35", 0x0a00, 0x0104, CRC(bd39ad73) SHA1(03120f3d7d0b9b9105990e226388f9cdd53e5789) ) - ROM_LOAD( "pal16l8b-b52-21.ic51", 0x0c00, 0x0104, CRC(2fe76aa4) SHA1(9ea187cff3e0edb58b019400cfc4bf342d4304c3) ) - ROM_LOAD( "pal20l8b-b52-25.ic123", 0x0e00, 0x0144, CRC(372b632d) SHA1(84631489c9f56907a97d686c35b15284fab09e8d) ) - ROM_LOAD( "pal20l8b-b52-26.ic15", 0x1000, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic18", 0x1200, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic52", 0x1400, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic54", 0x1600, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-27.ic64", 0x1800, 0x0144, CRC(61c2ab26) SHA1(8540d452a21581739b1ab08708b0c799dd2d2393) ) - ROM_LOAD( "pal20l8b-b52-118.ic20", 0x1a00, 0x0144, CRC(9c5fe4af) SHA1(1fbc6461f067eeac9679ca32c126563951a99c09) ) - ROM_LOAD( "pal20l8b-b52-119.ic21", 0x1c00, 0x0144, CRC(8b8e2106) SHA1(be59baae5cada9901c2ea8891f99731f010364db) ) - ROM_LOAD( "pal16l8b-b52-120.ic56", 0x1e00, 0x0104, CRC(3e7effa0) SHA1(0e8c09613b6a9311261aa8fa8bafab0f27081741) ) - ROM_LOAD( "pal20l8b-b52-121.ic57", 0x2000, 0x0144, CRC(7056fd1d) SHA1(fc032f24b95ff7a8bf5a7badddef51c5447c445d) ) - ROM_LOAD( "pal16l8b-b52-122.ic124", 0x2200, 0x0104, CRC(04c0fb04) SHA1(53dfeb747e213c67a78c1407e43cdad4cec2cb7e) ) - ROM_LOAD( "pal16l8b-b52-123.ic125", 0x2400, 0x0104, CRC(3865d1c8) SHA1(2d77326be4fb047243c3d5c33c442b009bf6fc04) ) - ROM_LOAD( "pal16l8b-b52-124.ic180", 0x2600, 0x0104, CRC(d448a25a) SHA1(9339a7969418af30493f4c14cd9bce47d030d1ad) ) /* is this read protected? */ - ROM_LOAD( "pal16l8b-b52-125.ic112", 0x2800, 0x0104, CRC(7628c557) SHA1(11bf628e091dc02e0c2e17ae726061ac04705a54) ) -ROM_END - -ROM_START( chasehqu ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b52-138.36", 0x00000, 0x20000, CRC(8b71fe51) SHA1(6f2352aa2112dd18d328acddacf412b54c896ec0) ) - ROM_LOAD16_BYTE( "b52-135.29", 0x00001, 0x20000, CRC(5ba56a7c) SHA1(3af6f1008181d5a5951fbd6a48dd7592a9e38f96) ) - ROM_LOAD16_BYTE( "b52-131.37", 0x40000, 0x20000, CRC(aa945d83) SHA1(9d8a8186a199cacc0e24cf1ee75d81ab8b056406) ) - ROM_LOAD16_BYTE( "b52-129.30", 0x40001, 0x20000, CRC(0eaebc08) SHA1(1dde3304b251ddeb52f1378ef3845269c3667169) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b52-132.39", 0x00000, 0x10000, CRC(a2f54789) SHA1(941a6470e3a5ae35d079657260a8d7d6a9fca122) ) - ROM_LOAD16_BYTE( "b52-133.55", 0x00001, 0x10000, CRC(12232f95) SHA1(2894b95fc1d0a6e5b323bf3e7f1968f02b30a845) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b52-137.51", 0x00000, 0x10000, CRC(37abb74a) SHA1(1feb1e49102c13a90e02c150472545cd9f6334da) ) - - ROM_REGION( 0x8000, "motorcpu", 0 ) - ROM_LOAD( "27c256.ic17", 0x0000, 0x8000, CRC(e52dfee1) SHA1(6e58e18eb2de3c899b950a4307ea21cd23683657) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b52-29.27", 0x00000, 0x80000, CRC(8366d27c) SHA1(d7c5f588b39742927228ce73e5d69bda1e903df6) ) /* SCR 8x8*/ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-34.5", 0x000000, 0x080000, CRC(7d8dce36) SHA1(ca082e647d10378144c05a70a8e4fe352d95eeaf) ) - ROM_LOAD64_WORD_SWAP( "b52-35.7", 0x000002, 0x080000, CRC(78eeec0d) SHA1(2e82186ca17c579816865ef21c52aef9e133fbf5) ) /* OBJ A 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-36.9", 0x000004, 0x080000, CRC(61e89e91) SHA1(f655b3caa37a8835c2eb11f4d72e985636ac5379) ) - ROM_LOAD64_WORD_SWAP( "b52-37.11", 0x000006, 0x080000, CRC(f02e47b9) SHA1(093864bd18bd58dafa57990e999f394ca3124452) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b52-28.4", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION( 0x200000, "sprites2", 0 ) - ROM_LOAD64_WORD_SWAP( "b52-30.4", 0x000000, 0x080000, CRC(1b8cc647) SHA1(8807fe01b6804507564fc179adf995bf86521fda) ) - ROM_LOAD64_WORD_SWAP( "b52-31.6", 0x000002, 0x080000, CRC(f1998e20) SHA1(b03d4e373e88933391f3533b885817edfca4cfdf) ) /* OBJ B 16x16 */ - ROM_LOAD64_WORD_SWAP( "b52-32.8", 0x000004, 0x080000, CRC(8620780c) SHA1(2545fd8fb03dcddc3da86d5ea06a6dc915acd1a1) ) - ROM_LOAD64_WORD_SWAP( "b52-33.10", 0x000006, 0x080000, CRC(e6f4b8c4) SHA1(8d15c75a16953aa56fb3dc6fd3b691e227bef622) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b52-38.34", 0x00000, 0x80000, CRC(5b5bf7f6) SHA1(71dd5b40b83870d351c9ecaccc4fb98c3a6740ae) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b52-115.71", 0x000000, 0x080000, CRC(4e117e93) SHA1(51d893fa21793335878c76f6d5987d99da60be04) ) - ROM_LOAD( "b52-114.72", 0x080000, 0x080000, CRC(3a73d6b1) SHA1(419f02a875b30913331db207e344d0eaa275297e) ) - ROM_LOAD( "b52-113.73", 0x100000, 0x080000, CRC(2c6a3a05) SHA1(f2f0dfbbbb6930bf53025064ebae9c07a95c6deb) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b52-116.70", 0x00000, 0x80000, CRC(ad46983c) SHA1(6fcad67456fbd8c967cd4786815f70b57a24a969) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b52-01.7", 0x00000, 0x00100, CRC(89719d17) SHA1(50181b8172b0fc08b149db18caf10659be9c517f) ) // road/sprite priority and palette select - ROM_LOAD( "b52-03.135", 0x00000, 0x00400, CRC(a3f8490d) SHA1(349b8c9ba914603f72f800a3fc8e8277d756deb1) ) - ROM_LOAD( "b52-06.24", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b52-18.93", 0x00000, 0x00100, CRC(60bdaf1a) SHA1(0cb9c6b821de9ccc1f38336608dd7ead46cb8d24) ) // identical to b52-18b - ROM_LOAD( "b52-18a", 0x00000, 0x00100, CRC(6271be0d) SHA1(84282af98fc0de10e88282f7187cd865133ed6ce) ) - ROM_LOAD( "b52-49.68", 0x00000, 0x02000, CRC(60dd2ed1) SHA1(8673b6b3355975fb91cd1491e0ac7c0f590e3824) ) - ROM_LOAD( "b52-50.66", 0x00000, 0x10000, CRC(c189781c) SHA1(af3904ce51f715970965d110313491dbacf188b8) ) - ROM_LOAD( "b52-51.65", 0x00000, 0x10000, CRC(30cc1f79) SHA1(3b0e3e6e8bce7a7d04a5b0103e2ce4e18e52a68e) ) - ROM_LOAD( "b52-126.136", 0x00000, 0x00400, CRC(fa2f840e) SHA1(dd61ee6833bd43bbf619d36ec46f2bfa00880f40) ) - ROM_LOAD( "b52-127.156", 0x00000, 0x00400, CRC(77682a4f) SHA1(da2b3143f1c8688a22d8ec47bbb73b2f2e578480) ) - - ROM_REGION( 0x02a00, "plds", 0 ) - ROM_LOAD( "pal20l8b-b52-17.ic18", 0x0000, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic16", 0x0200, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic53", 0x0400, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal20l8b-b52-17.ic55", 0x0600, 0x0144, CRC(4851316d) SHA1(c58537b4b1ded471b7edcb94518757916a207bc0) ) - ROM_LOAD( "pal16l8b-b52-19.ic33", 0x0800, 0x0104, CRC(3ba292dc) SHA1(ce904e92e9c0d73802e6f53dc747204c194281c5) ) - ROM_LOAD( "pal16l8b-b52-20.ic35", 0x0a00, 0x0104, CRC(bd39ad73) SHA1(03120f3d7d0b9b9105990e226388f9cdd53e5789) ) - ROM_LOAD( "pal16l8b-b52-21.ic51", 0x0c00, 0x0104, CRC(2fe76aa4) SHA1(9ea187cff3e0edb58b019400cfc4bf342d4304c3) ) - ROM_LOAD( "pal20l8b-b52-25.ic123", 0x0e00, 0x0144, CRC(372b632d) SHA1(84631489c9f56907a97d686c35b15284fab09e8d) ) - ROM_LOAD( "pal20l8b-b52-26.ic15", 0x1000, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic18", 0x1200, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic52", 0x1400, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-26.ic54", 0x1600, 0x0144, CRC(d94f2bc2) SHA1(5ef92f824549add1a115ec25a10567bd4fe65c41) ) - ROM_LOAD( "pal20l8b-b52-27.ic64", 0x1800, 0x0144, CRC(61c2ab26) SHA1(8540d452a21581739b1ab08708b0c799dd2d2393) ) - ROM_LOAD( "pal20l8b-b52-118.ic20", 0x1a00, 0x0144, CRC(9c5fe4af) SHA1(1fbc6461f067eeac9679ca32c126563951a99c09) ) - ROM_LOAD( "pal20l8b-b52-119.ic21", 0x1c00, 0x0144, CRC(8b8e2106) SHA1(be59baae5cada9901c2ea8891f99731f010364db) ) - ROM_LOAD( "pal16l8b-b52-120.ic56", 0x1e00, 0x0104, CRC(3e7effa0) SHA1(0e8c09613b6a9311261aa8fa8bafab0f27081741) ) - ROM_LOAD( "pal20l8b-b52-121.ic57", 0x2000, 0x0144, CRC(7056fd1d) SHA1(fc032f24b95ff7a8bf5a7badddef51c5447c445d) ) - ROM_LOAD( "pal16l8b-b52-122.ic124", 0x2200, 0x0104, CRC(04c0fb04) SHA1(53dfeb747e213c67a78c1407e43cdad4cec2cb7e) ) - ROM_LOAD( "pal16l8b-b52-123.ic125", 0x2400, 0x0104, CRC(3865d1c8) SHA1(2d77326be4fb047243c3d5c33c442b009bf6fc04) ) - ROM_LOAD( "pal16l8b-b52-124.ic180", 0x2600, 0x0104, CRC(d448a25a) SHA1(9339a7969418af30493f4c14cd9bce47d030d1ad) ) /* is this read protected? - taken from chasehqju */ - ROM_LOAD( "pal16l8b-b52-125.ic112", 0x2800, 0x0104, CRC(7628c557) SHA1(11bf628e091dc02e0c2e17ae726061ac04705a54) ) -ROM_END - -ROM_START( enforce ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b58-38.27", 0x00000, 0x20000, CRC(a1aa0191) SHA1(193d936e1bfe0da4ac984aba65d3e4e6c93a4c11) ) - ROM_LOAD16_BYTE( "b58-36.19", 0x00001, 0x20000, CRC(40f43da3) SHA1(bb3d6c6db8df77674bb76c16992d05c297d97c9f) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b58-37.26", 0x00000, 0x20000, CRC(e823c85c) SHA1(199b19e81c76eb936f4cf31957ae08bed1395bda) ) - ROM_LOAD16_BYTE( "b58-35.18", 0x00001, 0x20000, CRC(8b3ceb12) SHA1(c3f7d1ae5082715f202435c13e6d6f7ac4048750) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b58-32.41", 0x00000, 0x10000, CRC(f3fd8eca) SHA1(3b1ab64984ea43805b6494f8add26210ed1175c5) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b58-09.13", 0x00000, 0x80000, CRC(9ffd5b31) SHA1(0214fb32012a48560ca9c6ed5ee969d3c41cf95c) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b58-04.7", 0x000000, 0x080000, CRC(9482f08d) SHA1(3fc74b9bebca1d82b300ba72c7297c3bcd69cfa9) ) - ROM_LOAD64_WORD_SWAP( "b58-03.6", 0x000002, 0x080000, CRC(158bc440) SHA1(ceab296146363a2e9a48f62118fba6123b4b5a1b) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b58-02.2", 0x000004, 0x080000, CRC(6a6e307c) SHA1(fc4a68220e0dd0e64d75ba7c7af0c1ac97dc7fd9) ) - ROM_LOAD64_WORD_SWAP( "b58-01.1", 0x000006, 0x080000, CRC(01e9f0a8) SHA1(0d3a4dc81702e3c57c790eb8a45caca36cb47d4c) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b58-06.116", 0x00000, 0x80000, CRC(b3495d70) SHA1(ead4c2fd20b8f103a849201c7344cded013eb8bb) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b58-05.71", 0x00000, 0x80000, CRC(d1f4991b) SHA1(f1c5a9b8dce994d013290e98fda7bedf73e95900) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b58-07.11", 0x000000, 0x080000, CRC(eeb5ba08) SHA1(fe40333e09339c76e503ce87b42a89b48d487016) ) - ROM_LOAD( "b58-08.12", 0x080000, 0x080000, CRC(049243cf) SHA1(1f3099b6d764114dc4161ed308369d0f3148dc4e) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples ??? */ - ROM_LOAD( "b58-10.14", 0x00000, 0x80000, CRC(edce0cc1) SHA1(1f6cbc60502b8b12b349e48446ce3a4a1f76bccd) ) /* ??? */ - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b58-26.104", 0x00000, 0x10000, CRC(dccb0c7f) SHA1(42f0af72f559133b74912a4478e1323062be4b77) ) // sprite vertical zoom - ROM_LOAD( "b58-27.56", 0x00000, 0x02000, CRC(5c6b013d) SHA1(6d02d4560076213b6fb6fe856143bb533090603e) ) // sprite horizontal zoom - ROM_LOAD( "b58-23.52", 0x00000, 0x00100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - ROM_LOAD( "b58-24.51", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b58-25.75", 0x00000, 0x00100, CRC(de547342) SHA1(3b2b116d4016ddbf46c41c625c7fcfd76129baa7) ) -// Add pals... -ROM_END - -ROM_START( enforcej ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b58-17.27", 0x00000, 0x20000, CRC(a1aa0191) SHA1(193d936e1bfe0da4ac984aba65d3e4e6c93a4c11) ) - ROM_LOAD16_BYTE( "b58-19.19", 0x00001, 0x20000, CRC(40f43da3) SHA1(bb3d6c6db8df77674bb76c16992d05c297d97c9f) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b58-16.26", 0x00000, 0x20000, CRC(e823c85c) SHA1(199b19e81c76eb936f4cf31957ae08bed1395bda) ) - ROM_LOAD16_BYTE( "b58-18.18", 0x00001, 0x20000, CRC(65328a3e) SHA1(f51ca107910629e030678e183cc8fd06d2569098) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b58-32.41", 0x00000, 0x10000, CRC(f3fd8eca) SHA1(3b1ab64984ea43805b6494f8add26210ed1175c5) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b58-09.13", 0x00000, 0x80000, CRC(9ffd5b31) SHA1(0214fb32012a48560ca9c6ed5ee969d3c41cf95c) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b58-04.7", 0x000000, 0x080000, CRC(9482f08d) SHA1(3fc74b9bebca1d82b300ba72c7297c3bcd69cfa9) ) - ROM_LOAD64_WORD_SWAP( "b58-03.6", 0x000002, 0x080000, CRC(158bc440) SHA1(ceab296146363a2e9a48f62118fba6123b4b5a1b) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b58-02.2", 0x000004, 0x080000, CRC(6a6e307c) SHA1(fc4a68220e0dd0e64d75ba7c7af0c1ac97dc7fd9) ) - ROM_LOAD64_WORD_SWAP( "b58-01.1", 0x000006, 0x080000, CRC(01e9f0a8) SHA1(0d3a4dc81702e3c57c790eb8a45caca36cb47d4c) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b58-06.116", 0x00000, 0x80000, CRC(b3495d70) SHA1(ead4c2fd20b8f103a849201c7344cded013eb8bb) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b58-05.71", 0x00000, 0x80000, CRC(d1f4991b) SHA1(f1c5a9b8dce994d013290e98fda7bedf73e95900) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b58-07.11", 0x000000, 0x080000, CRC(eeb5ba08) SHA1(fe40333e09339c76e503ce87b42a89b48d487016) ) - ROM_LOAD( "b58-08.12", 0x080000, 0x080000, CRC(049243cf) SHA1(1f3099b6d764114dc4161ed308369d0f3148dc4e) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples ??? */ - ROM_LOAD( "b58-10.14", 0x00000, 0x80000, CRC(edce0cc1) SHA1(1f6cbc60502b8b12b349e48446ce3a4a1f76bccd) ) /* ??? */ - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b58-26.104", 0x00000, 0x10000, CRC(dccb0c7f) SHA1(42f0af72f559133b74912a4478e1323062be4b77) ) // sprite vertical zoom - ROM_LOAD( "b58-27.56", 0x00000, 0x02000, CRC(5c6b013d) SHA1(6d02d4560076213b6fb6fe856143bb533090603e) ) // sprite horizontal zoom - ROM_LOAD( "b58-23.52", 0x00000, 0x00100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - ROM_LOAD( "b58-24.51", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b58-25.75", 0x00000, 0x00100, CRC(de547342) SHA1(3b2b116d4016ddbf46c41c625c7fcfd76129baa7) ) -// Add pals... -ROM_END - -ROM_START( enforceja ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b58-31.27", 0x00000, 0x20000, CRC(d686e371) SHA1(d2db6c093cec8211c2be1b78d7815aeef5d91fca) ) - ROM_LOAD16_BYTE( "b58-30.19", 0x00001, 0x20000, CRC(cd73c0d8) SHA1(8e1e95272f11b3be7b896e06baf1d3efa9b4c8c7) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b58-29.26", 0x00000, 0x20000, CRC(8482a4e4) SHA1(32c4dd66b2062c62830c2ca2abbd3e23f1883de9) ) - ROM_LOAD16_BYTE( "b58-28.18", 0x00001, 0x20000, CRC(9735e2b1) SHA1(21e718a1a3d005d022b4aaab2da8350767f72a65) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b58-32.41", 0x00000, 0x10000, CRC(f3fd8eca) SHA1(3b1ab64984ea43805b6494f8add26210ed1175c5) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b58-09.13", 0x00000, 0x80000, CRC(9ffd5b31) SHA1(0214fb32012a48560ca9c6ed5ee969d3c41cf95c) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b58-04.7", 0x000000, 0x080000, CRC(9482f08d) SHA1(3fc74b9bebca1d82b300ba72c7297c3bcd69cfa9) ) - ROM_LOAD64_WORD_SWAP( "b58-03.6", 0x000002, 0x080000, CRC(158bc440) SHA1(ceab296146363a2e9a48f62118fba6123b4b5a1b) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b58-02.2", 0x000004, 0x080000, CRC(6a6e307c) SHA1(fc4a68220e0dd0e64d75ba7c7af0c1ac97dc7fd9) ) - ROM_LOAD64_WORD_SWAP( "b58-01.1", 0x000006, 0x080000, CRC(01e9f0a8) SHA1(0d3a4dc81702e3c57c790eb8a45caca36cb47d4c) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b58-06.116", 0x00000, 0x80000, CRC(b3495d70) SHA1(ead4c2fd20b8f103a849201c7344cded013eb8bb) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b58-05.71", 0x00000, 0x80000, CRC(d1f4991b) SHA1(f1c5a9b8dce994d013290e98fda7bedf73e95900) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b58-07.11", 0x000000, 0x080000, CRC(eeb5ba08) SHA1(fe40333e09339c76e503ce87b42a89b48d487016) ) - ROM_LOAD( "b58-08.12", 0x080000, 0x080000, CRC(049243cf) SHA1(1f3099b6d764114dc4161ed308369d0f3148dc4e) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples ??? */ - ROM_LOAD( "b58-10.14", 0x00000, 0x80000, CRC(edce0cc1) SHA1(1f6cbc60502b8b12b349e48446ce3a4a1f76bccd) ) /* ??? */ - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b58-26.104", 0x00000, 0x10000, CRC(dccb0c7f) SHA1(42f0af72f559133b74912a4478e1323062be4b77) ) // sprite vertical zoom - ROM_LOAD( "b58-27.56", 0x00000, 0x02000, CRC(5c6b013d) SHA1(6d02d4560076213b6fb6fe856143bb533090603e) ) // sprite horizontal zoom - ROM_LOAD( "b58-23.52", 0x00000, 0x00100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - ROM_LOAD( "b58-24.51", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b58-25.75", 0x00000, 0x00100, CRC(de547342) SHA1(3b2b116d4016ddbf46c41c625c7fcfd76129baa7) ) -// Add pals... -ROM_END - -ROM_START( bshark ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c34_71.98", 0x00000, 0x20000, CRC(df1fa629) SHA1(6cb207e577fac85da654f3dc56e2f9f25c38a76d) ) - ROM_LOAD16_BYTE( "c34_69.75", 0x00001, 0x20000, CRC(a54c137a) SHA1(632bf2d65f54035de2ecb87648dafa877c45e428) ) - ROM_LOAD16_BYTE( "c34_70.97", 0x40000, 0x20000, CRC(d77d81e2) SHA1(d60e586cefd9001e87cae583ca25bf5a8a461d8d) ) - ROM_LOAD16_BYTE( "c34_68.74", 0x40001, 0x20000, CRC(4e374ce2) SHA1(bf0436d40cfed75dcbd3e40a7c6aa45eeff6666e) ) - - ROM_REGION( 0x80000, "sub", 0 ) /* 512K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c34_74.128", 0x00000, 0x20000, CRC(6869fa99) SHA1(16221f25c865a81ca4f6a987b6de02a3ccf3208c) ) - ROM_LOAD16_BYTE( "c34_72.112", 0x00001, 0x20000, CRC(c09c0f91) SHA1(32c78924617328abb11c094f89a90a92e72ed5e6) ) - ROM_LOAD16_BYTE( "c34_75.129", 0x40000, 0x20000, CRC(6ba65542) SHA1(9ba5af9dd240a198dfa760ca14b0f0c84eb307c9) ) - ROM_LOAD16_BYTE( "c34_73.113", 0x40001, 0x20000, CRC(f2fe62b5) SHA1(e31b5989b747de451ee6c2a5e15ec75235d84e0d) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c34_05.3", 0x00000, 0x80000, CRC(596b83da) SHA1(826cf1e48a017a0cbfcc4a4f507dfb285594178b) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c34_04.17", 0x000000, 0x080000, CRC(2446b0da) SHA1(bce5c73533e2bb7dfa7f18fad510f818cf1a542a) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c34_03.16", 0x000002, 0x080000, CRC(a18eab78) SHA1(155f0efbfe73e18355804477d4b8954bb47bf1ef) ) - ROM_LOAD64_WORD_SWAP( "c34_02.15", 0x000004, 0x080000, CRC(8488ba10) SHA1(60f8f0dc9d4bc6bc452527250221c9915e9dfe6e) ) - ROM_LOAD64_WORD_SWAP( "c34_01.14", 0x000006, 0x080000, CRC(3ebe8c63) SHA1(fa7403bf895c041cb64234209c944683ae372e57) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c34_07.42", 0x00000, 0x80000, CRC(edb07808) SHA1(f32b4b93e9125536376d96fbca76c2b2f5f78656) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c34_06.12", 0x00000, 0x80000, CRC(d200b6eb) SHA1(6bfe3a7dde8d4e983521877d2bb176f5d126b763) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c34_08.127", 0x00000, 0x80000, CRC(89a30450) SHA1(96b96ca5a3e20cdceb9ac5ddf377fb21a9a529fb) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c34_09.126", 0x00000, 0x80000, CRC(39d12b50) SHA1(5c5d1369597604376943e4825f6c09cc28d66047) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c34_18.22", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c34_19.72", 0x00000, 0x00100, CRC(2ee9c404) SHA1(3a2ddaaaf7abe9f47f7e062b002fd3a61c80f60b) ) // road/sprite priority and palette select - ROM_LOAD( "c34_20.89", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c34_21.7", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) - ROM_LOAD( "c34_22.8", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) -ROM_END - -ROM_START( bsharku ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c34_71.98", 0x00000, 0x20000, CRC(df1fa629) SHA1(6cb207e577fac85da654f3dc56e2f9f25c38a76d) ) - ROM_LOAD16_BYTE( "c34_69.75", 0x00001, 0x20000, CRC(a54c137a) SHA1(632bf2d65f54035de2ecb87648dafa877c45e428) ) - ROM_LOAD16_BYTE( "c34_70.97", 0x40000, 0x20000, CRC(d77d81e2) SHA1(d60e586cefd9001e87cae583ca25bf5a8a461d8d) ) - ROM_LOAD16_BYTE( "c34_67.74", 0x40001, 0x20000, CRC(39307c74) SHA1(65d1cb6b0baee29c1439180b8b4c6907e20b2921) ) - - ROM_REGION( 0x80000, "sub", 0 ) /* 512K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c34_74.128", 0x00000, 0x20000, CRC(6869fa99) SHA1(16221f25c865a81ca4f6a987b6de02a3ccf3208c) ) - ROM_LOAD16_BYTE( "c34_72.112", 0x00001, 0x20000, CRC(c09c0f91) SHA1(32c78924617328abb11c094f89a90a92e72ed5e6) ) - ROM_LOAD16_BYTE( "c34_75.129", 0x40000, 0x20000, CRC(6ba65542) SHA1(9ba5af9dd240a198dfa760ca14b0f0c84eb307c9) ) - ROM_LOAD16_BYTE( "c34_73.113", 0x40001, 0x20000, CRC(f2fe62b5) SHA1(e31b5989b747de451ee6c2a5e15ec75235d84e0d) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c34_05.3", 0x00000, 0x80000, CRC(596b83da) SHA1(826cf1e48a017a0cbfcc4a4f507dfb285594178b) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c34_04.17", 0x000000, 0x080000, CRC(2446b0da) SHA1(bce5c73533e2bb7dfa7f18fad510f818cf1a542a) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c34_03.16", 0x000002, 0x080000, CRC(a18eab78) SHA1(155f0efbfe73e18355804477d4b8954bb47bf1ef) ) - ROM_LOAD64_WORD_SWAP( "c34_02.15", 0x000004, 0x080000, CRC(8488ba10) SHA1(60f8f0dc9d4bc6bc452527250221c9915e9dfe6e) ) - ROM_LOAD64_WORD_SWAP( "c34_01.14", 0x000006, 0x080000, CRC(3ebe8c63) SHA1(fa7403bf895c041cb64234209c944683ae372e57) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c34_07.42", 0x00000, 0x80000, CRC(edb07808) SHA1(f32b4b93e9125536376d96fbca76c2b2f5f78656) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c34_06.12", 0x00000, 0x80000, CRC(d200b6eb) SHA1(6bfe3a7dde8d4e983521877d2bb176f5d126b763) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c34_08.127", 0x00000, 0x80000, CRC(89a30450) SHA1(96b96ca5a3e20cdceb9ac5ddf377fb21a9a529fb) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c34_09.126", 0x00000, 0x80000, CRC(39d12b50) SHA1(5c5d1369597604376943e4825f6c09cc28d66047) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c34_18.22", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c34_19.72", 0x00000, 0x00100, CRC(2ee9c404) SHA1(3a2ddaaaf7abe9f47f7e062b002fd3a61c80f60b) ) // road/sprite priority and palette select - ROM_LOAD( "c34_20.89", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c34_21.7", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) - ROM_LOAD( "c34_22.8", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) -ROM_END - -ROM_START( bsharkj ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c34_71.98", 0x00000, 0x20000, CRC(df1fa629) SHA1(6cb207e577fac85da654f3dc56e2f9f25c38a76d) ) - ROM_LOAD16_BYTE( "c34_69.75", 0x00001, 0x20000, CRC(a54c137a) SHA1(632bf2d65f54035de2ecb87648dafa877c45e428) ) - ROM_LOAD16_BYTE( "c34_70.97", 0x40000, 0x20000, CRC(d77d81e2) SHA1(d60e586cefd9001e87cae583ca25bf5a8a461d8d) ) - ROM_LOAD16_BYTE( "c34_66.74", 0x40001, 0x20000, CRC(a0392dce) SHA1(5d20f39b75e921fda82c33990463cec73879d113) ) - - ROM_REGION( 0x80000, "sub", 0 ) /* 512K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c34_74.128", 0x00000, 0x20000, CRC(6869fa99) SHA1(16221f25c865a81ca4f6a987b6de02a3ccf3208c) ) - ROM_LOAD16_BYTE( "c34_72.112", 0x00001, 0x20000, CRC(c09c0f91) SHA1(32c78924617328abb11c094f89a90a92e72ed5e6) ) - ROM_LOAD16_BYTE( "c34_75.129", 0x40000, 0x20000, CRC(6ba65542) SHA1(9ba5af9dd240a198dfa760ca14b0f0c84eb307c9) ) - ROM_LOAD16_BYTE( "c34_73.113", 0x40001, 0x20000, CRC(f2fe62b5) SHA1(e31b5989b747de451ee6c2a5e15ec75235d84e0d) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c34_05.3", 0x00000, 0x80000, CRC(596b83da) SHA1(826cf1e48a017a0cbfcc4a4f507dfb285594178b) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c34_04.17", 0x000000, 0x080000, CRC(2446b0da) SHA1(bce5c73533e2bb7dfa7f18fad510f818cf1a542a) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c34_03.16", 0x000002, 0x080000, CRC(a18eab78) SHA1(155f0efbfe73e18355804477d4b8954bb47bf1ef) ) - ROM_LOAD64_WORD_SWAP( "c34_02.15", 0x000004, 0x080000, CRC(8488ba10) SHA1(60f8f0dc9d4bc6bc452527250221c9915e9dfe6e) ) - ROM_LOAD64_WORD_SWAP( "c34_01.14", 0x000006, 0x080000, CRC(3ebe8c63) SHA1(fa7403bf895c041cb64234209c944683ae372e57) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c34_07.42", 0x00000, 0x80000, CRC(edb07808) SHA1(f32b4b93e9125536376d96fbca76c2b2f5f78656) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c34_06.12", 0x00000, 0x80000, CRC(d200b6eb) SHA1(6bfe3a7dde8d4e983521877d2bb176f5d126b763) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c34_08.127", 0x00000, 0x80000, CRC(89a30450) SHA1(96b96ca5a3e20cdceb9ac5ddf377fb21a9a529fb) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c34_09.126", 0x00000, 0x80000, CRC(39d12b50) SHA1(5c5d1369597604376943e4825f6c09cc28d66047) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c34_18.22", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c34_19.72", 0x00000, 0x00100, CRC(2ee9c404) SHA1(3a2ddaaaf7abe9f47f7e062b002fd3a61c80f60b) ) // road/sprite priority and palette select - ROM_LOAD( "c34_20.89", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c34_21.7", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) - ROM_LOAD( "c34_22.8", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) -ROM_END - -ROM_START( bsharkjjs ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c34_79.98", 0x00000, 0x20000, CRC(bc3f2e93) SHA1(a03778fb8c8fb91956005cab0f2050262bc8f306) ) - ROM_LOAD16_BYTE( "c34_77.75", 0x00001, 0x20000, CRC(917916d0) SHA1(86db550737a20fd5aa2862f7a6be0d47da5fc74e) ) - ROM_LOAD16_BYTE( "c34_78.97", 0x40000, 0x20000, CRC(f2fcc880) SHA1(6d8530056bd2e0e54061d95048b3b5e0b1eb76ef) ) - ROM_LOAD16_BYTE( "c34_76.74", 0x40001, 0x20000, CRC(de97fac0) SHA1(53baf70bbf0102ff965921330e2d7a918318acff) ) - - ROM_REGION( 0x80000, "sub", 0 ) /* 512K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c34_82.128", 0x00000, 0x20000, CRC(6869fa99) SHA1(16221f25c865a81ca4f6a987b6de02a3ccf3208c) ) - ROM_LOAD16_BYTE( "c34_80.112", 0x00001, 0x20000, CRC(e1783eb4) SHA1(02aaaf117f258625052734064692d2c1679b80b6) ) - ROM_LOAD16_BYTE( "c34_83.129", 0x40000, 0x20000, CRC(eec0b364) SHA1(17010b19570ee65020ae09e5734b48a763a12e3f) ) - ROM_LOAD16_BYTE( "c34_81.113", 0x40001, 0x20000, CRC(23ce6bcf) SHA1(b084209f809793d8f0f11ddabee217ba1abd6038) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c34_05.3", 0x00000, 0x80000, CRC(596b83da) SHA1(826cf1e48a017a0cbfcc4a4f507dfb285594178b) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c34_04.17", 0x000000, 0x080000, CRC(2446b0da) SHA1(bce5c73533e2bb7dfa7f18fad510f818cf1a542a) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c34_03.16", 0x000002, 0x080000, CRC(a18eab78) SHA1(155f0efbfe73e18355804477d4b8954bb47bf1ef) ) - ROM_LOAD64_WORD_SWAP( "c34_02.15", 0x000004, 0x080000, CRC(8488ba10) SHA1(60f8f0dc9d4bc6bc452527250221c9915e9dfe6e) ) - ROM_LOAD64_WORD_SWAP( "c34_01.14", 0x000006, 0x080000, CRC(3ebe8c63) SHA1(fa7403bf895c041cb64234209c944683ae372e57) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c34_07.42", 0x00000, 0x80000, CRC(edb07808) SHA1(f32b4b93e9125536376d96fbca76c2b2f5f78656) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c34_06.12", 0x00000, 0x80000, CRC(d200b6eb) SHA1(6bfe3a7dde8d4e983521877d2bb176f5d126b763) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c34_08.127", 0x00000, 0x80000, CRC(89a30450) SHA1(96b96ca5a3e20cdceb9ac5ddf377fb21a9a529fb) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c34_09.126", 0x00000, 0x80000, CRC(39d12b50) SHA1(5c5d1369597604376943e4825f6c09cc28d66047) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c34_18.22", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c34_19.72", 0x00000, 0x00100, CRC(2ee9c404) SHA1(3a2ddaaaf7abe9f47f7e062b002fd3a61c80f60b) ) // road/sprite priority and palette select - ROM_LOAD( "c34_20.89", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c34_21.7", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) - ROM_LOAD( "c34_22.8", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) -ROM_END - -ROM_START( sci ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c09-37.43", 0x00000, 0x20000, CRC(0fecea17) SHA1(0ad4454eee6646b0f978b1ba83206d64c1f6d081) ) - ROM_LOAD16_BYTE( "c09-38.40", 0x00001, 0x20000, CRC(e46ebd9b) SHA1(52b0c1f95e8a664076d8fbc0f6204ca55893e281) ) - ROM_LOAD16_BYTE( "c09-42.38", 0x40000, 0x20000, CRC(f4404f87) SHA1(8f051f1ffbf323cb3d613bc22afa53676590f29c) ) - ROM_LOAD16_BYTE( "c09-39.41", 0x40001, 0x20000, CRC(de87bcb9) SHA1(b5537a25871ea90294f3b6f0b6386a883cfdf991) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c09-33.6", 0x00000, 0x10000, CRC(cf4e6c5b) SHA1(8d6720b605b8e0c7f0473ba452c79bf5efc2615d) ) /* Actual label is "C09 33*" */ - ROM_LOAD16_BYTE( "c09-32.5", 0x00001, 0x10000, CRC(a4713719) SHA1(b1110e397d3407ec63975cdd92a23cbb16348200) ) /* Actual label is "C09 32*" */ - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "c09-34.31", 0x00000, 0x20000, CRC(a21b3151) SHA1(f59c7b1ba5edf97d72670ee194ce9fdc5c5b9a58) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c09-05.16", 0x00000, 0x80000, CRC(890b38f0) SHA1(b478c96214ce027926346a4653250c8ee8a98bdc) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c09-04.52", 0x000000, 0x080000, CRC(2cbb3c9b) SHA1(9e3d95f76f5f5d385b6a9516af781aefef1eb0ca) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c09-02.53", 0x000002, 0x080000, CRC(a83a0389) SHA1(932788b5b5f01326d0fbb2b9fdb94a8c7c004db3) ) - ROM_LOAD64_WORD_SWAP( "c09-03.54", 0x000004, 0x080000, CRC(a31d0e80) SHA1(dfeff1b89dd7b3f19b26e77f2d66f6448cb00553) ) - ROM_LOAD64_WORD_SWAP( "c09-01.55", 0x000006, 0x080000, CRC(64bfea10) SHA1(15ea43092027b1717d0f24fbe6ac2cdf11a7ddc6) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c09-07.15", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c09-06.37", 0x00000, 0x80000, CRC(12df6d7b) SHA1(8ce742eb3f7eb6283b5ca32bb520d1cc7684d515) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c09-14.42", 0x000000, 0x080000, CRC(ad78bf46) SHA1(4020744bbdc4b9ec3dee1a9d7b5ffa8def43d7b2) ) - ROM_LOAD( "c09-13.43", 0x080000, 0x080000, CRC(d57c41d3) SHA1(3375a1fc6389840544b9fdb96b2fafbc8e3276e2) ) - ROM_LOAD( "c09-12.44", 0x100000, 0x080000, CRC(56c99fa5) SHA1(3f9a6bc89d847cc4c99d35f98157ea3f187c0f98) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c09-15.29", 0x00000, 0x80000, CRC(e63b9095) SHA1(c6ea670b5a90ab39429259ec1fefb2bde5d0213f) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c09-16.17", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c09-20.71", 0x00000, 0x00100, CRC(cd8ffd80) SHA1(133bcd291a3751bce5293cb6b685f87258e8db19) ) // road/sprite priority and palette select - ROM_LOAD( "c09-23.14", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -// ROM_LOAD( "c09-21.2", 0x00000, 0x00???, NO_DUMP ) /* pals (Guru dump) */ -// ROM_LOAD( "c09-22.3", 0x00000, 0x00???, NO_DUMP ) -// ROM_LOAD( "c09-24.22", 0x00000, 0x00???, NO_DUMP ) -// ROM_LOAD( "c09-25.25", 0x00000, 0x00???, NO_DUMP ) -// ROM_LOAD( "c09-26.26", 0x00000, 0x00???, NO_DUMP ) -ROM_END - -ROM_START( scia ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c09-28.43", 0x00000, 0x20000, CRC(630dbaad) SHA1(090f6a97007ac04f64d92ae5823b7254152144af) ) - ROM_LOAD16_BYTE( "c09-30.40", 0x00001, 0x20000, CRC(68b1a97d) SHA1(c377f7880154b38fe25dc0ec420ca0cd7228fbad) ) - ROM_LOAD16_BYTE( "c09-36.38", 0x40000, 0x20000, CRC(59e47cba) SHA1(313302bc62ff02b437b1091d394d2010ce66c7e7) ) - ROM_LOAD16_BYTE( "c09-31.41", 0x40001, 0x20000, CRC(962b1fbf) SHA1(62181a289dfc6d1da674ba4bcbefeb16a67a55e3) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c09-33.6", 0x00000, 0x10000, CRC(cf4e6c5b) SHA1(8d6720b605b8e0c7f0473ba452c79bf5efc2615d) ) /* Actual label is "C09 33*" */ - ROM_LOAD16_BYTE( "c09-32.5", 0x00001, 0x10000, CRC(a4713719) SHA1(b1110e397d3407ec63975cdd92a23cbb16348200) ) /* Actual label is "C09 32*" */ - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "c09-34.31", 0x00000, 0x20000, CRC(a21b3151) SHA1(f59c7b1ba5edf97d72670ee194ce9fdc5c5b9a58) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c09-05.16", 0x00000, 0x80000, CRC(890b38f0) SHA1(b478c96214ce027926346a4653250c8ee8a98bdc) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c09-04.52", 0x000000, 0x080000, CRC(2cbb3c9b) SHA1(9e3d95f76f5f5d385b6a9516af781aefef1eb0ca) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c09-02.53", 0x000002, 0x080000, CRC(a83a0389) SHA1(932788b5b5f01326d0fbb2b9fdb94a8c7c004db3) ) - ROM_LOAD64_WORD_SWAP( "c09-03.54", 0x000004, 0x080000, CRC(a31d0e80) SHA1(dfeff1b89dd7b3f19b26e77f2d66f6448cb00553) ) - ROM_LOAD64_WORD_SWAP( "c09-01.55", 0x000006, 0x080000, CRC(64bfea10) SHA1(15ea43092027b1717d0f24fbe6ac2cdf11a7ddc6) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c09-07.15", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c09-06.37", 0x00000, 0x80000, CRC(12df6d7b) SHA1(8ce742eb3f7eb6283b5ca32bb520d1cc7684d515) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c09-14.42", 0x000000, 0x080000, CRC(ad78bf46) SHA1(4020744bbdc4b9ec3dee1a9d7b5ffa8def43d7b2) ) - ROM_LOAD( "c09-13.43", 0x080000, 0x080000, CRC(d57c41d3) SHA1(3375a1fc6389840544b9fdb96b2fafbc8e3276e2) ) - ROM_LOAD( "c09-12.44", 0x100000, 0x080000, CRC(56c99fa5) SHA1(3f9a6bc89d847cc4c99d35f98157ea3f187c0f98) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c09-15.29", 0x00000, 0x80000, CRC(e63b9095) SHA1(c6ea670b5a90ab39429259ec1fefb2bde5d0213f) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c09-16.17", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c09-20.71", 0x00000, 0x00100, CRC(cd8ffd80) SHA1(133bcd291a3751bce5293cb6b685f87258e8db19) ) // road/sprite priority and palette select - ROM_LOAD( "c09-23.14", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -ROM_END - -ROM_START( scij ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c09-37.43", 0x00000, 0x20000, CRC(0fecea17) SHA1(0ad4454eee6646b0f978b1ba83206d64c1f6d081) ) - ROM_LOAD16_BYTE( "c09-38.40", 0x00001, 0x20000, CRC(e46ebd9b) SHA1(52b0c1f95e8a664076d8fbc0f6204ca55893e281) ) - ROM_LOAD16_BYTE( "c09-40.38", 0x40000, 0x20000, CRC(1a4e2eab) SHA1(7c95ba516d164b7b4e6eaf80e3dacf7c35d8123d) ) - ROM_LOAD16_BYTE( "c09-39.41", 0x40001, 0x20000, CRC(de87bcb9) SHA1(b5537a25871ea90294f3b6f0b6386a883cfdf991) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c09-33.6", 0x00000, 0x10000, CRC(cf4e6c5b) SHA1(8d6720b605b8e0c7f0473ba452c79bf5efc2615d) ) /* Actual label is "C09 33*" */ - ROM_LOAD16_BYTE( "c09-32.5", 0x00001, 0x10000, CRC(a4713719) SHA1(b1110e397d3407ec63975cdd92a23cbb16348200) ) /* Actual label is "C09 32*" */ - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "c09-27.31", 0x00000, 0x20000, CRC(cd161dca) SHA1(2e0632f290f8efae5e479c67ca8808a90e0f4afd) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c09-05.16", 0x00000, 0x80000, CRC(890b38f0) SHA1(b478c96214ce027926346a4653250c8ee8a98bdc) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c09-04.52", 0x000000, 0x080000, CRC(2cbb3c9b) SHA1(9e3d95f76f5f5d385b6a9516af781aefef1eb0ca) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c09-02.53", 0x000002, 0x080000, CRC(a83a0389) SHA1(932788b5b5f01326d0fbb2b9fdb94a8c7c004db3) ) - ROM_LOAD64_WORD_SWAP( "c09-03.54", 0x000004, 0x080000, CRC(a31d0e80) SHA1(dfeff1b89dd7b3f19b26e77f2d66f6448cb00553) ) - ROM_LOAD64_WORD_SWAP( "c09-01.55", 0x000006, 0x080000, CRC(64bfea10) SHA1(15ea43092027b1717d0f24fbe6ac2cdf11a7ddc6) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c09-07.15", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c09-06.37", 0x00000, 0x80000, CRC(12df6d7b) SHA1(8ce742eb3f7eb6283b5ca32bb520d1cc7684d515) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c09-10.42", 0x000000, 0x080000, CRC(ad78bf46) SHA1(4020744bbdc4b9ec3dee1a9d7b5ffa8def43d7b2) ) - ROM_LOAD( "c09-09.43", 0x080000, 0x080000, CRC(6a655c00) SHA1(5ae1ee422226e386550b69a1f35668c10d3bdcc2) ) - ROM_LOAD( "c09-08.44", 0x100000, 0x080000, CRC(7ddfc316) SHA1(47f0ed8eecd4719b4c5cb8762ee6b8bb01686812) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c09-11.29", 0x00000, 0x80000, CRC(6b1a11e1) SHA1(4304d029ecf91fa5b779057f195f75ebdd0a7c1c) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c09-16.17", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c09-20.71", 0x00000, 0x00100, CRC(cd8ffd80) SHA1(133bcd291a3751bce5293cb6b685f87258e8db19) ) // road/sprite priority and palette select - ROM_LOAD( "c09-23.14", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -ROM_END - -ROM_START( sciu ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c09-43.43", 0x00000, 0x20000, CRC(20a9343e) SHA1(b0185ddbda827236b7b41687f18c92e10c2dbd3a) ) - ROM_LOAD16_BYTE( "c09-44.40", 0x00001, 0x20000, CRC(7524338a) SHA1(f4e68a4d09f843f4697b4b4a4e94b5759a14fd01) ) - ROM_LOAD16_BYTE( "c09-41.38", 0x40000, 0x20000, CRC(83477f11) SHA1(f6dba2137a182dae215cf212bf85f4528e3d006d) ) - ROM_LOAD16_BYTE( "c09-39.41", 0x40001, 0x20000, CRC(de87bcb9) SHA1(b5537a25871ea90294f3b6f0b6386a883cfdf991) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c09-33.6", 0x00000, 0x10000, CRC(cf4e6c5b) SHA1(8d6720b605b8e0c7f0473ba452c79bf5efc2615d) ) /* Actual label is "C09 33*" */ - ROM_LOAD16_BYTE( "c09-32.5", 0x00001, 0x10000, CRC(a4713719) SHA1(b1110e397d3407ec63975cdd92a23cbb16348200) ) /* Actual label is "C09 32*" */ - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "c09-34.31", 0x00000, 0x20000, CRC(a21b3151) SHA1(f59c7b1ba5edf97d72670ee194ce9fdc5c5b9a58) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c09-05.16", 0x00000, 0x80000, CRC(890b38f0) SHA1(b478c96214ce027926346a4653250c8ee8a98bdc) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c09-04.52", 0x000000, 0x080000, CRC(2cbb3c9b) SHA1(9e3d95f76f5f5d385b6a9516af781aefef1eb0ca) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c09-02.53", 0x000002, 0x080000, CRC(a83a0389) SHA1(932788b5b5f01326d0fbb2b9fdb94a8c7c004db3) ) - ROM_LOAD64_WORD_SWAP( "c09-03.54", 0x000004, 0x080000, CRC(a31d0e80) SHA1(dfeff1b89dd7b3f19b26e77f2d66f6448cb00553) ) - ROM_LOAD64_WORD_SWAP( "c09-01.55", 0x000006, 0x080000, CRC(64bfea10) SHA1(15ea43092027b1717d0f24fbe6ac2cdf11a7ddc6) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c09-07.15", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c09-06.37", 0x00000, 0x80000, CRC(12df6d7b) SHA1(8ce742eb3f7eb6283b5ca32bb520d1cc7684d515) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c09-14.42", 0x000000, 0x080000, CRC(ad78bf46) SHA1(4020744bbdc4b9ec3dee1a9d7b5ffa8def43d7b2) ) - ROM_LOAD( "c09-13.43", 0x080000, 0x080000, CRC(d57c41d3) SHA1(3375a1fc6389840544b9fdb96b2fafbc8e3276e2) ) - ROM_LOAD( "c09-12.44", 0x100000, 0x080000, CRC(56c99fa5) SHA1(3f9a6bc89d847cc4c99d35f98157ea3f187c0f98) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c09-15.29", 0x00000, 0x80000, CRC(e63b9095) SHA1(c6ea670b5a90ab39429259ec1fefb2bde5d0213f) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c09-16.17", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c09-20.71", 0x00000, 0x00100, CRC(cd8ffd80) SHA1(133bcd291a3751bce5293cb6b685f87258e8db19) ) // road/sprite priority and palette select - ROM_LOAD( "c09-23.14", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority -ROM_END - -ROM_START( scin ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "ic37.37", 0x00000, 0x20000, CRC(33fb159c) SHA1(b004a5249414f69768d8a951ded3c104ea107b32) ) - ROM_LOAD16_BYTE( "ic40.38", 0x00001, 0x20000, CRC(657df3f2) SHA1(80e30961e2cdcb834d2cbd48803ace68acaab422) ) - ROM_LOAD16_BYTE( "ic38.42", 0x40000, 0x20000, CRC(0a09b90b) SHA1(0970644a0d79ab3898187849bec6c7cf598652f3) ) - ROM_LOAD16_BYTE( "ic41.39", 0x40001, 0x20000, CRC(43167b2a) SHA1(1e6f2a113deb57df869ec2ceb99d6a7ecfa5d7e5) ) - - ROM_REGION( 0x20000, "sub", 0 ) /* 128K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c09-33.6", 0x00000, 0x10000, CRC(cf4e6c5b) SHA1(8d6720b605b8e0c7f0473ba452c79bf5efc2615d) ) /* Actual label is "C09 33*" */ - ROM_LOAD16_BYTE( "c09-32.5", 0x00001, 0x10000, CRC(a4713719) SHA1(b1110e397d3407ec63975cdd92a23cbb16348200) ) /* Actual label is "C09 32*" */ - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "c09-34.31", 0x00000, 0x20000, CRC(a21b3151) SHA1(f59c7b1ba5edf97d72670ee194ce9fdc5c5b9a58) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c09-05.16", 0x00000, 0x80000, CRC(890b38f0) SHA1(b478c96214ce027926346a4653250c8ee8a98bdc) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c09-04.52", 0x000000, 0x080000, CRC(2cbb3c9b) SHA1(9e3d95f76f5f5d385b6a9516af781aefef1eb0ca) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c09-02.53", 0x000002, 0x080000, CRC(a83a0389) SHA1(932788b5b5f01326d0fbb2b9fdb94a8c7c004db3) ) - ROM_LOAD64_WORD_SWAP( "c09-03.54", 0x000004, 0x080000, CRC(a31d0e80) SHA1(dfeff1b89dd7b3f19b26e77f2d66f6448cb00553) ) - ROM_LOAD64_WORD_SWAP( "c09-01.55", 0x000006, 0x080000, CRC(64bfea10) SHA1(15ea43092027b1717d0f24fbe6ac2cdf11a7ddc6) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c09-07.15", 0x00000, 0x80000, CRC(963bc82b) SHA1(e3558aecd1b82ddbf10ab2b71843a3664705f1f1) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c09-06.37", 0x00000, 0x80000, CRC(12df6d7b) SHA1(8ce742eb3f7eb6283b5ca32bb520d1cc7684d515) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c09-14.42", 0x000000, 0x080000, CRC(ad78bf46) SHA1(4020744bbdc4b9ec3dee1a9d7b5ffa8def43d7b2) ) - ROM_LOAD( "c09-13.43", 0x080000, 0x080000, CRC(d57c41d3) SHA1(3375a1fc6389840544b9fdb96b2fafbc8e3276e2) ) - ROM_LOAD( "c09-12.44", 0x100000, 0x080000, CRC(56c99fa5) SHA1(3f9a6bc89d847cc4c99d35f98157ea3f187c0f98) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c09-15.29", 0x00000, 0x80000, CRC(e63b9095) SHA1(c6ea670b5a90ab39429259ec1fefb2bde5d0213f) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c09-16.17", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c09-20.71", 0x00000, 0x00100, CRC(cd8ffd80) SHA1(133bcd291a3751bce5293cb6b685f87258e8db19) ) // road/sprite priority and palette select - ROM_LOAD( "c09-23.14", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - -ROM_END - -ROM_START( nightstr ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b91-45.bin", 0x00000, 0x20000, CRC(7ad63421) SHA1(4ecfc3c8cd691d878e5d9212ccff0d225bb06bd9) ) - ROM_LOAD16_BYTE( "b91-44.bin", 0x00001, 0x20000, CRC(4bc30adf) SHA1(531d6ee9c8ff0d4ed07c15465ec7cb78cf976115) ) - ROM_LOAD16_BYTE( "b91-43.bin", 0x40000, 0x20000, CRC(3e6f727a) SHA1(ae837131a4c0c9bc5deba155c2a5b7ae72f1d070) ) - ROM_LOAD16_BYTE( "b91-47.bin", 0x40001, 0x20000, CRC(9f778e03) SHA1(37888c3f4c52b5a714678f0f1e39f6a4f19beef9) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b91-39.bin", 0x00000, 0x20000, CRC(725b23ae) SHA1(d4b4335863d32b9a81f7461240e960bf345c9835) ) - ROM_LOAD16_BYTE( "b91-40.bin", 0x00001, 0x20000, CRC(81fb364d) SHA1(f02733509039cde2c1de616e0a7969e31de1007a) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b91-41.bin", 0x00000, 0x20000, CRC(2694bb42) SHA1(ee770472655ac0ef55eeff04037457dbf6744e4f) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b91-11.bin", 0x00000, 0x80000, CRC(fff8ce31) SHA1(fc729de92937a805d79379228d7a30041594c0df) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b91-04.bin", 0x000000, 0x080000, CRC(8ca1970d) SHA1(d8504298a38a95f1d8f3a2fba479ec75fe4d5de7) ) /* OBJ A 16x16 */ - ROM_LOAD64_WORD_SWAP( "b91-03.bin", 0x000002, 0x080000, CRC(cd5fed39) SHA1(c16c67cc998889288e6e96535fd8e61afc93bc78) ) - ROM_LOAD64_WORD_SWAP( "b91-02.bin", 0x000004, 0x080000, CRC(457c64b8) SHA1(443f13d56d53ca6a7750ec974da675bad3f34a38) ) - ROM_LOAD64_WORD_SWAP( "b91-01.bin", 0x000006, 0x080000, CRC(3731d94f) SHA1(2978d3eb1f44595681e84f3aa8dc03d34a191455) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b91-10.bin", 0x00000, 0x80000, CRC(1d8f05b4) SHA1(04caa6a0887b90860c426a973dc3c3270e996818) ) /* ROD, road lines */ - - ROM_REGION( 0x200000, "sprites2", 0 ) - ROM_LOAD64_WORD_SWAP( "b91-08.bin", 0x000000, 0x080000, CRC(66f35c34) SHA1(9040390fa9c626a54076a9461e0e198f059e2cb1) ) /* OBJ B 16x16 */ - ROM_LOAD64_WORD_SWAP( "b91-07.bin", 0x000002, 0x080000, CRC(4d8ec6cf) SHA1(2b7c10b459dc45313c4c90899a73c42c55b6c5c9) ) - ROM_LOAD64_WORD_SWAP( "b91-06.bin", 0x000004, 0x080000, CRC(a34dc839) SHA1(e1fcb763dbc562a62e862297458bde66d691606c) ) - ROM_LOAD64_WORD_SWAP( "b91-05.bin", 0x000006, 0x080000, CRC(5e72ac90) SHA1(c28c2718e873be5a254992ef8db256a394ca03ff) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b91-09.bin", 0x00000, 0x80000, CRC(5f247ca2) SHA1(3b89e5d035f27f62a14c5c7a976c804f9bb5c04d) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b91-13.bin", 0x00000, 0x80000, CRC(8c7bf0f5) SHA1(6e18531991225c24a9722c9fbe1af6ae6e9b866b) ) - ROM_LOAD( "b91-12.bin", 0x80000, 0x80000, CRC(da77c7af) SHA1(49662a69b83739e2e0209cabff83995a951383f4) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b91-14.bin", 0x00000, 0x80000, CRC(6bc314d3) SHA1(ae3e9c6b853bab4ec81a6bd951b39a4bc883f456) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b91-26.bin", 0x00000, 0x0400, CRC(77682a4f) SHA1(da2b3143f1c8688a22d8ec47bbb73b2f2e578480) ) - ROM_LOAD( "b91-27.bin", 0x00000, 0x0400, CRC(a3f8490d) SHA1(349b8c9ba914603f72f800a3fc8e8277d756deb1) ) - ROM_LOAD( "b91-28.bin", 0x00000, 0x0400, CRC(fa2f840e) SHA1(dd61ee6833bd43bbf619d36ec46f2bfa00880f40) ) - ROM_LOAD( "b91-29.bin", 0x00000, 0x2000, CRC(ad685be8) SHA1(e7681d76fa216c124c54544393c4f6a08fd7d74d) ) - ROM_LOAD( "b91-30.bin", 0x00000, 0x10000, CRC(30cc1f79) SHA1(3b0e3e6e8bce7a7d04a5b0103e2ce4e18e52a68e) ) - ROM_LOAD( "b91-31.bin", 0x00000, 0x10000, CRC(c189781c) SHA1(af3904ce51f715970965d110313491dbacf188b8) ) - ROM_LOAD( "b91-32.bin", 0x00000, 0x0100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b91-33.bin", 0x00000, 0x0100, CRC(89719d17) SHA1(50181b8172b0fc08b149db18caf10659be9c517f) ) // road/sprite priority and palette select -ROM_END - -ROM_START( nightstru ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b91-45.bin", 0x00000, 0x20000, CRC(7ad63421) SHA1(4ecfc3c8cd691d878e5d9212ccff0d225bb06bd9) ) - ROM_LOAD16_BYTE( "b91-44.bin", 0x00001, 0x20000, CRC(4bc30adf) SHA1(531d6ee9c8ff0d4ed07c15465ec7cb78cf976115) ) - ROM_LOAD16_BYTE( "b91-43.bin", 0x40000, 0x20000, CRC(3e6f727a) SHA1(ae837131a4c0c9bc5deba155c2a5b7ae72f1d070) ) - ROM_LOAD16_BYTE( "b91-46.bin", 0x40001, 0x20000, CRC(e870be95) SHA1(9a83df2c88a029bc40f5ce074143778ea555a2ba) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b91-39.bin", 0x00000, 0x20000, CRC(725b23ae) SHA1(d4b4335863d32b9a81f7461240e960bf345c9835) ) - ROM_LOAD16_BYTE( "b91-40.bin", 0x00001, 0x20000, CRC(81fb364d) SHA1(f02733509039cde2c1de616e0a7969e31de1007a) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b91-41.bin", 0x00000, 0x20000, CRC(2694bb42) SHA1(ee770472655ac0ef55eeff04037457dbf6744e4f) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b91-11.bin", 0x00000, 0x80000, CRC(fff8ce31) SHA1(fc729de92937a805d79379228d7a30041594c0df) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b91-04.bin", 0x000000, 0x080000, CRC(8ca1970d) SHA1(d8504298a38a95f1d8f3a2fba479ec75fe4d5de7) ) /* OBJ A 16x16 */ - ROM_LOAD64_WORD_SWAP( "b91-03.bin", 0x000002, 0x080000, CRC(cd5fed39) SHA1(c16c67cc998889288e6e96535fd8e61afc93bc78) ) - ROM_LOAD64_WORD_SWAP( "b91-02.bin", 0x000004, 0x080000, CRC(457c64b8) SHA1(443f13d56d53ca6a7750ec974da675bad3f34a38) ) - ROM_LOAD64_WORD_SWAP( "b91-01.bin", 0x000006, 0x080000, CRC(3731d94f) SHA1(2978d3eb1f44595681e84f3aa8dc03d34a191455) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b91-10.bin", 0x00000, 0x80000, CRC(1d8f05b4) SHA1(04caa6a0887b90860c426a973dc3c3270e996818) ) /* ROD, road lines */ - - ROM_REGION( 0x200000, "sprites2", 0 ) - ROM_LOAD64_WORD_SWAP( "b91-08.bin", 0x000000, 0x080000, CRC(66f35c34) SHA1(9040390fa9c626a54076a9461e0e198f059e2cb1) ) /* OBJ B 16x16 */ - ROM_LOAD64_WORD_SWAP( "b91-07.bin", 0x000002, 0x080000, CRC(4d8ec6cf) SHA1(2b7c10b459dc45313c4c90899a73c42c55b6c5c9) ) - ROM_LOAD64_WORD_SWAP( "b91-06.bin", 0x000004, 0x080000, CRC(a34dc839) SHA1(e1fcb763dbc562a62e862297458bde66d691606c) ) - ROM_LOAD64_WORD_SWAP( "b91-05.bin", 0x000006, 0x080000, CRC(5e72ac90) SHA1(c28c2718e873be5a254992ef8db256a394ca03ff) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b91-09.bin", 0x00000, 0x80000, CRC(5f247ca2) SHA1(3b89e5d035f27f62a14c5c7a976c804f9bb5c04d) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b91-13.bin", 0x00000, 0x80000, CRC(8c7bf0f5) SHA1(6e18531991225c24a9722c9fbe1af6ae6e9b866b) ) - ROM_LOAD( "b91-12.bin", 0x80000, 0x80000, CRC(da77c7af) SHA1(49662a69b83739e2e0209cabff83995a951383f4) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b91-14.bin", 0x00000, 0x80000, CRC(6bc314d3) SHA1(ae3e9c6b853bab4ec81a6bd951b39a4bc883f456) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b91-26.bin", 0x00000, 0x0400, CRC(77682a4f) SHA1(da2b3143f1c8688a22d8ec47bbb73b2f2e578480) ) - ROM_LOAD( "b91-27.bin", 0x00000, 0x0400, CRC(a3f8490d) SHA1(349b8c9ba914603f72f800a3fc8e8277d756deb1) ) - ROM_LOAD( "b91-28.bin", 0x00000, 0x0400, CRC(fa2f840e) SHA1(dd61ee6833bd43bbf619d36ec46f2bfa00880f40) ) - ROM_LOAD( "b91-29.bin", 0x00000, 0x2000, CRC(ad685be8) SHA1(e7681d76fa216c124c54544393c4f6a08fd7d74d) ) - ROM_LOAD( "b91-30.bin", 0x00000, 0x10000, CRC(30cc1f79) SHA1(3b0e3e6e8bce7a7d04a5b0103e2ce4e18e52a68e) ) - ROM_LOAD( "b91-31.bin", 0x00000, 0x10000, CRC(c189781c) SHA1(af3904ce51f715970965d110313491dbacf188b8) ) - ROM_LOAD( "b91-32.bin", 0x00000, 0x0100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b91-33.bin", 0x00000, 0x0100, CRC(89719d17) SHA1(50181b8172b0fc08b149db18caf10659be9c517f) ) // road/sprite priority and palette select -ROM_END - -ROM_START( nightstrj ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b91-45.bin", 0x00000, 0x20000, CRC(7ad63421) SHA1(4ecfc3c8cd691d878e5d9212ccff0d225bb06bd9) ) - ROM_LOAD16_BYTE( "b91-44.bin", 0x00001, 0x20000, CRC(4bc30adf) SHA1(531d6ee9c8ff0d4ed07c15465ec7cb78cf976115) ) - ROM_LOAD16_BYTE( "b91-43.bin", 0x40000, 0x20000, CRC(3e6f727a) SHA1(ae837131a4c0c9bc5deba155c2a5b7ae72f1d070) ) - ROM_LOAD16_BYTE( "b91-42.bin", 0x40001, 0x20000, CRC(7179ef2f) SHA1(4c45f0c4dfcf16665d7eca4fdcd6a959d9b6fc01) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b91-39.bin", 0x00000, 0x20000, CRC(725b23ae) SHA1(d4b4335863d32b9a81f7461240e960bf345c9835) ) - ROM_LOAD16_BYTE( "b91-40.bin", 0x00001, 0x20000, CRC(81fb364d) SHA1(f02733509039cde2c1de616e0a7969e31de1007a) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Z80 sound cpu */ - ROM_LOAD( "b91-41.bin", 0x00000, 0x20000, CRC(2694bb42) SHA1(ee770472655ac0ef55eeff04037457dbf6744e4f) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b91-11.bin", 0x00000, 0x80000, CRC(fff8ce31) SHA1(fc729de92937a805d79379228d7a30041594c0df) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b91-04.bin", 0x000000, 0x080000, CRC(8ca1970d) SHA1(d8504298a38a95f1d8f3a2fba479ec75fe4d5de7) ) /* OBJ A 16x16 */ - ROM_LOAD64_WORD_SWAP( "b91-03.bin", 0x000002, 0x080000, CRC(cd5fed39) SHA1(c16c67cc998889288e6e96535fd8e61afc93bc78) ) - ROM_LOAD64_WORD_SWAP( "b91-02.bin", 0x000004, 0x080000, CRC(457c64b8) SHA1(443f13d56d53ca6a7750ec974da675bad3f34a38) ) - ROM_LOAD64_WORD_SWAP( "b91-01.bin", 0x000006, 0x080000, CRC(3731d94f) SHA1(2978d3eb1f44595681e84f3aa8dc03d34a191455) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b91-10.bin", 0x00000, 0x80000, CRC(1d8f05b4) SHA1(04caa6a0887b90860c426a973dc3c3270e996818) ) /* ROD, road lines */ - - ROM_REGION( 0x200000, "sprites2", 0 ) - ROM_LOAD64_WORD_SWAP( "b91-08.bin", 0x000000, 0x080000, CRC(66f35c34) SHA1(9040390fa9c626a54076a9461e0e198f059e2cb1) ) /* OBJ B 16x16 */ - ROM_LOAD64_WORD_SWAP( "b91-07.bin", 0x000002, 0x080000, CRC(4d8ec6cf) SHA1(2b7c10b459dc45313c4c90899a73c42c55b6c5c9) ) - ROM_LOAD64_WORD_SWAP( "b91-06.bin", 0x000004, 0x080000, CRC(a34dc839) SHA1(e1fcb763dbc562a62e862297458bde66d691606c) ) - ROM_LOAD64_WORD_SWAP( "b91-05.bin", 0x000006, 0x080000, CRC(5e72ac90) SHA1(c28c2718e873be5a254992ef8db256a394ca03ff) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b91-09.bin", 0x00000, 0x80000, CRC(5f247ca2) SHA1(3b89e5d035f27f62a14c5c7a976c804f9bb5c04d) ) /* STY spritemap */ - - ROM_REGION( 0x100000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b91-13.bin", 0x00000, 0x80000, CRC(8c7bf0f5) SHA1(6e18531991225c24a9722c9fbe1af6ae6e9b866b) ) - ROM_LOAD( "b91-12.bin", 0x80000, 0x80000, CRC(da77c7af) SHA1(49662a69b83739e2e0209cabff83995a951383f4) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b91-14.bin", 0x00000, 0x80000, CRC(6bc314d3) SHA1(ae3e9c6b853bab4ec81a6bd951b39a4bc883f456) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "b91-26.bin", 0x00000, 0x0400, CRC(77682a4f) SHA1(da2b3143f1c8688a22d8ec47bbb73b2f2e578480) ) - ROM_LOAD( "b91-27.bin", 0x00000, 0x0400, CRC(a3f8490d) SHA1(349b8c9ba914603f72f800a3fc8e8277d756deb1) ) - ROM_LOAD( "b91-28.bin", 0x00000, 0x0400, CRC(fa2f840e) SHA1(dd61ee6833bd43bbf619d36ec46f2bfa00880f40) ) - ROM_LOAD( "b91-29.bin", 0x00000, 0x2000, CRC(ad685be8) SHA1(e7681d76fa216c124c54544393c4f6a08fd7d74d) ) - ROM_LOAD( "b91-30.bin", 0x00000, 0x10000, CRC(30cc1f79) SHA1(3b0e3e6e8bce7a7d04a5b0103e2ce4e18e52a68e) ) - ROM_LOAD( "b91-31.bin", 0x00000, 0x10000, CRC(c189781c) SHA1(af3904ce51f715970965d110313491dbacf188b8) ) - ROM_LOAD( "b91-32.bin", 0x00000, 0x0100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b91-33.bin", 0x00000, 0x0100, CRC(89719d17) SHA1(50181b8172b0fc08b149db18caf10659be9c517f) ) // road/sprite priority and palette select -ROM_END - -ROM_START( aquajack ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b77-22.ic31", 0x00000, 0x20000, CRC(67400dde) SHA1(1e47c4fbd4449f2d973ac962ad58f22502d59198) ) - ROM_LOAD16_BYTE( "b77-26.ic17", 0x00001, 0x20000, CRC(cd4d0969) SHA1(d610e7847a09f1ca892007440fa1b431bb0c41d2) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b77-24.ic69", 0x00000, 0x20000, CRC(95e643ed) SHA1(d47ddd50c744f33b3cbd5ef90880ca577977f5ca) ) - ROM_LOAD16_BYTE( "b77-23.ic67", 0x00001, 0x20000, CRC(395a7d1c) SHA1(22cbbabb07f43e72a6139b6b9d68d6c1146d727f) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "b77-20.ic54", 0x00000, 0x10000, CRC(84ba54b7) SHA1(84e51c1a6a5b4eb2a65f4a6d9d54037323348f50) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b77-05.ic105", 0x00000, 0x80000, CRC(7238f0ff) SHA1(95e2d6815e99392358bbeabf1afbf237673f2e24) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b77-04.ic16", 0x000000, 0x80000, CRC(bed0be6c) SHA1(2b11824f741b7f6755bd78f594af19b63a29092f) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b77-03.ic15", 0x000002, 0x80000, CRC(9a3030a7) SHA1(7b60fd066eccd04d9fcc131d9d06f151334ccab2) ) - ROM_LOAD64_WORD_SWAP( "b77-02.ic14", 0x000004, 0x80000, CRC(daea0d2e) SHA1(10640651824234a589838e8f017964b79de79cb4) ) - ROM_LOAD64_WORD_SWAP( "b77-01.ic13", 0x000006, 0x80000, CRC(cdab000d) SHA1(d83ee7f1dc17ab113bac38d0d062bb1519ff69f7) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b77-07.ic33", 0x000000, 0x80000, CRC(7db1fc5e) SHA1(fbc88c2179b881d34d3a33d0a901d8da3445f9a8) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b77-06.ic39", 0x00000, 0x80000, CRC(ce2aed00) SHA1(9c992717914b13eb271122ecf7cca3634b013e56) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b77-09.ic58", 0x00000, 0x80000, CRC(948e5ad9) SHA1(35cd6706470f01b5a244817d10fc65c075ff29b1) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b77-08.ic57", 0x00000, 0x80000, CRC(119b9485) SHA1(2c9cd90be20df769e09016abccf59c8f119da286) ) - - ROM_REGION( 0x00200, "user2", 0 ) /* unused PROMs */ - ROM_LOAD( "b77-17.ic1", 0x00000, 0x0100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b77-18.ic37", 0x00100, 0x0100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - -/* (no unused roms in my set, there should be an 0x10000 one like the rest) */ -ROM_END - -ROM_START( aquajacku ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b77-22.ic31", 0x00000, 0x20000, CRC(67400dde) SHA1(1e47c4fbd4449f2d973ac962ad58f22502d59198) ) - ROM_LOAD16_BYTE( "b77-25.ic17", 0x00001, 0x20000, CRC(ba4a39ff) SHA1(89527c7e3106ae77c85372117fea24a8553ab377) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b77-24.ic69", 0x00000, 0x20000, CRC(95e643ed) SHA1(d47ddd50c744f33b3cbd5ef90880ca577977f5ca) ) - ROM_LOAD16_BYTE( "b77-23.ic67", 0x00001, 0x20000, CRC(395a7d1c) SHA1(22cbbabb07f43e72a6139b6b9d68d6c1146d727f) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "b77-20.ic54", 0x00000, 0x10000, CRC(84ba54b7) SHA1(84e51c1a6a5b4eb2a65f4a6d9d54037323348f50) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b77-05.ic105", 0x00000, 0x80000, CRC(7238f0ff) SHA1(95e2d6815e99392358bbeabf1afbf237673f2e24) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b77-04.ic16", 0x000000, 0x80000, CRC(bed0be6c) SHA1(2b11824f741b7f6755bd78f594af19b63a29092f) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b77-03.ic15", 0x000002, 0x80000, CRC(9a3030a7) SHA1(7b60fd066eccd04d9fcc131d9d06f151334ccab2) ) - ROM_LOAD64_WORD_SWAP( "b77-02.ic14", 0x000004, 0x80000, CRC(daea0d2e) SHA1(10640651824234a589838e8f017964b79de79cb4) ) - ROM_LOAD64_WORD_SWAP( "b77-01.ic13", 0x000006, 0x80000, CRC(cdab000d) SHA1(d83ee7f1dc17ab113bac38d0d062bb1519ff69f7) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b77-07.ic33", 0x000000, 0x80000, CRC(7db1fc5e) SHA1(fbc88c2179b881d34d3a33d0a901d8da3445f9a8) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b77-06.ic39", 0x00000, 0x80000, CRC(ce2aed00) SHA1(9c992717914b13eb271122ecf7cca3634b013e56) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b77-09.ic58", 0x00000, 0x80000, CRC(948e5ad9) SHA1(35cd6706470f01b5a244817d10fc65c075ff29b1) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b77-08.ic57", 0x00000, 0x80000, CRC(119b9485) SHA1(2c9cd90be20df769e09016abccf59c8f119da286) ) - - ROM_REGION( 0x00200, "user2", 0 ) /* unused PROMs */ - ROM_LOAD( "b77-17.ic1", 0x00000, 0x0100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b77-18.ic37", 0x00100, 0x0100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - -/* (no unused roms in my set, there should be an 0x10000 one like the rest) */ -ROM_END - -ROM_START( aquajackj ) - ROM_REGION( 0x40000, "maincpu", 0 ) /* 256K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "b77-22.ic31", 0x00000, 0x20000, CRC(67400dde) SHA1(1e47c4fbd4449f2d973ac962ad58f22502d59198) ) - ROM_LOAD16_BYTE( "b77-21.ic17", 0x00001, 0x20000, CRC(23436845) SHA1(e62111c902453e1b655c7f25bcea938a6f13aed2) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "b77-24.ic69", 0x00000, 0x20000, CRC(95e643ed) SHA1(d47ddd50c744f33b3cbd5ef90880ca577977f5ca) ) - ROM_LOAD16_BYTE( "b77-23.ic67", 0x00001, 0x20000, CRC(395a7d1c) SHA1(22cbbabb07f43e72a6139b6b9d68d6c1146d727f) ) - - ROM_REGION( 0x10000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "b77-20.ic54", 0x00000, 0x10000, CRC(84ba54b7) SHA1(84e51c1a6a5b4eb2a65f4a6d9d54037323348f50) ) - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "b77-05.ic105", 0x00000, 0x80000, CRC(7238f0ff) SHA1(95e2d6815e99392358bbeabf1afbf237673f2e24) ) /* SCR 8x8 */ - - ROM_REGION( 0x200000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "b77-04.ic16", 0x000000, 0x80000, CRC(bed0be6c) SHA1(2b11824f741b7f6755bd78f594af19b63a29092f) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "b77-03.ic15", 0x000002, 0x80000, CRC(9a3030a7) SHA1(7b60fd066eccd04d9fcc131d9d06f151334ccab2) ) - ROM_LOAD64_WORD_SWAP( "b77-02.ic14", 0x000004, 0x80000, CRC(daea0d2e) SHA1(10640651824234a589838e8f017964b79de79cb4) ) - ROM_LOAD64_WORD_SWAP( "b77-01.ic13", 0x000006, 0x80000, CRC(cdab000d) SHA1(d83ee7f1dc17ab113bac38d0d062bb1519ff69f7) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "b77-07.ic33", 0x000000, 0x80000, CRC(7db1fc5e) SHA1(fbc88c2179b881d34d3a33d0a901d8da3445f9a8) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "b77-06.ic39", 0x00000, 0x80000, CRC(ce2aed00) SHA1(9c992717914b13eb271122ecf7cca3634b013e56) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "b77-09.ic58", 0x00000, 0x80000, CRC(948e5ad9) SHA1(35cd6706470f01b5a244817d10fc65c075ff29b1) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "b77-08.ic57", 0x00000, 0x80000, CRC(119b9485) SHA1(2c9cd90be20df769e09016abccf59c8f119da286) ) - - ROM_REGION( 0x00200, "user2", 0 ) /* unused PROMs */ - ROM_LOAD( "b77-17.ic1", 0x00000, 0x0100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "b77-18.ic37", 0x00100, 0x0100, CRC(7b7d8ff4) SHA1(18842ed8160739cd2e2ccc2db605153dbed6cc0a) ) // road/sprite priority and palette select - -/* (no unused roms in my set, there should be an 0x10000 one like the rest) */ -ROM_END - -ROM_START( spacegun ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c57-18.62", 0x00000, 0x20000, CRC(19d7d52e) SHA1(4361929a43f911864ece4dcd06995ea6b6156c59) ) - ROM_LOAD16_BYTE( "c57-20.74", 0x00001, 0x20000, CRC(2e58253f) SHA1(36fb52ce1c6cf9f537cf500ba330b167871969b9) ) - ROM_LOAD16_BYTE( "c57-17.59", 0x40000, 0x20000, CRC(e197edb8) SHA1(2ffd000aac1825ecd564c273f0cc055710ba4050) ) - ROM_LOAD16_BYTE( "c57-22.73", 0x40001, 0x20000, CRC(5855fde3) SHA1(fcd6d7ed16b61b9023596f0efb7f6971060a2e0b) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c57-15+.27", 0x00000, 0x20000, CRC(b36eb8f1) SHA1(e6e9fb844fd9acc6ee8a515a964d5df8de088a8c) ) /* Actual label is "C57 15*" */ - ROM_LOAD16_BYTE( "c57-16+.29", 0x00001, 0x20000, CRC(bfb5d1e7) SHA1(cbf22e9043aac54e08c5da74d973da27844170ef) ) /* Actual label is "C57 16*" */ - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c57-06.52", 0x00000, 0x80000, CRC(4ebadd5b) SHA1(d32a52b4d7dd19b0fa2551f93ce3d5cbcf2bc158) ) /* SCR 8x8 */ - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c57-01.25", 0x000000, 0x100000, CRC(f901b04e) SHA1(24bac1c3a0c585966a7cbeeebd9b2dd3acf45a67) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c57-02.24", 0x000002, 0x100000, CRC(21ee4633) SHA1(ddb948b165127c8fb1a988b5a0f17f92117f1b66) ) - ROM_LOAD64_WORD_SWAP( "c57-03.12", 0x000004, 0x100000, CRC(fafca86f) SHA1(dc6ea78f0deafef632d8bd3677ec74e797dc69a2) ) - ROM_LOAD64_WORD_SWAP( "c57-04.11", 0x000006, 0x100000, CRC(a9787090) SHA1(8c05c4c0d14a9f60defb37225da37aadf946c563) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c57-05.36", 0x00000, 0x80000, CRC(6a70eb2e) SHA1(307dd876af65204e86e094b4015ffb4a655824f8) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c57-07.76", 0x00000, 0x80000, CRC(ad653dc1) SHA1(2ec440f793b0a686233fbe61c9462f8365c42b65) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c57-08.75", 0x00000, 0x80000, CRC(22593550) SHA1(e802e947e6947d146e1b57dbff7ac021e19e7b2b) ) - - ROM_REGION( 0x0c00, "plds", 0 ) - ROM_LOAD( "pal16l8-c57-09.9", 0x0000, 0x0104, CRC(ea93161e) SHA1(c83c6ce3696b2754abb861d41a8d587a8e82aa1e) ) - ROM_LOAD( "pal20l8-c57-10.47", 0x0200, 0x0144, CRC(3ee56888) SHA1(030efb0903d919686748b1ff86a327990832d0fa) ) - ROM_LOAD( "pal16l8-c57-11.48", 0x0400, 0x0104, CRC(6bb4372e) SHA1(513bf6f032a9043303b8660c106753ae214d28ff) ) - ROM_LOAD( "pal20l8-c57-12.61", 0x0600, 0x0144, CRC(debddb13) SHA1(47be25b3bb157d37b9813737544a56a2090f85ba) ) - ROM_LOAD( "pal16l8-c57-13.72", 0x0800, 0x0104, CRC(1369f23e) SHA1(bbc960cfc3edd07e89134e1b876aa7a6c0cba5ac) ) - ROM_LOAD( "pal16r4-c57-14.96", 0x0a00, 0x0104, CRC(75e1bf61) SHA1(e8358329a78ec0ab87641b2ecaec0b2b67c6ca30) ) -ROM_END - -ROM_START( spacegunu ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c57-18.62", 0x00000, 0x20000, CRC(19d7d52e) SHA1(4361929a43f911864ece4dcd06995ea6b6156c59) ) - ROM_LOAD16_BYTE( "c57-20.74", 0x00001, 0x20000, CRC(2e58253f) SHA1(36fb52ce1c6cf9f537cf500ba330b167871969b9) ) - ROM_LOAD16_BYTE( "c57-17.59", 0x40000, 0x20000, CRC(e197edb8) SHA1(2ffd000aac1825ecd564c273f0cc055710ba4050) ) - ROM_LOAD16_BYTE( "c57-21.73", 0x40001, 0x20000, CRC(2f52cd75) SHA1(7dfd1f57925a0993608055247d565af810753189) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c57-15+.27", 0x00000, 0x20000, CRC(b36eb8f1) SHA1(e6e9fb844fd9acc6ee8a515a964d5df8de088a8c) ) /* Actual label is "C57 15*" */ - ROM_LOAD16_BYTE( "c57-16+.29", 0x00001, 0x20000, CRC(bfb5d1e7) SHA1(cbf22e9043aac54e08c5da74d973da27844170ef) ) /* Actual label is "C57 16*" */ - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c57-06.52", 0x00000, 0x80000, CRC(4ebadd5b) SHA1(d32a52b4d7dd19b0fa2551f93ce3d5cbcf2bc158) ) /* SCR 8x8 */ - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c57-01.25", 0x000000, 0x100000, CRC(f901b04e) SHA1(24bac1c3a0c585966a7cbeeebd9b2dd3acf45a67) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c57-02.24", 0x000002, 0x100000, CRC(21ee4633) SHA1(ddb948b165127c8fb1a988b5a0f17f92117f1b66) ) - ROM_LOAD64_WORD_SWAP( "c57-03.12", 0x000004, 0x100000, CRC(fafca86f) SHA1(dc6ea78f0deafef632d8bd3677ec74e797dc69a2) ) - ROM_LOAD64_WORD_SWAP( "c57-04.11", 0x000006, 0x100000, CRC(a9787090) SHA1(8c05c4c0d14a9f60defb37225da37aadf946c563) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c57-05.36", 0x00000, 0x80000, CRC(6a70eb2e) SHA1(307dd876af65204e86e094b4015ffb4a655824f8) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c57-07.76", 0x00000, 0x80000, CRC(ad653dc1) SHA1(2ec440f793b0a686233fbe61c9462f8365c42b65) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c57-08.75", 0x00000, 0x80000, CRC(22593550) SHA1(e802e947e6947d146e1b57dbff7ac021e19e7b2b) ) - - ROM_REGION( 0x0c00, "plds", 0 ) - ROM_LOAD( "pal16l8-c57-09.9", 0x0000, 0x0104, CRC(ea93161e) SHA1(c83c6ce3696b2754abb861d41a8d587a8e82aa1e) ) - ROM_LOAD( "pal20l8-c57-10.47", 0x0200, 0x0144, CRC(3ee56888) SHA1(030efb0903d919686748b1ff86a327990832d0fa) ) - ROM_LOAD( "pal16l8-c57-11.48", 0x0400, 0x0104, CRC(6bb4372e) SHA1(513bf6f032a9043303b8660c106753ae214d28ff) ) - ROM_LOAD( "pal20l8-c57-12.61", 0x0600, 0x0144, CRC(debddb13) SHA1(47be25b3bb157d37b9813737544a56a2090f85ba) ) - ROM_LOAD( "pal16l8-c57-13.72", 0x0800, 0x0104, CRC(1369f23e) SHA1(bbc960cfc3edd07e89134e1b876aa7a6c0cba5ac) ) - ROM_LOAD( "pal16r4-c57-14.96", 0x0a00, 0x0104, CRC(75e1bf61) SHA1(e8358329a78ec0ab87641b2ecaec0b2b67c6ca30) ) -ROM_END - -ROM_START( spacegunj ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c57-18+.62", 0x00000, 0x20000, CRC(c648c093) SHA1(136baf474036a64c6c19e1c3ced36f796ca47f0e) ) /* Actual label is "C57 18*" */ - ROM_LOAD16_BYTE( "c57-20+.74", 0x00001, 0x20000, CRC(4de524f6) SHA1(ae4557cb17ad434939174a8092f117da90178320) ) /* Actual label is "C57 20*" */ - ROM_LOAD16_BYTE( "c57-17.59", 0x40000, 0x20000, CRC(e197edb8) SHA1(2ffd000aac1825ecd564c273f0cc055710ba4050) ) - ROM_LOAD16_BYTE( "c57-19.73", 0x40001, 0x20000, CRC(c15cac59) SHA1(62d7ce8f15032d215c6ca3d65605195958758ea6) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c57-15+.27", 0x00000, 0x20000, CRC(b36eb8f1) SHA1(e6e9fb844fd9acc6ee8a515a964d5df8de088a8c) ) /* Actual label is "C57 15*" */ - ROM_LOAD16_BYTE( "c57-16+.29", 0x00001, 0x20000, CRC(bfb5d1e7) SHA1(cbf22e9043aac54e08c5da74d973da27844170ef) ) /* Actual label is "C57 16*" */ - - ROM_REGION( 0x80000, "tc0100scn", 0 ) - ROM_LOAD16_WORD_SWAP( "c57-06.52", 0x00000, 0x80000, CRC(4ebadd5b) SHA1(d32a52b4d7dd19b0fa2551f93ce3d5cbcf2bc158) ) /* SCR 8x8 */ - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c57-01.25", 0x000000, 0x100000, CRC(f901b04e) SHA1(24bac1c3a0c585966a7cbeeebd9b2dd3acf45a67) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c57-02.24", 0x000002, 0x100000, CRC(21ee4633) SHA1(ddb948b165127c8fb1a988b5a0f17f92117f1b66) ) - ROM_LOAD64_WORD_SWAP( "c57-03.12", 0x000004, 0x100000, CRC(fafca86f) SHA1(dc6ea78f0deafef632d8bd3677ec74e797dc69a2) ) - ROM_LOAD64_WORD_SWAP( "c57-04.11", 0x000006, 0x100000, CRC(a9787090) SHA1(8c05c4c0d14a9f60defb37225da37aadf946c563) ) - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c57-05.36", 0x00000, 0x80000, CRC(6a70eb2e) SHA1(307dd876af65204e86e094b4015ffb4a655824f8) ) /* STY spritemap */ - - ROM_REGION( 0x80000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c57-07.76", 0x00000, 0x80000, CRC(ad653dc1) SHA1(2ec440f793b0a686233fbe61c9462f8365c42b65) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c57-08.75", 0x00000, 0x80000, CRC(22593550) SHA1(e802e947e6947d146e1b57dbff7ac021e19e7b2b) ) - - ROM_REGION( 0x0c00, "plds", 0 ) - ROM_LOAD( "pal16l8-c57-09.9", 0x0000, 0x0104, CRC(ea93161e) SHA1(c83c6ce3696b2754abb861d41a8d587a8e82aa1e) ) - ROM_LOAD( "pal20l8-c57-10.47", 0x0200, 0x0144, CRC(3ee56888) SHA1(030efb0903d919686748b1ff86a327990832d0fa) ) - ROM_LOAD( "pal16l8-c57-11.48", 0x0400, 0x0104, CRC(6bb4372e) SHA1(513bf6f032a9043303b8660c106753ae214d28ff) ) - ROM_LOAD( "pal20l8-c57-12.61", 0x0600, 0x0144, CRC(debddb13) SHA1(47be25b3bb157d37b9813737544a56a2090f85ba) ) - ROM_LOAD( "pal16l8-c57-13.72", 0x0800, 0x0104, CRC(1369f23e) SHA1(bbc960cfc3edd07e89134e1b876aa7a6c0cba5ac) ) - ROM_LOAD( "pal16r4-c57-14.96", 0x0a00, 0x0104, CRC(75e1bf61) SHA1(e8358329a78ec0ab87641b2ecaec0b2b67c6ca30) ) -ROM_END - -ROM_START( dblaxle ) /* Manual refers to this version as the "Version Without Communication" */ - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c78_49-1.2", 0x00000, 0x20000, CRC(a6f0c631) SHA1(371cb7807d2350ceca36fc0fb6a65d3179c011b0) ) - ROM_LOAD16_BYTE( "c78_51-1.4", 0x00001, 0x20000, CRC(ef24e83b) SHA1(a0bc1d2192bccfcb6f859aa0a27f43cc92080e1e) ) - ROM_LOAD16_BYTE( "c78_50-1.3", 0x40000, 0x20000, CRC(8b0440f4) SHA1(31f7fcb8acfac13bbf2036670b665744acd37d25) ) - ROM_LOAD16_BYTE( "c78_53-1.5", 0x40001, 0x20000, CRC(2bb91763) SHA1(a7cd2ac9f3937d88194d7c994d76abc89cc30f4d) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c78-30-1.35", 0x00000, 0x20000, CRC(026aac18) SHA1(f50873982b4dc0fc822060f4c20c635efdd75d7e) ) - ROM_LOAD16_BYTE( "c78-31-1.36", 0x00001, 0x20000, CRC(67ce23e8) SHA1(983e998a79e3d4376b005c92ded050be236d37cc) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "c78-34.c42", 0x00000, 0x20000, CRC(f2186943) SHA1(2e9aed39fddf3aa1db7e20f8a709b6b82cc3e7df) ) - - ROM_REGION( 0x100000, "tc0480scp", 0 ) - ROM_LOAD32_WORD( "c78-10.12", 0x00000, 0x80000, CRC(44b1897c) SHA1(7ad179db6d7dfeb139ea13cb4a231f99d177f2b1) ) /* SCR 16x16 */ - ROM_LOAD32_WORD( "c78-11.11", 0x00002, 0x80000, CRC(7db3d4a3) SHA1(fc3c44ed36b212688a5bd8dc61321a994578258e) ) - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c78-08.25", 0x000000, 0x100000, CRC(6c725211) SHA1(3c1765f44fe57b496d305e994516674f71bd4c3c) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c78-07.33", 0x000002, 0x100000, CRC(9da00d5b) SHA1(f6b664c7495b936ce1b99852da45ec92cb37062a) ) - ROM_LOAD64_WORD_SWAP( "c78-06.23", 0x000004, 0x100000, CRC(8309e91b) SHA1(3f27557bc82bf42cc77e3c7e363b51a0b119144d) ) - ROM_LOAD64_WORD_SWAP( "c78-05.31", 0x000006, 0x100000, CRC(90001f68) SHA1(5c08dfe6a2e12e6ca84035815563f38fc2c2c029) ) -// ROMX_LOAD ( "c78-05l.1", 0x000007, 0x080000, CRC(f24bf972) , ROM_SKIP(7) ) -// ROMX_LOAD ( "c78-05h.2", 0x000006, 0x080000, CRC(c01039b5) , ROM_SKIP(7) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c78-09.12", 0x000000, 0x80000, CRC(0dbde6f5) SHA1(4049271e3738b54e0c56d191889b1aea5664d49f) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c78-04.3", 0x00000, 0x80000, CRC(cc1aa37c) SHA1(cfa2eb338dc81c98c637c2f0b14d2baea8b115f5) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c78-12.33", 0x000000, 0x100000, CRC(b0267404) SHA1(ffd337336ff9b096e3725f733364762f6e6d3fab) ) - ROM_LOAD( "c78-13.46", 0x100000, 0x080000, CRC(1b363aa2) SHA1(0aae3988024654e98cc0c784307b1c329c8f0783) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c78-14.31", 0x00000, 0x80000, CRC(9cad4dfb) SHA1(9187ef827a3f1bc9233d0e45e72c72c0956c5912) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c78-25.15", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) // 98% compression - ROM_LOAD( "c78-15.22", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c78-21.74", 0x00000, 0x00100, CRC(2926bf27) SHA1(bfbbe6c71bb29a05959f3de0d940816139f9ebfe) ) // road/sprite priority and palette select - ROM_LOAD( "c84-10.16", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) - ROM_LOAD( "c84-11.17", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) -ROM_END - -ROM_START( dblaxleu ) /* Manual refers to this version as the "Version Without Communication" */ - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c78_49+.2", 0x00000, 0x20000, CRC(3bb0344a) SHA1(dad031033838bf65c83fb3715a9727f2d165909b) ) /* Actual label is C78 49* */ - ROM_LOAD16_BYTE( "c78_51+.4", 0x00001, 0x20000, CRC(918176cb) SHA1(b78bce351e240b447fbb9a1f44c8efa3e6b98cbe) ) /* Actual label is C78 51* */ - ROM_LOAD16_BYTE( "c78_50+.3", 0x40000, 0x20000, CRC(5a12e2bb) SHA1(53a91cc8fcf42934aa282f5a1bb286461dc2a421) ) /* Actual label is C78 50* */ - ROM_LOAD16_BYTE( "c78_53+.5", 0x40001, 0x20000, CRC(62f910d4) SHA1(3d952ffcb30a264751b4b282ae8c26ecea09c05c) ) /* Actual label is C78 53* */ - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c78-30+.35", 0x00000, 0x20000, CRC(f73b3ce1) SHA1(1794d1c74599d58302c6dbfabcc1b3110d19b1fb) ) /* Label missing, it's either C78 30 or C78 30* */ - ROM_LOAD16_BYTE( "c78-31+.36", 0x00001, 0x20000, CRC(4639adee) SHA1(24569dd4801c622758e60d3e526480ac6b5f85d2) ) /* Label missing, it's either C78 31 or C78 31* */ - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "c78-34.c42", 0x00000, 0x20000, CRC(f2186943) SHA1(2e9aed39fddf3aa1db7e20f8a709b6b82cc3e7df) ) - - ROM_REGION( 0x100000, "tc0480scp", 0 ) - ROM_LOAD32_WORD( "c78-10.12", 0x00000, 0x80000, CRC(44b1897c) SHA1(7ad179db6d7dfeb139ea13cb4a231f99d177f2b1) ) /* SCR 16x16 */ - ROM_LOAD32_WORD( "c78-11.11", 0x00002, 0x80000, CRC(7db3d4a3) SHA1(fc3c44ed36b212688a5bd8dc61321a994578258e) ) - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c78-08.25", 0x000000, 0x100000, CRC(6c725211) SHA1(3c1765f44fe57b496d305e994516674f71bd4c3c) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c78-07.33", 0x000002, 0x100000, CRC(9da00d5b) SHA1(f6b664c7495b936ce1b99852da45ec92cb37062a) ) - ROM_LOAD64_WORD_SWAP( "c78-06.23", 0x000004, 0x100000, CRC(8309e91b) SHA1(3f27557bc82bf42cc77e3c7e363b51a0b119144d) ) - ROM_LOAD64_WORD_SWAP( "c78-05.31", 0x000006, 0x100000, CRC(90001f68) SHA1(5c08dfe6a2e12e6ca84035815563f38fc2c2c029) ) -// ROMX_LOAD ( "c78-05l.1", 0x000007, 0x080000, CRC(f24bf972) , ROM_SKIP(7) ) -// ROMX_LOAD ( "c78-05h.2", 0x000006, 0x080000, CRC(c01039b5) , ROM_SKIP(7) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c78-09.12", 0x000000, 0x80000, CRC(0dbde6f5) SHA1(4049271e3738b54e0c56d191889b1aea5664d49f) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c78-04.3", 0x00000, 0x80000, CRC(cc1aa37c) SHA1(cfa2eb338dc81c98c637c2f0b14d2baea8b115f5) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c78-12.33", 0x000000, 0x100000, CRC(b0267404) SHA1(ffd337336ff9b096e3725f733364762f6e6d3fab) ) - ROM_LOAD( "c78-13.46", 0x100000, 0x080000, CRC(1b363aa2) SHA1(0aae3988024654e98cc0c784307b1c329c8f0783) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c78-14.31", 0x00000, 0x80000, CRC(9cad4dfb) SHA1(9187ef827a3f1bc9233d0e45e72c72c0956c5912) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c78-25.15", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) // 98% compression - ROM_LOAD( "c78-15.22", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c78-21.74", 0x00000, 0x00100, CRC(2926bf27) SHA1(bfbbe6c71bb29a05959f3de0d940816139f9ebfe) ) // road/sprite priority and palette select - ROM_LOAD( "c84-10.16", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) - ROM_LOAD( "c84-11.17", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) -ROM_END - -ROM_START( dblaxleul ) /* Side by side linkable version */ - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c78_41-1.2", 0x00000, 0x20000, CRC(cf297fe4) SHA1(4875de63e8336062c27d83b55938bcb3d08a24a3) ) - ROM_LOAD16_BYTE( "c78_43-1.4", 0x00001, 0x20000, CRC(38a8bad6) SHA1(50977a6a364893549d2f7899bbc4e0c67086697e) ) - ROM_LOAD16_BYTE( "c78_42-1.3", 0x40000, 0x20000, CRC(4124ab2b) SHA1(96c3b6e01a1823259b3d7ca43e0a8631bfe33d0e) ) - ROM_LOAD16_BYTE( "c78_44-1.5", 0x40001, 0x20000, CRC(50a55b6e) SHA1(62a72d33030d50c157a5cf05f6bdc1b02c9b9ff1) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c78-30-1.35", 0x00000, 0x20000, CRC(026aac18) SHA1(f50873982b4dc0fc822060f4c20c635efdd75d7e) ) - ROM_LOAD16_BYTE( "c78-31-1.36", 0x00001, 0x20000, CRC(67ce23e8) SHA1(983e998a79e3d4376b005c92ded050be236d37cc) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "c78-34.c42", 0x00000, 0x20000, CRC(f2186943) SHA1(2e9aed39fddf3aa1db7e20f8a709b6b82cc3e7df) ) - - ROM_REGION( 0x100000, "tc0480scp", 0 ) - ROM_LOAD32_WORD( "c78-10.12", 0x00000, 0x80000, CRC(44b1897c) SHA1(7ad179db6d7dfeb139ea13cb4a231f99d177f2b1) ) /* SCR 16x16 */ - ROM_LOAD32_WORD( "c78-11.11", 0x00002, 0x80000, CRC(7db3d4a3) SHA1(fc3c44ed36b212688a5bd8dc61321a994578258e) ) - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c78-08.25", 0x000000, 0x100000, CRC(6c725211) SHA1(3c1765f44fe57b496d305e994516674f71bd4c3c) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c78-07.33", 0x000002, 0x100000, CRC(9da00d5b) SHA1(f6b664c7495b936ce1b99852da45ec92cb37062a) ) - ROM_LOAD64_WORD_SWAP( "c78-06.23", 0x000004, 0x100000, CRC(8309e91b) SHA1(3f27557bc82bf42cc77e3c7e363b51a0b119144d) ) - ROM_LOAD64_WORD_SWAP( "c78-05.31", 0x000006, 0x100000, CRC(90001f68) SHA1(5c08dfe6a2e12e6ca84035815563f38fc2c2c029) ) -// ROMX_LOAD ( "c78-05l.1", 0x000007, 0x080000, CRC(f24bf972) , ROM_SKIP(7) ) -// ROMX_LOAD ( "c78-05h.2", 0x000006, 0x080000, CRC(c01039b5) , ROM_SKIP(7) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c78-09.12", 0x000000, 0x80000, CRC(0dbde6f5) SHA1(4049271e3738b54e0c56d191889b1aea5664d49f) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c78-04.3", 0x00000, 0x80000, CRC(cc1aa37c) SHA1(cfa2eb338dc81c98c637c2f0b14d2baea8b115f5) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c78-12.33", 0x000000, 0x100000, CRC(b0267404) SHA1(ffd337336ff9b096e3725f733364762f6e6d3fab) ) - ROM_LOAD( "c78-13.46", 0x100000, 0x080000, CRC(1b363aa2) SHA1(0aae3988024654e98cc0c784307b1c329c8f0783) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c78-14.31", 0x00000, 0x80000, CRC(9cad4dfb) SHA1(9187ef827a3f1bc9233d0e45e72c72c0956c5912) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c78-25.15", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) // 98% compression - ROM_LOAD( "c78-15.22", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c78-21.74", 0x00000, 0x00100, CRC(2926bf27) SHA1(bfbbe6c71bb29a05959f3de0d940816139f9ebfe) ) // road/sprite priority and palette select - ROM_LOAD( "c84-10.16", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) - ROM_LOAD( "c84-11.17", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) -ROM_END - -ROM_START( pwheelsj ) /* Side by side linkable version */ - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c78_26-2.2", 0x00000, 0x20000, CRC(25c8eb2e) SHA1(a526b886c76a19c9ce1abc25cf433574564605a3) ) - ROM_LOAD16_BYTE( "c78_28-2.4", 0x00001, 0x20000, CRC(a9500eb1) SHA1(ad300add3439515512003703df46e2f9317f2ee8) ) - ROM_LOAD16_BYTE( "c78_27-2.3", 0x40000, 0x20000, CRC(08d2cffb) SHA1(a4f117a15499c0df85bf8036f00871caa6723082) ) - ROM_LOAD16_BYTE( "c78_29-2.5", 0x40001, 0x20000, CRC(e1608004) SHA1(c4863264074de09ab38e7b73214f4271728e30aa) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c78-30-1.35", 0x00000, 0x20000, CRC(026aac18) SHA1(f50873982b4dc0fc822060f4c20c635efdd75d7e) ) - ROM_LOAD16_BYTE( "c78-31-1.36", 0x00001, 0x20000, CRC(67ce23e8) SHA1(983e998a79e3d4376b005c92ded050be236d37cc) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "c78-32.42", 0x00000, 0x20000, CRC(1494199c) SHA1(f6b6ccaadbc5440f9342750a79ebc00c019ef355) ) - - ROM_REGION( 0x100000, "tc0480scp", 0 ) - ROM_LOAD32_WORD( "c78-10.12", 0x00000, 0x80000, CRC(44b1897c) SHA1(7ad179db6d7dfeb139ea13cb4a231f99d177f2b1) ) /* SCR 16x16 */ - ROM_LOAD32_WORD( "c78-11.11", 0x00002, 0x80000, CRC(7db3d4a3) SHA1(fc3c44ed36b212688a5bd8dc61321a994578258e) ) - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c78-08.25", 0x000000, 0x100000, CRC(6c725211) SHA1(3c1765f44fe57b496d305e994516674f71bd4c3c) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c78-07.33", 0x000002, 0x100000, CRC(9da00d5b) SHA1(f6b664c7495b936ce1b99852da45ec92cb37062a) ) - ROM_LOAD64_WORD_SWAP( "c78-06.23", 0x000004, 0x100000, CRC(8309e91b) SHA1(3f27557bc82bf42cc77e3c7e363b51a0b119144d) ) - ROM_LOAD64_WORD_SWAP( "c78-05.31", 0x000006, 0x100000, CRC(90001f68) SHA1(5c08dfe6a2e12e6ca84035815563f38fc2c2c029) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c78-09.12", 0x000000, 0x80000, CRC(0dbde6f5) SHA1(4049271e3738b54e0c56d191889b1aea5664d49f) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c78-04.3", 0x00000, 0x80000, CRC(cc1aa37c) SHA1(cfa2eb338dc81c98c637c2f0b14d2baea8b115f5) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c78-01.33", 0x000000, 0x100000, CRC(90ff1e72) SHA1(6115e3683bc701922953b644427d1ddb471bf037) ) - ROM_LOAD( "c78-02.46", 0x100000, 0x080000, CRC(8882d2b7) SHA1(4d3abac1e50cd5ae79a562f430563032a11e8390) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c78-03.31", 0x00000, 0x80000, CRC(9b926a2f) SHA1(cc2d612441a5cc587e097bb8380b56753b9a4f7c) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c78-25.15", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) // 98% compression - ROM_LOAD( "c78-15.22", 0x00000, 0x00100, CRC(fbf81f30) SHA1(c868452c334792345dcced075f6df69cff9e31ca) ) // road A/B internal priority - ROM_LOAD( "c78-21.74", 0x00000, 0x00100, CRC(2926bf27) SHA1(bfbbe6c71bb29a05959f3de0d940816139f9ebfe) ) // road/sprite priority and palette select - ROM_LOAD( "c84-10.16", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) - ROM_LOAD( "c84-11.17", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) -ROM_END - -ROM_START( racingb ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c84-110.3", 0x00000, 0x20000, CRC(119a8d3b) SHA1(bcda256730c4427c25aab17d2178814289361a78) ) - ROM_LOAD16_BYTE( "c84-111.5", 0x00001, 0x20000, CRC(1f095692) SHA1(6a36f3a62de9fc24724e68a23de782bc21c01734) ) - ROM_LOAD16_BYTE( "c84-104.2", 0x40000, 0x20000, CRC(37077fc6) SHA1(3498db29936f806e1cb624031940fda2e7e601fe) ) - ROM_LOAD16_BYTE( "c84-103.4", 0x40001, 0x20000, CRC(4ca1d1c2) SHA1(cd526db226362b7d4429a29392dee40bcc519556) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c84-99.35", 0x00000, 0x20000, CRC(24778f40) SHA1(5a588be1774af4e179bdc0e16cd118e74bb9f6ff) ) - ROM_LOAD16_BYTE( "c84-100.36", 0x00001, 0x20000, CRC(2b99258a) SHA1(ff2da0f3a0391f55e20655554d72b82cc29fbc87) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "c84-101.42", 0x00000, 0x20000, CRC(9322106e) SHA1(6c42ee7b9c76483fec2e397ec2737c030a082267) ) - - ROM_REGION( 0x100000, "tc0480scp", 0 ) - ROM_LOAD32_WORD( "c84-90.12", 0x00000, 0x80000, CRC(83ee0e8d) SHA1(a3b6067913f15656e1f74b30b4c0364a50d1846a) ) /* SCR 16x16 */ - ROM_LOAD32_WORD( "c84-89.11", 0x00002, 0x80000, CRC(aae43c87) SHA1(cfc05553f7a18132127ae5f1d181fcc582432b56) ) - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c84-92.25", 0x000000, 0x100000, CRC(56e8fd55) SHA1(852446d4069a446dd9b88b29e461b83b8d626b2c) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c84-94.33", 0x000002, 0x100000, CRC(6117c19b) SHA1(6b9587fb864a325aec17a73046ba5b7be08a8dd2) ) - ROM_LOAD64_WORD_SWAP( "c84-91.23", 0x000004, 0x100000, CRC(b1b0146c) SHA1(d01f08085d644b17445d904a4684c00f133f7bae) ) - ROM_LOAD64_WORD_SWAP( "c84-93.31", 0x000006, 0x100000, CRC(8837bb4e) SHA1(c41fff198a3c87c6e1672174ede589434374c1b3) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c84-84.12", 0x000000, 0x80000, CRC(34dc486b) SHA1(2f503be67adbc5293f2d1218c838416fd931796c) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c84-88.3", 0x00000, 0x80000, CRC(edd1f49c) SHA1(f11c419dcc7da03ef1f1665c1344c27ff35fe867) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c84-86.33", 0x000000, 0x100000, CRC(98d9771e) SHA1(0cbb6b08e1fa5e632309962d7ad7dca448ef4d78) ) - ROM_LOAD( "c84-87.46", 0x100000, 0x080000, CRC(9c1dd80c) SHA1(e1bae4e02fd94413fac4683e39e530f9d508d658) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c84-85.31", 0x00000, 0x80000, CRC(24cd838d) SHA1(18139f7df191ff2d005d76b3a85a6fafb630ea42) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c84-19.15", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c84-07.22", 0x00000, 0x00100, CRC(95a15c77) SHA1(10246020776cf23c0659f41db66ae2c86db09ed2) ) // road A/B internal priority? bad dump? - ROM_LOAD( "c84-09.74", 0x00000, 0x00100, CRC(71217472) SHA1(69352cd484b4d5b41b37697aea24107dff8f1b24) ) // road/sprite priority and palette select? - ROM_LOAD( "c84-10.16", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) - ROM_LOAD( "c84-11.17", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) -ROM_END - -ROM_START( racingbj ) - ROM_REGION( 0x80000, "maincpu", 0 ) /* 512K for 68000 code (CPU A) */ - ROM_LOAD16_BYTE( "c84-107.ic3", 0x00000, 0x20000, CRC(520aa110) SHA1(bc524ce35bcefe5877b5f6e0cae4f6550027673e) ) - ROM_LOAD16_BYTE( "c84-109.ic5", 0x00001, 0x20000, CRC(7ec710de) SHA1(bc66a695fb0f63b819a77f2133b423368bbec6b1) ) - ROM_LOAD16_BYTE( "c84-104.2", 0x40000, 0x20000, CRC(37077fc6) SHA1(3498db29936f806e1cb624031940fda2e7e601fe) ) - ROM_LOAD16_BYTE( "c84-108.ic4", 0x40001, 0x20000, CRC(a2afb0ee) SHA1(82493d97e522bffe511f62dffaba0fc71936c61d) ) - - ROM_REGION( 0x40000, "sub", 0 ) /* 256K for 68000 code (CPU B) */ - ROM_LOAD16_BYTE( "c84-99.35", 0x00000, 0x20000, CRC(24778f40) SHA1(5a588be1774af4e179bdc0e16cd118e74bb9f6ff) ) - ROM_LOAD16_BYTE( "c84-100.36", 0x00001, 0x20000, CRC(2b99258a) SHA1(ff2da0f3a0391f55e20655554d72b82cc29fbc87) ) - - ROM_REGION( 0x20000, "audiocpu", 0 ) /* sound cpu */ - ROM_LOAD( "c84-101.42", 0x00000, 0x20000, CRC(9322106e) SHA1(6c42ee7b9c76483fec2e397ec2737c030a082267) ) - - ROM_REGION( 0x100000, "tc0480scp", 0 ) - ROM_LOAD32_WORD( "c84-90.12", 0x00000, 0x80000, CRC(83ee0e8d) SHA1(a3b6067913f15656e1f74b30b4c0364a50d1846a) ) /* SCR 16x16 */ - ROM_LOAD32_WORD( "c84-89.11", 0x00002, 0x80000, CRC(aae43c87) SHA1(cfc05553f7a18132127ae5f1d181fcc582432b56) ) - - ROM_REGION( 0x400000, "sprites", 0 ) - ROM_LOAD64_WORD_SWAP( "c84-92.25", 0x000000, 0x100000, CRC(56e8fd55) SHA1(852446d4069a446dd9b88b29e461b83b8d626b2c) ) /* OBJ 16x8 */ - ROM_LOAD64_WORD_SWAP( "c84-94.33", 0x000002, 0x100000, CRC(6117c19b) SHA1(6b9587fb864a325aec17a73046ba5b7be08a8dd2) ) - ROM_LOAD64_WORD_SWAP( "c84-91.23", 0x000004, 0x100000, CRC(b1b0146c) SHA1(d01f08085d644b17445d904a4684c00f133f7bae) ) - ROM_LOAD64_WORD_SWAP( "c84-93.31", 0x000006, 0x100000, CRC(8837bb4e) SHA1(c41fff198a3c87c6e1672174ede589434374c1b3) ) - - ROM_REGION16_LE( 0x80000, "tc0150rod", 0 ) - ROM_LOAD16_WORD( "c84-84.12", 0x000000, 0x80000, CRC(34dc486b) SHA1(2f503be67adbc5293f2d1218c838416fd931796c) ) /* ROD, road lines */ - - ROM_REGION16_LE( 0x80000, "spritemap", 0 ) - ROM_LOAD16_WORD( "c84-88.3", 0x00000, 0x80000, CRC(edd1f49c) SHA1(f11c419dcc7da03ef1f1665c1344c27ff35fe867) ) /* STY spritemap */ - - ROM_REGION( 0x180000, "ymsnd", 0 ) /* ADPCM samples */ - ROM_LOAD( "c84-86.33", 0x000000, 0x100000, CRC(98d9771e) SHA1(0cbb6b08e1fa5e632309962d7ad7dca448ef4d78) ) - ROM_LOAD( "c84-87.46", 0x100000, 0x080000, CRC(9c1dd80c) SHA1(e1bae4e02fd94413fac4683e39e530f9d508d658) ) - - ROM_REGION( 0x80000, "ymsnd.deltat", 0 ) /* Delta-T samples */ - ROM_LOAD( "c84-85.31", 0x00000, 0x80000, CRC(24cd838d) SHA1(18139f7df191ff2d005d76b3a85a6fafb630ea42) ) - - ROM_REGION( 0x10000, "user2", 0 ) /* unused ROMs */ - ROM_LOAD( "c84-19.15", 0x00000, 0x10000, CRC(7245a6f6) SHA1(5bdde4e3bcde8c59dc84478c3cc079d7ef8ee9c5) ) - ROM_LOAD( "c84-07.22", 0x00000, 0x00100, CRC(95a15c77) SHA1(10246020776cf23c0659f41db66ae2c86db09ed2) ) // road A/B internal priority? bad dump? - ROM_LOAD( "c84-09.74", 0x00000, 0x00100, CRC(71217472) SHA1(69352cd484b4d5b41b37697aea24107dff8f1b24) ) // road/sprite priority and palette select? - ROM_LOAD( "c84-10.16", 0x00000, 0x00400, CRC(643e8bfc) SHA1(a6e6086fb8fbd102e01ec72fe60a4232f5909565) ) - ROM_LOAD( "c84-11.17", 0x00000, 0x00400, CRC(10728853) SHA1(45d7cc8e06fbe01295cc2194bca9586f0ef8b12b) ) -ROM_END - - -void taitoz_state::init_bshark() -{ - m_eep_latch = 0; - - save_item(NAME(m_eep_latch)); -} - - -GAMEL(1987, contcirc, 0, contcirc, contcirc, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Continental Circus (World)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1987, contcircu, contcirc, contcirc, contcrcu, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Continental Circus (US set 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1987, contcircua, contcirc, contcirc, contcrcj, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Continental Circus (US set 2)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1987, contcircj , contcirc, contcirc, contcrcj, taitoz_state, empty_init, ROT0, "Taito Corporation", "Continental Circus (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) - -GAMEL(1988, chasehq, 0, chasehq, chasehq, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Chase H.Q. (World)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1988, chasehqj, chasehq, chasehq, chasehqj, taitoz_state, empty_init, ROT0, "Taito Corporation", "Chase H.Q. (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1988, chasehqju, chasehq, chasehq, chasehq, taitoz_state, empty_init, ROT0, "Taito Corporation", "Chase H.Q. (Japan, upright?)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) // same code rev as Chase H.Q. (World) -GAMEL(1988, chasehqu, chasehq, chasehq, chasehq, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Chase H.Q. (US)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) - -GAME( 1988, enforce, 0, enforce, enforce, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Enforce (World)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1988, enforcej, enforce, enforce, enforcej, taitoz_state, empty_init, ROT0, "Taito Corporation", "Enforce (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1988, enforceja, enforce, enforce, enforceja, taitoz_state, empty_init, ROT0, "Taito Corporation", "Enforce (Japan, Analog Controls)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAME( 1989, bshark, 0, bshark, bshark, taitoz_state, init_bshark, ORIENTATION_FLIP_X, "Taito Corporation Japan", "Battle Shark (World)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1989, bsharku, bshark, bshark, bsharku, taitoz_state, init_bshark, ORIENTATION_FLIP_X, "Taito America Corporation", "Battle Shark (US)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1989, bsharkj, bshark, bshark, bsharkj, taitoz_state, init_bshark, ORIENTATION_FLIP_X, "Taito Corporation", "Battle Shark (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1989, bsharkjjs, bshark, bsharkjjs, bsharkjjs, taitoz_state, init_bshark, ORIENTATION_FLIP_X, "Taito Corporation", "Battle Shark (Japan, Joystick)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAMEL(1989, sci, 0, sci, sci, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Special Criminal Investigation (World set 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1989, scia, sci, sci, sci, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Special Criminal Investigation (World set 2)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1989, scij, sci, sci, scij, taitoz_state, empty_init, ROT0, "Taito Corporation", "Special Criminal Investigation (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1989, sciu, sci, sci, sciu, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Special Criminal Investigation (US)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) -GAMEL(1991, scin, sci, sci, sci, taitoz_state, empty_init, ROT0, "hack (Negro Torino)", "Super Special Criminal Investigation (Negro Torino hack)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_contcirc ) - -GAME( 1989, nightstr, 0, nightstr, nightstr, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Night Striker (World)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1989, nightstrj, nightstr, nightstr, nghtstrj, taitoz_state, empty_init, ROT0, "Taito Corporation", "Night Striker (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1989, nightstru, nightstr, nightstr, nghtstru, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Night Striker (US)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAME( 1990, aquajack, 0, aquajack, aquajack, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Aqua Jack (World)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1990, aquajacku, aquajack, aquajack, aquajack, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Aqua Jack (US)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1990, aquajackj, aquajack, aquajack, aquajckj, taitoz_state, empty_init, ROT0, "Taito Corporation", "Aqua Jack (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) - -GAME( 1990, spacegun, 0, spacegun, spacegun, taitoz_state, init_bshark, ORIENTATION_FLIP_X, "Taito Corporation Japan", "Space Gun (World)", MACHINE_SUPPORTS_SAVE ) -GAME( 1990, spacegunj, spacegun, spacegun, spacegnj, taitoz_state, init_bshark, ORIENTATION_FLIP_X, "Taito Corporation", "Space Gun (Japan)", MACHINE_SUPPORTS_SAVE ) -GAME( 1990, spacegunu, spacegun, spacegun, spacegnu, taitoz_state, init_bshark, ORIENTATION_FLIP_X, "Taito America Corporation", "Space Gun (US)", MACHINE_SUPPORTS_SAVE ) - -GAMEL(1991, dblaxle, 0, dblaxle, dblaxles, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Double Axle (US, Rev 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_dblaxle ) -GAMEL(1991, dblaxleu, dblaxle, dblaxle, dblaxles, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Double Axle (US)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE, layout_dblaxle ) -GAMEL(1991, dblaxleul, dblaxle, dblaxle, dblaxle, taitoz_state, empty_init, ROT0, "Taito America Corporation", "Double Axle (US, Rev 1, Linkable)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NODEVICE_LAN, layout_dblaxle ) -GAMEL(1991, pwheelsj, dblaxle, dblaxle, pwheelsj, taitoz_state, empty_init, ROT0, "Taito Corporation", "Power Wheels (Japan, Rev 2, Linkable)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NODEVICE_LAN, layout_dblaxle ) - -GAMEL(1991, racingb, 0, racingb, racingb, taitoz_state, empty_init, ROT0, "Taito Corporation Japan", "Racing Beat (World)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NODEVICE_LAN, layout_dblaxle ) -GAMEL(1991, racingbj, racingb, racingb, racingb, taitoz_state, empty_init, ROT0, "Taito Corporation", "Racing Beat (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE | MACHINE_NODEVICE_LAN, layout_dblaxle ) |