David Haywood's Homepage
MAME work and other stuff

Sega Ultradrive

October 2, 2013 Haze Categories: General News. 8 Comments on Sega Ultradrive

Team Europe dumped the Ultraman cartridge (purchased and donated by SSJ) for the Sega Saturn. The is one of two games that used a data cartridge alongside the CD, the other one being King of Fighters ’95.

With the cartridge present it boots straight up in MESS / UME, although performance leaves a lot to be desired (the Saturn driver has been rather slow with a lot of games for a while now and could really do with some optimization) The banding on the title screen is (I think) a graphical effect *edit* indeed it is, confirmed via the video on Segagaga Domain.


Ultraman Saturn Ultraman Saturn
Ultraman Saturn Ultraman Saturn
Ultraman Saturn Ultraman Saturn
Ultraman Saturn Ultraman Saturn

The game is generally considered to be terrible like most Ultraman games, but good to see it running in MESS rather than just displaying the ‘Cartridge is Missing’ screen.

Due to the game being a Japanese only release, and the use of the cartridge this one is notoriously difficult to run on real hardware unless you own a Japanese system because the cartridges to bypass the region locks can’t be plugged in at the same time as the game cartridge the game needs.

Also note that while the game boots up in MESS it seems to hang frequently so you’re probably better off with something like Yabause for Saturn emulation (it lets you use the cart dump)

Go to article.. »

Card + Pocket = Carket

October 2, 2013 Haze Categories: General News. 7 Comments on Card + Pocket = Carket

ANY dumped one of the remaining Semicom titles, this one a pool-style game called Carket Ball

It seems to be a polished looking title with various well-drawn cutaways when you take shots and a decent set of features.

Unfortunately the board isn’t working properly, so we were unable to extract the actual MCU code so for now I’ve had to substitute it with a modified version of the code from another game until we can try the MCU on a different board. As a result the emulation isn’t really trusted and will remain marked as NOT WORKING. There are definitely issues with the sound that could be due to this.


Carket Ball Carket Ball
Carket Ball Carket Ball
Carket Ball Carket Ball
Carket Ball Carket Ball

It runs on the same hardware as Choky Choky etc. so cloned / bootleg style Tumble Pop hardware.

Go to article.. »

1995 B.C.

September 17, 2013 Haze Categories: General News. 21 Comments on 1995 B.C.

I’ve mentioned the history of Afega here before, and how their earliest known release ‘Twin Action’ is really a bootleg of USSAF Mustang with completely new graphics / sounds.

Well thanks to Renato Mucciarelli, Brian Troha and The Dumping Union another Afega game from that early period has turned up, this time Dolmen from 1995. The game is really just a Puzzle Bobble rip-off, with some unique / pointless rounds where you simply have to shoot moving targets for points (I guess you could consider them bonus rounds, you can’t die) The first time this happens it’s cavemen descending on ropes, the second time it’s dead cavemen floating up from the ground, after that it repeats.

The game appears to be a prequel to the 1998 ‘Hot Bubble’ / ‘Bubble 2000’ release, although it isn’t actually yet clear if Afega released a version of that with their own name on it, or if that game is just the result of Tuning taking this game and tweaking it. Said 1998 title is clearly a more developed piece of code than this with points screens, how to play instructions in the attract and extra game features so I’d guess there is an undumped Afega original of that out there too and that this game is simply a prequel rather than an early clone.


Dolmen (c)1995 Afega Dolmen (c)1995 Afega
Dolmen (c)1995 Afega Dolmen (c)1995 Afega
Dolmen (c)1995 Afega Dolmen (c)1995 Afega
Dolmen (c)1995 Afega Dolmen (c)1995 Afega
Dolmen (c)1995 Afega Dolmen (c)1995 Afega
Dolmen (c)1995 Afega Dolmen (c)1995 Afega
Dolmen (c)1995 Afega Dolmen (c)1995 Afega
Dolmen (c)1995 Afega Dolmen (c)1995 Afega

Unlike Bubble 2000 there don’t appear to be any adult images in this one, it’s all Dinosaurs, so I guess we now know that porn was responsible for their mass extinction, not an asteroid or anything like that.

Difficulty level seems ridiculously easy, but the dipswitches haven’t been figured out yet so one probably makes it harder. Music is just annoying short sample loops like most Korean titles. There is little variety in the graphics either with backgrounds repeating frequently. It’s an early effort, but a significant one in the history of Afega.

