#

## ZSNES DOS v1.42

# Frequently Asked Questions (FAQ)

## Sound Compatibility Issues

Q: How come I don't get any sound?
Q: When do you think ZSNES will support GUS/PAS sound cards?
Q: I get a sound initialization error using my SB Live! (or any other PCI card). How do I fix it?

## Transparency Issues

Q: Are there transparencies in ZSNES?
Q: How do you enable transparencies?
Q: There is this layer of fog blocking my view. What's wrong?

## Game Compatibility Questions

Q: Why doesn't *name of game* work on ZSNES?
Q: Can you get *name of game* working by the next release?
Q: Why is *name of game* not working in v.*version #* of ZSNES? It was working before.
Q: This game tells me that it is not compatible with the MultiTap (or an external device attached). What should I do?
Q: How do I improve the compatibility of ZSNES?
Q: How come Mario RPG doesn't work?
Q: Why am I experiencing problems with Chrono Trigger?
Q: Why doesn't MegamanX2/MegamanX3 work?
Q: What games use which DSP chip? How many of the DSP chips are emulated?
Q: What is the Sufami Turbo? And what do I need to do to run Sufami Turbo games?
Q: What are the Same Game and SD Gundam G-Next expansion packs? How do I use them in ZSNES?
Q: Why don't my SuperFX games work? They used to work before.

## Speed Questions

Q: Why is ZSNES slow?
Q: Can you implement dynamic recompilation into ZSNES?
Q: Why does the game slow down even though I'm using auto frame rate and the FPS is pretty high?

## Keyboard/Joystick Questions

Q: Why can't I press more than 2 keys at a time?
Q: How come my Sidewinder pad doesn't work?
Q: How do I use more than one Sidewinder pad?
Q: Why doesn't my Gamepad Pro work?
Q: Why doesn't my joystick work anymore?
Q: How come my joystick keeps holding in one direction?
Q: How do I use both my keyboard and joystick for the 1st player?
Q: Why does JB5/JB6 keep getting pressed whenever I try to change a key?

## In-Game Sound Issues

Q: Why does ZSNES produce a lot of static?
Q: How come stereo is reversed?

## Cheat Questions

Q: How come the Game Genie codes don't work?
Q: How do I use .cht files?
Q: Why don't multi-line codes work?

## Freezing/Crashing Questions

Q: How come ZSNES freezes when I run it under pure DOS?
Q: When I load a ROM, how come ZSNES crashes?
Q: How come ZSNES freezes when it tries to enter the GUI?

## Miscellaneous Questions

Q: ZSNES gives me an "out of memory" error and I only have 16MB of RAM. How do I fix this?
Q: How does the automatic IPS patching feature work?
Q: Does the modem mode work well?
Q: Why is modem mode so choppy and slow?
Q: Does the IPX support work well?
Q: Why does ZSNES display a blank (or messed up) screen when I start it up on my laptop??
Q: Can I run .zip files from the commandline?
Q: Where do I get the games?
Q: How do I convert .zmv movies to AVI/DIVX/WMV/MPEG?
Q: Can you make a Mac/PocketPC/PS2/whatever port?

# Answers

## Sound Compatibility Issues

- Q: How come I don't get any sound?
- A: There could be several situations:
  * 1.) You haven't enabled sound. You can enable it through the GUI or through zsnes.cfg.
  * 2.) Try ZSNES version a instead of c (eg. If you have ZSNES v0.900c, download ZSNES v0.900a).
  * 3.) Your Windows 95 doesn't create a SET BLASTER string. To verify this, type SET in DOS and look for a string starting with "BLASTER=". If such a string exists, then this is not your problem.
  * 4.) You don't have a SB2.0 compatible sound card. If this is your case, there is nothing you can do at the moment. ZSNES uses auto-initialization mode for sound which requires SB2.0+.
  * 5.) Your SB IRQ conflicts with another device. If this is the case, you might want to check your sound card settings through Control Panel -> System
  * 6.) ZSNES doesn't like your sound card.
