N64 Blur

N64 Blur

Many N64 games have a “blurry” look to them, due to the way Nintendo designed the console.  Luckily, people have discovered ways to remove some of the filters using both hardware and software.  This page is a culmination of work done by many different people in the retro gaming community;  I’m not trying to take credit for any of these amazing finds, I just wanted to archive it all in one place.  The picture below is a result of their work and the improvements that can be made in these games (click the picture for a full-sized view).  Also, see the video next to it from My Life In Gaming that does an excellent job explaining everything!


Describing how the N64 gets its “blur” is a bit complicated and involves both hardware and software, but I’ll try to simplify the explanation as best as I can. First, there’s basic anti-aliasing, which “smooths” the image. In the game Quake, developers actually added an option to disable this filter in the video options, where its simply called “filter”. The fact that the option exists at all led game hackers to figure out how exactly to turn that software filter off using gameshark codes (or patched roms).

The N64 hardware itself ads a horizontal blur feature that also softens the image, which is completely different from the blur discussed above.  The UltraHDMI kit has a feature to remove this filter and there are talks of a hardware add-on to remove this from RGB-output as well.  I’ll add more information on the RGB add-on as it becomes available, but for now, the only way to perform a hardware de-blur is via the UltraHDMI.


Remove filters with software:

People on the Assemblergames forum have found a way to use Gameshark codes to turn off anti-aliasing in a similar manner to the way Quake does it. These codes can be implemented on original cartridges by using a Gameshark, however newer versions of the Gameshark are required (you can upgrade old versions with this method).  If you own a ROM cart, you can download patches from Poregon’s website and either use software such as Lunar IPS to patch the rom, or use your romcart’s software to toggle them on or off before starting a game.  This is much easier then manually entering each code and very convenient.  These patches are also available in Smokemonster’s rompacks:  http://n64.poregon.com/shared/

saturnu also created a patcher, currently on version 0.4.0:


Remove filters with hardware:

At the moment, there are two choices for a hardware de-blur:

The UltraHDMI:
Simply enable the ‘VI De-Blur’ option in the advanced menu.

Tim Worthington’s N64RGB Board:
You can either re-flash your existing N64RGB to have the de-blur option permanently on, or use his latest revision with an on/off switch.  Here’s more info:  http://shmups.system11.org/viewtopic.php?p=1188507#p1188507 


Techincal Information:

Here’s some links to more techincal information about how these blur filters work and how to discover patches yourself.  Please let me know if I should include anything else:

xdaniel and saturnu both posted good explanations of how the Game Shark codes work and how to find them yourself:

saturnu sent this tutorial for gscc, which I think is the software the Game Shark people use to find the temp framebuffer readouts of the VI-Register values, that are rewritten.  His post on Assemblergames describes the VI-Register but is missing how to find these values in in the rdram memory:  http://doc.kodewerx.org/hacking_n64.html#using_gs_gscc

Marshall (the creator of the UltraHDMI mod) chimed in with details about how the anti-aliasing works and how it interacts with both the software and hardware ‘de-blur’ mods:  http://retroactive.be/forum/viewtopic.php?f=8&t=7&start=360#p784



These patches are something every N64 fan should try;  Not everyone will prefer them to the original look, but I think everyone will agree it was worth trying! 

Well, that’s it! Feel free to go back to the main N64 page. If you’d like info on mods for other systems, head to the Getting RGB From Each System page or check out the main page for more retro-awesomeness.