This game is using the same hardware as Twin Action, an earlier board than Bubble 2000 etc. There appears to be a trivial ‘protection’ check on 2 bits of an unknown input port to prevent the games simply being rom swapped, everything else is the same as Twin Action hardware-wise so getting this running was trivial.

Support for this will appear in the next release, which will presumably be 0.151.

Go to article.. »

MAME / MESS / UME 0.150

September 17, 2013 Haze Categories: General News. 22 Comments on MAME / MESS / UME 0.150

UME (logo by JackC)

The 0.150 release of MAME / MESS has been announced, so here are compiled versions, including the complete UME build combining the two projects into what you could consider the fully unlocked version of MAME containing all the MESS drivers.

I hope to do a sticky post explaining the current UME goal and the pros & cons of such an approach shortly, so for now I’m keeping this introduction brief.

The whatsnew files for MAME and MESS. Naturally UME includes all this progress.

MAME / MESS binaries – includes 32-bit and 64-bit Windows binaries, and all tools – separate MAME/MESS executables. here
UME binaries – includes 32-bit and 64-bit Windows binaries, and all tools – combined UME executable. here

Thanks to my friend for compiling / packaging these up while my usual compile machine is being rebuilt :-)

source is unmodified from official source.

Points of Interest

The gap since 0.149u1 has been a significant one, partly fueled by a lack of time on the part of the current project coordinator and part due to a decision to reshuffle the release system in a changing development climate. From now on it is very unlikely there will be future ‘u’ releases, but actual integer numbered releases should be a bit more frequent than they have been over the last few years (but not as frequent as the u builds were)

One significant area to note is that Phil Bennett spent some time reworking the Double Dragon 2 driver a bit based on the schematics, improving the interrupt generation etc. This should hopefully bring the overall speed and slowdowns closer to the original hardware and solve a persistent crash bug that would sometimes occur. It’s probably not quite perfect yet because the raster effects on Thunder Strike (a Kyle Hodgetts conversion on Double Dragon hardware) are still off by a line or two, but it should be getting closer!

In the MESS camp, while for the most part not yet in a working state, Robbert has been doing some tremendous work clearing a backlog of dumped terminal systems by creating skeleton drivers for most of them. These aren’t particularly exciting but are a good demonstration of how our projects cater for everything including really obscure things with little practical use today. Hopefully somebody will pick them up and start making them more functional, that’s what teamwork is all about.

This release of course includes support for the Bubble Bobble 2 prototype shown below, in addition to Panic Road, Casanova, Puzzli 2, Double Wings (and a whole bunch of related Data East progress)


Puzzli 2 Super Puzzli 2 Super
Casanova Casanova
Bubble Bobble 2 Prototype Bubble Bobble 2 Prototype
Double Wings Double Wings
Panic Road Panic Road
(A selection of things shown previously on these pages are included in 0.150)

As I mentioned above, some other Data East hardware games should benefit from the recent progress, of note Funky Jet certainly has some changed behavior compared to previous releases when entering the final set of levels, and I imagine some of the issues people were having with Rohga should be improved too, assuming they weren’t original hardware bugs. The work done on the Data East protection means the code is much more trustworthy now, and in all honesty knowing what we know now and knowing that not all cases were handled correctly in the previous simulation(s) I really wouldn’t want to us anything older than 0.150 for these titles at this point.


Rohga Rohga
Funky Jet Funky Jet
(Rohga and Funky Jet were both already considered working but some subtle protection related behaviors are improved thanks to the new code in 0.150)

Phil Bennett also improved the emulation of Taito’s Midnight Landing, promoting that to a working state, while also doing work to bring an obscure music based game called ‘Tap-A-Tune’ up to scratch. You can read about these things on his blog The only version of Midnight Landing dumped appears to be aimed at a German audience, with many strings translated to German, even if the dipswitch is set to Japanese, I hope a proper English/Japan set turns up one day!


Midnight Landing (Germany) Midnight Landing (Germany)
Tap A Tune) Tap A Tune)
(Tap-a-tune and Midnight Landing are 2 new working drivers)

In addition to what’s already been mentioned Phil improved the sound emulation in Top Speed / Full Throttle, fixing a number of long-standing (since the driver was added?) bugs in the emulation there.

