./emulators/libretro-snes9x, Libretro core based on the snes9x Super Nintendo emulator

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 1.61, Package name: libretro-snes9x-1.61, Maintainer: nia

Libretro is a simple but powerful development interface that allows for
the easy creation of emulators, games and multimedia applications that
can plug straight into any libretro-compatible frontend. This development
interface is open to others so that they can run these pluggable emulator
and game cores also in their own programs or devices.

Snes9x is an emulator for the Super Nintendo Entertainment System / Super
Famicom. This package is derived from the master repository of Snes9x. It
has greater accuracy and worse performance than Snes9x 2005/2010. It has
a less strict approach to accuracy than bsnes and therefore doesn't run
problematic games like bsnes, but has much better performance.

This is the most up-to-date libretro snes9x core available, and is
recommended for netplay.

Required to build:

Master sites:

Filesize: 2946.182 KB

Version history: (Expand)

CVS history: (Expand)

   2022-05-03 19:09:19 by Nia Alarie | Files touched by this commit (11) | Package updated
Log message:
[libretro-]snes9x[-gtk]: update to 1.61

- Restructured tile.cpp tile renderer from heavy macros into C++
  templates, significantly lowering compile time. (yoffy)
- MichaelBuckley provided a brand new MacOS port that is completely
  rewritten based on newer, supported APIs.
- Fixed an out-of-bound memory access in sound DSP. (Sour, byuu)
- Revert default SFX2 clock speed increase.
- Added a render position hack. Fixes glitches in several games.
- Allow an SRAM mapping up to 128KB.

- Added an option to show time. (taimoorgit)
- Use a submodule for glslang, because it doesn't guarantee API stability.
- Switched to GTK's C++ interface, gtkmm3. This effectively drops
  GTK+ 2.0 support.
- Joysticks can now be hotplugged. (jraby)

- Added audio output threading. (yoffy)
- Added screensaver prevention on joystick use. (greg-kennedy)
- Fix YUY2 conversion. (greg-kennedy)
- Add alsa output support. (cjacker)
- Add I420 conversion. (cjacker)
   2021-10-26 12:24:17 by Nia Alarie | Files touched by this commit (266)
Log message:
emulators: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

