Buscar

Atualização Snes9x 1.54.1

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

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, friedrich.goepel)
- 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, zones)
- 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)
Snes9x 1.43
- Win32: Disabled Netplay (funkyass)
- Win32: Various fixes, including ROM dialog (funkyass)
- Win32: New Input Config Dialog (funkyass)
- Win32: added .avi output feature (blip)
- Win32: fixed frame timings >100ms, added frame advance (blip)
- Rewrote Unfreeze, renamed it S9xUnfreezeFromStream,
 failing to load a freeze file no longer resets emulation (blip)
- Fixed Unfreeze to restore IPPU.HDMA properly (blip)
- Rewrote OBC1 code to match the real chip (Overload)
- More updates the to DSP-1 code, fixes to projection (Overload, Andreas Naive)
- Unix/X11: Rewrote keyboard setup code (Bisqwit)
- Added movie recording+rerecording support (blip, Bisqwit)
- Added -hidemenu CLI switch (funkyass)
- fixed broken Win32 filters (lantus)
- Added internal support for emulating the new-style SNES (MKendora)
- Cleaned up many quirks of the cheat search engine (MKendora, Don Vincenzo)
- Fix mosaic in hires SNES modes (Tokimeki Memorial) (MKendora, zones)
- Rewrote Legend's hack, added another game to it (MKendora)
- Optimized the Open ROM dialog (MKendora)
- Rewrote the Seta DSP map (The Dumper, MKendora)
- Began string isolation for the UI, eases translation (funkyass)
- added -nopatch -nocheat, and -cheat CLI items (MKendora)
- fixed a UI typo (funkyass)
- fixed several C core stack ops in emulation mode (MKendora)
- split emulation mode ops from native mode ops (MKendora)
- Seta special chip emulation enhancements (Feather, The Dumper, Overload, MKendora)
- code tweaks to the ST010 (Nach, pagefault)
- fix some C/asm quirks and HDMA quirks (all my fault) (MKendora)
- several timing hacks to fix games (lantus)
- improved checksumming for odd mirrorings (MKendora)
- Snes9x uses a standard zlib instead of a packaged one (PBortas)
- Exhaust Heat 2 and regional ports are playable (Feather, The Dumper, Overload, MKendora)
- Game Doctor dumps that are 24 Mbit are now supported by
 a force option (MKendora, Nach)
- SuperFx interleave format is now considered deprecated.
 Support will be removed in future versions (Team decision)
- made SuperFx interleave detection a compile option (MKendora)
- added memory maps for slotted games (MKendora)
- fixed a typo in the usage messages (MKendora)
- fixed the bug that had nuked optimizations (The Dumper)
- restored full speed optimizations in release builds (funkyass)
- Added non-speed-hack version of color subtraction. (zones)
- OpenGL info message font fix (zones)
- APU timer fix (zones, Nach)
- Fixed mouse offset in resized X11 window. (PhaethonH)
- Fixed a (presumably) long-standing bug: Mode 6's BG is
 depth 4, not depth 8! (anomie)
- Unix: unmap all joystick buttons before applying -joymapX (anomie)
- Win32: added a define to disable pausing when focus is
 lost, NOPAUSE (funkyass)
- Win32: Changed the default for Auto-save SRAM to 15 sec (funkyass)
- Dreamcast: Added SH4 assembler (PBortas, Marcus Comstedt, Per Hedbor)
- C90 and aclocal 1.8 warning fixes (thanks Ville Skytt) (PBortas)
- Unix: AMD64 compilation fixes. (PBortas)
- Added support for NSRT Team's JMA format (Nach, NSRT Team, funkyass)
- Unix: Loading a zip file on binaries without zip support
 will give an appropriate error message (Nach)
- Unix: Added install target with proper --prefix handling. (PBortas)
Snes9x 1.42
- Added 8-bit rendering filters (funkyass)
- Added Sanity Checks for the Display Dialog (funkyass)
- New Layout for the Joypad Dialog, (funkyass)
- Fixed that anoying Joypad dialog bug. Now check to see
 if the axis exists before asking for the info form it (funkyass)
- Added full POV support. (funkyass)
- Fixed sram sizes for SuperFx games (Nach, MKendora)
- Stopped saving sram for games with no battery (Nach, Mkendora)
- Killed the gray line and slightly optimized Win32 GL (MKendora)
- stack wrapping fix in C core (MKendora)
- removed some dead hacks (Oda Nobunaga and Dezaemon) (MKendora)
- fixed some DMA and HDMA modes (anomie, MKendora)
- improved HDMA timing (anomie)
- cleaned up load and deinterleave code (MKendora)
- removed old UI DLL (MKendora)
- new cheat dialogs (MKendora)
- started Unicode preparation in Win32 UI (MKendora)
- Implement odd sprite sizes, sprite priority rotation. (anomie)
- RTO code that hopefully works. MK's #define is
 "MK_DEBUG_RTO" to try to debug the RTO code. (anomie)
- SDD1 decompression support for Linux. Also added a new
 command line option -sdd1-pack. (anomie)
- Added correct VRAM read logic. #define CORRECT_VRAM_READS
 if you want it. (anomie)
- removed the non-VAR_CYCLES path (MKendora)
- changed access timing map to be address-based. (MKendora, anomie)
- DSP-1 updates (Overload, Andreas Naive)
- S-DD1 decompression support (Andreas Naive)
- optimized S-DD1 code (anomie)
- S-DD1 can use packs or decompression (MKendora)
- More work on Exhaust Heat 2 (MKendora, Overload, The Dumper)
- separated ROM detection from file reading (lantus)
- fixed a mirroring bug in LoROMs (MKendora)
- cleaned up some mapping issues (MKendora)
- ST018 games now boot before locking up (Mkendora, Overload)
- SA-1 state was not completely reset, crashed Marvelous (zones)
- Removed sample caching. It caused problems, and was not
 noticably faster. (MKendora)
- Fixed interlace without breaking the displays for MK (anomie)
- Fixed a PPU OpenBus hack (anomie)
- Moved SPC7110 and S-DD1 regs to speed up the general case
 of reading the $4xxx registers (MKendora)
- altered Hi/Lo ROM detection to fix a few misdetects. (MKendora)
- Implemented RTO flags. With MK's implementation of $213F's
 interlace bit, we now pass the SNES Test Cart's
 Electronics Test (anomie)
- Fix sprite windowing bug (anomie)
- Way back in 1.40 MK changed the Windows port to default
 to a plain old joypad instead of the MP5. And then we
 removed the hacks for games that dislike the MP5. So
 we need to change the defaults elsewhere too... (anomie)
- cleaned up the hacks section somewhat (MKendora)
- removed some interleave hacks (MKendora)
- fixed a bug in KartContents (MKendora)
- transparency fix for Jurassic Park (lantus)
- A hidden Win32 feature (MKendora)
- Kludged Mark Davis until I get stable APU timing (MKendora)
- Win32 renders overscan always, fixes some jumpy games (MKendora, lantus)
- Fixed an FMOD bug (MKendora)
- cosmetic tweaks (Everyone)
- Fixed 2 special chip bugs in the C core (zones)
- Added some sanity fixes to the C core, fixes MLBPA
 Baseball for C core users (zones)
- updated zlib source (includes 1.1.4-1 patch) (MKendora)
- compiler warning fixes (PBortas)
- Updated the SuperFx asm core (pagefault)
- Kludged Unix compilation to produce working SuperFx (PBortas)
 with the asm core.
- Kludged VC to deal with optimization weirdness (MKendora)
- Hacked Robocop vs. Terminator using Daffy Duck hack. Stops
 flashing. (MKendora)
- Added some defines to the asm core (MKendora)
- Added possibility to take screenshots on Unix (PBortas)
- Initialize the C SuperFx core better (PBortas)
- Kludge a Japanese golf game until the APU timing is fixed (MKendora)
Snes9x 1.41-1
- Oops, in the asm CPU core i was stomping on %eax too
 early, so register $4210 wasn't getting set properly. (anomie)
