FakeNES

Frequently Asked Questions (FAQ)

 

Contents

 

Audio

What is Virtual Stereo?

Virtual Stereo (formerly known as Pseudo Stereo) is a part of the FakeNES DSP (Digital Sound Processor) code that allows stereo sound to be produced from a machine (the NES) that was not originally capable of stereo sound without user modification of the hardware.
 
The following stereo modes are available:
 
Mode 1
Square wave A Square wave B Triangle wave White noise Digital Extended 1 Extended 2 Extended 3
Left Right Left Right Center Left Right Center
Mode 2 (Default)
Left Right Center Center Center 50% Left 50% Right Center
Mode 3
This mode is possible on a real NES with modification, so it is simply called "Stereo".
Left Left Right Right Right Center(?) Center(?) Center(?)
Mode 4
This is a dummy mode to allow stereo filters on mono output, so it is called "Stereo Mix".
Center Center Center Center Center Center Center Center
 

How do I use Interpolation?

Edit your configuration file and set your audio sampling rate (frequency) to a value higher than your sound card's maximum (usually 44.1kHz or 48kHz).  Allegro's mixer will automatically resample the data to fit into the output buffer during playback.  However, if the Interpolation option is enabled, the data will also be linearly interpolated as it is resampled, which can have an anti-aliasing effect (at the cost of significant amounts of CPU power and memory bandwidth).
 
Sampling rates are always specified in Hz.
 
The OpenAL driver does not support interpolation.
 

Video

How do I use a custom palette?

Place your custom palette file in the FakeNES directory as fakenes.pal and select Custom from the Video->Palette menu.
 
The palette file's format is binary, and it is expected to contain no less than 64 RGB triplets.  Each 24-bit (3 byte) triplet is specified as RGB 8:8:8.  This is the same format commonly used in the past by other emulators such as NESticle.
 
Here is what the colors of an NES palette should look like.  Image courtesy of Bob Rost.
 
[ NES Palette ]
 

Miscellaneous

Where is my configuration file?

fakenes.cfg on DOS, fakenesw.cfg on Windows, and ~/.fakenes/config on all other platforms (Linux, Mac OS X, etc.) unless otherwise specified.  It is stored in a plaintext format and is easily modified with a text editor.
 

What kind of cheat codes are supported?

NES Game Genie cheat codes are fully supported.  Raw patches to memory can also be applied either by manually creating a .fpt (FakeNES patch table) file, or by entering raw NESticle codes, which are accepted in several forms.
 
Game Genie
Digits Usage Description Example
6 XXXXXX GameGenie.com: NES Game Genie Cheats AATOZA
8 XXXXXXXX GameGenie.com: NES Game Genie Cheats SXNLOKVK
NESticle raw
7 XXXX:XX Address:New value 1F4D:6F
10 XXXX:XX:XX Address:Original value required to apply cheat:New value 1F4D:37:6F
 
Patching certain areas (such as zero page memory) may not be supported for performance reasons.
 

How do I fast forward or rewind the game?

You can fast forward through boring or otherwise unimportant areas of a game by holding down the tilde (~) key on your keyboard, or the localized equivalent key for your region.  It is often located above the TAB key.
 
Note that the speed of the fast forward feature depends both upon the setting of frame_skip_max under the [timing] section of your configuration file (larger values mean faster core execution), and the overall speed of your computer.
 
 
You can rewind the game in real-time at any time during gameplay by holding down the backslash (\) key on your keyboard, or the localized equivalent key for your region.  It is often located above the ENTER or RETURN key.
 
Game rewinder history typically lasts about 10 seconds in NTSC mode, and 12 in PAL mode on the default settings.  The impact of this feature on memory usage is fairly large, so a small amount of compression is used to greatly reduce that impact, but can be disabled from the configuration file if it causes too much of a speed hit on slow machines.
 
Likewise, the length of the history can be greatly increased, possibly along with an increase in the compression level to allow extensive backtracking through a game without using up an excessive amount of memory.
 
Check your configuration file under the [rewind] section for the following configuration options:
 
Key Value Minimum Value Maximum Value Default Description
enabled 0 1 1 Whether or not real-time game rewinding is enabled.  Disabling this sweet feature can give a significant speed boost and reduced memory usage.
frame_rate epsilon 1.0 0.5 Frame rate at which snapshots are saved/loaded.  Larger values mean smoother backtracking at the cost of memory and a more constant speed it.

This should be a fractional value that represents a normalized percentage of the current emulation speed (e.g, 0.5 of 50 Hz would be 25 FPS, and 1.0 would be 50 FPS).
seconds 1 none 10 How long the rewinder can backtrack, in seconds.  This will actually end up being about 20% longer for PAL (e.g, 10 => 12).
compress 0 9 1 Compression level.  Set to 0 to disable.
 

How do I use a custom font?

  1. Download ttf2pcx (Windows only).
  2. Run ttf2pcx and select an appropriate font and size.
  3. Export the font to a file named font.pcx in your FakeNES directory.
  4. Open up your FakeNES configuration file in a text editor.
  5. Add a font = font.pcx line under the [gui] section.
  6. Save the configuration file and close your text editor.
 
Additional formats (such as GRX and BIOS fonts) are also supported.  See the Allegro documentation for details.