chqflag: MAME ROM Information. History:
Chequered Flag (c) 1988 Konami.
An overhead-view racing game featuring rotational sprite scaling. The player races over a series of twisting courses, trying to reach the finish line before the timer expires.
Chequered Flag includes a Pit-stop facility, a feature that had appeared a year earlier in Taito's 'Continental Circus'. Should the player's car sustain too much damage, a pit-stop must be made to implement repairs. A 'damage meter' at the bottom of the screen shows the severity of the damage; highlighting what car components are in need of repair; Engine, Front Tires, Rear Tires and Brakes.
- TECHNICAL -
Game ID : GX717
Main CPU : KONAMI (@ 3 Mhz)
Sound CPU : Z80 (@ 3.579545 Mhz)
Sound Chips : YM2151 (@ 1.789772 Mhz), (2x) K007232 (@ 3.579545 Mhz)
Screen orientation : Vertical
Video resolution : 224 x 304 pixels
Screen refresh : 60.00 Hz
Palette colors : 1024
Players : 1
Control : paddle
Buttons : 3
- TRIVIA -
Released in May 1988.
Another title is accessible via dipswitches : "Checkered Flag".
King Records released a limited-edition soundtrack album for this game (Konami Game Music Collection Vol.1 - K30X7705) on 05/08/1988. This album was reprinted (KCIA-2309) on 21/05/1993.
- SOURCES -
Game's rom.
MAME Info:
0.37b13 [Manuel Abadia, Nicola Salmoria, Guru]
0.37b1 [Manuel Abadia]
Bugs:
- chqflag chqflagj: I noticed the original PCB has many slowdowns and also looses frame rates (seems to run at 25hz) when there are 3/4 opponent cars on the same screen. This doen't happen on MAME. Kold666 (ID 03982)
WIP:
- 0.143u8: Kanikani fixed coinage DIPSW using Konami common setting in Chequered Flag.
- 0.142u3: Angelo Salese fixed protection read-back registers 0x07 and 0x0e / 0x0f in K051733 math chip, finally fixing gameplay issues in Chequered Flag. Made K051733 RNG to behave like an adder. Removed deprecat.h dependancy and updated irqs accordingly for Chequered Flag.
- 29th April 2011: Angelo Salese - While doing deprecat.h clean-ups (basically conversion of irq systems in old drivers) I've stumbled across one of my oldest nemesis... Chequered Flag by Konami. After some grinding of my teeth and a LOT AND HALF of DASM code studying, I've finally nailed it down, it was mostly a rather silly bug with the protection device, checking that a check was true on a port by checking that all the bits were high instead of just one like one could imagine... Note: I'm not entirely sure that the protection is COMPLETELY emulated, if you know the original game and notice something wrong just let me know via the public channels, thanks in advance.
- 0.136u1: Fabio Priuli added driver data struct and save states to Chequered Flag.
- 0.135u4: Fabio Priuli updated Chequered Flag to use Konami video devices.
- 0.131u1: Angelo Salese added engine noise hook-up to Chequered Flag. Phil Bennett fixed nested NMIs on Chequered Flag sound CPU, this fixes the sound loops and the music tempo. MooglyGuy merged memory maps in Chequered Flag.
- 0.129u6: Mr. Do added built-in layouts for Chequered Flag.
- 0.126u5: Aaron Giles fixed memory leak warning in Chequered Flag.
- 0.126u4: Fabio Priuli added DIP locations for Chequered Flag.
- 0.122u5: Corrado Tomaselli verified/corrected frequencies in Chequered Flag. Changed YM2151 clock speed to 3579545 Hz.
- 0.105u3: Aaron Giles fixed bank switching in Chequered Flag.
- 0.84u5: Replaced Stick controller with Paddle.
- 0.74: Some improvements to Chequered Flag protection and sound [Angelo Salese]. Changed YM2151 clock speed to 1789772 Hz.
- 11th September 2003: Angelo Salese submitted an update to the Chequered Flag driver, fixing enemy appearing, music tempo and steering.
- 0.53: Nicola Salmoria added real shadows in some Konami games (88 Games, Chequered Flag, X-Men, Asterix, Surprise Attack, Sunset Riders, etc.).
- 7th August 2001: Nicola Salmoria adjusted the tilemap system to work better with Chequered Flag.
- 0.37b13: Manuel Abadia added Chequered Flag (Konami 1988) and clone (Japan).
- 22nd February 2001: Nicola Salmoria got Chequered Flag working, but background / sprite graphics priority control is not implemented yet.
- 24th September 2000: Guru - Redumped the bad roms for Chequered Flag. The entire dump is now good, but unfortunately, the graphics glitch is still present (though now only on the road). Oh well, I guess it's up to MAMEdev to fix it. Special thanks to Andrew Slorach for buying this PCB and sending it.
- 0.37b1: Manuel Abadia added Chequered Flag and clone (Japan) (Testdriver). Known issues: Some background tiles are missing. Hopefully this is because of the bad ROMS. The enemies appear and dissapear randomly because of the K051733 protection. The sound is not working properly.
ARCADE RELEASE: Chequered Flag (Konami) - 1988/May/17
LEVELS: 3
Recommended Games (F1):
Monte Carlo
Super Speed Race
Grand Champion
Imola Grand Prix
Chequered Flag
F-1 Dream
Dirt Fox
Tail to Nose
F-1 Grand Prix
F-1 Grand Prix Part II
Romset: 3552 kb / 12 files / 1.18 zip
MAME XML Output:
   | <game name="chqflag" sourcefile="chqflag.c"> |
   |    | <description>Chequered Flag</description> |
   |    | <year>1988</year> |
   |    | <manufacturer>Konami</manufacturer> |
   |    | <rom name="717h02" size="65536" crc="f5bd4e78" sha1="7bab02152d055a6c3a322c88e7ee0b85a39d8ef2" region="maincpu" offset="50000"/> |
   |    | <rom name="717e10" size="262144" crc="72fc56f6" sha1="433ea9a33f0230e046c731c70060f6a38db14ac7" region="maincpu" offset="10000"/> |
   |    | <rom name="717e01" size="32768" crc="966b8ba8" sha1="ab7448cb61fa5922b1d8ae5f0d0f42d734ed4f93" region="audiocpu" offset="0"/> |
   |    | <rom name="717e04" size="524288" crc="1a50a1cc" sha1="bc16fab84c637ed124e37b115ddc0149560b727d" region="gfx1" offset="0"/> |
   |    | <rom name="717e05" size="524288" crc="46ccb506" sha1="3ed1f54744fc5cdc0f48e42f250c366267a8199a" region="gfx1" offset="80000"/> |
   |    | <rom name="717e06" size="131072" crc="1ec26c7a" sha1="05b5b522c5ebf5d0a71a7fc39ec9382008ef33c8" region="gfx2" offset="0"/> |
   |    | <rom name="717e07" size="262144" crc="b9a565a8" sha1="a11782f7336e5ad58a4c6ea81f2eeac35d5e7d0a" region="gfx3" offset="0"/> |
   |    | <rom name="717e08" size="262144" crc="b68a212e" sha1="b2bd121a43552c3ade528ac763a0df40c3e648e0" region="gfx3" offset="40000"/> |
   |    | <rom name="717e11" size="262144" crc="ebb171ec" sha1="d65d4a6b169ce03e4427b2a397484634f938236b" region="gfx3" offset="80000"/> |
   |    | <rom name="717e12" size="262144" crc="9269335d" sha1="af298c8cff50d707d6abc806065f8e931f975dc0" region="gfx3" offset="c0000"/> |
   |    | <rom name="717e03" size="524288" crc="ebe73c22" sha1="fad3334e5e91bf8d11b74ffdbbfd57567e6f6f8c" region="k007232_1" offset="0"/> |
   |    | <rom name="717e09" size="524288" crc="d74e857d" sha1="00c851c857650d67fc4caccea4461d99be4acb3c" region="k007232_2" offset="0"/> |
   |    | <chip type="cpu" tag="maincpu" name="KONAMI" clock="3000000"/> |
   |    | <chip type="cpu" tag="audiocpu" name="Z80" clock="3579545"/> |
   |    | <chip type="audio" tag="lspeaker" name="Speaker"/> |
   |    | <chip type="audio" tag="rspeaker" name="Speaker"/> |
   |    | <chip type="audio" tag="ymsnd" name="YM2151" clock="3579545"/> |
   |    | <chip type="audio" tag="k007232_1" name="K007232" clock="3579545"/> |
   |    | <chip type="audio" tag="k007232_2" name="K007232" clock="3579545"/> |
   |    | <display tag="screen" type="raster" rotate="90" width="304" height="224" refresh="60.000000" /> |
   |    | <sound channels="2"/> |
   |    | <input players="1" buttons="3" coins="2"> |
   |    |    | <control type="paddle" minimum="16" maximum="239" sensitivity="80" keydelta="8"/> |
   |    |    | <control type="pedal" minimum="0" maximum="255" sensitivity="50" keydelta="5"/> |
   |    | </input> |
   |    | <dipswitch name="Coin A" tag="DSW1" mask="15"> |
   |    |    | <dipvalue name="4 Coins/1 Credit" value="2"/> |
   |    |    | <dipvalue name="3 Coins/1 Credit" value="5"/> |
   |    |    | <dipvalue name="2 Coins/1 Credit" value="8"/> |
   |    |    | <dipvalue name="3 Coins/2 Credits" value="4"/> |
   |    |    | <dipvalue name="4 Coins/3 Credits" value="1"/> |
   |    |    | <dipvalue name="1 Coin/1 Credit" value="15" default="yes"/> |
   |    |    | <dipvalue name="3 Coins/4 Credits" value="3"/> |
   |    |    | <dipvalue name="2 Coins/3 Credits" value="7"/> |
   |    |    | <dipvalue name="1 Coin/2 Credits" value="14"/> |
   |    |    | <dipvalue name="2 Coins/5 Credits" value="6"/> |
   |    |    | <dipvalue name="1 Coin/3 Credits" value="13"/> |
   |    |    | <dipvalue name="1 Coin/4 Credits" value="12"/> |
   |    |    | <dipvalue name="1 Coin/5 Credits" value="11"/> |
   |    |    | <dipvalue name="1 Coin/6 Credits" value="10"/> |
   |    |    | <dipvalue name="1 Coin/7 Credits" value="9"/> |
   |    |    | <dipvalue name="Free Play" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Coin B" tag="DSW1" mask="240"> |
   |    |    | <dipvalue name="4 Coins/1 Credit" value="32"/> |
   |    |    | <dipvalue name="3 Coins/1 Credit" value="80"/> |
   |    |    | <dipvalue name="2 Coins/1 Credit" value="128"/> |
   |    |    | <dipvalue name="3 Coins/2 Credits" value="64"/> |
   |    |    | <dipvalue name="4 Coins/3 Credits" value="16"/> |
   |    |    | <dipvalue name="1 Coin/1 Credit" value="240" default="yes"/> |
   |    |    | <dipvalue name="3 Coins/4 Credits" value="48"/> |
   |    |    | <dipvalue name="2 Coins/3 Credits" value="112"/> |
   |    |    | <dipvalue name="1 Coin/2 Credits" value="224"/> |
   |    |    | <dipvalue name="2 Coins/5 Credits" value="96"/> |
   |    |    | <dipvalue name="1 Coin/3 Credits" value="208"/> |
   |    |    | <dipvalue name="1 Coin/4 Credits" value="192"/> |
   |    |    | <dipvalue name="1 Coin/5 Credits" value="176"/> |
   |    |    | <dipvalue name="1 Coin/6 Credits" value="160"/> |
   |    |    | <dipvalue name="1 Coin/7 Credits" value="144"/> |
   |    |    | <dipvalue name="Invalid" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unused" tag="DSW2" mask="1"> |
   |    |    | <dipvalue name="Off" value="1" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unused" tag="DSW2" mask="2"> |
   |    |    | <dipvalue name="Off" value="2" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unused" tag="DSW2" mask="4"> |
   |    |    | <dipvalue name="Off" value="4" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unused" tag="DSW2" mask="8"> |
   |    |    | <dipvalue name="Off" value="8" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unused" tag="DSW2" mask="16"> |
   |    |    | <dipvalue name="Off" value="16" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Difficulty" tag="DSW2" mask="96"> |
   |    |    | <dipvalue name="Easy" value="96"/> |
   |    |    | <dipvalue name="Normal" value="64" default="yes"/> |
   |    |    | <dipvalue name="Difficult" value="32"/> |
   |    |    | <dipvalue name="Very Difficult" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Demo Sounds" tag="DSW2" mask="128"> |
   |    |    | <dipvalue name="Off" value="128"/> |
   |    |    | <dipvalue name="On" value="0" default="yes"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unused" tag="IN0" mask="128"> |
   |    |    | <dipvalue name="Off" value="128" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Unused" tag="IN1" mask="32"> |
   |    |    | <dipvalue name="Off" value="32" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Title" tag="IN1" mask="64"> |
   |    |    | <dipvalue name="Chequered Flag" value="64" default="yes"/> |
   |    |    | <dipvalue name="Checkered Flag" value="0"/> |
   |    | </dipswitch> |
   |    | <dipswitch name="Service Mode" tag="IN1" mask="128"> |
   |    |    | <dipvalue name="Off" value="128" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <driver status="imperfect" emulation="good" color="good" sound="imperfect" graphic="good" savestate="supported" palettesize="1024"/> |
|
|