Snes9x 1.41
- Win32 controllers now stay the same between games (MKendora)
- Win 32 Open ROM dialog fixes (MKendora)
- Win32 Display dialog fixes (funkyass)
- Win32 OpenGL ratio tweaking. (Reduces the gray line) (kode54)
- Fixed Win32 superscope for those having issues (MKendora)
- Generic accuracy fix in main SUperscope emulation (MKendora)
- sprite bug fixed (gah! How'd we miss that) (anomie)
- SPC saving compatibility fix (Caz and zones)
- Window clipping update (anomie)
- Mode 7 clipping fix (TRAC)
- latching fix (anomie)
- BS BIOS checksum and mapping fix (MKendora)
- Working Uniracers hack (dma.cpp) (anomie)
- HDMA Indirect Address fix for Romancing Saga 2 (anomie)
- Better savestate hack, does it break anything? (anomie)
- C4 C core fixes. Mostly Trapezoid (thanks Nach),
 some s/short/int16/, some indentation. (anomie)
- Damn, but the indentation in ppu.cpp was screwed up.
 Killed some dead code too (twas commented forevermore). (anomie)
- fixed a potential crash in S-DD1 logging (MKendora)
- Improved accuracy of Hi/LoROM detection (~500 ROM test) (MKendora)
- Hack for Moryou Senki Madara 2, don't call
 SelectTileRenderer from DrawOBJS if BGMode is 5 or 6. A
 real fix requires at least rewriting SelectTileRenderer,
 or inlining a special version in DrawOBJS. (anomie)
- DMA traces:
add additional address info to reads too. (anomie)
- Killed the old Borland Joypad dialog (funkyass)
- Fixed issues with Dezaemon and CT, maybe others (anomie, MKendora)
- Changed the internal snapshot key from \ to VK_F12 (funkyass)
 Fixes issues with non-US keyboard layouts.
- Fixed OAM reset to not occur during forced blank. (anomie)
- Killed some dead OAM reset code that doesn't need saving. (anomie)
- Unix/X11: Fixed screen jumping. CT enables overscan mid-
 frame for only one frame, and we now update the rendered
 screen height accordingly. Other ports are still broken. (anomie)
- Unix/X11: Fixed possible TV mode crash. (anomie)
- Fixed OAM reset timing (beginning of V-Blank rather than
 end) for R-TYPE 3 (J). (anomie)
- Unix/X11: Fixed OpenGL target (PBortas)
- Unix/OSS: Fixed big endian sound (PBortas/ernstp)
- Tweaked the About Dialog so its read-only and no scroll (funkyass)
Snes9x 1.40
- cleaned up a sound skipping code issue. Same as the
 RTC issue (lantus)
- re-fixed the invalid BRR header behavior twice (Lord Nightmare, FatlXception, Mkendora)
- More BS mapping fixes. (The Dumper, MKendora)
- Fixed Ranma Bun no 1 - Chonai Gekitou Hen (J) and
 Street Combat (U). Interlace is not supported in the
 non-Hi-res modes, as far as I can tell. (MKendora)
- Also fixes Maka Maka (J). Frank Yang's report, and
 anomie's code both provided clues to this one.
- Removed special casing on setting 5c77 version to one.
 This seems to be true for U and J units always. I need
 it checked out on PAL... (neviksti)
- Using SNEeSe's values for 5c78 and 5A22. Note we know
 that the 5c78 version can also be 1 or 2, instead of 3. (TRAC, neviksti)
- Added turbo buttons. Credit/blame for the design goes
 to slack, Nave, Gogo, and myself. (MKendora)
- fixed a bug in turbo (slack, MKendora)
- Tried merging the behavior of Old $4200 with new $4200 (MKendora)
- Made $4200's return value match what VSMC Explorer
 showed on Fancia's SNES (MKendora)
- Fixed a matrix multiplcation bug in ZSNES state loads (MKendora)
- Fixed Dezaemon and Ys3 mode 7 (lantus)
- Fixed H-DMA modes 5-7. Thanks to The Dumper for the
 extra motivation needed. GunForce and Genocide 2 work. (The Dumper, MKendora)
- Fixed BG3 Priority. I'm stupid. anomie had fixed it,
 but lantus fixed it again, because I didn't use it. (anomie, lantus)
- Added a Star Fox 2 hack, and an interleave skip (The Dumper, lantus, MKendora)
- Cleared BS setting on load (lantus)
- Fix for Mode 7 priorities. fixes F-1 Grand Prix (all 3) (anomie)
- JANJYU GAKUEN 2 needs Multi-tap 5 off. (Frank Yang, MKendora)
- HONKAKUHA IGO GOSEI: No multi-tap 5, allow mouse (lantus, MKendora)
- Added a few missed conditional compiles (Nach)
- disabled multitap 5 by default, added menu to enable (MKendora)
- special thanks to anomie and lantus. One of them is
 responsible for a bug fix I forgot already. (anomie, lantus)
- Removed several Multitap5 disable hacks. (MKendora)
- Added an SPC dumping upgrade from kode54 (kode54)
- cleaned up some resource leaks (MKendora)
- I forgot this since 1.39mk, but SPC700 flag fixes (anomie)
- Mode 7 interpolation screen flip fix (anomie)
- Updated SPC7110 code a bit, for compatibility (Daniel, anomie)
- Changed RTC saving. (Byte exact to old format on Win32)
 The submitted patch for "safety" doubled the file size,
 so I had to write it in explicitly little-endian. (MKendora)
- Removed the old hidden cursor (MKendora)
- Applied a WAI correction from anomie. (anomie)
- Added a patch for Pseudo hi-res (anomie)
- Hacked around Word writes to $7F:FFFF. Thanks to lantus
 and The Dumper for verification. (MKendora)
- PPC compile fix? and debugger reversion (anomie)
- Set defaults differently to improve sound quality. (MKendora)
- Clear Force load settings after Init (lantus)
- Made menu reset a soft reset. Fixed BL Sound Test & more (CaitSith2)
- Fixed word writes to block bounds in asm core. (MKendora)
- redone version of my bounds fix, only this one WORKS! (TRAC)
- Thanks to TRAC for the AT&T syntax refresher! (TRAC)
- Fixed screen saver disable (kode54)
- Fixed OAM and sprite priority in the asm core (anomie)
- Proper Interlace fix for mid-frame changes (anomie)
- Fixed OpenGL to accomodate previous patch (MKendora)
- Ported the "Settings" dialog to VC (MKendora)
- Fixed ROM Info bugs (_pentium_five, MKendora)
- Fixed non-stretched interlacing, but it's s.l.o.w. (anomie)
- Superscope and Mouse need to be enabled by the menu. (MKendora)
- Fixed HiROM sram reads in asm and C cores (anomie, MKendora)
- Added Company 48 to the list. Thanks to _pentium_five_ (StatMat)
- Set Super Drift Out's S-ram correctly. (Snes9xppSE Team)
- Fixed NTSC timing. Helps ToP Intro greatly (kode54)
- Added several entries to the company list, from uCON64 (Nach)
- Lots more companies (StatMat, Nach)
- Fixed Win32 Superscope support (NT kernel only?) (MKendora)
- Added ZSNES OBC1 code ported from asm to C (sanmaiwashi)
- Implemented Justifier emulation (neviksti, MKendora)
- Fixed Rudora no Hihou's clip window bug (anomie)
- Fixed Flintstones sprite issue (lantus)
- Fixed sram mappings for Big Sky Troopers and
 Taikyoku - IGO Goliath. Both map in bank F0 (MKendora)
- Fixed a possible crash when switching audio settings (MKendora)
- Added per-pack gfx pack configuration (MKendora)
- Fixed glitches in DSP-1 games (Flintstones fix) (lantus)
- Added delay to Superscope latching. Fixes X-Zone. (neviksti, MKendora, zones)
- Added DSP-2 support (Overload, The Dumper, Lord Nightmare,
 MKendora, neviksti)
- Fixed Super Bases Loaded 2 (and J/K ports) DSP-1 seems
 to ignore the A15 line in LoROM maps (MKendora)
- Corrected $4200 again (The Dumper)
- Corrected $2100, $2102, and $2102 read behavior (anomie)
- Fixed Cancel on the Sound Options dialog. (MKendora)
- Fixed the sound options dialog (Thanks, Quattro) (MKendora)
- updated DSP-1 support to match chip better (Overload, neviksti, The Dumper)
- added a few Ops to the DSP-4 routine (Nothing plays yet) (neviksti, The Dumper, Overload, MKendora)
- added screenshot support (anomie, sanmaiwashi)
- stubbed the ST010 chip in Exhaust Heat 2 (Overload, MKendora)
- hacked around War 2410's lockup (pagefault, _Demo_, MKendora)
- updated tests for type 1 ROMs (based on reset vector) (MKendora)
- Emulation mode CPU fix (The Dumper)
- Open Bus fixes (anomie)
- Better Expansion port emulation (anomie)
- More Open Bus fixes
(Overload, anomie)
- HDMA fixes (fix colors only in Full Throttle Racing) (anomie)
- Migrated DKJM2 onto the Tales map (MKendora)
- Tried to remove Dragon Knight 4 hack (LoROM sram fix) (MKendora)
- Fixed ROM Mirroring for LoROMs (<= 32 Mbit) (MKendora, TRAC)
- blocked wram to wram DMAs (neviksti)
- fixed HiROM mirroring, too. Thanks TRAC! (MKendora, TRAC)
- fixed C core RMW and Push ops to write in the correct
 order, fixes Michael Jordan gfx. (anomie, Overload, MKendora)
- set RDIO to start as 0xFF, fixes SuperFx games. (anomie, Overload)
- New connect dialog (funkyass)
- better conditional compile of FMOD (funkyass)
- fixed screenshot code when libpng is not used (funkyass)
- added portability fixes (zones)
- fixed asm Pushes (anomie)
- fixed asm LoROM s-ram decode (MKendora)
- migrated DEZAEMON to standard LoROM map (MKendora)
- fixed the Madara 2 OpenGL bug (key found in Rudra) (MKendora)
- fixed asm RMW instructions (MKendora)
- fixed ADC opcode (The Dumper)
- added DSP-2 Op09 (The Dumper)
- updated C4 C code (anomie)
- updated C4 asm code (Nach)
- Keep OpenGL in ratio (kode54)
- Replaced many more Borland dialogs (funkyass, MKendora, Nach)
- Added CRC32 to displayed ROM Info (Nach, MKendora)
- Fix cheat support (The Dumper)
- improved DMA timing (MKendora, Overload, The Dumper)
- Fixed Mode 7 math, removed Dezaemon, Gaia, Ys 3 hacks (TRAC, MKendora)
- Mode 7 flip fix (TRAC)
- Multiple safety and initialization fixes (zones)
- Platform safety fixes (PBortas)
- Memmap cleanups (MKendora)
- More preliminary work on special chips (The Dumper, Overload, MKendora)
- Added color coding (MKendora)
- Another HDMA fix (anomie)
- added another known hack to the hacked games list (Nach)
- ToP memmap changes (MKendora)
- Checksum calculation changes (MKendora)
- Special cased a few games for OAM issues (MKendora)
- Reverted OAM reset to 1.39 timing (MKendora)
- Reworked vram wrapping (zones, Mkendora)
- Fixed $4210 and Super Professional Baseball 2 (Overload, MKendora)
- Fixed APU RAM init (Overload, MKendora)
- More support for Exhaust Heat 2 (not playable) (The Dumper, Overload, neviksti)
- removed some debris from save states (MKendora)
- fixed? Doom's save state bug (MKendora)
- simple overdump detection warning (MKendora)
1.39mk3b
- Fixed the RTC detection. FINALLY done correctly (lantus, MKendora)
1.39mk3a
- neatened up the company table. (MKendora)
- fixed a mistake in the ROM Info box (MKendora)
- Added a Calulcated Size field to ROM INfo. (MKendora)
- Added 3 more companies to the ROM Info table (MKendora)
- Fixed BS detection (The Dumper)
- Added a Legend-specific hack to get sound. I remembered
 it being mentioned in the changelog. (Gary Henderson)
- Unbroke the Star Ocean special cases (Trigger of Time, MKendora)
- Company 255 is not Hudson-ZFE detects all Hudson games
 without it, except a corrupt dump (StatMat, MKendora)
- fixed a bug in the redone detection for the SPC7110 (CaitSith2)
- 44Khz sound should be 44.1Kz. Changed, though you'll
 need to re-set 44.1Khz to make it take effect. Not sure
 if this affects non-Windows ports. (MKendora)
- Added 32Khz playback (MKendora)
- Inproved BS ROM mapping (_Demo_, The Dumper, MKendora)
1.39mk3
- Honkaku Syogi Fuunji Ryuou (J) fixed (force no multitap) (Frank Yang)
 Also Fixed Super Castles (j).
 Also fixed a bunch more. This dude e-mailed like 100 bugs
 to my hosts, some already fixed in Snes9x1.39mk2, but
 about 7 were clearly multi-tap5.
- also fixed Dekitate High School. Error was in Japanese (Frank Yang, Tomato)
- fixed 2 memory leaks (Aaron)
- Dai Kaiju Monogotari 2 works as a 40 Mbit ROM. (MKendora, The Dumper)
- Fixed the Flashback bug. Lots of info led to this. (neviksti, MKendora)
 Thanks neviksti, The Dumper, TRAC, and FatlXception
 for clarifying the behavior.
- Fixed Sailor Moon Fuwa Fuwa Panic 2 to work with (neviksti, MKendora)
 previous fix. It's a total hack, but it should sound
 just like the old Snes9x did.	neviksti strikes again!
- Dirty hack to make 3 games deinterleave properly: (MKendora)
 Wizardry 4, Mark Davis, and Honkakuha Igo Gosei(FX)
 all work as well as the deinterleaved counterparts.
 (The last is a hacked game, and you should get the
 non-FX version)
- Fixed Seima Jyuden Beasts and Blades. Another Multitap, (Frank Yang)
 but for some reason, the hack requires the C cpu core.
 Thanks to Tomato for taking a stab at the error message,
 as well. It was too vague to be of use, he said. I
 just tried it because it worked on other games.
- Res Arcana fixed. Another Frank Yang report, another J (Frank Yang, MKendora)
 error, but I can read kana well enough with a table!
- Removed a Terranigma specific hack. Not sure, but the (anomie)
 new behavior might have fixed Tin-Tin in Tibet's colors.
- Dirty hack to work around a dirty hack. Both Yoshi's (MKendora)
 Island (E) dumps should work now
- Added the JumboLoROM memory map, Extends LoROM support (The Dumper, neviksti, MKendora)
 to 48+ Megabits.
- added an EXTBG fix, since iirc, TRAC is using it as well (anomie)
 Does it actually fix anything?
- Fixed crash in DSP Op06 (The Dumper)
- Fixed a GUI error on my part (Trigger of Time)
- Cleaned up some of the SPC7110 detection/size code. (MKendora)
- Merged in XBox port changes to SPC7110 code (lantus)
- Added a call to Memory.Deinit when exiting. (lantus, MKendora)
- Many memory leaks fixed while chatting with lantus (lantus, MKendora)
- Fixed that stubborn open/close leak (lantus)
1.39mk2
- hacked in Shien's Revenge (anomie)
- fixed Orge Battle's green lines. (CPU source for DMA) (anomie)
 - Looks interesting, and might apply to other DMA cases?
- maybe "fixed" DKC's barrels? by treating $2001
 as unmapped. The game worked before with a hack. (MKendora)
- optimized SPC7110 slightly by removing extra setup work (MKendora)
- Fixed DBZ 3 (Korean). S. Korea is, in fact, NTSC. (MKendora)
- Fixed a hard-coded value in the SPC7110 (MKendora)
- Added a Win port ROM Info dialog (MKendora)
 - some companies aren't in the table I used.
 If you encounter an Unimplemented company,
 report it the the Snes9x development forum, with
 the correct company and the number.
1.39mk
- SPC7110 support based
on Dark Force's docs. (Dark Force, zsKnight,
 The Dumper, MKendora)
 Trust me when I say those guys deserve the credit more
 than me. From what I'm told, Dark Force is the man
 behind most of the reverse engineering, but they all
 did a much harder bunch of work than I did following
 their specs. It's plain and simple that these three
 are the masterminds behind all SPC7110 support.
 Dark Force for reverse engineering the chip (Extremely tough work!)
 zsKnight for the original core, and probably other things
 The Dumper for dumping the packs and doing hardware tests.
 Also thanks to CaitSith2 for numerous bug reports
 and a lot of bug fixes.