- Q: When do you think ZSNES will support GUS/PAS sound cards?
- A: We've considered implementing support for those sound cards, but a lack of time and the fact that we haven't really looked closely at those cards before prevents us from implementing it.
- Q: I get a sound initialization error using my SB Live! (or any other PCI card). How do I fix it?
- A: Here is a solution: (Thanks CyberGodz for the post on the forums!)
  SB Live! uses what is known as a NMI, or Non Maskable Interrupt, to emulate SB 16 sound. Don't ask us exactly what it does (it's a type of IRQ) but that is pretty much all it is good for.
  The problem is that many boards either lack NMI support or don't have it enabled. (No NMI = No DOS support)
  To try and solve this problem do the following:
  * 1. Check your BIOS. If there is an option for RAM parity checking, ENABLE IT. It usually turns on NMI support. If there is something that says NMI, turn it on.
  * 2. If you don't find anything in your BIOS, then go to your motherboard's website and download the latest BIOS flash. Install it and try your DOS sound (You may still have to enable the stuff in the BIOS afterwards).
  * 3. Failing the first two things, you will either have to get a new motherboard, install a SB 16, or get another compatible sound card alongside the SB Live!. Just attach a cable from the line out of the SB 16 to the line in of the SB Live!. Enable line in on the mixer of your SB Live! and it should route the sound through the old sound card (Don't use the SPDIF to connect the cards if you have one; wave sound doesn't pass through SPDIF--only MIDI).

## Transparency Issues

