
                      Snes9X DOS Frequently Asked Questions
                      ~~~~~~ ~~~ ~~~~~~~~~~ ~~~~~ ~~~~~~~~~

Contents:
   Why doesn't sound work ?
   Why does Snes9X complain "no DPMI"?
   How can I safely speed up Snes9X?
   It's still not fast enough!
   When I play [some game] I can't see my character!
   Where can I find games for Snes9X?
   What's "WindowsFriendly" mode?
   Why are parts of the GUI disabled?


Question:
   Why doesn't sound work ?

Answer:
   Enable APU emulation by adding "-S" to the command line (case sensitive!).
   If it crashes for some reason, try a different playback rate, for example
   "-r 2".

   Sound still isn't working?

   Did you set your "BLASTER" variable correct ?
   (You can check if the variable is set by typing "SET" at the command line)
   Please type this at the command line:

   SET BLASTER=A??? I? D? H? T?

   Where:
   A??? should be replaced with the address of your soundcard (Common: A220)
   I?   should be replaced with the interrupt of your soundcard (Common: I5
        or I7)
   D?   should be replaced with the Low-DMA of your soundcard (Common: D1)
   H?   should be replaced with the High-DMA of your soundcard (Common: D5)
   T?   is the version/type of your soundblaster/compatible, please check
        your documentation for this setting and if still unknown set it to T1

   Some sound cards (including the Sound Blaster 16, and better) require a
   software utility to configure the card with it's DMA, Interrupt, and 16bit
   DMA channels.  For Creative Labs cards, this is typically called
   diagnose.exe or sb???set.exe.  Creative Labs PnP cards also require
   CTPNP.EXE to be loaded, in order to set up the PnP aspect of the card.

   Sound STILL isn't working ???

   Please check if your soundcard is 100% Soundblaster Compatible and
   if all the drivers are loaded correctly also check if you experience any
   problems with DOS games when you select the 100% Soundblaster compatible
   driver. If you experience problems with DOS games then please contact
   your supplier for more details !

   Some sound cards that claim to be 100% SoundBlaster compatible aren't.
   If so, there's absolutely nothing we or you can do.

Question:
   Why does Snes9X complain "no DPMI - Get csdpmi*b.zip", and then quit
   when I run Snes9X under DOS mode?

Answer:
   Snes9X was compiled in DJGPP, and it needs a DPMI stack to run.  Windows
   95 automatically provides DPMI services to DOS-based programs.  However,
   to run under dos, another program, cwsdpmi.exe, is needed to provide
   these services.  This error will occur if this file is missing, or
   corrupt.  Snes9X MUST be able to find this file or it cannot run.  The
   file can be placed in a number of places.  It can be in Snes9X's
   directory, the current directory, or somewhere in the PATH.

Question:
   How can I safely speed up Snes9X?

Answer:
   There are a number of ways to speed up Snes9X.  One of the easiest is to
   turn off joystick support if you're not using it.  Joystick polling
   takes a long time, and is very slow.  Another method is to use a faster
   video mode.  Several of the video modes (e.g. -m 0) are very slow, and not
   recommended.  Other modes, such as -m 2 or the svga modes are generally
   much faster.  Even the VESA modes -m 4, and higher will provide better
   performance.  -m 1 is not recommended because a great deal of the screen
   will be cut off.  You can also override the auto frame rate and specify
   your own frame rate instead by specifying -f [number of frames to skip].
   If you prefer the auto-adjust frame rate, you can also adjust the time
   between frames with the -ft [time in ms per frame] switch.  The defaults
   are 17ms for NTSC games (~59-60Hz), and 20ms for PAL games (50Hz).

Question:
   It's still not fast enough!

Answer:
   If it's still not fast enough, and you've followed all the suggestions
   in the previous question, you can try to specify -h [percentage] to try
   to speed things up.  However, this can cause some games to lose
   control over their own execution and crash.  Other games can actually run
   more slowly.  Another option is the -O flag that turns off the
   line-by-line graphics engine, and can speed up things dramatically.

Question:
   When I play [some game] I can't see my character!  Help!

Answer:
   Snes9X doesn't currently support screen addition/subtraction, so at times,
   the characters in the games may drop down too many layers, and become
   hidden.  You have two options.  You can press 8 to reverse the way the
   layers are drawn, or you can press 1-4 to disable a single BG layer.  This
   will hopefully be corrected in a later release when addition/subtraction is
   fully supported.

Question:
   Where can I find games for Snes9X?

Answer:
   There are freeware snes demos and games available at:

   ftp://ftp.futureone.com/users/damftp/consoles/SNES/
   http://evil.ml.org/~grits

   Do not ask us for commercial games, we do not know where to get them,
   cannot give them to you, and will, most likely, not respond to such
   e-mail.  It it illegal for me to give you games, and is also quite
   annoying.  The less time I have to put up with silly messages, the longer
   I have to work on Snes9X.  Remember that.

Question:
   What is "WindowsFriendly" mode?

Answer:
   That flag in the .ini file tells Snes9X if it should be nice to Windows 95,
   and 3.1 and not reprogram the PIT chip.  In windows 95 you can turn this
   setting off, if you set the program's property's to NOT suggest MS-DOS
   mode.  Why?  When Win95 suggests that, it appears that the timer is
   disabled for the DOS program, and will cause several aspects of Snes9X to
   stop functioning.  If you experience a hang because of this, just press
   Ctrl, Alt, and End together (not ctrl-alt-del), and Snes9X will terminate
   itself.  Then either edit the PIF for the Snes9X.exe, or change the
   WindowsFriendly mode to 1.  Under Windows 3.1, you must enable this option,
   or you may experience crashes.  This option has no effect under MS-DOS.

Question:
   Why are there disabled items within the GUI?  Are you locking me out
   of some of the features?

Answer:
   No, the code behind those items is not finished yet, but I'm too lazy to
   remove it completely before sending out a release version.  It saves me
   time and energy just to disable those items, rather than try to
   temporarily remove the code, and probably break something else that was
   working before.  If I had left the joypad configure buttons active, all
   you'd get to see is the snes controller config screen before being blasted
   back to the options dialog, because I haven't finished that yet.  That's
   also why the options dialog is still empty feeling.  There's several
   options that need to be put there sometime, but it hasn't been done yet.

   On, the other hand, the APU Emulation radio button will disable itself if
   you uncheck it.  The only way to re-enable it is to reset the ROM, or to
   load a new ROM.  Because of the way the APU skippers work, it's impossible
   to re-enable sound after the APU skipper has been used, because the SPC700
   state may be very different from what the game is expecting, and may cause
   the game or Snes9X to crash.