- Theme Park hack removed, fixed via PPU latching (anomie, MKendora, TRAC)
- WWF Wrestlemania hack removed			 (anomie, TRAC)
- Strike Gunner hack fixed			 (anomie, MKendora, TRAC)
- FF:MQ text fixed. May help other sprite issues. (TRAC)
- Umi Hara Kawa Se timing corrected. (anomie)
- S-DD1 packs load by the same rules as ZSNES (MKendora)
- SPC7110 code builds in linux (Lord Nightmare, zinx)
- Added The Dumper's DSP-1 updates (The Dumper)
- SPC7110 is correctly displayed on load, RTC also noted. (MKendora)
- Fixed a potential graphics problem (TRAC)
 no known games fixed, but who knows?
- Fixed Ballz3D (pagefault)
- Re-fixed Ballz3D, via DSP op 0F (The Dumper)
- included some of anomie's fixes. Many caused me grief,
 so only Marko's Magic Football is intentionally fixed. (anomie)
- finished zsnes save support, though I don't know how
 well it will work with SPC7110 games (MKendora)
- Added a new soundux.cpp again to fix some noise.
 (Fixes the GW "fart track") (Lord Nightmare, info from Anti-Res)
- Added 3 cache modes for SPC7110 games (MKendora)
- Added new BRR decoder. Requires sample caching
 and the Anti-Res decoder be disabled. (FatlXception, port by Lord Nightmare)
- Added CaitSith2's RTC debugger. define RTC_DEBUGGER in
 project settings to enable it. (CaitSith2)
- SPC7110 per-game cumulative logging (MKendora)
- other fixes that I've forgotten (sanma iwashi, TRAC, anomie, ????)
- "I'm not worthy" thanks to the original SPC7110 crew (DF, zsKnight, and the Dumper)
- Thanks again to the same people, because they deserve it!
- thanks to The Dumper, Dejap, TRAC, and all the ZSNES crew for technical assistance
- Thanks to most of the Snes9x mods for testing (no thanks to you, Raptor ;)
- and thanks to TRAC and #mkendora for letting me vent at you.
1.39
- Added SDD-1 unknown graphics data logging at the dumper's request. A bit late
 but might help with Street Fighter 2 Alpha's data dumping. Creates a
 romname.dat file in the freeze file folder.