Puzzli 2 was mentioned above but some other PGM titles are improved in 0.150 too. Knights of Valor 2 Nine Dragons (aka Kov2 Plus) can now, thanks to XingXing use the proper internal ROM from that game rather than relying on a modified version of the Kov2 one, and while there were no *obvious* problems with the previous emulation it was entirely possible that some areas of the game would not function correctly or that the game balance was slightly wrong due to differences in the internal ROM tables etc. Oriental Legend Super was also improved with some external contributions and now properly loops through the entire attract mode, displaying the high score table instead of crashing as it did before. As a result of these improvements it has been promoted to working, although I haven’t personally verified the protection simulation as complete (but hopefully it is now)


Knights of Valor 2 Nine Dragons Knights of Valor 2 Nine Dragons
Oriental Legend Super Oriental Legend Super
(Emulation of PGM titles Knights of Valor 2 Nine Dragons and Oriental Legend Super was also improved)

Luca also returned to action, contributing a driver for Poka Poka Satan, again you can read about that on his blog. The game has some alignment issues on one of the screens and the readout of one of the ROMs from the board we have didn’t match the checksum printed on it, I don’t know if these issues are connected or just an emulation flaw. The overall design of the cabinet is interesting, with 3 screens however I have to question the wisdom of a game where you hit screens with a hammer as quickly as you can, I imagine the maintenance costs of these must have been horrendous!


Poka Poka Satan)
Poka Poka Satan)
(Poka Poka Satan is a 3-screen game and plays like a whack-a-mole clone)

One word of warning with 0.150 however, the VECTOR HLSL is broken, the dev involved with it hasn’t had time to fix it for personal / work related reasons and a decision was made to put out a build rather than further delaying things until it got fixed. If you’re running a vector title please ensure you turn HLSL *off*. For regular non-vector titles the HLSL code should be more stable and feature complete than ever however.

Clones don’t usually interest people too much, but are important and also an area that a vast number of people can contribute to. One that might be of interest is support for a newer revision of Dodonpachi Dai-Ou-Jou Black Label, quite what is fixed in this version I don’t know (some people have complained about a bug affecting 2 player mode in the past, so it could be that) but it’s good to have the existence of this version documented. The way Cave mark revisions is subtle and sometimes they don’t actually bother at all. In this case the additional ‘.’ in the date string is used to indicate the newer revision.


Dodonpachi Dai-Ou-Jou Black Label (2002.10.07.Black Ver) Dodonpachi Dai-Ou-Jou Black Label (2002.10.07 Black Ver)
(The newer set, left, has date code ‘2002.10.07.Black Ver’ instead of ‘2002.10.07 Black Ver’ displayed in the older set, right)

Street Fighter II has many clones as well, and I’m sure some people are sick of hearing about them but again one of the additions here is interesting / significant. ‘Street Fighter II: The World Warrior (Japan 920312)’ is by far the newest revision of Street Fighter II found to date, and was actually released just a day before the Champion Edition if the date code is correct. In 99% of cases the ‘best’ version of any game will be the newest Japan set because typically the native Japan sets have the best game balance and are the most complete versions while newer sets have the most bug-fixes. For a title as significant as SF2 it is therefore quite a major find to discover the existence of this version.


Street Fighter II (Japan)
(This is the newest known version of Street Fighter II)

There were a couple of other Japanese clones with significant changes too. The Japanese Grand Striker has a different selection of teams (the Euro / US ones actually have an extra graphic rom just to add flags for some extra European teams in place of the ones in the Japanese release) This has further impact because the Japanese version actually reads out the team name when you make your selection, the US / Euro versions can’t do this because they don’t have modified sample roms containing the extra speech clips. I have however demoted that game to NOT working because we never did figure out how the background scaling is meant to work properly and it does impact the overall quality of the emulation to consider it as having never worked properly and prematurely promoted IMHO (my fault in the first place for being too optimistic)

Grand Striker (Europe) Grand Striker (Japan)
(The Japanese Grand Striker, right, has a different selection of teams, and one less ROM populated on the PCB)

Sticking with the theme of Japanese sets we also see support added for the Japanese release of Chase Bombers, and the Japanese Turbo Outrun. The Chase Bombers driver could certainly do with some more work overall, maybe this will act as a timely reminder to revisit it?


Chase Bombers (Japan) Turbo Outrun (Japan)
(Japanese versions of Chase Bombers and Turbo Outrun are also now supported)

A version of Enforce with support for analog controls the ‘3D’ cabinet used by the Japanese versions of Continental Circus was also dumped (although it doesn’t look like the controls were hooked up properly, so I’ve no idea why it’s marked as working) Also a newer Japan revision of Cotton, a Japanese Punch-Out!!, a newer European Violent Storm and much more. As you can see it’s been a busy period for finding alt. revisions, many of them significant ones too! The new Night Slashers clone also gets a special mention here because it’s using a completely different sound system compared to the other sets.


