So you've run into a hack or two that look really nice in the hacks section but they have a big red `fixme` tag and they don't seem to run correctly. Maybe you got the hack from somewhere else and the music goes all janky and crashes.
I'll explain ways to fix those for both Snes9x v1.60 and Bsnes v115.
Broken Music
For the majority of this tutorial I'll be using the hack Super Mario: Buried Treasure as an example.
From the above video you can see the issue, the music is broken and once the level is completed the game crashes.
Now here are the fixes in both Snes9x and bsnes.
Once that is set up you'll notice that the music is now fixed, or at least will play without the emulator crashing.
VRAM is blocked
You might have noticed while playing hacks on bsnes some sprites and other graphics don't load correctly and are just a garbled mess along with the sprites just not working at all. This is due to bsnes having a higher accuracy than Snes9x.
There's a very simple fix. [this is only for bsnes]
In the same Compatibility menu from above check the box for `No VRAM blocking`.
Reload your hack and now all is well.
Flickering OAM
This last one isn't that important to fix and doesn't cause any issues besides a graphical flicking usually found at the top or bottom of the screen.
In the video above if you watch the top of the screen you'll see a flickering black bar and this is due to the OAM not being able to keep up with the CPU. Older emulators either ran faster than they should have OR they ignored when graphics were suppose to be written on the screen so this flickering wasn't apparent.
Now here are the fixes in both Snes9x and bsnes.
You'll notice if you watch the top of the screen now the flickering is gone.
Warning - By Overclocking the CPU anything in a hack or other SNES game that is CPU based will have it's timing off. Running on a lower Overclock will make any desync less noticeable but use this option at your own risk
Hacks that need a 32bit emulator
For this example I will be using A Haunted Christmas.
If you boot this hack up in the versions of Snes9x and bsnes that are hosted on the site, you'll notice you are met with a black screen, the classic coin sound, and nothing else.
This is due to an old patch that was applied that for an unknown reason does not reliably work on 64bit emulators. The only simple fix for this is to use the win32 build of Snes9x which can be found here just scroll until you find the `snes9x-1.60-win32` version [newest version as of writing this tutorial].
~If you know of anymore compatibility issues and there fixes let me know and I'll add then to the list.
I'll explain ways to fix those for both Snes9x v1.60 and Bsnes v115.
Broken Music
For the majority of this tutorial I'll be using the hack Super Mario: Buried Treasure as an example.
From the above video you can see the issue, the music is broken and once the level is completed the game crashes.
Now here are the fixes in both Snes9x and bsnes.
Snes9X | bsnes |
---|---|
Click Emulation on the menu bar then Hacks... |
Click Settings on the menu bar then Compatibility... (there are more options in the settings list they were just removed for simplicity) |
You'll get a warning but just hit OK. |
bsnes doesn't have a warning so just proceed to the next step. |
Check the box for `Separate Echo Buffer From RAM` and press OK. |
Check the box for 'Echo Shadow RAM' and then you can close the menu. |
The emulator needs to reload the hack so it's best to enable this hack before starting a playthrough |
Some settings won't apply until the rom is reloaded so just close bsnes and reopen the hack. |
Once that is set up you'll notice that the music is now fixed, or at least will play without the emulator crashing.
VRAM is blocked
You might have noticed while playing hacks on bsnes some sprites and other graphics don't load correctly and are just a garbled mess along with the sprites just not working at all. This is due to bsnes having a higher accuracy than Snes9x.
There's a very simple fix. [this is only for bsnes]
In the same Compatibility menu from above check the box for `No VRAM blocking`.
Reload your hack and now all is well.
Flickering OAM
This last one isn't that important to fix and doesn't cause any issues besides a graphical flicking usually found at the top or bottom of the screen.
In the video above if you watch the top of the screen you'll see a flickering black bar and this is due to the OAM not being able to keep up with the CPU. Older emulators either ran faster than they should have OR they ignored when graphics were suppose to be written on the screen so this flickering wasn't apparent.
Now here are the fixes in both Snes9x and bsnes.
Snes9X | bsnes |
---|---|
In the Hacks menu change the `CPU Overclock` to `Low` then click ok. |
In Settings menu click Enhancements... and change the `CPU` from 100% to 125% then close the menu |
You'll notice if you watch the top of the screen now the flickering is gone.
Warning - By Overclocking the CPU anything in a hack or other SNES game that is CPU based will have it's timing off. Running on a lower Overclock will make any desync less noticeable but use this option at your own risk
Hacks that need a 32bit emulator
For this example I will be using A Haunted Christmas.
If you boot this hack up in the versions of Snes9x and bsnes that are hosted on the site, you'll notice you are met with a black screen, the classic coin sound, and nothing else.
This is due to an old patch that was applied that for an unknown reason does not reliably work on 64bit emulators. The only simple fix for this is to use the win32 build of Snes9x which can be found here just scroll until you find the `snes9x-1.60-win32` version [newest version as of writing this tutorial].
~If you know of anymore compatibility issues and there fixes let me know and I'll add then to the list.