- Implemented 16-bit texture support for OpenGL modes in Windows and Linux.
 Had to support a new pixel format type to do it - RGB5551 (one bit of alpha)
 which caused me some major problems - black was no longer always pixel value
 zero!
- Removed the Bump map OpenGL mode from the Windows port (didn't look so good
 anyway and was slow).
- Added a hidden novelty OpenGL mode (clue: a keyboard shortcut activates it)
- Reverted back to FMod version 3.20 after reports that version 3.33 broke
 AD3 support.
- Implemented a better work-around for the broken select system call in the
 Linux kernel - the original work-around was long-winded and stopped working
 when I implemented OpenGL support under Linux.
- Added the same speed-up hack to the OpenGL code that the Glide code already
 supported. Basically, if your OpenGL implementation supports 16-bit textures
 then OpenGL mode should be as fast, or faster than the 3dfx Glide mode.
- Hopefully fixed Glide support.
- Reverted back to the original colour blending code. The newer code, although
 more accurate in most cases, had too many glitches and was slower.
- Included multiple Japanese games fixes from Iswashi San.
- Fixed a timing problem caused by a speed up hack that was affecting Top Gear
 300. No the game still isn't playable yet, but I noticed the problem while
 investigating the DSP-4 chip used by the game.
1.38
- Added support for Star Ocean and Street Fighter 2 Alpha decompressed graphics
 packs from dejap. Used a binary chop search rather than a linear search to
 locate correct decompressed graphics more quickly - should help emulation
 speed during later stages of the game.
- Included OpenGL support into the Linux port and speeded up the Windows OpenGL
 implementation slightly. The real speed up would occur if I could figure out
 how/if 16-bit textures are supported in OpenGL because at the moment the
 16-bit software rendered SNES image must be converted to 24-bit before being
 uploaded as a texture...
- Included the latest ZSNES DSP-1 code. Now Pilotwings, SD Racer and Suzuka 8
 Hours are playable. Aim For The Ace, Super Air Diver 1 & 2 and Syutoko Battle 94
 are also playable, but with bugs. Thanks to zsKnight, _demo_, et al for all
 their hard work.
- Another Daffy Duck: Marvin Missions screen flicker problem worked around -
 writing to the IRQ enable register shouldn't clear any pending IRQs, but
 Sieken 3 seems to require this or else the game hangs. Special-cased Daffy
 Duck for now.
- An NMI emulation bug was triggering a Panic Bomberman World game bug,
 crashing it. Basically, if a game enables NMIs after the normal trigger
 point, the NMI should not trigger if the game has already read the NMI clear
 register.
- Panic Bomberman World requires SPC700 memory to be initialised to zero on
 reset otherwise the game hangs when a tune finishes and another one should
 start.
- Added mouse pointer auto-hide to the Windows port. Much better than the turn
 the mouse pointer into a black dot method I was using before.
- Included the latest ZSNES Super FX code. Not sure if it fixes actually fixes
 any games.
- Added an offset hack for Strike Gunner to get the scrolling ground layer
 to line up correctly - another offset-per-tile bug hacked around for now.
- Arrr! Left in some debugging code in the last release that prevented all
 games that need the slower SPC700 timing from working. Removed it.
- Hmm. The broken cut-scenes in Deep Space 9 seem to indicate that I haven't
 got the emulated clock speed of the 65c816 CPU correct yet. And not by a
 little bit - a 9% too slow error. Hacked special timing for the game for now.
- Added triple-buffering to Windows port - enabling double-buffering actually
 enables triple-buffering if you have enough free video RAM, defaulting to
 double-buffering if you don't.
- Fixed another crash bug in the interpolated mode 7 code - if no scaling
 was being used (either up or down) and screen repeat was enabled and the
 screen was flipped horizontally, the routine would crash Snes9x. Was causing
 Snes9x to crash during rock monster boss stage of Castlevania 4.
- Oops. Got the initialisation of the default SNES screen width and height
 round the wrong way - could cause a X Windows System error message on the
 UNIX port after loading a ZSNES freeze file.
- Included the unofficial Windows port emulation fixes for several games including
 Kentouou World championship and TKO Super Championship.
- Included Iwashi San's improved Anti Res. sound sample decoding routine and
 updated the C version to match.
- Included Anti Res. improved sample decompression code he sent me ages ago,
 but for some reason I didn't include. Sorry. This version seems good enough
 to leave enabled all the time.
1.37
- Added fix for Captain America's corrupt graphics - a ROM bug causes it to
 read from what I thought should be an unmapped
memory area, but it expects
 the value returned to be zero.
- Added code to support games that switch to the hi-res. SNES screen mode part
 way down the screen while using the 3dfx bi-linear filter mode. The code
 basically has to back out of the speed up hack it was using when the game
 switches resolutions.
- Fixed support for games that have mixed lo-res. (256x224), medium res.
 (512x224) and hi-res. (512x448) all on the same screen - corrects the display
 of Majin Tensei 2.
- Added support for games that use sub-screen addition to the back-drop layer
 while displaying hi-res. graphics - something I thought the SNES couldn't do
 but the game Marvelous uses this.
- Reworked the UNIX/Linux output image handling code: the image doesn't always
 have to be scaled when hi-res. support is enabled, the PutImage operation
 only updates the area of the screen it has to, the SNES image is now always
 centred in the window/full-screen area and if the SNES image changes size
 between frames, the old screen areas are now correctly cleared.
- Fixed the corrupt graphics problem during the battle scene of Last Bible 3 -
 it requires that previously unknown DMA mode 5 should just act the same as
 DMA mode 1.
- Fixed a nasty bug when H-IRQs were being reused on the same scanline - a logic
 bug could cause H-DMA processing for that line to be skipped. Was causing
 the bridge and the start banners to be the wrong colours in Top Gear 2.
- Added Kreed's display processing modes to the Linux port, including his new
 asm version of the Super2xSaI mode and the new software bi-linear filtering
 mode.
- Think I might have figured out the odd Mode 7 glitch problems the games
 Illusion and Gaia and Chase HQ were having. My original fix was to mod the
 centre X & Y values with 1024, but looks like the true fix is to mod
 X + horizontal offset and Y + vertical offset with 1024 when screen wrapping
 is enabled.