The following distfiles could not be fetched (mostly distfiles fetched

./emulators/compat30/distinfo compat30-alpha-3.1.tar.bz2
./emulators/compat30/distinfo compat30-arm-3.1.tar.bz2
./emulators/compat30/distinfo compat30-m68k-3.1.tar.bz2
./emulators/compat30/distinfo compat30-mipseb-3.1.tar.bz2
./emulators/compat30/distinfo compat30-mipsel-3.1.tar.bz2
./emulators/compat30/distinfo compat30-powerpc-3.1.tar.bz2
./emulators/compat30/distinfo compat30-sh3eb-3.1.tar.bz2
./emulators/compat30/distinfo compat30-sh3el-3.1.tar.bz2
./emulators/compat30/distinfo compat30-sparc-3.1.tar.bz2
./emulators/compat30/distinfo compat30-sparc64-3.1.tar.bz2
./emulators/compat30/distinfo compat30-vax-3.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-alpha-5.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-arm-5.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-m68k-5.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-mipseb-5.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-mipsel-5.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-powerpc-5.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-sparc-5.1.tar.bz2
./emulators/compat51-x11/distinfo compat51-x11-sparc64-5.1.tar.bz2
./emulators/xbeeb/distinfo BASIC2.rom
./emulators/xbeeb/distinfo OS-1.2.rom
./emulators/compat61/distinfo 20150430/compat61-alpha-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-arm-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-m68k-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-mips64eb-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-mips64el-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-mipseb-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-mipsel-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-powerpc-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-sparc-6.1.tar.bz2
./emulators/compat61/distinfo 20150430/compat61-sparc64-6.1.tar.bz2
./emulators/compat16/distinfo compat16-alpha-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-arm-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-m68k-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-mipseb-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-mipsel-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-powerpc-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-sparc-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-sparc64-1.6.2.tar.bz2
./emulators/compat16/distinfo compat16-vax-1.6.2.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-alpha-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-arm-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-m68k-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-mipseb-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-mipsel-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-powerpc-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-sh3eb-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-sh3el-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-sparc-4.0.tar.bz2
./emulators/compat40/distinfo 20071230/compat40-sparc64-4.0.tar.bz2
./emulators/compat20/distinfo compat20-alpha-2.1.tar.bz2
./emulators/compat20/distinfo compat20-arm-2.1.tar.bz2
./emulators/compat20/distinfo compat20-m68k-2.1.tar.bz2
./emulators/compat20/distinfo compat20-mipseb-2.1.tar.bz2
./emulators/compat20/distinfo compat20-mipsel-2.1.tar.bz2
./emulators/compat20/distinfo compat20-powerpc-2.1.tar.bz2
./emulators/compat20/distinfo compat20-sh3eb-2.1.tar.bz2
./emulators/compat20/distinfo compat20-sh3el-2.1.tar.bz2
./emulators/compat20/distinfo compat20-sparc-2.1.tar.bz2
./emulators/compat20/distinfo compat20-sparc64-2.1.tar.bz2
./emulators/compat20/distinfo compat20-vax-2.1.tar.bz2
./emulators/compat50-x11/distinfo compat50-x11-sparc64-5.0.tar.bz2
./emulators/compat12/distinfo compat12-m68k-1.2.1.tar.bz2
./emulators/compat12/distinfo compat12-ns32k-1.2.tar.bz2
./emulators/compat12/distinfo compat12-sparc-1.2.1.tar.bz2
./emulators/compat15/distinfo compat15-alpha-1.5.3.tar.bz2
./emulators/compat15/distinfo compat15-arm-1.5.3.tar.bz2
./emulators/compat15/distinfo compat15-m68k-1.5.3.tar.bz2
./emulators/compat15/distinfo compat15-mipsel-1.5.3.tar.bz2
./emulators/compat15/distinfo compat15-ns32k-1.5.3.tar.bz2
./emulators/compat15/distinfo compat15-powerpc-1.5.3.tar.bz2
./emulators/compat15/distinfo compat15-sparc-1.5.3.tar.bz2
./emulators/compat15/distinfo compat15-sparc64-1.5.2.tar.bz2
./emulators/compat15/distinfo compat15-vax-1.5.3.tar.bz2
./emulators/compat50/distinfo compat50-alpha-5.0.tar.bz2
./emulators/compat50/distinfo compat50-arm-5.0.tar.bz2
./emulators/compat50/distinfo compat50-m68k-5.0.tar.bz2
./emulators/compat50/distinfo compat50-mipseb-5.0.tar.bz2
./emulators/compat50/distinfo compat50-mipsel-5.0.tar.bz2
./emulators/compat50/distinfo compat50-powerpc-5.0.tar.bz2
./emulators/compat50/distinfo compat50-sparc-5.0.tar.bz2
./emulators/compat50/distinfo compat50-sparc64-5.0.tar.bz2
./emulators/compat16-extras/distinfo compat16-extras-sparc-1.6.2.tar.bz2
./emulators/compat40-extras/distinfo 20071230/compat40-extras-sparc-4.0.tar.bz2
./emulators/compat15-extras/distinfo compat15-extras-sparc-1.5.3.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-alpha-6.0.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-arm-6.0.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-m68k-6.0.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-mipseb-6.0.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-mipsel-6.0.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-powerpc-6.0.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-sparc-6.0.tar.bz2
./emulators/compat60/distinfo 20150428/compat60-sparc64-6.0.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-alpha-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-arm-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-m68k-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-mips64eb-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-mips64el-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-mipseb-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-mipsel-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-powerpc-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-sparc-6.1.tar.bz2
./emulators/compat61-x11/distinfo 20150430/compat61-x11-sparc64-6.1.tar.bz2
./emulators/osf1_lib/distinfo netscape-4.7-3.alpha.rpm
./emulators/compat20-extras/distinfo compat20-extras-sparc-2.1.tar.bz2
./emulators/compat30-extras/distinfo compat30-extras-sparc-3.1.tar.bz2
./emulators/compat30-extras/distinfo compat30-extras-vax-3.1.tar.bz2
./emulators/compat14/distinfo compat14-alpha-1.4.3.tar.bz2
./emulators/compat14/distinfo compat14-arm-1.4.3.tar.bz2
./emulators/compat14/distinfo compat14-m68k-1.4.3.tar.bz2
./emulators/compat14/distinfo compat14-mipsel-1.4.3.tar.bz2
./emulators/compat14/distinfo compat14-ns32k-1.4.2.tar.bz2
./emulators/compat14/distinfo compat14-powerpc-1.4.3.tar.bz2
./emulators/compat14/distinfo compat14-sparc-
./emulators/compat14/distinfo compat14-vax-1.4.3.tar.bz2
./emulators/compat51/distinfo compat51-alpha-5.1.tar.bz2
./emulators/compat51/distinfo compat51-arm-5.1.tar.bz2
./emulators/compat51/distinfo compat51-m68k-5.1.tar.bz2
./emulators/compat51/distinfo compat51-mipseb-5.1.tar.bz2
./emulators/compat51/distinfo compat51-mipsel-5.1.tar.bz2
./emulators/compat51/distinfo compat51-powerpc-5.1.tar.bz2
./emulators/compat51/distinfo compat51-sparc-5.1.tar.bz2
./emulators/compat51/distinfo compat51-sparc64-5.1.tar.bz2
./emulators/compat13/distinfo compat13-alpha-1.3.3.tar.bz2
./emulators/compat13/distinfo compat13-arm-1.3.2.tar.bz2
./emulators/compat13/distinfo compat13-m68k-1.3.3.tar.bz2
./emulators/compat13/distinfo compat13-mipsel-1.3.3.tar.bz2
./emulators/compat13/distinfo compat13-ns32k-1.3.3.tar.bz2
./emulators/compat13/distinfo compat13-sparc-1.3.3.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-alpha-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-arm-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-armeb-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-armv6hf-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-armv7hf-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-earm-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-earmv7hfeb-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-m68k-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-mips64eb-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-mips64el-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-mipseb-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-mipsel-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-powerpc-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-sh3eb-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-sh3el-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-sparc-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-sparc64-8.0.tar.bz2
./emulators/compat80/distinfo 20191014/compat80-vax-8.0.tar.bz2
   2021-10-07 15:49:53 by Nia Alarie | Files touched by this commit (289)
Log message:
emulators: Remove SHA1 hashes for distfiles
   2020-05-30 17:20:12 by Nia Alarie | Files touched by this commit (1)
Log message:
libretro-snes9x: convert to core.mk
   2020-05-26 11:45:17 by Nia Alarie | Files touched by this commit (84)
Log message:
libretro-*: Support Darwin by cargo-culting SOEXT. Remove bsdtar hack.
   2019-04-25 15:06:59 by Nia Alarie | Files touched by this commit (5) | Package updated
Log message:
emulators/snes9x: Update to 1.60

Changes since 1.59.2:

- Fixed subscreen blending with master brightness < 100%.
- Fixed NMI timing when toggling enable bit. Fixes Chou Aniki--hack removed.
- Reverted an IPL map optimization that misses a weird edge case that caused
  The Great Battle III to lock up.
- Clamp MSU1 addition to max amplitude instead of wrapping. Proper MSU1 tracks
  will not be affected by this.
- Save mipmap_input parameter with customized GLSL and slang shaders.
- Actually use mipmap_input parameter.
- Optimized subscreen math with help from Dwedit.
- Revert to measured APU clock speed instead of nominal speed. Fixes An
  American Tail.
- Fixed broken BPS patch support. (ArtiiP)
- Fixed MSU1 track restarting on load state.

- Added ability to use Satellaview data in same directory as ROM.
- Fixed deviation from proper libretro spec.
- Added option to use the software NTSC filter. (stellarporter)

- Added icons to the entries to clear binding assignments.
- Fixed overlap in xBRZ multithreading.
- Changed glFenceSync option to an OML_sync option that works better.
- Fixed accumulation of partial pixel data on mouse motion when we update the
  mouse position more than once per frame.
- Allow one key to be bound to many controller buttons on the same controller.
- Force menu and button icons.
- Add the view menu to right-click when SNES mouse isn't used.
- Remove unused status bar option.
- Startup background can be changed in snes9x.conf.
- Improved PortAudio driver.

- Fixed sound output that broke with APU refactor.
   2019-03-05 13:12:32 by Nia Alarie | Files touched by this commit (9)
Log message:
snes9x: Update to 1.59.2


- Count clock cycles to synchronize SA1 with S-CPU properly. Based mostly on
  work by Vitor Vilela.
- Only allow instant IRQ when toggling IRQ. Fixes WWF - Wrestlemania.
- Refactored APU output code to buffer less on the client side. Removed 8-bit,
  Mono, and Reverse Stereo options.
- Consistently handle interlacing when we skip frames.
- Changed APU clock to reflect nominal values for original hardware.
- Fix C4 square instruction regression.

- Fix multiline cheats.

- Switch from autotools to Meson build system.
- Readd glFinish option as alternative to glFenceSync.
- Fix size fallthrough with xBRZ filter.
- Fix loading of key bindings with spaces in them and modifier keys used alone.
- Add support for libretro ".slang" shaders to OpenGL driver.
- Use a cleaner onscreen font.
- Trap errors to allow OpenGL <= 2.1 to run again.
- Break display settings up to make it easier to access hardware accel section.
   2019-01-01 23:16:15 by Nia Alarie | Files touched by this commit (36) | Package updated
Log message:
emulators/snes9x[-gtk]: update to 1.58.

also, rework gtk libretro-snes9x to use emulators/snes9x/Makefile.common

take maintainership since i was basically maintaining the libretro package
which was already the most up to date version in pkgsrc and now everything
uses Makefile.common.


Snes9x 1.58
- Move the LICENSE file to the base directory and use a stub
  in all the source files referring to it.
- Adjust Chou Aniki timing hack.
- Use 1-based numbering when displaying pressed keys.
- Hide controller port if disabled when displaying keys.
- Fix movie playback. (OV2, BearOso)

- Fix interlaced modes when overscan crop is enabled.
- Allow overriding -flto. (orbea)

- Use shared snes_ntsc implementation.
- Remove extra LGPL licensing to avoid confusion.
- Don't translate config file entries. Fixes breakage on
  non-C languages.
- Fix issue where config file doesn't contain all configurable
- Remove config options for Netplay, Joystick, and JMA. SDL 2.0
  is now mandatory.
- Updated gettext and removed intltool. update-po should now catch
  all translatable strings.
- If available, reduce input lag option will now use fences instead
  of glFinish to prevent hogging the CPU.
- Onscreen text can be variable width and will show up in some more
  cases now.

- Add audio device selection (XAudio2 only)

Snes9x 1.57
- Various seta010 emulation fixes.                          (kps501)
- Pass blargg OAM tests with proper write behavior.         (BearOso)
- Prevent interlacing in BG modes 1-4.                      (BearOso)
- Corrected IRQ and NMI emulation to allow more games to
  work properly.                                            (BearOso, OV2)
- Use 1 instead of 0 for initial PPU left window coordinate,
  fixing garbage in left column of pixels in some games.    (turhope)
- Added interpolation option hack for DSP.                  (kps501, mudlord,
- Added sprite-tile limit disabling hack.                   (Tatsuya79)
- Added libretro's fast snapshot support.                   (OV2)
- Add overclocking hack that increases IPC                  (retrotalker)
- Fix controller initialization issues preventing some games
  from using multitap.                                      (retrotalker)
- Proper write behavior for register $2122.                 (BearOso)
- Fix transparency issue with Star Fox asteroids.           (redguy, BearOso)
- Increase SuperFX speed to more accurately represent
  hardware, and fix bugs with Stunt Race FX and Yoshi's
  Island.                                                   (BearOso)
- Resize viewport on state load.                            (retrotalker)
- Many fixes to variables not saved or saved incorrectly in
  save states.                                              (Dwedit)
- Pass decimal tests in blargg's math test ROMs.            (BearOso)
- Remove memory leak in loadzip.cpp.                        (bonimy)
- Fix screen size not reverting when overscan is turned on
  then off mid-frame.                                       (BearOso)

- Include DirectDraw libraries and compile with DirectDraw
  support by default.                                       (OV2)
- Add a link to DirectX installer in error message displayed
  when the needed DirectX libraries can't be found.         (OV2)
- Save window position when exiting via menu                (OV2)
- Make custom ROM dialog resizable.                         (OV2)
- Fix various cheat dialog issues.                          (OV2)
- Remove d3d9x DLL dependency by using DirectXMath.         (OV2)
- Remove rarely-used HLSL shader option.                    (OV2)
- Add InitialSnapshotFilename support.                      (BearOso)
- Disable BG toggle keys by default.                        (BearOso)
- Proper centering and cropping for overscanned and
  regular height modes.                                     (OV2)
- Remove ability to disable the SNES's hires modes.         (OV2)
- Added a Super Famicom-style icon resource to the EXE.     (BearOso)

- Partial support for new cheats format.                    (OV2)
- Fix MacOS build.                                          (marconett)
- Set default for new config options.                       (tmkk)
- Fix compilation on Mac OS Mojave                          (meepingsnesroms)

- Massive update of libretro code to latest downstream.      (fr500, kps501,
                                                             OV2, twinaphex,
                                                             m4xw, kxyxz,

- Use datarootdir instead of datadir on install.            (orbea)
- Fix --with-system-zip configure flag.                     (BearOso)
- Draw interlaced fields when ready.                        (BearOso)
- Initial Wayland support.                                  (remicalixte)
- Allow XV only in X11.                                     (BearOso)
- Add Wayland support via EGL.                              (BearOso)
- Significant rewrite of OpenGL driver to support newer
  standards. This won't work on cards < OpenGL ~1.5.        (BearOso)
- Changed frameskip option to speed throttling option with
  simpler, but more relevant methods of speed control.      (BearOso)
- Add support for relative-style save slots.                (ichigo-0, BearOso)
- Remove XML config file format in favor of one more like
  Win32. Make joystick bindings and more options human-
  readable and editable.                                    (BearOso)
- Try more device nodes when initializing OSS.              (BearOso)

Snes9x 1.56.2
- Fixed IRQ corner case that caused Umihara Kawase's water
  to cover the whole screen.                                (BearOso)
- Adjusted IRQ timing slightly. Fixes Dragon Ball Z - Super
  Butouden 2.                                               (BearOso)
- Clear WAI when IRQLine is active. Fixes Top Gear 3000.    (BearOso)
- Fix reading the wrong tile data in mosaic drawing. Gets
  rid of glitch at top of FF6 battle transitions.           (BearOso)
- Break a specific opcode into cycles. Fixes Little Magic.  (BearOso)
- Win32: Don't mix garbage into the last line with NTSC
  filter.                                                   (OV2)
- Win32: Allow disabling scanlines in NTSC filter.          (BearOso)
- GTK+: Added an undo load state option.                    (BearOso)
- GTK+: Fixed compilation on big-endian systems.            (OV2)
- Win32, GTK+: Added integer scaling option.                (BearOso)
- GTK+, Unix: Preserve current joypad state when rewinding. (BearOso)

Snes9x 1.56.1
- Automatic input rate now only works for close multiples   (BearOso)
  of 60Hz.
- Win32: Cheats are now shown in the correct order in the   (BearOso)
  list view.
- GTK+: Check for version greater than 3.22 when using GTK+ (BearOso)
- GTK+: Don't resize code and description field in GTK+ 2.  (BearOso)

Snes9x 1.56
- Increased the speed of SA1 emulation to match hardware    (BearOso)
  more closely.
- Fixed negative SA1 division                               (BearOso, Jonas Quinn)
- Changed the location where we poll input to potentially   (Brunnis, BearOso)
  reduce lag.
- Fixed the interlace fields being swapped after skipping   (BearOso)
- More updates for BS-X support.                            (LuigiBlood)
- Updated xBRZ to version 1.6.                              (zenju, OV2)
- Added a DMA timing hack for rpgone's Koryu no Mimi        (OV2)
- Updated HDMA to not update indirect addresses until after (BearOso)
  transfers are completed.
- Improved cheats support. This stores cheats in a human-   (BearOso, OV2)
  readable and editable format as gamename.cht. Cheats are
  converted from the old format on load. They can be added
  in many different formats, but they will convert to the
  simple address=condition?byte format.
  Also, now included is mightymo's cheat database, and the
  ability to match a game and automatically load cheats
  from it.
- Don't reset a pending NMI on vblank end. Fixes Super      (furrykef)
- Redo NMI timing. Fixes Secret of Evermore (PAL).          (BearOso)
- Test for transparency before dithering on SuperFX. This   (RedGuy(yyy))
  fixes some graphical artifacts in Star Fox.
- Change some of the SDD1 guesswork mapping. Fixes a Tales  (BearOso)
  of Phantasia hack.
- Return PPU1 MDR for reads of $2137 instead of CPU MDR.    (BearOso)
  Fixes Mario's Time Machine graphical glitch.
- Memset less memory for sprite calculations.               (Nebuleon)
- Don't spuriously update register 14 when running SuperFX. (BearOso)
  Fixes graphical glitches in Doom.
- Added a SuperFX clock modifier variable.                  (BearOso)
- Write CPU MDR during some DMA and HDMA transfers. Fixes   (BearOso)
  Speedy Gonzales and Funaki Masakatsu Hybrid Wrestler.
- Calculate next IRQ time in advance instead of continously (BearOso, OV2)
  checking for it.
- Added some IRQ timing quirks. Fixes at least Marko's      (BearOso, OV2)
  Magic Football.
- Fixed wrong tile selection in offset-per-tile mode.       (BearOso)
- Advance the VRAM pointer even if VRAM writes at the time  (kps501)
  are invalid.
- Return 0x80 instead of 0xff in DSP1 simulation. Fixes     (kps501)
  Powerfest '94 Mario Kart.
- Initialize controllers on reset. Fixes Looney Tunes       (kps501)
  B-Ball multitap.
- Attached APU instruction tracer and made some additions   (BearOso)
  to debugging output.
- Fix line doubling in interlaced mode.                     (kps501)
- Added support for M.A.C.S. rifle peripheral.              (kps501)
- Fixed a bug where the MSU1 channels were reversed.        (qwertymodo)
- Win32: Added dynamic rate control support for XAudio2     (OV2)
- Win32: Added different volume level configuration for     (OV2)
  regular and turbo speed.
- Win32: Added option to disable EPX scaling for messages   (OV2)
- Win32: Improve multi-rom loading.                         (OV2)
- Win32: Add libpng and zlib dependencies as submodules for (qwertymodo, OV2)
  easier compiling from source.
- Win32: Fixed icon registration.                           (OV2)
- Win32: Better support for running while unfocused.        (OV2)
- Win32: Changed icon.                                      (BearOso)
- Win32: Report hidpi support.                              (BearOso)
- Win32: Added mute hotkey and hotkeys for saving/loading   (OV2)
  from file.
- Win32: Disabled hotplugging in favor of a menu option to  (OV2)
  reconfigure joysticks.
- Win32: Added a reduce input lag option.                   (BearOso)
- Win32: Added ability to use GLSLP shaders with OpenGL,    (OV2)
  including a dialog to tweak custom parameters.
- GTK+: Added dynamic rate control support for audio to     (BearOso)
  reduce buffer overflows and underflows.
- GTK+: Increased SDL requirement to version 2.0. This      (BearOso)
  improves joystick compatibility.
- GTK+: Improved GTK+ 3.0 support and made it the default.  (BearOso)
- GTK+: Added ability to start from a snapshot on the       (julien2512)
  command line.
- GTK+: Added automatic input rate handling.                (BearOso)
- GTK+: Use 16-bit 5-6-5 pixel format for better colors.    (BearOso)
- GTK+: Now disables the compositor in fullscreen mode.     (BearOso)
- GTK+: Changed icon.                                       (BearOso)
- GTK+: Require libepoxy for OpenGL support.                (BearOso)
- GTK+: Add full compatibility with GLSLP shaders, with a   (BearOso)
  parameters dialog to configure them.
- Unix: Add xinerama support and window position hints.     (Francesco149)

Snes9x 1.55
- Added support for the MSU-1 coprocessor.                  (qwertymodo)
- Added support for MSU-1 distribution pack.                (qwertymodo)
- Added support for BS-X Satellaview memory packs and data  (LuigiBlood)
- Improved BS-X memory mapping accuracy.                    (LuigiBlood)
- Fixed APU error causing issues with some games.           (byuu, qwertymodo)
- Added option to ignore patch checksums.                   (qwertymodo)
- Fixed build warnings / undefined behavior.                (bonimy)
- Correct pixel placement in hires.                         (BearOso, OV2)
- Fixed RAM mapping for Light Fantasy.                      (hex_usr, BearOso)
- Added Circuit USA APU timing hack.                        (BearOso)
- libretro: Merged some changes from downstream repository. (OV2)
- GTK+: Allow use of XDG config directory.                  (BearOso)
- GTK+: Add 10th save slot.                                 (YamashitaRen)
- GTK+: Updated Spanish translation.                        (jristz)
- Win32: Switched to Studio 2017.                           (OV2)
- Win32: Fixed problems when minimized in d3d.              (OV2)
- Win32: Split Patch/Rom directory.                         (OV2)
- Win32: Simplified compilation by removing or including
  some dependencies (included CG headers, completely
  removed FMOD and FMOD_EX, moved direct draw to compile
  switch) and reworking solution/configurations.            (bonimy, OV2)
- Win32: Fixed crash with movie dialog                      (OV2)
- Win32: Changed hotplugging                                (OV2)

Snes9x 1.54.1
- GTK+: Properly use --std=c++11 when compiling xBRZ.       (BearOso)
- Win32: Save window position when toggling fullscreen.     (OV2)
- Win32: Do not assign down-left binding to down-right.     (OV2)

Snes9x 1.54
- Changed the S-SMP core module to one written by byuu.     (byuu, BearOso)
  This has the effect of increased accuracy, fewer
  speed hacks, but also regresses a few speed-hack games.
- Improved IRQ emulation in several cases.                  (OV2)
- Added rewind support.                                     (Themaister, OV2)
- Included libretro port.                                   (OV2, libretro team)
- Added bps soft-patching support                           (OV2)
- Fixed MMC bank register bit 7, restored 64mbit ExLoRom
  map                                                       (FuSoYa)
- GTK+, Windows: Added xBRZ filter                          (Zenju, OV2, nmagre)
- GTK+: Fixed several issues with GTK+3.                    (BearOso)
- GTK+: Added extra aspect ratio options.                   (BearOso)
- GTK+: Added option to mute sound when using turbo mode.   (BearOso)
- GTK+: Fixed expose handling to reduce overdraw and        (BearOso)
  improve performance.
- GTK+: Updated and universalized Spanish translation.      (jristz)
- Unix: Added Xv support and fixed several bugs.            (greg-kennedy)
- Win32: Added CG meta shader support                       (OV2, Themaister)
- Win32: Added support to detect joypad changes             (OV2)
- Win32: Fixed unicode command line parameters,
  Fixed controller command line parameters                  (OV2)
- Win32: Added quit hotkey                                  (OV2)
- Win32: Fixed custom rom dialog                            (OV2)
- Win32: Fixed various cheat dialog issues                  (gocha, OV2)
- Win32: Added hotkey for fast forward toggling             (gocha)
- Win32: Added drag and drop support for movies             (gocha)
- Win32: Fixed blargg filter for regular width hires        (OV2)
- Win32: Fixed snapshot loading from unicode paths          (OV2)
- Win32: Changed open-with file-association method, should
  no longer change explorer icons for otherwise
  unassociated extensions; removed legacy extensions        (OV2)

Snes9x 1.53

- Rebuilt IRQ handling.                                     (zones)
- Improved overall timings, now Snes9x can handle events in
  a opcode a little.                                        (zones)
- Improved screen interlace and sprite interlace supports.  (OV2, zones)
- Fixed Hi-Res pixel plotter.                               (BearOso, zones, OV2)
- Fixed C4 for Mega Man X2's "weapon get" screen.           (Jonas Quinn)
- Fixed Super Buster Bros. graphics after reset.            (Jonas Quinn)
- Improved SA-1 support.                                    (zones)
- Added SA-1 CC2 support.                                   (Jonas Quinn, byuu)
- Fixed SA-1 NMI override mode.                             (zones)
- Fixed Dual Orb 2 sound glitch.                            (byuu)
- New APU timing hack, fixes various games that exhibit
  problems with Blargg's SNES_SPC library.                  (OV2)
- Fixed the problem that echo buffer breaks IPL ROM.        (zones, OV2)
- Fixed movie snapshot unfreeze inconsistency.              (gocha)
- Faster config file saving.                                (OV2)
- Fixed BlockInvalidVRAMAccess config file option.
  (windows port, unix port and gtk legacy config)           (Jonas Quinn)
- Remove POSIX dup and access calls, and rename qword to
  fix compilation with Cell SDK.                            (BearOso)
- Fixed PS3 version save state crash by using heap
  allocation for soundsnapshot.                             (danieldematteis)
- Fixed crash relating to double-closed descriptor.         (BearOso)
- Removed CPUShutdown speedhack, DisableHDMA and
  DisableIRQ options.                                       (zones)
- Removed remaining outdated asm code.                      (zones)
- JMA 64 bit support.                                       (kode54, Nach, \ 
- GTK+, Win32, Mac: Added optional Hi-Res blending.         (BearOso, OV2, zones)
- GTK+, Win32: Support for bsnes-style XML shaders.         (BearOso, OV2)
- Win32: Full unicode support.                              (OV2)
- Win32: Restored OpenGL mode.                              (OV2)
- Win32: x64 version.                                       (OV2)
- Win32: HLSL shader support.                               (mudlord)
- Win32: Win7 jumplist synchronizes with recent roms list.  (OV2)
- Win32: Updated menu structure.                            (OV2)
- Win32: Drag&Drop support for ROMs.                        (gocha, OV2)
- Win32: Reworked movie-recording with size selection.      (gocha, OV2)
- Win32: Restored SPC save option.                          (OV2)
- Win32: Fixed vsync in DirectDraw.                         (OV2)
- Win32: Improved window position saving.                   (OV2)
- Win32: Restored compile with DEBUGGER.                    (gocha)
- Win32: Fixed various edge-case errors and/or possible
  leaks.                                                    (Brian Friesen)
- Win32: Config file option to always center image.         (OV2)
- Win32: Fixed "Turbo Down mode" hotkey assignment.         (gocha)
- Win32: Added and fixed Autofire for D-pad.                (gocha)
- Win32: Fixed aggressive soundsync wait.                   (OV2)
- Win32: Added window size presets.                         (OV2)
- Mac  : Added pause and frame advance functions.           (zones)
- Mac  : Now you can choose any folder for saving files.    (zones)
- Mac  : Updated Music Box (mostly internally).             (zones)
- Mac  : Fixed gliches in open/save dialogs on 10.6.        (zones)
- Mac  : Fixed display configuration in windowed mode.      (zones)
- Unix : Fixed segfault and hang-up with -DNOSOUND.         (zones)
- GTK+ : Added ability to set specific folders for SRAM,
  patches, snapshots, etc.                                  (BearOso)
- GTK+ : Fixed many permissions issues with config folders. (BearOso)
- GTK+ : Updated compatibility with latest GTK+ and
  GtkBuilder. Added experimental support for GTK+ 3.x.      (BearOso)
- GTK+ : Updated software output to use cairo and added the
  ability to use bilinear-filtering with it.                (BearOso)
- GTK+ : Fixed issues where cheats wouldn't stay enabled.   (BearOso)
- GTK+ : Fixed focus issue when there is no window manager. (BearOso)
- GTK+ : Fixed X Visual incompatibilities and expose
  problems in the Xv and OpenGL outputs.                    (BearOso)
- GTK+ : Fixed vsync with new X Server and NVIDIA drivers.  (BearOso)
- GTK+ : Added "Reduce input lag" option to OpenGL output.  (BearOso)
- GTK+ : Added a visual indication of the expected video
  refresh rate for the currently selected sound input rate. (BearOso)

Snes9x 1.52
- IMPORTANT NOTICE: The structure of savestates (also known
  as snapshots / freeze files) is incompatible with older
  versions! Snes9x 1.52 cannot read the savestates created
  by 1.51 or older.                                         (zones)
- Highly acculate SPC700 and S-DSP emulation.               (Blargg)
- Replaced APU emulation cores (SPC700 and S-DSP) with
  ones provided by Blargg's SNES_SPC library. This renders
  savestates incompatible with older versions.              (BearOso, zones)
- SPC7110 emulation.                                        (byuu, neviksti)
- Merged bsnes' SPC7110 emulation code. Note that the .rtc
  file of Far East of Eden Zero is incompatible with older
  versions.                                                 (zones)
- Removed graphics pack support. It's no more necessary.    (zones)
- Replaced S-RTC emulation code with bsnes' one to keep the
  good compatibility of .rtc files between the two
  emulators. As a result, Daikaijuu Monogatari 2 now
  outputs the .rtc file, and its .srm file is incompatible
  with older versions.                                      (zones)
- Added savestate supports for DSP-2, DSP-4, ST-010 and
  OBC1.                                                     (zones)
- Added UPS support.                                        (byuu)
- Fixed DSP-4 AI problem.                                   (Jonas Quinn)
- Fixed invalid memory accesses in C4 and OBC1 codes.       (zones)
- Fixed invalid memory accesses in BSX codes. My mistake.   (zones)
- Fixed the read value of $213e, $4210 and $4211.           (zones)
- Fixed the writing of word values at the memory boundary.  (zones)
- Fixed the bug that the unnecessary SA-1 emulation
  continues once any SA-1 games are launched.               (zones)
- Removed old color blending codes.                         (zones)
- Removed too-old Snes96 and ZSNES snapshot support.        (zones)
- Updated command-line options.                             (zones)
- Code cleaning.                                            (zones)
- GTK+ : Added a port of Snes9x to the GTK+ toolkit.        (BearOso)
- Unix : Reconstructed and simplified all the contents.
  Some features have been removed to be simple, and many
  options have changed. GTK+ port is recommended for most
  of Linux users.                                           (zones)
- Win32: Now uses snes9x.conf to prevent problems with
  modified meaning of settings.                             (OV2)
- Win32: Removed broken OpenGL mode.                        (OV2)
- Win32: Removed support for 8bit output.                   (OV2)
- Win32: Reworked settings dialogues to accomodate the
  new APU core and display settings.                        (OV2)
- Win32: Updated defaults to use D3D and XA2 (better
  Vista and Win7 support).                                  (OV2)
- Win32: Direct3D and XAudio2 support.                      (OV2)
- Win32: Added Blargg's ntsc filter (three presets).        (OV2)
- Mac  : Fixed corrupted screenshot on Intel Mac.           (zones)
- Mac  : Fixed sudden abort in QuickTime movie export on
  Intel Mac.                                                (zones)
- Mac  : Changed sound settings for the new APU core.       (zones)
- Mac  : Changed the default folder which Snes9x looks for
  to 'Application Support' folder.                          (zones)
- Mac  : Changed folder names: 'IPSs' -> 'Patches',
  'BIOSs' -> 'BIOSes'.                                      (zones)
- Mac  : Added Blargg's ntsc filter.                        (zones)
- Mac  : Internal changes for Leopard and Snow Leopard.     (zones)

Snes9x 1.51
- Added DSP1 and SuperFX savestate support.                 (nitsuja)
- Added screen state GFX to save states. (optional)         (nitsuja)
- Fixed desync when loading inconsistent state in playback. (nitsuja)
- When playback reaches a movie's end, recording continues
  instead of the movie suddenly closing. (after recording)  (nitsuja)
- can now record resets and mouse/superscope/justifier(s)   (nitsuja)
- Added same-line-comment support for config files.         (nitsuja)
- input display for all controllers (including peripherals) (nitsuja)
- Win32: Now uses .cfg file instead of Windows registry.    (nitsuja)
- Win32: open ROM dialog bugfixes and speedup and facelift  (nitsuja)
- Win32: option to use standard file open dialog for ROMs   (nitsuja)
- Win32: maintain aspect ratio and bilinear filter stretch  (nitsuja)
- Win32: optional removal of the dreaded "black bar"        (nitsuja)
- Win32: Added EPX,EPX2,EPX3,HQ2X,HQ3X,TV3X,DM3X filters.   (nitsuja)
- Win32: Added hires support for Interlace and TV Mode.     (nitsuja)
- Win32: text removed from .avi output (optional)           (nitsuja)
- Win32: better directory management, customizeable         (nitsuja)
- Win32: Screenshot support is back.                        (nitsuja)
- Win32: Netplay is back (but still not very good).         (nitsuja)
- Win32: Made OpenGL Bi-linear an advanced .cfg option.     (nitsuja)
- Win32: cheat search improvements (address, watch, SuperFX)(nitsuja)
- Win32: Added non-modal ("active") cheat search option.    (nitsuja)
- Win32: new hotkey-config dialog and configurable hotkeys  (nitsuja)
- Win32: Fixed joystick config in input dialog.             (nitsuja)
- Win32: Fixed hires and extended height .avi output.       (nitsuja)
- Win32: various small GUI improvements                     (nitsuja)
- Win32: Netplay fixes.                                     (nitsuja)
- "Fake Mute" desync workaround option for movies, until
  all ports have deterministic sound.                       (Bisqwit, nitsuja)
- Fix for save state blocks > 999999 bytes.                 (Bisqwit)
- C4 games now save C4 data in save states.                 (DeHackEd)
- Unix: Framework for high-speed seeking. Specify a frame
  number in a movie, and the emulator will run at
  maximum speed to that frame. Untested.                    (DeHackEd)
- X11: Support for window exposure. When a window is
  damaged due to overlay, being iconified, etc. it will
  be repainted correctly.                                   (DeHackEd)
- Unix: parameter: -autodemo <filename> loads a movie for
  playback on startup. Only the x11 code handles this
  right now.                                                (DeHackEd)
- Unix: parameter: -oldturbo,  the turbo button renders all
  frames when fast-forwarding.                              (DeHackEd)
- Unix: parameter: -upanddown, override U+D and
  L+R protection.                                           (DeHackEd)
- Unix: parameter: -mute, currently linux only, blocks out
  audio output from your speakers while still emulating
  sound. Not fully tested.                                  (DeHackEd)
- Unix: parameter: -maxframes <target> during movie
  playback, snes9x will exit when the target is hit.        (DeHackEd)
- Unix: parameter: -keypress shows to stderr and on-screen
  the currently pressed buttons on joypad 1.                (DeHackEd)
- Unix: Stream dumping (NOT COMPLETE). With -dumpstreams,
  raw video and raw audio are dumped to videostream%d.dat
  and audiostream%d.dat, where %d increments on each CPU
  reset, starting at zero.                                  (DeHackEd)
- Unix: Non-blocking sound on Linux. It makes seeking nicer.(DeHackEd)
- Unix: Configurable sound device.                          (pierredavidbelanger)
- configure.in now requires a sufficiently new version of
  autoconf.                                                 (anomie)
- Fixed slow versions of branch opcodes.                    (anomie)
- Fixed the mosaic offset bug.                              (anomie)
- No sorting by priority in C4 command 00 00. MegaMan X2
  can go behind the legs of the intro stage boss.           (anomie)
- New RTO discovery, fixes Super Conflict: The Mideast
  title screen.                                             (anomie, byuu)
- A 1->0 transition on $2100.7 causes OAM Address Reset.    (anomie, byuu)
- The final HDMA Indirect Address load is only weird
  on the last channel of the scanline.
  Touge Densetsu Saisoku Battle problem solved.             (anomie, byuu)
- Fixed BGnVOFS bug. Only HOFS needs ~&7 update.            (byuu)
- Fixed superfluous VIRQ triggers.                          (zones)
- Fixed missing IRQ trigger just after the previous one.    (zones)
- Fixed missing IRQ while writing to $4200.                 (zones)
- Fixed IRQ timing after WRAM refresh.                      (zones)
- Fixed NMA timing after DMA transfer.                      (zones)
- Fixed superfluous auto-joypad-reading.                    (zones)
- Fixed missing WRAM refresh during DMA transfer.           (zones)
- Fixed DMA so that HDMA and any HC triggered events can
  run during DMA transfer.                                  (zones)
- Roughly fixed the case that HDMA and DMA use the same
  channel at the same time. HDMA kills DMA. Thanks byuu.    (zones)
- Changed initial DMA registers values.                     (zones)
- Slightly modified APU execute timings.                    (zones)
- Fixed APU I/O registers to get/set the proper value.      (zones)
- Blocked invalid VRAM writings, though you can turn off
  this option due to Snes9x's inaccurate timings.           (zones)
- Omitted SPCTOOL, no one uses it.                          (zones)
- Added Sufami Turbo support.                               (zones)
- Added Same Game add-on cart support.                      (zones)
- Fixed HiROM SRAM and DSP1-4 memory maps a little.         (zones)
- Improved mirroring.                                       (Nach, grinvader, byuu)
- CRC32 on BS dumps now follows uCONSRT standard.           (Nach)
- BS dumps now always run in NTSC mode.                     (Nach)
- Unknown regions (generally betas) default to NTSC.        (Nach)
- Now support NSRT headers for setting up controllers.      (Nach, nitsuja)
- Unix: Fixed command line help output.                     (Nach)
- Unix: Sound now defaults to 32KHz, Stereo, Interpolation
  so Snes9x finally sounds like a real SNES by default.     (Nach)
- Win32: Saner defaults for movie record.                   (Nach)
- Unix: Fixed crashing with mouse or super scope.           (Nach)
- Removed some weird code which was crashing Korean
  League and its varients.                                  (Nach)
- Win32: Can now compile with MinGW.                        (Jonas Quinn, Nach)
- Win32: Can now cross compile Snes9xw.                     (Nach)
- Unix: SSnes9x compiles again.                             (Nach)
- Win32: ZSNES C4 and SuperFX compiles once again.          (Jonas Quinn)
- Unix: Netplay Fixes.                                      (Nach)
- Unix: Netplay Improvements.                               (Fabianx)

Snes9x 1.5
- Pseudo-hires rendering flush, Old 2xsai endian fix        (anomie)
- Added 'oops' auto-snapshot support                        (anomie)
- Fixed usage messages (Unix)                               (anomie)
- Old split-ROM-in-zip bugfix                               (anomie)
- ./configure fix for detecting libpng                      (anomie)
- Fix "no PNG support" error message                        (anomie)
- Anomie's control remapping patch                          (anomie)
- Support for IPS patches in the zip file                   (anomie)
- OBC1 savestate fix                                        (Overload)
- Fix turbo frameskip, X11 keyboard auto-repeat, VRAM reads (anomie)
- Add some missing ifdefs (UNZIP_SUPPORT and ZLIB),
  from AaronOneal                                           (anomie)
- Config file for Unix/X11 and Unix/SVGA                    (anomie)
- CPU instruction fixes (mostly emulation mode & timing)    (anomie)
- Mode 7 fixes                                              (anomie)
- Rewrote the renderer. Enjoy!                              (anomie)
- Correct-ish memmap boundary testing.                      (anomie)
- Add support for saner directory structures under Unix     (anomie)
- Unix: Fixed detection of newer libpng (spotted by vapier) (PBortas)
- Added 4-point gaussian interpolation and proper envelopes
  many thanks to Brad Martin and TRAC.                      (zones)
- Fixed several sound problems.                             (zones)
- Fixed the memory access problem in C++ Super FX core.     (zones)
- Speed adjustment of C++ Super FX emulation.               (zones)
- Various timing fixes: NMI, IRQ, WRAM refresh,
  cycles per line, HBlank start, etc.
  Many thanks to byuu for much information.                 (zones)
- Removed some game specific hacks.                         (zones)
- Added partial Satellaview (BS) emulation.                 (Dreamer Nom, zones)
- Added the Katakana font for onscreen messages.            (107)
- Updated JMA to v1                                         (Nach)
- Unix: Fixed JMA options in config                         (Nach)
- Unix: Removed --with(out)-asmcpu option in config
  because the i386 assembler CPU core is out of date.       (zones)
- Unix: Changed the default settings in config.             (zones)
- Updated porting.html (porting.txt) in sync with 1.5.      (zones)
- Fixed buffer over/under flow due to incorrect logical
  operator in S-RTC code                                    (byuu)
- Fixed HDMA flags bug.                                     (byuu, anomie)
- Fixed bugs causing crashing in Unix.                      (Nach)
- Ported Snes9x to AMD64.                                   (John Weidman, Nach, \ 
- Completed DSP-1 code.                                     (Andreas Naive, \ 
Overload, Nach)
- Updated DSP-3 code.                                       (Nach, z80 gaiden)
- Updated DSP-4 code.                                       (Dreamer Nom, Nach, \ 
z80 gaiden)
- Overhauled BS detection.                                  (Nach)
- Improved Unix portability.                                (Nach, zones)
- Fixed infiniti loop and invalid read bug in
  C++ C4 core.                                              (Nach)