etabeta's playground

MESS & MAME wip

Archive for September, 2009

NESsundorma…

without comments

While SNES got me busy for awhile (you can check the MESS board post linked in the previous entry for a lot of screens of the progresses), last weekend I had to spend something like 12 hours in trains. The result is that I managed to work a bit on NES emulation.

In addition to a general clean up of the code for Multi-Memory Controllers (aka Mappers) and to the inclusion
of some info about most mappers (more info will be added in future, when I have some more time), I managed
to add a lot of new mappers and to fix a few of the broken ones. Enough words, time for screenshots!!!

DISCLAIMER: none of the screens below were possible before in MESS!

First of all, I fixed the Lagrange Point crash due to the code assuming CHRROM was present (no screens because the game was working in older MESS versions… nothing new to see here).

Then I added Mapper 152, which features Arkanoid 2, GeGeGe no Kitarou 2 and Pocket Zaurus (maybe others as well? I dunno)
map152_01map152_02map152_03map152_04

These games were maybe working to some extent in very old versions, by using Mapper 70 code, but they became unsupported when switched to their correct Mapper 152. Not sure if they still miss anything.

Next, I fixed Mapper 22 and now TwinBee 3 and Ganbare Pennant Race! are playable for the first time in MESS (to my knowledge they had always been broken before).
map022_01map022_02

Mapper 86 was choosing the wrong PRG banks. Once I fixed those, Moero!! Pro Yakyuu started to work.
map086

Mapper 87 had some banking problem as well, and Jajamaru no Daibouken was not even reaching its title screen.
Now it is fixed
map087_01map087_02
[btw I found the solution to this problem in NEStopia source: thanks a lot for the wonderful emu, Marty!!]

Mapper 93 was using the wrong writes to decide which PRG bank to use. While this was ok for most games,
Shanghai (the non-Sample version) was not working. This got rectified and the title is now playable
map093

Another round of fixes and, for the first time, we have working Mapper 95 emulation. This means that we can play Dragon Buster in MESS
map95_01map95_02

I also fixed Konami VRC1 CHR swapping, and now Tetsuwan Atom shows the correct graphics (thieves in the picture below were garbled previously)
map075

I found out that Mapper 232 was not refreshing its PRG banks. Once properly implemented, Quattro series titles were finally working (although some games still present glitches)
map232_01 map232_02

Fixing Mapper 33 starting bank config, Akira now shows its intro rathen than a black screen
map033
The game still lacks part of the graphics (e.g. texts at start), but it is still a progress.

Finally, I found why Mapper 46 was broken and now games in the Rumblestation multigame cart can be selected and played
map046_01 map046_02

This basically covers the fixes I have done to classic mappers. More work is required in the driver: not only MMC5 is missing several features (which are probably beyond my skills), but other common mappers like MMC1 and MMC3 have some small problems that would be nice to fix. I will look into those later.

In addition to the above, in the past couple of weeks I also added a few pirate mappers for Asian games which were previously unsupported in MESS. Let me review here these new mappers as well.

MESS is now supporting:

Mapper 143
map143_01
map143_02map143_03

Dancing Block is remarkable because is probably the only NES game which works in MESS and does not in NEStopia (the basic idea of the fix came from FCEUMM, thanks to Cah4e3 and other authors)

Mapper 250 – Time Diver Avenger looks like an interesting action game
map250_01 map250_02

Mapper 156 – Metal Force is a nice MegaMan kind of game
map156_02map156_03

and Buzz and Waldog (mapper 156 again) is a cute platform game
map156_04map156_05

Moreover, I decided MESS had to support all games made by Sachen. Hence, I added

Mapper 136
map136

Mapper 137
map137

Mapper 138
map138_01map138_02

Mapper 139
map139_01map139_02map139_03

Mapper 141
map141_01map141_02map141_03

Mapper 145
map145

Mapper 146
map146_01map146_02

Mapper 147
map147_01map147_02

Mapper 148
map148_01map148_02map148_03

Mapper 149
map149

I also fixed Qi Wang (mapper 133) which was not working, and now is ok (almost)
map133_01map133_02

I also added the following Sachen mappers, which still have some graphical issues

Mapper 150
map150_01map150_02

Mapper 243
map243

While the above mappers include most Sachen games and they are mostly playable, I’d like to fix the graphical problems sooner or later…

But Sachen / Thin Chen was not the only Asian producer in the famiclone market. Therefore, I also worked on implementing / fixing some more easy pirate mapper for MESS. The results are the following (notice that a few games, like some Subor ones, won’t work without emulating custom keyboards/controllers, but I’ll look into these later):

Mapper 36
map036_01map036_02

Mapper 38 (but inputs are not recognized apparently)
map038

Mapper 39
map039

Mapper 132
map132

Mapper 166
map166

Mapper 167
map167

Mapper 171
map171_01map171_02

Mapper 172
map172

Mapper 173
map173_01
map173_02map173_03

Mapper 176
map176_01 map176_02

Mapper 177
map177_01map177_02map177_03map177_04

Mapper 178
map178

Mapper 179
map179

Mapper 196
map196

Mapper 216
map216_01map216_02map216_03

Finally, some multigame carts got added / fixed

Mapper 58 (fixed)
map058_01 map058_02

Mapper 201 (fixed)
map201_01map201_02

Mapper 204 (added)
map204

Mapper 212 (added)
map212_01map212_02

Mapper 213 (added)
map213

Mapper 214 (added)
map214

Mapper 222 (added)
map221_01 map221_02

Mapper 104 (added, but not working)
map104_01 map104_02

Mapper 225 (added, but not working)
map255

Written by etabeta

September 30th, 2009 at 9:00 pm

Posted in MESS