Mechanized Attack (Japan) Mechanized Attack (Japan)
(A Japanese version of Mechanized Attack)

There were some other clones found from more exotic regions, for example, sticking with the theme of SNK’s gritty war themed games, we have a Korean release of Ikari 3 (originally submitted to the Final Burn Alpha team instead) and if something a little more lighthearted is your thing then there’s the a Taiwanese version of Pipe Dream, both games are significantly localized.


Ikari 3 (Korea) Ikari 3 (Korea)
Pipe Dream (Taiwan) Pipe Dream (Taiwan)
(A Korean version of Ikari 3, and a Taiwanese version of Pipe Dream)

A big thanks must go to everybody involved in tracking down + purchasing these alt versions, every single one of them helps build a more complete picture of the arcade industry and show where things were officially distributed etc.

Under the hood changes in 0.150 are interesting too. There is now functionality to force the old interpreter cores to be used instead of the dynamic recompilers (DRCs), or can force the dynamic recompiler to just use the C-backend instead of the recompiled code. While neither is especially useful for your average user they represent a handy debugging aid and saves you having to actually recompile MAME/MESS if you want to test the difference. More controversially there is some code being added for a built in Web-server, so you can connect your browser to MAME. On the surface that might sound pointless, and nothing but a security risk, but it is turned off by default and could open the way to some remote debugging and control over the emulation with an additional machine (be it another computer or mobile device like a phone or tablet) connected to a running MAME session via a web-browser. The code is still preliminary, experimental and really lacking any useful functionality, but use your imagination and you can see how it might have potential benefits if further developed.


Dreamcast
Dreamcast
(Firefox web browswer connecting to localhost to view current MAME session, sliders can be adjusted in the browser)

Back to MESS specifics we’ve seen Kale doing a lot of work with the Dreamcast emulation bringing it to the point where it can boot some GD-ROMs. Overall performance (there’s still no SH4 recompiler), and lack of completeness of the video emulation means that the progress is only going to really be a passing curiosity for most people at the present time, however the nature of the work being done means the new code should still be relevant and useful if a day comes when the rest of the situation changes. It also opens up the possibility for further improvements to things like the SH4 because running any WinCE based software on the Dreamcast will require full emulation of the SH4 MMU, and some might even require proper emulation of the CPU cache; of course both these will make the emulation much slower, not faster(!)


Dreamcast Dreamcast
Dreamcast Dreamcast
(Some Dreamcast games start to boot, but performance is bad like Naomi in MAME, and inputs often don’t work, the titles shown fail to boot much further)

Offering even slower performance than the Dreamcast emulation is the Chihiro emulation in MAME. This hasn’t yet been translated back into a MESS XBox driver (and as tempted as I am to just slap some XBox bios roms in the MAME one for test purposes I fear the political fallout in the team would be too great) but even without that Samuele Zannoli has been working hard to get things booting further with a current focus on OutRun2. Samuele doesn’t have his own site, but R.Belmont did write about it and posted some screenshots. Currently only OutRun gets this far because various kludges and hacks are need to bypass the remaining unemulated hardware. No 3D is shown, the emulation is painfully slow, there are no inputs, and it does eventually crash, but it is impressive seeing it even run through that much of the code.


OutRun2
(Emulation of the XBox based Chihiro system running OutRun2 is slowly progressing)

Another area of interest lately has been the NMK drivers. trap15 has made various attempts at understanding the sprite priority system in the past, but eventually caved to some real hardware testing to figure out how things work. As a result of this the sprite rendering code for nmk16 has been greatly simplified, and now seems correct in all cases; it looks like NMK might have swapped some address lines on the sprite buffers to prevent Macross 2 and Thunder Dragon 2 being romswapped (that part still needs verification because tests were done on the Macross 2 board, but things appear a lot more logical now) As a result of this priorities are better in a number of NMK games, very obvious in Thunder Dragon 2 but clearly improved in man of the others. I say NMK has been an area of interest because a user named ‘rogra’ has also been working on a way to extract the internal ROM of the NMK004 sound MCU with good results so far, however that progress is time consuming and yet to be finished / submitted, I’m crossing my fingers I’ll get to write about it and put up a few videos for the 0.151 release or before tho :-)


Thunder Dragon 2 Thunder Dragon 2
(priorities in the 68000 based NMK games were improved)