- Q: Are there transparencies in ZSNES?
- Yes, transparencies are in ZSNES.
- Q: How do you enable transparencies?
- First, try setting the video mode to a 16bit color video mode in the GUI (If 320x240x16b doesn't work, then try 640x480x16b). If it gives you an error that says that your video card isn't compatible with vesa 2.0, you might want to get the Scitech Display Doctor, which is located at www.scitechsoft.com .It provides certain cards with vesa 2.0 support. Running with transparencies on is definitely slower because of the extra math equations, memory, and video space involved.
- Q: There is this layer of fog blocking my view. What's wrong?
- A: First of all, make sure that you have the latest sound drivers installed. Also, the problem could be in relation to many different variables. The emulator uses DirectSound for audio, so it is likely not an issue with Windows but most likely a setting in the emulator. The problem could be in relation to using a lower khz value than the SNES uses, which is 32000khz. Another more likely reason is that you have one of the special sound filters engaged. For higher end cards (better than SB16), it appears that the Low Pass Filter can cause static.

## Game Compatibility Questions

- Q: Why doesn't *name of game* work on ZSNES?
- A: Getting the compatibility higher is a very hard task to do. We're always trying to get more games working.
- Q: Can you get *name of game* working by the next release?
- A: We're always trying, but we can never guarantee a specific game will be working because of the difficulties involved in bug fixing.
- Q: Why is *name of game* not working in v.*version #* of ZSNES? It was working before.
- A: Whenever we change something in the emulation, whether it's optimization or bug fixes, it has a good potential to have caused a problem elsewhere. Usually, these problems aren't discovered until after a release.
- Q: This game tells me that it is not compatible with the MultiTap (or an external device attached). What should I do?
- A: Go to Config-->Add-Ons and choose None. You may also need to go to Config-->Options, and enable "Use Player 3/4 as Player 1/2". Additionally, you could add an NSRT header to your ROM if you desire.
- Q: How do I improve the compatibility of ZSNES?
- A: Turning on sound helps a lot here. Also, in the ZSNES configuration file, try to keep the % of execution at 100%. If a game still doesn't work, try tweaking the percentage of execution to both 120% or 80%. If that still doesn't work, then it's either a corrupt rom, a game that requires a special chip, or a bug in ZSNES.
- Q: How come Mario RPG doesn't work?
- A: If the emulator crashes, your ROM file is corrupt. If it only displays a blank screen, you need to enable sound (or use -s -dd as the commandlines when running ZSNES under DOS)
- Q: Why am I experiencing problems with Chrono Trigger?
- A: If you cannot press the L,R, and A buttons at the same time on your keyboard, then you will need to assign both the L and R key to the same key, such as L and R to PageUp and A to Home. Pressing PageUp+Home will be then be the same as pressing L,R, and A together. This is a hardware limitation of the keyboard, not a bug in ZSNES. If this bothers you, you might want to use a gamepad if possible.
- Q: Why doesn't MegamanX2/MegamanX3 work?
- A: If it crashes after the Capcom logo, you have a corrupt rom dump. The actual ROM size for both of them is about 2 megabytes.
- Q: What games use which DSP chip? How many of the DSP chips are emulated?
- A: There are two hardware DSP chips: Nintendo's DSP and Seta's DSP. Nintendo's DSP has 4 different major firmwares of which two, the DSP-1 and DSP-2, are supported. Games that are known to use the Nintendo DSP chips include:
  - DSP-1: Pilotwings, Mario Kart, Suzuka 8 Hours, Lock On, Michael Andretti's Indy Car Challenge, Super Bases Loaded 2, Ballz
  - DSP-2: Dungeon Master
  - DSP-3: SD Gundam GX
  - DSP-4: Top Gear 3000
  Seta's DSP has 2 major firmwares. ZSNES supports the first one, known as the Seta 10 (ST010). Games that are known to use the Seta DSP chips include:
  - Seta 10: F1 ROC 2
  - Seta 11: Hayazashi Nidan Morita Shougi
  There is also a Seta RISC proccessor, the Seta 18 (ST018), which is not yet emulated by ZSNES. It is used by Hayazashi Nidan Morita Shougi 2.
- Q: What is the Sufami Turbo? And what do I need to do to run Sufami Turbo games?
- A: The Sufami Turbo is a special add-on that was released only in Japan by Bandai. It used small, GameBoy-sized cartridges. It could run 2 games at once, some of which could enable certain extra features when run together.
  ZSNES currently only supports running one Sufami Turbo game at a time. To emulate it, you will first need the Sufami Turbo BIOS (Don't ask us where to get it.). In the Config-->Paths menu, under the Sufami Turbo field, enter in its exact location on your hard drive (eg. "C:\Games\STBIOS.bin"). Then run your game.
  Sometimes, you may have a Sufami Turbo ROM that is hacked to include the BIOS with it. Use NSRT with the -split command to take it out (see NSRT readme for more details). This will give you at least two separate files: One will be the game, and the other will be the BIOS (Sometimes, you will get 3 files: Two games, one BIOS.). After you have the BIOS and the game(s) separated, simply follow the directions stated above.
- Q: What are the Same Game and SD Gundam G-Next expansion packs? How do I use them in ZSNES?
- A: These were 2 special carts that were released only in Japan. They had a BS expansion on top, to which expansion carts could be connected to improve/change the game a little (similar to the Sonic 3 cart for Sega Genesis).
  ZSNES can run the original base carts (Same Game and SD Gundam G-Next), but to run the expansion carts, go to Config-->Paths and specify the exact location of each of the base carts on your hard drive into the appropriate fields (eg. C:\Games\SAMEGAME.zip). Then run your expansion cart game. Doing this will load the base cart for you and plug in the expansion cart.
- Q: Why don't my SuperFX games work? They used to work before.
- A: Your SuperFX ROM is probably interleaved. Support for interleaved SuperFX ROMs was removed in v1.40, because it was more trouble than it was worth.
  To fix this problem, deinterleave your SuperFX ROM with a SNES ROM auditing tool (we recommend NSRT), then try again. Known SuperFX games include Dirt Trax FX, Vortex, Dirt Racer, Stunt Race FX/Wild Trax, Winter Gold FX, Super Mario World 2: Yoshi's Island, and Doom.

## Speed Questions

- Q: Why is ZSNES slow?
- A: For the Windows version, you might want to change your video mode to different settings until you find the mode that's optimal in performance.
  Emulating a SNES is slow because it is a complex system. Also, ZSNES by default uses a tile/line engine which is newly completed in v1.0. This engine is faster than the old, so if the speed isn't up to par you may try a solution below. Or your computer just may be too slow.
  Vsync, by nature of syncing to the monitor, is also slower. So if speed is paramount to you, Vsync should be disabled. You should also use auto frame rate and frame skip.
- Q: Can you implement dynamic recompilation into ZSNES?
- A: There are no plans to implement it since it doesn't seem necessary. The SNES only uses a 3mhz CPU compared to, say, the 93mhz CPU inside the Nintendo 64. Implementing a dynamic recompilation engine would be hard work and would not improve performance by much.
- Q: Why does the game slow down even though I'm using auto frame rate and the FPS is pretty high?
- A: A game slows down like that when it executes its code beyond the speed of CPU emulation that ZSNES currently handles. To reduce slowdowns, increase the percentage of execution by editing zsnesw.cfg.

## Keyboard/Joystick Questions

- Q: Why can't I press more than 2 keys at a time?
- A: It's mainly a limitation of the PC keyboard. If you want to press more than 2 keys at a time, either use a joystick or change the keyboard keys around until you find a combination where you can press more than 2 keys at a time. Another technique that works is to set multiple buttons to a single key. That way, pressing that key presses multiple buttons at the same time.
- Q: How come my Sidewinder pad doesn't work?
- A: First, for non-USB Sidewinders, you should disable the Sidewinder profiler from the Win9x icon tray, run ZSNES, set Input #1 as SidewinderPad1, then press the mode button a few times. If that doesn't work, try the following:
  - Try checking or unchecking the Sidewinnder Fix in the options menu of the GUI and repeat the above steps.
  - Fully disable the Win9x Sidewinder drivers by going to Control Panel/Game Controllers. Then remove the Sidewinder (Thanks Scarlet-Slider for this info!)
  - Run ZSNES under pure DOS.
  - Again, try checking or unchecking the Sidewinder Fix in the options menu of the GUI and repeat the above 2 steps.- Make sure your Sidewinder is plugged iin and is not broken.
  For USB joysticks, you can either set ZSNES as a 6-button joystick or simulate keyboard keys through the Sidewinder profiler by setting Input #1 as a keyboard with those defined keys.
- Q: How do I use more than one Sidewinder pad?
- A: First, run ZSNES. Temporarily disconnect the second Sidewinder pad from the first one, get the first one to work, then re-connect the second Sidewinder pad.
- Q: Why doesn't my Gamepad Pro work?
- A: For the non-USB version, be sure to have your Gamepad Pro set on 'GrIP' mode. Then set the input device as Gamepad Pro P0. For the USB version, you can use a keyboard emulator which should be included with the software that came with your joystick.
- Q: Why doesn't my joystick work anymore?
- A: You might have accidentally clicked the 'Use Joystick Port 209' check box. Just uncheck it.
- Q: How come my joystick keeps holding in one direction?
- A: This happens when you hold a direction when ZSNES starts up. To fix this, exit ZSNES and reload to recalibrate. Clicking on SET in the input device window also calibrates the joystick, but it also resets the controls to the default joystick settings.
- Q: How do I use both my keyboard and joystick for the 1st player?
- A: In the GUI, enter the Config-->Options menu. Then check 'USE Pl3/4 AS Pl1/2'. Once you've done that, Player 3 controls will control Player 1, so if you have joystick set on Player 1, set Player 3 as keyboard. This disables MultiTap emulation, however..
- Q: Why does JB5/JB6 keep getting pressed whenever I try to change a key?
- A: Try changing your joystick type from a 6-button to a 4-button.

## In-Game Sound Issues

- Q: Why does ZSNES produce a lot of static?
- A: Try reducing your sampling rate or disable stereo sound.
- Q: How come stereo is reversed?
- A: Turn on 'Reverse Stereo' in the Sound configuration in the GUI.

## Cheat Issues

- Q: How come the Game Genie codes don't work?
- A: You probably didn't insert the '-'. Otherwise, try clicking on the FIX button once while the highlight is over the code. If it still doesn't work, the code is either for another version of the game you're trying to run or it is a fake.
- Q: How do I use .cht files?
- A: Copy the .cht file to the ROM directory or, if you have a save directory defined, copy it to the save directory. Then rename the .cht file if necessary so that the filename before the . matches the ROM file.
- Q: Why don't multi-line codes work?
- A: They do. Just enter each line as a code.

## Freezing/Crashing Questions

- Q: How come ZSNES freezes when I run it under pure DOS?
- A: Try loading your mouse driver or run ZSNES using -j. For the most compatible result, use the Microsoft Mouse driver if possible.
- Q: When I load a ROM, how come ZSNES crashes?
- It could be that ZSNES doesn't recognize your sound configuration. To fix it, disable sound or try changing your sound configuration. It could also be that the ROM you're loading isn't compatible with ZSNES.
- Q: How come ZSNES freezes when it tries to enter the GUI?
- A: Run ZSNES using the commandline -j.

## Miscellaneous Questions

- Q: ZSNES gives me an "out of memory" error and I only have 16MB of RAM. How do I fix this?
- A: Under WIN9x, first create a shortcut to the DOS prompt on the desktop (the filename that it points at can be c:\command.com).
  Then right-click on the icon and go to Properties.
  Select the memory tab and look below for Protected Mode (DPMI) settings and set a high value (like 20000).
  Then double click on that icon and load ZSNES as usual.
- Q: How does the automatic IPS patching feature work?
- A: ZSNES will soft-patch your ROMs if you have auto-patching enabled (In the GUI, go to Config-->Options; it's enabled by default). To get it to work, copy the .ips file to the directory of your ROM file or, if you have a save directory defined, into the save directory. Next, rename the .ips file so that it matches the ROM filename (eg. If your ROM filename is THISGAME.smc, then your .ips filename needs to be THISGAME.ips.). ZSNES uses the ROM file name, even with zipped files. So, for example, TG.zip containing THISGAME.smc is still patched by THISGAME.ips. Additionally, if you have IPS patches inside a zipped file, ZSNES will automatically patch with the first .ips file it finds.
  If, after doing the above, you still have problems with this feature, you may need to add or remove a header in your ROM. Use a utility such as NSRT to do this.
- Q: Does the modem mode work well?
- A: It should work quite well. First, make sure that you are using a modem that is compatible with DOS (a non-win modem). It is recommended that both sides have a modem that uses a 16550a UART, otherwise the game may go out of sync. Also, be sure to load a fresh new ZSNES session before starting a modem session. If it still doesn't work, try running ZSNES under pure DOS.
- Q: Why is modem mode so choppy and slow?
- A: Try increasing the latency value one by one until the gameplay becomes smooth.
- Q: Does the IPX support work well?
- A: No, it does not work very well unless you have a very fast LAN. Otherwise, the game will easily go out of sync.
- Q: Why does ZSNES display a blank (or messed up) screen when I start it up on my laptop?
- A: Your laptop is probably not compatible with ZSNES's default 256x256x256 resolution. One way to fix it is to set the resolution to 320x240x256 by using the DOS commandline -v 0.
- Q: Can I run .zip files from the commandline?
- A: Yes, but you have to specify the full path/drive (eg. ZSNES D:\Games\Game.zip).
- Q: Where do I get the games?
- A: The ZSNES Team will *NOT* provide any games or any links to games.
- Q: How do I convert .zmv movies to AVI/DIVX/WMV/MPEG?
- A: You can't, really; .zmv files are only a save state and the recorded sequence of button presses. The only way you can do it is to use another program to capture the video from ZSNES, such as SnagIt.
- Q: Can you make a Mac/PocketPC/PS2/whatever port?
- A: Since ZSNES is written in assembly, ports to any systems that are not 100% x86 compatible are impossible. For x86 compatible machines, such as the XBox, it is still difficult. Try Snes9x for other systems.

ZSNES Documentation v1.1