- Disabled H-DMA'ing into V-RAM via registers 2118/2119. The game Hook
 deliberately does this causing graphic corruption while dialog boxes are
 displayed. Maybe the real SNES disallowed this and it was left in the game by
 mistake? Not sure what effect the game was trying to produce because
 disabling the emulation of this feature doesn't seem to affect the game at
 all, other than stopping the corruption.
 + Also fixes graphics junk problem on first screen of Bugs Bunny.
- Added a 'region-free' timing hack for Power Rangers Fight - without it the
 NTSC version was displaying badly glitching graphics; I'd already fixed the
 PAL version.
- Added true priority-per-pixel mode 7 support (the previous support was just
 a hack to get the colours correct) - level 2 of Contra 3 used this feature.
- The Japanese, German, French and Spanish version of Illusion of Gaia needs the
 slow SPC700 timing.
- Deleted the Breath of Fire 2 S-RAM hack for the hacker intro version -
 according to reports it was causing problems for the non-hacked version.
- Legend, the PAL version, never sets the sound master volume control - Snes9x
 was defaulting this to off, I guess the real SNES must default it to full
 volume; changed Snes9x. The NTSC version of Legend does set the master
 volume level, but sets it to off just after the title screen. Hmm. The -nmv
 command-line switch allows you to hear sound in this version.
- Panic Bomber World was tripping an SA-1 emulation bug - the WAI instruction
 emulation code was setting the 'waiting for interrupt' flag on the wrong CPU
 causing the main SNES to skip an instruction when the next interrupt occurred.
- Panic Bomber World, Bomberman 4 and UFO Kamen Yakisoban all need the slower
 SPC700 timing.
- Oops! The Super Formation Soccer 95 fix was causing Aero 2 to lock up. This
 means I have no no idea what value the DMA in progress register should
 represent. I've hacked it and made it toggle between 0 and $ff on each read
 which gets both games working, for now...
- The ROM de-interleaving code always assumed the blocks were rearranged based
 on a power of two, but Francois found a copy of Soldiers of Fortune where
 this was not the case. Corrected the code.
1.36
- Finally worked out why the menu items weren't being highlighted in several
 ROMs, including Battletoads, U.N. Squadron and All Japan Pro Wrestling.
 Two problems: its seems the SNES does halve the colour value result when
 blending colours when only the fixed colour addition/subtraction is enabled,
 but doesn't halve the result when sub-screen is being blended and its a clear
 part of the sub-screen. The second problem was that I had an optimisation
 that prevented the time consuming colour blending code from being called if
 the colour being added/subtracted was black - adding zero to a number doesn't
 affect the result, but not performing the side-effect of halving the result
 does affect the final value...
- Super Formation Soccer 95 requires that the DMA enabled register doesn't
 always return zero, otherwise the game locks up.
- Thanks to several people reporting a screen flickering problem in the
 pseudo 3-d section of Jurassic Park 2 I've fixed a nasty problem in H-IRQ
 handling code which could cause double-triggers or skip IRQs altogether.
 With this fix I can now remove the special hacks for Ninja Warriors Again,
 Chuck Rock and F-1 Grand Prix.
- More games needing the slow SPC700 timing:
 Zennihon Puroresu 2, Soulblazer and Robotrek.
- The CPU idle time skipping code was skipping cycles during a software delay
 loop in Itchy and Scratchy, causing screen flicker.
- Looks like reading the value of register $2137 shouldn't clear a pending
 IRQ - was causing screen flicker on Yoshi's Island.
- Actraiser 1 & 2 both need the slow SPC700 timing.
- Terranigma reads a sound channel's current sample output value and waits for
 it to be zero before preceeding. I forgot to always return zero when a
 channel was silent. This mistake was causing the game to lock up.
 + Itchy and Scratchy and was causing the music to stop and samples to be cut
 short in the Mario Early Years series.
- Added a hack for Secret of the Evermore - at several points in the game, just
 as the plane is about to land, it reads from unknown registers $4000 and
 $4001 and, if it doesn't get the value its looking for, the game hangs or
 displays corrupt graphics.
- Silva Saga 2 was accidentally triggering a colour blending hack I put in
 place Kirby Dreamland 3 and Kirby Superstar.
- The ZSNES freeze-file loading code could leave a file open if the file wasn't
 a valid ZSNES freeze file.
- Super Punch-out requires certain DMA registers to be updated after the DMA
 completes. Snes9x used to do that, but I must have accidentally left the code
 commented out whilst investigating a different problem in another game.
1.35
- Added a recently played game list to the Windows port File menu so you can
 quickly load up your favourite games.
- Included IPS patching support based on code from Neill Corlett - just rename
 the patch file to match your ROM image name but with a .ips extension and
 copy it into your ROM or freeze-file folder.
- Added John Weidman's and Darkforce's S-RTC, (Real Time Clock) emulation code.
 The only game that seems to use it is Dai Kaijyu Monogatari II.
- Included code from Nose000 for games with 128Kbytes of S-RAM. Now
 Sound Novel-Tcool, Thoroughbred Breeder 3, RPG-Tcool 2 and Dezaemon are
 supported.
- The Windows port now has an option to make the 'turbo speed' button a toggle
 button.
- The optimised fixed colour addition/subtraction code was ignoring the colour
 window. Thanks to John Weidman for pointing this out.
- Added mode 7 and hi-res. hack for Dezaemon from Nose000 - the mode 7 hack
 looks interesting (to me); I wonder if some other games would benefit?