There was one other newly supported game I didn’t mention at the start of the article and that’s Super Game Mega Type 1. The Super Game series is a collection of NES based multi-game bootlegs, popular in the mid-90s / early 2000s before bootleggers moved on to making xx-in-1 arcade based boards and MAME based bootlegs. Mariusz Wojcieszek added support for this one and it’s a good example of where MAME and MESS already have strong cross-over; these are essentially all console games hacked to work as arcades. There seem to be a couple of raster effect issues in ‘Rainbow’ (the status bar jumps up and down a bit) but otherwise all the games seem to be functional.


Super Game Mega Type 1 Super Game Mega Type 1
Super Game Mega Type 1 Super Game Mega Type 1
Super Game Mega Type 1 Super Game Mega Type 1
(The Super Game series are bootleg boards offering NES Console games hacked to work as arcades)

MESS has the Mattel Hyperscan listed as a new system, it shows some startup screens but I’m not really sure what to do with it (there are no inputs mapped?) So all I can show you are the startup screens for now.


Hyperscan Hyperscan
(This was added to MESS, but I’m not sure how to use it)

All in all this is quite an important release regardless of your area of interest; there are improvements throughout the project and while it’s a shame some issues (like the vector HLSL) couldn’t be fixed in time I’d regard it as a version people would be well advised to update to.

Go to article.. »

The Return of Super Drunk

August 15, 2013 Haze Categories: General News. 22 Comments on The Return of Super Drunk

From time to time something really cool will show up, lost boards, prototypes, you know the story by now. Sometimes the owners feel generous and allow us to emulate their boards for them, other times they keep them locked away.

Well, an exceptionally rare board showed up a couple of weeks ago, as this post on Arcade Otaku shows. The board in question is a Taito F3 prototype board running a prototype version of Bubble Bobble 2 / Bubble Symphony. The owners / finders ‘Dsyde’ and ‘muddymusic’ were kindly emulation friendly, so the version found on his PCB will be supported in the 149u2 release. *edit* It has been pointed out to me a few times that the Jamma+ forums where Dsyde is an admin is the original source of this news :-)

As shown on the page there are many, many differences from the final version, it’s almost an entirely different game, lacking even a title screen at the point in development it comes from. Levels are different, graphics are different, enemies are different, sound and music are different, gameplay is different, stage names are different, stage selection is different, no story sequence, no high score sequence, no game logo during attract, it’s really more of a proof of concept sequel than anything close to a finished game at this point and that’s what makes it fascinating. The build date is close to a year before the final game, as you can imagine, a lot changes in one year of development, there isn’t a single rom the same as the final in terms of content.

As observed in the original thread the actual game on show here is much closer to the original Bubble Bobble than Bubble Symphony, the pacing is slower, the controls act more like they do in the original, and the music you get is a redone version of the original theme!

Here are some pictures of it running in MAME, although I suggest you check out the original thread for more information! (and say thanks to Dsyde and muddymusic while you’re at it) Other than working on how the roms should be loaded in for this prototype board layout (a trivial task) it really was no work at all on my part, I only thought I’d mention it because findings like this can give a real insight into how games developed from concept to release, plus I love Bubble Bobble (who doesn’t?)


Proto Left, Release Right
Bubble Bobble 2 Prototype Bubble Bobble 2 Release
Bubble Bobble 2 Prototype Bubble Bobble 2 Release
Bubble Bobble 2 Prototype Bubble Bobble 2 Release
Bubble Bobble 2 Prototype Bubble Bobble 2 Release
Bubble Bobble 2 Prototype Bubble Bobble 2 Release
Bubble Bobble 2 Prototype Bubble Bobble 2 Release
Bubble Bobble 2 Prototype Bubble Bobble 2 Release
(these 3 don’t appear here in the release version at all, only the proto)
Bubble Bobble 2 Prototype

Bubble Bobble 2 Prototype

Bubble Bobble 2 Prototype
(back to levels in both)

Bubble Bobble 2 Prototype Bubble Bobble 2 Release
Bubble Bobble 2 Prototype Bubble Bobble 2 Release

Reminder of the day of course is to check your PCBs, if you have a PCB or access to a PCB it’s always worth dumping what’s on it to see if it matches MAME. Bubble Bobble 2 here was an obvious case because it’s a well known game and the changes were very obvious, especially to somebody who knows it, but plenty of other protos and undumped revisions might appear on the surface to be the same as the released versions; not many manufacturers used 100% unique ROM labels throughout their entire history like Sega did to make knowing easy from a glance at the board. I do wonder what some of the other boards in the piles where this was found were, for somewhere to have what appears to be a trade show demonstration version (seems too early to be a location test) of what would have been a high profile Taito project they must have had some significant ties / contacts in the industry and might have other unidentified prototype versions of things too.

