SRAM error in snesnew through fullpath loading was a stupid copy&paste mistake. fixed in latest svn.
Also, I have done some work on pirate games.
I have emulated the protection in Tekken 2
which now works like the cracked version.
It turned out that Street Fighter Alpha EX was using the same protection, so that one works too now
And I have added support for the bankswitch mechanism used by a bunch of multigame carts. Too bad only Super 6 in 1 is fully dumped while the others miss half or more of the game data
If anyone is in contact with someone owning these, please ask for a redump They are not really interesting as a whole, but it's a shame not to be able to document them only due to underdumps...
it remains to understand why Spartan X and Battle Tank have issues and why there is no music (for the latter I suspect there might still be some small banking problem, but it's hard to tell, since I was not sure where the music data is in the cart)... but for now I'm done with these pirate carts. if someone wants to take a look, be my guest
it remains to understand why Spartan X and Battle Tank have issues
Battle Tank seems to have graphical issues on real hardware as well, if that's what you mean. Take a look at the lower tank's graphics, at 2:33:
What's more odd is that this video actually shows all three Donkey Kong games not working properly while the posted screens show DK Jr. working in MESS... Dusty cartridge?
Battle Tank and Spartan X both freeze at start in MESS, while they should not, as the video shows... that video is also at the nesworld link I posted before, so I had checked before working on the dump in particular, I had noticed the glitches in DK but I don't known why it's glitched in the video: I'd guess random data in VRAM or WRAM at reset vs. deterministic values in emu (just a blind guess though)
anyway, the last 5 games in MESS had completely glitched title screens (which is not the case on real cart, as the video shows) + Popeye was not loading at all. both problems were due to missing mirrors of the 32KB PRG data up to 256KB. Now title screens are correct and Popeye works
what puzzles me a bit is the lack of music. might be that only the lower 2MB or 4MB of RAM gets bankswitched and not the whole cart... I plan to look at Super Buster Bros. as a comparison, since apparently this cart uses the same sound engine, but I dunno when I'll have the needed motivation
yeah, most test carts show that we are not emulating fully the SNES. I plan to revisit the video code at some point (especially to improve mosaic, but it might help some of these tests too), but not very soon, because once I'm done with current SNES job, I have NES awaiting for me.
on other news, I have gone through some more testing to be sure that expanded roms work fine with the new code as they were doing with the old one (we support since years LoROM & HiROM up to 8MB without need of any custom build ), and the results are definitely good
Dragon Quest 3 translation works in snesnew like it does in snes
same for Super Demo World
finally, Tafoid has done one of his great automated testruns through the whole softlist, showing that no evident regressions or crashes appear using snesnew vs snes (i.e. nothing goes wrong in the first seconds of emulation). hence, I will soon start the work to merge the slot implementation into the main snes driver
snesnew and snespnew are now gone, and the new code is used directly in snes and snespal. This means we have also removed the fake clones needed to run games with addon chips: - no more snessfx and snespfx to run SuperFX games, - no more snesdsp,snespdsp, snesst10 and snesst11 to run DSPx games, - no more snesst to run ST carts everything just loads in snes and snespal
a couple of details about the DSPx games: these games require the dump of the NEC/SETA DSP CPU to run... from softlist, this data is contained in the romset itself (the CPU was on the cart) so everything just works. from fullpath, this data has to come from somewhere else, and the solution (to avoid adding yet another fake clone like I did yesterday) is to use device roms. so you just need to build latest svn and rebuild with cmpro from the old clone bios romsets to end up with all the roms you need to run DSP games.
In addition, DSP dumps used by higan which contains the CPU data appended at the end of the game are supported as well. Hence, you can optionally append the DSP data to the .sfc file (both using our 0x2800 DSP dumps or byuu's stripped down 0x2000 versions) and that data will be used, which allows you to test what will happen using e.g. a DSP1B dump into a DSP1/1A game and so on...
everything wonderful, so far? well, the new code has a drawback: a performance hit which is usually ~5% (but some games are actually faster than they were, depending on how often they do access the cart) and which goes up to ~20% for DSP games the additional overhead is generically due to the usage of slot devices, but there seems to be something more going on on DSP games and I will try to isolate it ASAP...