wheelfir: MAME ROM Information. History:
Wheels & Fire (c) 199? TCH.
- TECHNICAL -
Main CPU : (2x) 68000 (@ 16 Mhz)
Screen orientation : Horizontal
Video resolution : 512 x 512 pixels
Screen refresh : 60.00 Hz
Palette colors : 8192
Players : 2
Control : 8-way Joystick
Buttons : 3
- STAFF -
Executive Producer: Francisco Chacon
Productive Adviser: Jose Sanchez
Hardware Design: David Sandoval
Programming: Antonio Carrillo
Auxiliar Programming: Fernando Jimenez
Graphics: Javier Martinez, Francisco Bocanegra, Joaquin Perez
- SOURCES -
Game's rom.
MAME Info:
0.101u4 [David Haywood, f205v]
WIP:
- 0.144u7: Move screen update to happen prior to calling the vblank callbacks [Aaron Giles]. Solves missing foreground layer in Wheels & Fire and probably a lot more issues. In fact, most of hap's recent changes to handling things on the falling edge are unnecessary now.
- 2nd January 2012: Tomasz Slanina - Not much about Wheels & Fire. I'm in the middle of MAME driver rewrite process (based on game sources i got from the author).
- 23rd May 2011: Tomasz Slanina - I have recently contacted Antonio 'Peluko' Carrillo - programmer and game designer of both Reality Tennis and Wheels & Fire. He has provided tons of usefull info about the W&F hardware and the game code. The first, big improvement is (a bit buggy) sound emulation. I'm going to rewrite the whole video hw emulation of W&F, and disable all hacks & precalculated zoom tables. Quite challenging, but worth the effort.
- 0.142u3: Angelo Salese removed deprecat.h dependancy and updated irqs accordingly for Wheels & Fire.
- 0.138u4: Rewrite of Wheels & Fire driver [Tomasz Slanina]: New rendering code. Preliminary zooming (based on lookup table). Preliminary communication between main and sound CPU. Scanline interrupts and scroll. Added 2x DAC sound. Changed 68000 CPU1 clock speed to 16MHz, visible area to 336x248 and palettesize to 256 colors.
- 23rd June 2010: Tomasz Slanina - After long break i'm looking again at Wheels & Fire from TCH. Game is running on custom, blitter based hardware (sprites + framebuffer layer with linescroll feature, and sprite-to-framebuffer rendering mode ). I have made a lot of changes/improvements lately, but there's still a lot to do: Proper image scaling - quite weird (close to hardware, i think) way to draw scaled images. Framebuffer (various problems). Sound - not emulated yet (2nd 68k + samples). W&F video hardware supports image scaling. For each image (sprite) to draw, there's a couple of parameters sent to the blitter: Screen cooridnates of image rectangle (top left ad bottom right corners) _after_ scale transform applied. Source image cooridnates (only the upper-left corner, no info about the source dimensions). Two sets (for x and y scale) of magic parameters: data1 (5 bit), data2 (5 bit), four flags (double/half scale, zero/nonzero params (maybe they are just the MSB of the data1/data2)). Magic parameters are packed into 5 bytes. They are essential to understand how the hw works and how the scaling is done. So far it's just pure magic. Params are copied from a lookup table addressed by the scale factor (0-400%). Both (x and y) tables contians exactly the same data, just shuffled arround to easily pack (by OR-ing) into 5 bytes and send to blitter. For now i'm uisng lookup table to determine the scale factor (based on the above params). Works pretty well, but the goal is to underestand how the data is interpreted by video hw and emulate it properly. Ranges 25-50% and 50-100% (as well as 100-200% and 200-400%) contains very similiar data, and the first one has special ("half") bitflag set (same for 200-400% - there's another bitflag set("double")). Probably for change the video hw (fpga based) pixel counter/clock. Both data1 and data2 are mysterious for now. There's few ideas about them: Fixed point 5.5 (src pixel delta/step?). Pair of step + oveflow for src pixel "counter". Floating point num (5 bit mantissa, 5 bit exponent).
- 0.129u4: Brian Troha updated the Wheels & Fire driver with some additional information.
- 0.118u6: Some improvements to the Wheels & Fire driver. Still not right [David Haywood]. Changed 68000 CPU1 clock speed to 32MHz.
- 11th January 2007: Tomasz Slanina - Working on Wheels&Fire emulation. It's weird custom hardware based on gxf blitter. Req a lot of interrupts: 256 for raster ints, 400 (max) for blitter and 1 for vblank. So ~650 ints/frame. Interesting... I'm trying also to underestand how the raster effects works. Another task is to figure out how sprite zoom is done.
- 0.111u3: Tomasz Slanina added sprite X flip and removed unneeded hack in Wheels & Fire driver. Changed visible area to 336x256.
- 0.102u1: Improvements to Wheels & Fire, partial understanding of the blitter [David Haywood, Tomasz Slanina]. Changed visible area to 512x512. Changed input tp 2 Players, 8-way Joystick with 3 buttons. Added dipswitches '0', '1', 'Test / Game?' and 14x 'Unknown'.
- 20th November 2005: David Haywood - Figured out the palette writes in Wheels & Fire which means the GFX pages have slightly better colours (at least for the gfx which should be on screen) the blitter format still doesn't make much sense yet tho. Update: Inputs have been mapped and Dox has managed to make some progress on the blitter format, allowing for some parts of the test mode font to show correctly. Update 2: Made some more sense of the blitter...
- 19th November 2005: David Haywood - Dox pointed me in the right direction to continue work on Wheels & Fire and patched up the code a bit so it boots further allowing work to be done on the video emulation. Unlike the usual TCH hardware this appears to use some kind of blitter device to show the graphics which are stored in the graphic roms as large 512x512 'sheets' rather than tiles. Emulating this will be something new for me if I actually get it going.
- 0.101u4: David Haywood added Wheels & Fire (TCH 199?).
- 28th October 2005: f205v dumped Wheels & Fire.
Recommended Games (Racing 3D):
Datsun 280 Zzzap
Night Driver
Speed Freak
Change Lanes
Konami GT
Out Run
Out Run (Mega-Tech)
Turbo Out Run
Turbo Outrun (Mega-Tech)
OutRunners
Out Run 2
Out Run 2 Special Tours
Rad Racer
Rad Racer II
Top Speed
Hard Drivin'
Race Drivin'
Hard Drivin's Airborne
Street Drivin'
Big Run
Cisco Heat
Rad Mobile
Rad Rally
Ridge Racer
Ridge Racer 2
Ridge Racer V Arcade Battle
Cruis'n USA
Cruis'n World
Cruis'n Exotica
Dangerous Curves
Dirt Dash
Midnight Run
Rave Racer
Sega Rally Championship
Sega Rally 2
Sega Rally 2 DX
Wheels & Fire
GTI Club
GTI Club 2
Pocket Racer
San Francisco Rush
San Francisco Rush: The Rock
San Francisco Rush 2049
Scud Race
Side By Side
Side By Side 2
Speed Up
Winding Heat
Over Rev
Roads Edge / Round Trip
California Speed
Thrill Drive
Thrill Drive 2
Battle Gear
Battle Gear 2
California Chase
18 Wheeler Deluxe
Initial D Arcade Stage
King of Route 66
Faster Than Speed
Romset: 6144 kb / 12 files / 2.04 zip
MAME XML Output:
   | <game name="wheelfir" sourcefile="wheelfir.c"> |
   |    | <description>Wheels & Fire</description> |
   |    | <year>199?</year> |
   |    | <manufacturer>TCH</manufacturer> |
   |    | <rom name="tch1.u19" size="524288" crc="33bbbc67" sha1="c2ecc0ab522ee442076ea7b9536aee6e1fad0540" region="maincpu" offset="1"/> |
   |    | <rom name="tch2.u21" size="524288" crc="ed6b9e8a" sha1="214c5aaf55963a219db33dd5d530492e09ad5e07" region="maincpu" offset="0"/> |
   |    | <rom name="tch3.u83" size="524288" crc="43c014a6" sha1="6c01a08dda204f36e8768795dd5d405576a49140" region="subcpu" offset="1"/> |
   |    | <rom name="tch11.u65" size="524288" crc="fc894b2e" sha1="ebe6d1adf889731fb6f53b4ce5f09c60e2aefb97" region="subcpu" offset="0"/> |
   |    | <rom name="tch4.u52" size="524288" crc="fe4bc2c7" sha1="33a2ef79cb13f9e7e7d513915c6e13c4e7fe0188" region="gfx1" offset="0"/> |
   |    | <rom name="tch5.u53" size="524288" crc="a38b9ca5" sha1="083c9f700b9df1039fb553e918e205c6d32057ad" region="gfx1" offset="80000"/> |
   |    | <rom name="tch6.u54" size="524288" crc="2733ae6b" sha1="ebd91e123b670159f79be19a552d1ae0c8a0faff" region="gfx1" offset="100000"/> |
   |    | <rom name="tch7.u55" size="524288" crc="6d98f27f" sha1="d39f7f184abce645b9165b64e89e3b5354187eea" region="gfx1" offset="180000"/> |
   |    | <rom name="tch8.u56" size="524288" crc="22b661fe" sha1="b6edf8e1e8b479ee8813502157615f54627dc7c1" region="gfx1" offset="200000"/> |
   |    | <rom name="tch9.u57" size="524288" crc="83c66de3" sha1="50deaf3338d590340b928f891548c47ba8f3ca38" region="gfx1" offset="280000"/> |
   |    | <rom name="tch10.u58" size="524288" crc="2036ed80" sha1="910381e2ccdbc2d06f873021d8af02795d22f595" region="gfx1" offset="300000"/> |
   |    | <rom name="tch12.u59" size="524288" crc="cce2e675" sha1="f3d8916077b2e057169d0f254005cd959789a3b3" region="gfx1" offset="380000"/> |
   |    | <chip type="cpu" tag="maincpu" name="68000" clock="16000000"/> |
   |    | <chip type="cpu" tag="subcpu" name="68000" clock="16000000"/> |
   |    | <chip type="audio" tag="mono" name="Speaker"/> |
   |    | <chip type="audio" tag="dac1" name="DAC"/> |
   |    | <chip type="audio" tag="dac2" name="DAC"/> |
   |    | <display tag="screen" type="raster" rotate="0" width="336" height="248" refresh="60.000000" pixclock="5160960" htotal="336" hbend="0" hbstart="336" vtotal="256" vbend="0" vbstart="248" /> |
   |    | <sound channels="1"/> |
   |    | <input players="2" buttons="3" coins="2"> |
   |    |    | <control type="joy" ways="8"/> |
   |    | </input> |
   |    | <dipswitch name="Test / Game?" tag="P1" mask="4096"> |
   |    |    | <dipvalue name="Off" value="4096" default="yes"/> |
   |    |    | <dipvalue name="On" value="0"/> |
   |    | </dipswitch> |
   |    | <driver status="preliminary" emulation="preliminary" color="good" sound="preliminary" graphic="good" savestate="unsupported" palettesize="256"/> |
|
|