Go to article.. »

Road of the Hidden Bits

August 14, 2013 Haze Categories: General News. 6 Comments on Road of the Hidden Bits

One technique Seibu liked to use is encoding additional data with their tile graphics in otherwise ‘unused’ planes, I encountered this before when fixing the emulation Dynamite Duke where Seibu stored the priority data in an extra plane of the tile graphics (I do wonder if the Alpha in SPI might be done in a similar way, although it would be obvious if the maths didn’t add up so unless there has been a massive oversight I admit it’s a little unlikely)

Another technique Seibu liked to use is massive ROM based tilemaps. This technique obviously has limitations (you can’t change the tiles, so you can’t animate anything, but mean you don’t need any RAM or CPU power beyond writing scroll registers to display huge scrolling backgrounds) Actually Air Raid / Cross Shooter uses this technique along with custom ROM modules on the PCB which end up acting more like background generators containing both the graphics and tilemap definitions with no CPU access other than providing co-ordiates of the background map to draw (hence why that one isn’t emulated yet, we have no good technique for extracting the data in a non-hacky way)

This post isn’t about Air Raid tho (Kale did make some recent improvements to that, but without the graphics being dumped it’s never going to be interesting) instead it’s about another Taito / Seibu collaboration, this time the early Video Pinball title ‘Panic Road’

Panic Road employs both the techniques mentioned above, there is a single extra bit of priority data in the tile planes representing the priority of tiles vs. sprites, and the tilemaps are stored entirely in ROM.

What is unique about Panic Road compared to other Seibu devleopments is that there are 2 more bits of ‘invisible’ data in the tile planes, these are responsible for collisions and until now haven’t been understood properly.

I took another stab at this yesterday, and this time managed to come up with some good results. First of all I identified the priority bit (it hadn’t already been identified) and implemented that, leaving me with just the 2 bits of priority.

The collision readback window on the hardware was a 0x4000 byte region, assuming that both collision bits can be read back then 2 bits of data with a size of 256×256 occupy exactly 0x4000 bytes. The full area of the screen is approximately 256×256 (the edges are cut off for actual display) so that was my starting point. Turns out that this was a good theory, and the area is kind of a readback of the invisible (collision) bits of screen data although the way it interacts with the scroll register is a little strange, eventually I managed to figure it out tho.

As a result the game now appears to be playable. If anything the sprite-sprite collisions are letting it down, but those are handled entirely by the game software, so I have to assume them to be correct unless I can find a reference video of the game being played properly to prove me wrong. Actually a good reference video would be handy anyway because sprite-sprite priorities are almost certainly wrong right now. As a game it doesn’t seem to hold up very well compared to later video pinball games, the physics are horrible and the entire game seems to really revolve around you using the 100 ‘shakes’ you get per level to get the ball to go where you really want it rather than any kind of precise aiming skill. It’s no Pinball Dreams for sure!


Panic Road Panic Road
Panic Road Panic Road

The collision data is quite interesting, one bit of the data represents solid objects, things the ball should not pass through, the second bit represents areas where the flippers can take effect, I’m not entirely sure why this was necessary but if you return blank data for those bits in the readback the flippers simply don’t work.

I’ve used the MAME tilemap viewer to show some side-by-side shots of the level graphic data, and the collision data below, there is no separate shot for priority data as I’d already fully integrated it as hidden data in the regular level graphics by the time these shots were made. It should hopefully give a clear representation of the collision types, you can clearly see where the flippers go from the different colours collision map! This visual representation was very useful for working out the meaning of the bits.


Panic Road Panic Road

and another level

Panic Road Panic Road

I’ve also put together 2 videos, both are playbacks of the same MAME inp recording, one displays the regular backgrounds, the other displays the collision map data instead.


Content not available.
Please allow cookies by clicking Accept on the banner

(Regular video)


Content not available.
Please allow cookies by clicking Accept on the banner

(Collision map video)

Nothing especially complex here, it just required somebody willing to experiment a bit and a fresh pair of eyes, I dare say anybody could have actually fixed this.

As mentioned, a few things could do with verifying on the original hardware (I especially wonder what the conditions are for falling down the killer black holes in the middle of the playfield, although that could be another sprite priority issue, or depend on the speed the ball is moving)

Go to article.. »

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close