- Both Tales of Phantasia and Star Ocean need custom sound CPU timing. Hmm.
 That's 4 ROMs now, there will be more... That means I still haven't
 discovered all the major SNES timing quirks. :-(
- Windows
port now has an option to save the S-RAM data at any time.
- Windows port saving SPC dumps now auto-increments the filename.
- Added work-around for a Super Robot Wars Ex ROM bug - the game was checking
 the wrong PPU register for end of h-blank. The game must have only worked by
 chance rather than by design on a real SNES.
1.34
- Corrected the colour addition/subtraction and halve the result code not to
 halve the result when only the fixed colour is used, i.e. the sub-screen is
 clear. Discovered and fixed this awhile ago, but I accidentally reintroduced
 the bug when adding some optimisations a few versions back.
- Finally cleared the last of the offset per tile background mode bugs. There
 was something odd about the tile at the left-hand edge of the screen that I
 couldn't figure out - well now I have. Yoshi's Island level 6 boss screen,
 Mario RPG mine cart screen and Jim Power title screen now all display
 correctly.
- Made reading blank areas of the SNES memory map return the middle byte of
 the address - fixes Home Alone which tries to execute code in an empty part
 of its memory map but only works because the real SNES seems to return the
 middle byte of the address - $60 in this case, which corresponds to the
 ReTurn from Subroutine instruction.
- Added auto-cycle skipping disable for Earth Worm Jim 2 and several other
 games that spool sample data using H-DMA as the sample is being played.
 Improves some sound effects in these games.
- Fixed joy-pad routines to only report up or left if down or right are also
 pressed respectively. Works around a game bug in Empire Strikes Back in the
 asteroid stage where the game crashes if both left and right are pressed -
 something impossible to do on the original SNES game-pad.
- Added custom SPC700 timing for Rendering Ranger R2 - the game now works with
 full sound. No idea why it needs custom SPC700 timing.
- The ROM type detection was broken for Treasure Hunter G and Test Drive 2 -
 fixed the code so type 2 ROMs can be LoROM.
- Adjusted the main CPU cycles per scan-line from 341 to 342 to give an exact
 match for the timing required for Earth Worm Jim 2. All EWJ2 needs now
 for perfect sound emulation is a method of synchronising the emulation
 speed to the host hardware's sound card playback rate, oh, and a fast CPU!
 The Linux port already has this but seems to be broken because games
 play at double-speed when this option is enabled.
- Some SPC700 code in Earth Worm Jim 2 seemed to prove that I had guessed the
 clock speed of the SPC700 sound CPU incorrectly - out by almost a factor of
 two, in fact. Changed the relative emulated clock speed of SPC700. Now
 Chrono Trigger doesn't lock up at certain points anymore, the special SPC700
 timing for games written by the Human Software company isn't required and
 you can hear some more of the sound samples in Earth Worm Jim 2, etc.
- H-IRQ triggering code was broken - if a ROM turned on H-IRQ but later turned
 it off, Snes9x could continued to generate H-IRQs, crashing some games.
- Added a generic test for Human Entertainment games - they need special
 sound CPU timing to work. Gets Taekwon-Do working.
- Disabled offset-per-tile mode for Theme Park; the world map screen is corrupt
 with it enabled.
- Yet more changes to the offset-per-tile backgrounds modes 2 and 4. Added
 64 tile wide screen support for Mario RPG's mine cart ride and fixed multiple
 bugs with the handling of horizontal offset-per-tile used in Chrono Trigger's
 fade in of the space ship.
- New feature: Snes9x can now load ZSNES freeze state files! Just copy them
 into the freeze file folder and Snes9x will load them when you load a freeze
 file, but only if the corresponding native format Snes9x freeze file doesn't
 exist.
- Added memory map hack for Batman - Revenge of the Joker: its ROM header block
 is in the wrong location and Snes9x incorrectly detected its ROM type.
- Fixed an off-by-one-pixel clip window 2 bug when the window was set to clip
 outside the window area; clip window 1 was already correct. Removed the bright
 line bug at the left edge when the combat screen is appearing in Starfox and
 the clip problem when text boxes zoom-out in Yoshi's Island.
- Jim Power's title screen seems to prove that the per-tile offset data on
 mode 2 isn't ignored for the left most tile as I originally thought.
 Modified the code.
- The recent timing changes highlighted another problem with Daffy Duck -
 changed IRQ enable register to only clear pending IRQs if one has been pending
 for several microseconds.
- Speeded up the sprite data register handling slightly.
- Finally got Aero the AcroBat 2 working, after many hours of investigation,
 spread over several years - literally! Two problems. The SNES doesn't seem
 to consider scan-line line zero to be part of the v-blank period even though
 the line is never drawn and V-IRQs at the start of the scan-line have to be
 delayed until a few microseconds into the line - Traverse: Starlight & Prairie
 required this as well, so I removed the original, Traverse specific hack.
 There's a problem with the in-game music that I'll investigate at a later
 date.
 - The in-game music problem just required ENVX emulation to be switched on,
 off by default on the Linux port, on by default on the Windows port.
- Fixed the mode 7 corruption problem on the title screen of Chase HQ using the
 same trick as Illusion of Gaia - i.e. mod the mode 7 centre X & Y values with
 1024.
- Fixed another crash bug in the interpolated mode 7 code - a portion of
 the code was ignoring the screen flip value and the fact that X render
 direction reversed if the screen was flipped horizontally. Was causing a
 crash on the whale boss screen of Kirby Superstar.
- Mortal Kombat 3 now auto-adjusts emulated cycles per scan-line work-around
 a speech sample being cut short.
- Added sample data register reading support to the sound DSP - somehow I
 seem to have missed implementing this. Not sure if any ROM actually reads
 the value.
- Followed Sumire Kinoshita's suggestion and stopped clearing the ENDX flags
 when the value is read, against my better judgement, and it does actually
 improve speech samples in several games. Ooops! The Mortal Kombat series,
 Magical Drop 2 and Metal Combat are the ones I've discovered so far.
- WWF Arcade now auto-adjusts the cycles per scan-line value to work-around
 a sound sample repeat problem.
- Hmm. There's something about offset-per-tile mode I don't understand - WWF
 Wrestlemania Arcade is getting corrupt graphics; not sure what effect the
 ROM is trying to produce. Disabled offset-per-tile mode for the game for now.
- Fixed Street Racer player 1 wobble problem during the soccer game by auto-
 adjusting the cycles per scan-line value slightly.
- Made Power Rangers Fight auto-adjust emulated cycles per scan-line to work
 around a slight timing problem that causes an NMI to corrupt register
 values that an IRQ handler is trying to update. Without it the scrolling
 back-drop and fighter graphics are corrupt.
- Illusion of Gaia seems to need the mode 7 centre X & Y values to be mod 1024
 if the screen repeat flag is set. Fixes the island fly-over bug right at
 the end of the intro but breaks a few other games. Hmm. Made it auto-switch
 on for this game only.
- Added memory map support for Radical Dreamers. Thanks to satellite hut master
 for the information.
- Made updates to the top bit of the sprite write address register be ignored
 unless the low byte had been written to first. A ROM coding bug in
 James Pond II requires this, otherwise it writes a junk byte value into the
 main character's X position and Robocod wobbles around all over the place.
- Reverted back to pre 1.31 way of initialising unknown register values -
 Rock and Roll Racing was reading a junk register value and using the value
 to set up DMA, which in turn was causing corruption on the player select
 screen.
- Added Star Ocean memory
map - thanks zsKnight! The original ROM I was testing
 was corrupt, no wonder I couldn't figure out the memory map myself! The game
 still isn't playable, though, due to missing S-DD1 graphics decompression
 (+ encryption?) emulation.
- Started to dump some compressed data values from Street Fighter 2 Alpha in
 the hope that one day someone will be able to crack the S-DD1's compression
 algorithm.
1.33a
- C4 emulation wasn't being automatically enabled for Rockman X2 / X3 - the
 Japanese versions of Megaman X2 / X3.
- Fixed the Super FX plot table pointer that I accidentally broke while saving
 1Mb of workspace RAM - it was stopping all Super FX games from working.
1.33
- Noticed another problem with the CPU_SHUTDOWN code - Chrono Trigger locked
 up during the intro but only when using the asm code CPU core. Found the
 algorithm difference between the code and made the CPU match what the C
 version was doing. Still not sure why it caused a problem in the first place.
- Changed colour subtraction code to use Lindsey Dubb's newer version he sent
 me some time ago but I 'forgot' to include. I say forgot, but I really put
 off including it because, although it improves most games that use the
 effect, it does result in one or two slight visual glitches.
- Hacked in zsKnight's C4 emulation asm code - now both Megaman X2 and X3 are
 playable. Still got to complete the reverse engineering of the i386 asm code
 to C so other, non-Intel ports can have C4 emulation.
- Shuffled the keyboard mapping a bit on the Linux port so now Tab key acts as
 an emulation speed turbo button, `, # and ~ act as superscope turbo and
 / acts as the superscope pause button.
- Fixed asm CPU_SHUTDOWN code that I accidentally broke while trying to
 optimise it! Thanks to all the people who noticed Snes9x's frame skipping
 had changed between releases. Frames rates should be improved again for more
 than 50% of games.
- Re-enabled in-lining of the C SNES memory access routines, improves frame
 rate by one or two on slower machines.
- Optimised the asm 65c816 addressing mode emulation code a little.
- Included some code changes making life easier for the Mac porter, John Stiles.
- Added memory map support for Sufami Turbo using information supplied by
 Nose0000. No idea if it works because I don't have the ROM.
- Spent a few minutes trying to figure out the Star Ocean memory map so at
 least the sound effects could be heard. But gave up after a couple of hours
 due to laziness. If anyone knows the memory map details, let me know please!
1.32a
- The delay loading of the OpenGL DLLs on the Windows port was causing the
 OpenGL initialisation code to fail. Reverted back to normal DDL loading but
 with the side effect that Windows 95 users must visit the Microsoft web site
 and download the OpenGL add-on before Snes9x will work for them.
- Corrected the OpenGL bump-map display option - my attempt to get the
 bi-linear OpenGL display option to work with Voodoo card's limited texture
 size had broken the bump-map mode.
1.32
- Changed the Windows port to delay load the two OpenGL DLLs, so now they're
 only loaded if you switch to OpenGL mode. The original version of Windows 95
 didn't include the OpenGL DDLs, so Snes9x wouldn't even start on that
 platform; now it should.
- Added yet another sound buffer option to the Windows port - this time the
 block size of sound data to mix. Some DirectSound sound card drivers only
 report the play position moving in steps rather than continuous amounts and
 Snes9x's default mix block size turned out to be smaller than this step
 value on several cards.
 Snes9x couldn't work out out where the true play position was accurately
 enough resulting in broken, noisy sound output.
- Modified the Windows frame timer code to use semaphores rather than events -
 they should make Snes9x more reliable at not missing frame sync pulses when
 Windows is busy doing background tasks.
- Added SA-1 shutdown code - basically, Snes9x now stops emulating SA-1 CPU
 instructions when the SA-1 enters an idle loop waiting for the main SNES
 CPU to give it something to do. All SA-1 run much faster and smoother now.
- Added multi-axis joystick/game controller support to the Windows port and
 tweaked the dead-zone threshold position a little.
- It looks like the SNES PPU was designed to support 128K of V-RAM but only
 64K was fitted; Snes9x wasn't wrapping all V-RAM address to stay within the
 64K limit causing a corrupt title screen on ReX Ronan - there will be others.
- Added amend functionality to the Windows Cheat Entry dialog and added extra
 text boxes for direct address and cheat value input rather than only being
 able to type in a Game Genie or Pro-Action Reply code.
- BS Suttehakkun2 was crashing just before start of play - the ROM was
 performing a junk DMA that was corrupting RAM, crashing the game when it
 went searching for a particular value.
- F-1 Grand Prix requires IRQ triggering when IRQ scan-line register set to
 current scan line, but Chuck Rock objects. Hmm. Chuck Rock seems to indicate
 the CPU emulation is running too fast, but I can't see where the mistake is.
 Special-cased Chuck Rock for now.
- Optimised SNES DMA handling slightly - copying data to SNES V-RAM is now
 significantly faster.
- Windows Cheat search dialog was ignoring data type parameter in various
 places which was causing problems when larger numbers were being searched
 for.
- Forced unknown PPU register reads to always return 0 - a coding bug in
 Equinox shows that this is required. An earlier fix didn't work.
- Puya Puya 2 & remix were objecting to an NMI being triggered when enabling
 NMIs after scan-line 226, but Ys 5 seems to require this. Hmm. Added a hack
 to support both games.
1.31
- Snes9x DirectSound code modified - the mixing block size is now always 10ms
 for Windows 95/98/2000 and 20ms for NT 4.x, now there should be no need to
 enable Sync Sound when a large sound buffer is required (helps emulation
 speed). The maximum sound buffer length values have been updated to reflect
 the smaller mixing block size.
- Changed the DirectSound code back to use an offset from the play position
 as the place to write new sample data into the sound buffer - on NT 4.x the
 write position seems to vary randomly rather than being a fixed distance
 in front of the play position as documented. Now I know why I used the play
 position originally!
- Changed the DirectSound code to fill the sound buffer at the write position
 supplied by DirectSound, rather than just before the current play position -
 should help reduce latency.
- Added an auto-detect method for interleaved mode 2 Super FX ROM images -
 well, not really auto-detect: if the game crashes and its a Super FX game,
 Snes9x assumes its in interleaved mode 2, de-mangles the ROM image and tries
 to run the game again.
- Had to update the Snes9x Windows registry version number as the additional
 diagonal settings make old registry settings incompatible.
- Added diagonal keyboard controls to the Windows port, as requested by
 several users.
- Changed PPU code to return zero when reading non-existent registers - the
 game Equinox relies on this due to an original game coding bug.
- Included FMOD sound driver support to Windows port - people experiencing
 broken sound or delayed sound, etc, might want to give it a try.
- Tales of Phantasia - un-interleaved format ROM memory map changes to match
 odd ZSNES format, now the hacked ROM works.
- Changed NMI again. Made reading or writing to PPU register 0x4210
 clear NMI pending flag again, without this Super Tennis does not work.
- Changed NMI timing back to be the same as several versions ago and just
 special cased Cacoma Knight instead - although kept the code to prevent
 the re-triggering of an NNI more than once in the same frame.
1.30
- Forgot to force GUI surface to be displayed when some dialogs where popped
 up - problem only happened on full-screen mode

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando