notaz / picodrive

Fast MegaDrive/MegaCD/32X emulator
Other
290 stars 162 forks source link

PicoDrive ssf mapper is broken? Problem with "SEGA SSF" in header #130

Open corthax opened 2 years ago

corthax commented 2 years ago

Rom that uses krikzz SSF mapper works fine, but only if there is no "SEGA SSF" in rom header but anything else. The problem is that "SEGA SSF" is needed by BlastEm and Mega Everdrive to enable mapper.

irixxxx commented 2 years ago

I'm a bit puzzled. Can you explain in greater detail what needs to be done here?

corthax commented 2 years ago

There is the rom and SGDK source (rom.bin) https://github.com/corthax/mdtracker/tree/main/out I'm using krikzz SSF mapper to enable 512Kb SRAM support on everdrive. It works more or less ok in PicoDrive, aside from PSG noise is out of tune, also DAC panning doesn't work :), but only if "SEGA SSF" in header replaced with something else. Otherwise seems I can't access SRAM properly for some reason.

irixxxx commented 2 years ago

Re PSG noise out of tune: there's a suspicious comment in pico/sound/sn76496.c at line 40. Are you able to make your own picodrive build? If so, changing the FB_PNOISE to 0x10000 might cure your problem.

irixxxx commented 2 years ago

Ah, there was a bug in the ssf2 mapper which prevents enabling the sram :-D. Could you possibly try the fix in libretro/picodrive:4867a33c8 and see if that fixes your ssf problem?

irixxxx commented 2 years ago

BTW, DAC panning and CSM are not implemented at all. Not sure if (and when) this is going to happen. It's surely not very high on my list ;-)

corthax commented 2 years ago

Hmm seems that SRAM problem is now gone :)

irixxxx commented 2 years ago

sounds good (hopefully ;-))