⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changes.txt

📁 著名SFC模拟器Snes9x的源代码。
💻 TXT
📖 第 1 页 / 共 5 页
字号:
- Attempted to switch to just using Borland's C++ Builder to build the Windows  port - and failed, again. Although C++ Builder can build Snes9x from sources,  it can't then link in the asm CPU cores. I had hoped Borland might have  fixed this with their latest release - they haven't.- Several attempts to get Anti Resonance's super-fast sound CPU and sound DSP  code working in Snes9x, but all failed. Part of the problem was his code was  written using TASM and the object files it generated would only work under  Windows - but all my SNES debugging code was in the Linux port. Anti' fixed  that, and I then had some success getting his code working, but its just too  unstable at the moment for a main-stream release.- Included an option to use Anti Resonance's alternate sample decoding routine;  it can approximate the wind and noise sound effects heard in several Square  Soft games.- Thanks to Lindsey Dubb for the mode 7 bi-linear filtering code - it   generates a nice smooth image when a game scales the screen using the SNES'  mode 7, but you'll a fast machine if you don't want the frame rate to drop.- Thanks again to Lindsey Dubb, he improved the colour addition/subtraction  subtraction routines - they are just a little slower but now mostly perform  full 15-bit precision addition and subtraction rather than the previous  13-bits of precision. Many more colour shades can be seen - look at the   improved shading on the Mario Kart or F-Zero track for example.- Added a reverse stereo option, for people with sound cards that swap the two  channels.- Added a sound config dialog to the Windows port - now you can access extra  sound options that have always been there, but just no GUI interface to  access them.- Fixed the 32-bit windowed support on the Windows port.- Adjusted the NMI timing by a few microseconds to get Metal Warriors working  again.- Added a few more sound playback rate choices. Most modern sound cards allow  any value to be used from a large range, rather than just a select few, may  be I ought to add text field so you could just type a value in?- Used Factory Setup 4 to build a new installer package for the Windows port -  just shipping a zip file was confusing novice users and many (mostly AOL   users) seemed to have an odd program mapped to .zip files, further confusing  the issue.1.29- Disabled the SPC700 noise feature simulation used by Chrono Trigger and   Final Fantasy 3 until I work out why its being triggered by sound effects  that don't use it.- Rewrote/reorganised the DirectX and 3D/fx handling code, now both are never  enabled at the same time in Snes9X. It might fix the crashing problems some  Window port users are seeing. Changing between DirectX and Voodoo 3D/fx  modes now requires Snes9X to be restarted.- Tracked down and fixed the Chrono Trigger black screen problem on the Windows  port: a rogue asm instruction was left in by mistake after some code edits -  it was only by chance that the code worked on the Linux port.- Added some SNES debug options to the Windows port, but disabled by default,  on the shipped version.- Clicking on the column headings in the OpenROM dialog in the Windows port  now sorts by that column; plus added some slight screen update optimisations.- Added an optimisation to graphics rendering: don't add or subtract  sub-screen from background layers, or clear the sub-screen, if SNES fixed   colour is black and no background layers are enabled on sub-screen, even if  ROM tries to enable translucency effects for every background layer.  Discovered Sonic was doing this, there will be others.- Forgot to enable auto S-RAM save on Windows port, oops!1.28- Warning dialog added to the Windows port - if a ROM is loaded from a   read-only directory, e.g. a CD, and the freeze file folder is set to be the  same as the ROM image folder, then a warning is displayed when the game first  starts.- The Windows port now supports 5 joy-pads - Snes9x always did support 5 but  the Windows port lacked the GUI option to enable and configure it.- Added an about dialog to the Windows port.- The Windows port now has a simple settings dialog, only one option so far -  changing the freeze file and S-RAM save directory; much better than having to  use regedit at least.- Added a new cheat search dialog, you can use it to find where games are  storing life counters, health levels, etc. and then add cheats that stop the  values from changing.- Added a cheat code entry dialog to the Windows port; now Game Genie,  Pro-Action Replay and Gold Finger codes can be graphically entered and  edited.- Added a master cheat codes on/off toggle, available from the Cheats menu  on the Windows port.- Extended the number of cheats per game from 10 to 75.- Changed cheat code to reapply cheat every emulated frame so if RAM is being  patched the cheat value is continuously applied.- Wrote some new cheat search code, the code won't be useful until I get around  to writing a cheat search dialog.- Added automatic cheat code loading and saving using the same file format as  ZSNES.- Rewrote large parts of the Snes9x cheat handling code ready for adding  cheat dialogs to the Windows port.1.27- Added a flag to only enable SPC700 noise 'feature' when Chrono Trigger or  Final Fantasy 3 are loaded - the conditions that I thought were necessary to  trigger the feature where sometimes being met by other games.- Added a simulation of the SPC700 noise 'feature' where some games, notably  Chrono Trigger and Final Fantasy 3, play samples that deliberately overrun  outside a 16-bit value, the SPC700 sound DSP then for some reason starts to  generate a type of noise sound which the games use to generate wind and  swish type sound effects. Thanks to ZSNES for some of the information.- Fixed another sound interpolation problem, thanks to Mikael Bouillot -  the initial value of the sample byte being played was not being set correctly  when processing fractional offsets.- Added auto S-RAM save option; S-RAM is automatically written to a .srm file  a few seconds (30 by default) after a ROM writes to it - useful for people  who were playing games long into to night, only to lose their progress   after a power cut or machine crash.- NMI delay code changed again - the fix for Cacoma Knight was breaking  Tuff E Nuff; it would seem delaying NMI until the start of h-blank to too  long, added a cycle counter instead.- Fixed yet another clip window bug - clip window was being incorrectly set  at no range if colour window was enabled but background layer clip window  was disabled (meaning layer should not be clipped).  Fixes the sunken ship level on FF5.- Worked out (by example) how to add keyboard accelerators to the Windows port,  now toggling full screen using ALT+Return works.- Added mouse-warp to the Windows port so the the cursor doesn't wonder off the  Window while SNES mouse emulation is enabled.- Improved 3dfx support on Windows port - load dialog doesn't drop out of  bi-linear mode and underlying window zooms to full-screen so its easy to find  and click on the menu bar with the mouse.- Added Mouse and Superscope SNES emulation support to the Windows port, use  '7' on the keyboard to select.- Windows cursor now hidden unless super scope emulation is enabled.- Windows port now has command line parsing - cheapo way of adding Game Genie,  Pro Action Replay cheat codes, disabling sound CPU emulation for the  corrupt copy of Star Fox 2, etc. Also allows ROM images to be dropped onto  the Snes9x icon.- Cacoma Knight seems to provide proof that Snes9x triggers the SNES   non-maskable interrupt (NMI) too early. Changed interrupt to trigger at the  start of the next horizontal blank period. Will have to watch for it  causing problems for other ROMs.- Added a translucency hack - when a ROM tries to create a stipple background  pattern by enabling pseudo hi-res. and not enabling a background layer on  one of the screens, Snes9x changes the effect to use transparency effects  instead (the real SNES can't do transparency effects with pseudo hi-res.  enabled). Now the water in Kirby 3 is translucent.- SA-1 CPU reset bug fixed, now Jumpin' Derby boots and plays but with major  graphics problems.- Fixed nasty asm SA-1 custom hardware read/write bug that was causing the  course map not to be displayed on Augusta Masters and Pebble Beach.- Added SA-1 character conversion DMA support for all SNES depths, now  Augusta Masters and Pebble Beach work.- Merged in minor code changes for Linux running on the Alpha processor. Thanks  to Sadruddin Rejeb for the changes.- Added four more auto-multi-player-adaptor-emulation-off presets based on  code from Mystagogus.- Added DirectX3D output image processing support to the Windows port... and  removed it again because it causes my desktop machine to lock up. Back to  the drawing board...1.26- Fixed memory leak that crept in when SA-1 support was added when loading a   game freeze file.- Added SPC dumping option based on code from Cyber Warrior X that he sent me  ages ago but I've just found again while looking for something else!- Merged in most of the Amiga PPC port source code changes into the main   source code tree.- Keying on a sound channel seems to clear its last-sound-sample-block-just-  played flag. Chaos Engine/Soldiers of Fortune needs this.- Add multi-thread support to the UNIX ports for sound playing - required in   the Linux port to work around a Sound Blaster Live driver bug and useful if  you have multiple CPUs in your machine to help spread the emulation workload.1.25- Added BS 24Mbit ROM memory map, for Derby Stallion 96 and Sound Novel-TCool.  No idea if it works. Thanks to Nose0000 for the info and code.- Corrected unzip code not to loop forever if an encrypted zip file is loaded -  an error is generated instead.- Changed relative SPC700 cycle length for Mortal Kombat 3 to fix sample  repeat problems - I wish I knew exactly how fast the SPC700 is clocked.  Maybe I should write a test ROM and run it on a real SNES?1.24- 3dfx speed hack back again, only disabled when Seiken 3 is loaded.- Some minor SA-1 speed ups added - the SA-1 instruction skipping code will  have to wait until I have more time.1.23- Corrected a SA-1 reset bug that reset the SA-1 RAM bank pointer back to block  zero but didn't clear the RAM bank register. Was causing Kirby 3 to crash.- Fixed a wave clipping problem with interpolated sound that was causing noise  on sound output when certain sound samples were played.- Fixed a bug in the sync-sound code that could overrun the sound buffer by a  few bytes causing clicks on the sound output.- The sound sample repeat bug that has plagued Snes9x ever since is was called  Snes96 finally bit the dust - Snes9x continued to play sample loops  even if the game dynamically updated the sample not to loop. Fixes the  stutter in the Mortal Kombat series and improves the sound from several games  that download sound samples in real-time as they are played.- Rewrote the code the handled the SPC700's 64 byte shadow RAM area to fix a  possible sample corruption problem with ROMs that stored samples that  cross the 64 byte start area.- Added code to allow ROMs to change the sample being played the next time the  channel loops or is keyed on - not sure if it fixes anything but seems more  correct.- Added a zero-frequency fix to the stereo sound mixing code that I'd already  added to the mono code some time ago.- Changed the code to set the end-of-sample flag just before the last block is  played, rather than just after. Seems to help improve the sound on some   games.- Sound sample start code now doesn't reset the channel's envelope volume level  to zero before starting the sample - helps reduce the clicks being heard when  a channel envelope volume level hadn't reached zero before being keyed on  again.- Changed initialisation of sample-end-register to 0 rather than 255 - seems  more logical now I've thought about it. Not sure if it helps anything.1.22- Finally fixed the corrupt copy of Donkey Kong Country not working problem -  Snes9x thought the ROM used the same memory map as Street Fighter Alpha 2.- Added explode, un-shrink and un-reduce decompression modes support to the  unzip code.- Fixed offset per tile bug that crept in after me trying to fix the Starfox  on-tilt bug.- Made some fixes to the C Super FX emulation code, enough to get most 'FX  games playable on the Mac port.1.21- Finally worked out how character DMA worked on the SA-1 and implemented a  hacky, slow version, but its enough to get the level up screens displaying  correctly on Mario RPG.- Incorporated ZSNES' new optimised Super FX asm code - had to track down and

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -