diff --git a/zsnes/INSTALL.txt b/zsnes/INSTALL.txt deleted file mode 100644 index d6703de4..00000000 --- a/zsnes/INSTALL.txt +++ /dev/null @@ -1,110 +0,0 @@ -Compiling the Source Code: --------------------------- - -Well, for the moment, zsnes source may be a little hard to compile. Here -is a quick guide (based on my own experience and on a doc written by zsKnight) -explaining how to compile zsnes. With these tools, I can build both dos and -win version, I hope it will also work for you - -(slightly updated by stainless) - - -First, you need the following software: - -Dos port : -- NASM v0.98 or higher -- DJGPP v2 or higher, (GCC also installed) : http://www.delorie.com/djgpp/ - using the zip picker, the default choices are ok if you - check C and C++ in the programming languages. You also need - to get zlib which is available with the full distribution - of djgpp. You can get it at : - ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2tk/zlib112b.zip -- zlib : http://www.info-zip.org/pub/infozip/zlib/ -- libpng : http://www.libpng.org/ - Build the static versions of both of these libraries using - DJGPP and do a 'make install' to put them where DJGPP - can find them. Afterwards you can go ahead and delete - the source for them from your hard drive. - -Then to build the executable, go to the src directory and type: -make -f makefile.dos - -You may also want to compress zsnes.exe with upx (http://upx.sourceforge.net), -it will divide its size by 10. - - -Windows port : -- GNU Make : it comes with djgpp -- NASM v0.98 : http://www.kernel.org/pub/software/devel/nasm/ -- MSVC++ 6.0 or higher : not freely available, you'll have to buy it - You need to run VCVARS32.BAT. If you get an - out of environment space error, type 'command /e:32768' - (to create a new command.com entity with more - environment space) - I have been able to successfully build ZSNES using the - Intel C++ drop-in replacement for Microsoft's C++ compiler - that comes with MSVC++ 5 and above. Since ZSNES contains - relatively small amounts of C, I don't see how Intel's - compiler could provide any useful optimizations (maybe - for winlink.cpp?). -- DX8.0 SDK or higher : you can get it at microsoft.com. It is quite big. - Also, edit makefile.win to set the correct path to your - SDK. I also had some problems with vc++ using its own - (old) directx headers instead of the sdk headers. I replaced - these old headers (in the include directory of vc++ dir) - with the newer ones. -- zlib : http://www.info-zip.org/pub/infozip/zlib/ - you need the Win9x/WinNT static library (the dll version - doesn't seem to work with zsnes). Rename the static version - to zlib.lib and put it somewhere where vc++ will find it - (for example, the lib directory in vc++ dir). -- libpng : http://www.libpng.org/ - I'm not sure if the dynamically linked version of libpng - will work with ZSNES. To be safe I would recommend to just - go ahead and build the static version. Rename it to libpng.lib - and put it somewhere where MSVC++ will find it (usually the - lib subdirectory of your main MSVC++ directory). - -Don't forget to set the correct path to the directx sdk in makefile.win! -Then to build the executable, go to the src directory and type: -make -f makefile.win - -You may also want to compress zsnesw.exe with upx (http://upx.sourceforge.net), -it will divide its size by 10. - - -Linux port: -I assume the standard development tools are installed (gcc, make, ...) -You'll also need : -- SDL (Simple DirectMedia Layer) : check www.libsdl.org to grab SDL 1.2.0 or - later. If you are using rpm packages, don't - forget the -devel package. -- NASM v0.98 : http://www.kernel.org/pub/software/devel/nasm/ - the version found on http://nasm.2y.net/ DOES NOT WORK - with zsnes sources. When you type nasm -r, you must get - 'NASM version 0.98' and not 'NASM version 0.98.08' if you - have the correct version -- zlib : http://www.info-zip.org/pub/infozip/zlib/ - it is probably already installed on your - system, maybe you are just missing the - development headers. Check in the - packages available with your distribution - or go to the page above -- libpng : http://www.libpng.org/ - You might also need libpng, ZSNES will compile without - PNG support but I have found doing so to make ZSNES - unstable for some weird reason. If you don't have - libpng, either get it and install it or pass the - --without-png option to the 'configure' script. - -Then to build the executable, go to the src directory and type: -./configure && gmake && gmake install - -Note: you require root to install zsnes to the the default (/usr/local/*) -directory - -Also Note: libpng (optional) needs to be recent, or zsnes will not use it - -You may also want to compress the zsnes executable with upx -(http://upx.sourceforge.net), it will divide its size by 10. - diff --git a/zsnes/authors.txt b/zsnes/authors.txt deleted file mode 100644 index 4c9ff2e4..00000000 --- a/zsnes/authors.txt +++ /dev/null @@ -1,38 +0,0 @@ --------------- -The ZSNES Team --------------- - -zsKnight -_Demo_ -pagefault - ------------------- -Assistant Coders ------------------- -pharos -stainless -Nach - ------------------- -Additional Authors ------------------- - -pharos -teuf -relnev -prometheus -theoddone33 -EvilTypeGuy -StatMat -MKendora -hpsolo -aaronl -Diablo-D3 - -------------- -Miscellaneous -------------- - -Wilbern Cobb - initial OpenBSD work -Thorsten "mirabile" Glaser - more OpenBSD integration -Mitchell "The Khan Artist" Mebane - manpage diff --git a/zsnes/license.txt b/zsnes/license.txt deleted file mode 100644 index 1bcc46f5..00000000 --- a/zsnes/license.txt +++ /dev/null @@ -1,342 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. - - diff --git a/zsnes/opengl.txt b/zsnes/opengl.txt deleted file mode 100644 index 5c069d52..00000000 --- a/zsnes/opengl.txt +++ /dev/null @@ -1,100 +0,0 @@ -This document is no longer up-to-date, but is a good start to -understanding how the OpenGL code works for non-filtered modes. -------------------------------------------------------------------------- - - OpenGL is currently only available on Linux and via CVS. For the most -part, it works and fairly stable. Please send all comments, suggestions, -and bug fixes to hpsolo@my-deja.com. DO NOT EMAIL THE OTHER DEVELOPERS -SINCE THEY ARE not INVOLVED WITH THIS CODE. And please make sure you've -read through the list of known issues before sending your bug report. - - -HOW OPENGL RENDERS THE SNES VIDEO BUFFER - - The SNES video buffer has dimensions 288x224 (sometimes 288x239 for -certain games; however I have not come across any). The first 16 and last -16 column of pixels are not displayed (perhaps used as a scrolling -buffer?), so the only important part of the video buffer is the middle -256x224 pixels. The SNES video buffer pointer is vidbuffer. With OpenGL, -only the visible 256x224 pixels are needed and they are cropped into -glvidbuffer. glvidbuffer is then turned into a texture that gets bound to -a QUAD whose size depends on whether ZSNES uses aspect ratio to display -each frame. - - -HI-RES FILTERS WITH OPENGL - - The video mode selection is taken care of by SDL, including full -screen mode. The current code does not allow for many hi-res filter -options. While it is not difficult to implement the hi-res features using -the current filtering code (in copyvwin.asm), it appears that the code for -copy640x480x16bwin() causes memory corruption and sometimes segfaults when -you exit ZSNES. For this reason, the filters have been left out. You can, -however, add it in yourself by: - - 1. allocating enough memory space for glvidbuffer (use realloc) - 2. assign glvidbuffer to the destination pointer SurfBufD (instead of - surface->pixels) - 3. setting Temp1 to surface->pitch, i.e. Temp1 = 2*SurfaceX - 4. calling copy640x480x16bwin() - 5. correctly binding the glvidbuffer as a texture to a QUAD - -There is a old patch that enables these filters and it is located at: -http://www.students.uiuc.edu/~handuong/opengl.patch2 - - -3DFX USERS (VOODOO2 AND OLDER HARDWARE) - - Lord_Nightmare managed to get OpenGL to work on a Voodoo2. Some -things you'll need to do in order to get ZSNES OpenGL to work on your -Voodoo: - - 1. Make sure to have the latest Mesa drivers and compile it with - the following option: - - make -f Makefile.X11 linux-386-glide - - Voodoo2 users might want to use: - - make -f Makefile.X11 linux-386-opt-glide - - since that is optimized for Voodoo2 cards. According the the - XFree86 website, Voodoo3 users (and later) should have DRI - support via the tdfx driver so this might not be needed. - - 2. When you run ZSNES, make sure to set the environment variable - MESA_GLX_FX to either w or f (window/full screen). E.g. use - - export MESA_GLX_FX=f - - if you use a bash shell. Theoretically using the w option - should work, but it not only is slow (5fps) but seems - broken. Voodoo Rush users might be able to get by. - -Note that only the 640x480 full screen mode works on the Voodoo2 cards -so please do not email me about the other video modes. Files which -might be useful to have before compiling anything: - -Device3Dfx, Glide_SDK, Glide_V2 (or Glide_XXXX depending on your card) - -I believe Glide 2 is what you want, as Glide 3 doesn't work for older -hardware. Also Device3Dfx may not be implemented the same way for 2.4.x -kernels. - - -KNOWN ISSUES (AND SOME WORK-AROUNDS) - -- after many video mode switches (all windowed), switching to full screen - then back to window mode cases an SDL parachute exit; try not to use too - many video mode changes, and restart ZSNES every once in a while if you - are just testing out video modes - -- segfault after having compiled the source -- this might be due to an old - zguicfg.dat file; delete this and see if the problem gets fixed - - -TODO - -- use something like SDL_GL_UpdateRects with hi-res filters - - -- hpsolo -- diff --git a/zsnes/readme.txt b/zsnes/readme.txt deleted file mode 100644 index 6b757220..00000000 --- a/zsnes/readme.txt +++ /dev/null @@ -1,4 +0,0 @@ -If you need help to compile ZSNES, read install.txt, or if you want a directory -to the sources, read srcinfo.txt. The offical website is at http://www.zsnes.com -and the sourceforge mirror is at http://zsnes.sourceforge.net/. The development chat is on -#zsnes on irc.freenode.net. diff --git a/zsnes/srcinfo.txt b/zsnes/srcinfo.txt deleted file mode 100644 index b3739921..00000000 --- a/zsnes/srcinfo.txt +++ /dev/null @@ -1,170 +0,0 @@ - -(this part was written by zsKnight) - -File List/Information ---------------------- - -; Porting Routine Files - --DOS- -ZLOADER.C ; Start-up C routines for DOS (Commandline parser, etc.) -DOSINTRF.ASM ; DOS Interface routines (File,video,timers,etc.) - --WINDOWS- -ZLOADERW.C ; Start-up C routines for Windows (Commandline parser, etc.) -Winintrf.asm ; Windows Interface routines (File,video,timers,etc.) -winlink.cpp ; Win32 routines (DirectX, Win32 functions) -ztcp.c ; TCP/IP & UDP driver -copyvwin.asm ; Video Blitter for D modes - --LINUX- -copyvwin.asm ; Video Blitter for D modes -gl_draw.c ; OpenGL routines for drawing the video buffer -gl_draw.h ; -protect.c ; -sdllink.c ; SDL routines (video, input, sound init) -sdlintrf.asm ; Interface routines -sw_draw.c ; Software (via SDL) drawing routines -sw_draw.h ; -zfilew.c ; -zipxw.c ; -zloaderw.c ; -zsnes.1 ; man page for zsnes -ztcp.c ; TCP/IP (Netplay) - -; ---------------------------------------------------------------- -; The following are generally compiled for both ports, but they -; are not necessarily used by both -; ---------------------------------------------------------------- - -; General Stuff -MACROS.MAC ; Global Macro file (NEWSYM/EXTSYM global var control macros) -UI.ASM ; Start-up/initialization routines (env variables, cfg - ; loader, memory allocation, etc.) -INIT.ASM ; Emulation initialization routines (eg. memory map, emu - ; variables, etc.) -CFGLOAD.ASM ; ZSNES.CFG/ZSNESW.CFG file loading/parsing routines -PROCVID.ASM ; In-game video initialization/text displays/mouse routines/ - ; 8-bit palette/F3 menu routines -TABLE.ASM ; Generates the SNES CPU tables (but in an inefficient way) -TABLEB.ASM -TABLEC.ASM -STABLE.ASM -VCACHE.ASM ; Performs tile caching and also vframe initialization stuff -MENU.ASM ; F1 Menu routines -ENDMEM.ASM ; Where those large arrays go -ZFILE.C ; File Access Routines -GBLHDR.H ; Global Header Stuff - -; ZSNES GUI Stuff -GUI.ASM ; Main GUI file -GUITOOLS.INC ; Simple tools for the GUI -GUIWINDP.INC ; GUI Window Display Routines -GUINETPL INC ; GUI Netplay Routines -GUILOAD INC ; GUI File Load Routines -GUIKEYS INC ; GUI Keyboard Input Routines -GUIMOUSE INC ; GUI Mouse Input Routines -GUICHEAT INC ; GUI Cheat Code Routines (search + regular codes) -GUICOMBO INC ; GUI Key Combo Routines -GUIMISC INC ; Misc GUI Stuff (Movie, Joystick setting (display) routines, - ; SNES Reset Function - -; DOS Specific stuff -VESA2.ASM ; VESA2 DOS Routines -VESA12.ASM ; VESA1.2 DOS Routines -ZSIPX.ASM ; IPX routines (DOS) -JOY.ASM ; DOS Joystick Drivers -COPYVID.INC ; Graphics blitter routines for DOS (copys screen to display) -INITVID.ASM ; Video Initialization routines (DOS) -DEBUG.ASM ; SNES Debugger routines -SW.ASM ; Sidewinder routines -SW32.ASM ; More Sidewinder routines (not sure which file is the real - ; one) -GPPRO.ASM ; Gamepad Pro routines (non-USB) -MODEMRTN.ASM ; DOS Modem routines - -; Graphics Enhancers -2XSAIMMX.INC ; Kreed's 2xSaI routines -2xSaI.cpp ; Kreed's Super 2xSaI routines -2xsaiw.asm ; 2xSaI for windows (without selector usage) -water.c ; Water Effect - -; SNES CPU Emulation routines -execute.asm ; Main emulation execution loop routines (includes save - ; states and in-game netplay routines) -SPC700.ASM ; SNES SPC700 Sound CPU emulation routine files -SPCADDR.INC -SPCDEF.INC -DSPPROC.ASM ; SNES Digital Sound Processor main emulation routines -DSP.ASM ; SNES Digital Sound Processor register routines -DMA.ASM ; SNES PPU DMA/HDMA routines -IRQ.ASM ; SNES 65816 IRQ routines (VIRQ/NMI) -MEMORY.ASM ; SNES Memory access routines + C4 routines (Sorry that I - ; didn't have these in a separate file since a small memory - ; hack of the C4 originated on this file and just grew and - ; grew) -E65816.INC ; 65816 emulation routines (w/o SPC700) -65816D.INC -E65816B.INC ; 65816 emulation routines (Debugger I think) -65816DB.INC -E65816C.INC ; 65816 emulation routines (w/ SPC700) - Sorry about these - ; 3 files. They used to be just 1 until I removed the - ; self-modifying code routines -65816DC.INC -SE65816.INC ; 65816 emulation routines (SA-1) -S65816D.INC -ADDRNI.ASM ; 65816 Non-incrementing addressing modes -ADDRNI.INC -SADDRNI.INC -ADDRESS.INC ; 65816 Incrementing addressing modes -ADDRESS2.INC -SADDRESS.INC -REGS.INC ; SNES I/O register emulation -REGS.MAC -REGSW.INC -REGSW.MAC - -; SNES PPU Emulation Routines -MAKEVID.ASM ; 8-bit old graphics engine -MAKEV16B.ASM ; 16-bit old graphics engine -MAKEV16T.ASM ; 16-bit old graphics engine (transparencies) -MV16TMS.ASM ; 16-bit old graphics engine (transp w/ Main+Sub enabled) -MODE7.ASM ; 8-bit mode 7 routines -MODE7.MAC -MODE7EXT.ASM ; 8-bit mode 7 EXTBG routines -MODE716B.ASM ; 16-bit mode 7 routines -MODE716T.ASM ; 16-bit mode 7 routines (transparencies) -MODE716E.ASM ; 16-bit mode 7 EXTBG routines -M716TEXT.ASM ; 16-bit mode 7 EXTBG routines (transparencies) -MODE716D.ASM ; 16-bit mode 7 Direct routines -mode716.asm ; Mode 7 16-bit new graphics engine routines -mode716.mac -NEWGFX.ASM ; 8-bit new graphics engine files -NEWGFX.MAC -NEWGFX2.ASM -NEWGFX2.MAC -NEWGFXB.MAC -NEWGFXWN.MAC -newgfx16.asm ; 16-bit new graphics engine files -newgfx16.mac -NEWG162.ASM -newg162.mac -NEWG163.MAC -NEWG16WN.MAC -VIDMACRO.MAC ; Generic Video Macros File -VIDMACRB.MAC - -; Special Chip Emulation Routines -FXEMU2.ASM ; Super FX emulation files -FXEMU2.MAC -FXEMU2B.ASM -FXEMU2B.MAC -FXEMU2C.ASM -FXEMU2C.MAC -FXTABLE.ASM -SFXPROC.ASM -DSP1PROC.ASM ; DSP1 communication routines -DSP1EMU.C ; DSP1 C routines (also includes some C4 C routines) -SA1PROC.ASM ; SA-1 processing routines -SA1REGS.ASM ; SA-1 registers, also includes S-DD1 and SPC7110 routines - diff --git a/zsnes/support.txt b/zsnes/support.txt deleted file mode 100644 index 3a476395..00000000 --- a/zsnes/support.txt +++ /dev/null @@ -1,32 +0,0 @@ - - ** NOTE ** If you are looking to submit a bug report to the ZSNES - development team, this is the wrong document to be reading. - - Please read the 'BUGINFO.TXT' that came with your distribution. - - ========================= - Getting help with ZSNES - ========================= - - To get help with ZSNES you can visit the ZSNES message boards. - Please, read the rules thoroughly before posting anything. - - http://board.zsnes.com/phpBB2/ - - There are also several mailing lists devoted to ZSNES which are - kindly hosted by SourceForge. They are usually low-traffic. - - http://sourceforge.net/mail/?group_id=19677 - - And last, but not least, there are several IRC channels which - have been created for the sole purpose of worshiping ZSNES. :) - - ================= - #ZSNES on irc.freenode.net - ================= - - This is where all of the old developers of ZSNES used to hangout - (and probably where they met). Some of the developers such as - _Demo_, pagefault, and stainless, and tons of ZSNES fans hangout - here. Be warned that this channel is usually plagued with adult - humor, links and requests for warez and ROMs, and always off-topic. diff --git a/zsnes/thanks.txt b/zsnes/thanks.txt deleted file mode 100644 index 8a626197..00000000 --- a/zsnes/thanks.txt +++ /dev/null @@ -1 +0,0 @@ -Someone needs to edit this file. \ No newline at end of file diff --git a/zsnes/todo.txt b/zsnes/todo.txt deleted file mode 100644 index 2453c6a1..00000000 --- a/zsnes/todo.txt +++ /dev/null @@ -1,14 +0,0 @@ -Some Issues : - -Windows Port: -- OpenGL, or Direct3D support would be nice -- Use another (free) compiler for the windows version (cygwin?) -- Auto-detect high/low latency connections and adjust settings accordingly - -Compatibility -- Game not working - Guikuden 1 (and some more) -- Graphics Glitches - Uniracers (2p mode), Killer Instinct (couple stages, - black background), FF3 (some sprite clipping probs), Metal Combat, - Tactic Ogre (Menus?) -- Special Chips - DSP1 (95% done), DSP2 (0% done), SA-1 (95% done), - SDD-1 (decompression left), and others diff --git a/zsnes/whatsnew.txt b/zsnes/whatsnew.txt deleted file mode 100644 index bc7ebe27..00000000 --- a/zsnes/whatsnew.txt +++ /dev/null @@ -1,782 +0,0 @@ -What's New : ------------- - -v1.36 - - Fixed Gunforce, added invalid HDMA modes. [_Demo_] - (Thanks Overload!) - - New BRR decoding method, this should resolve all the sound - issues introduced in 1.35 and fix new ones. - (Noise simulation isn't used anymore) [_Demo_] - - Fixed another bug with command-line netplay. (Windows only) - [pagefault] - - Fixed hang in NBA Live 95 and 96. [_Demo_] (Thanks Overload!) - - Fixed sound not working on first run. (Windows only) [pagefault] - - Fixed some more mode 4 issues in the new gfx engine. [pagefault] - - Added offset mode disable toggle to 8-bit new gfx engine. - [pagefault] - - Fixed SPC hang in 90 Minutes European Prime Goal - by clearing spcram. [_Demo_] - - Updated fix for Clayfighter to fix some bugs in battle. [_Demo_] - - Fixed crash with certain games. (SDL/*nix only) [theoddone33] - - Added better OBC1 detection. [_Demo_] - - Special hack for Samurai Showdown IRQ problem. [_Demo_] - - Special hack for Kamen Rider menu, requires special latch reading. - [_Demo_] - - Special hack for Super Famista 1 & 2 SPC bugs. [_Demo_] - - Fixed some more bugs in video code. (Thanks Perryman for the video - table) (Windows only) [pagefault] - - Fixed Digital Devil Story hang by modifying the spc code. - You must start a new game for the fix to work. [_Demo_] - - Modified work ram init value to 0x55. (Thanks TRAC) - -v1.35 - - Fixed triple buffering corruption on some VESA 2.x video modes, - a very nasty bug which accidentally slipped into version 1.337. - [stainless] (DOS only) - - Added full scanlines to 320x256x8b Mode-X. Uses the same timings - as the 256x256x8b full scanlines, so it may or may not work - correctly depending on your video card. - [stainless] (DOS only) - - Linked the EAGLE engine to the filtered GUI option and fixed - guassian interpolation which has been broken since version 1.71b. - [stainless, kode54] (DOS only/all ports) - - Cleaned up the 320x480x8b and 320x240x16b blitters and added - MMX support to 320x480x8b for a nice speed increase. - [stainless] (DOS only) - - Added 640x400 alternatives to 512x384 video modes for video - cards which don't have them. Added a small screen option to - the 512x384 and 640x400 video modes with MMX support. Also - added a "wide screen" option to 640x400 video modes. - [stainless] (DOS only) - - Added a full screen option to the 320x480 video modes, along - with a basic interpolation to 320x240x16b and 320x480x16b - Full screen in 320x480x16b has full/25%/50% scanlines and - interpolation has full scanlines. - [stainless] (DOS only) - - Added experimental 800x600 video modes. Fixed 'n' command-line - option to allow toggling of 25%/50% in addition to full, also - cleaned up the command-line options message and the config file. - Noticed some video modes were way off-centered, fixed that - too, should now be perfect. - [stainless] (DOS only) - - Fixed printing of MMX enabled message on the GUI background if - you checked MMX SUPPORT under CONFIG -> OPTIONS. Also, if you - check MMX SUPPORT by using the keyboard shortcut it will now - attempt to actually detect MMX before enabling it. :) - [stainless, pagefault] (DOS only) - - Command line support in windows port [StatMat] - - Fixed problem when some video modes were not being saved. (Windows - only) [pagefault] - - Lots of updates to Linux/SDL version, including sound fixes, video - code updates and other misc bugs. [theoddone33, Thorsten Glaser, - Wilbern Cobb] - - Fixed gamma in PNG snapshots. [pagefault] - - Added several new goodies to the GUI, which include a force - 8-bit sound option (fixes a few cards under WinMe), a second - water effect, and an experimental smoke effect. - [stainless] (DOS only/all ports) - - Fixed problem with sound getting disabled when running command-line - network games. (Windows only) [pagefault] - - Updated video code in Windows port to properly display 239 line - modes. (Windows only) [pagefault] - - Commented, unified, and cleaned up the Mode-Q and Mode-X - blitters. I did a major overhaul to the DOS video code, I cleaned - up and reorganized it alot, and there seem to be no problems as of - yet. [stainless, TRAC] (DOS only) - - Fixed a bug in sprite priority rotation. (fix damage in FFMQ) [TRAC] - - Fixed long delay between battles and fixed flickering colours - on map in Front Mission. [pagefault] - - Fixed hang when picking up apples in Equinox. [pagefault] - - Fixed keyon bug in DSP code, fixes sounds in Flaskback 3 - Language Edition (Thanks neviski) [_Demo_] - - Fixed "disco colours" in NBA Hangtime when the ball drops. - [pagefault] - - Fixed an NMI issue with register $4212, fixes hang in Cu-On-Pa, - Bubsy and others. [pagefault] - - Fixed a mode 4 bug in the new graphics engine that was causing - the title screen in The Lost Vikings to be scrambled. [pagefault] - - Added support for Super System arcade system, set DIP switches - in add-on's menu in GUI. Games MUST be zipped in order to load. - [pagefault] - - Added special support for Earthworm Jim 2 sound effects. [_Demo_] - - Added hack for Deaetonosama Apareitiban. [_Demo_] - - Fixed super scope position reading. [_Demo_] - - Modified a few timing things. [_Demo_] - - Fixed some 65816 instructions in processor emulation mode. [_Demo_] - - Added special timing for Grand Prix 3. [_Demo_] - - Modified sound decoding another time (helps various noise - sounds like DQ6). [_Demo_] - - Modified joypad reading for VS Collection. [_Demo_] - - Special modification for Bahamut Lagoon and Clay Fighter to - delay write to the hdma register. (those games need dma delay - implemented) [_Demo_] - - Lots of other minor fixes and things we forgot to mention. - - -v1.337 - This release is dedicated to zsKnight and his family - - All ports - --------- - - Added a customizable key to toggle display of the game clock - [pagefault] - - Added support for up to 100 SPC file saves per game [pagefault] - - Added customisable keys to increment and decrement the save state - slot [pagefault] - - Added a customisable key to quickly save an SPC file [pagefault] - - Added force NTSC/PAL and force HiROM/LoROM options to GUI - [pagefault] - - Added a customisable key to toggle the display of the FPS counter - [pagefault] - - Added keyboard shortcuts to video options menu [pagefault] - - Added feature to automatically increment save state slot after each - save [pagefault] - - Added new 8-point sound interpolation and two new lowpass filters - (requires a fast processor, 8pt interpolation and high quality - lowpass requires an MMX processor) [kode54] - - Fixed an annoying bug when the menu selection bar would be floating - in thin air (Thanks to EMu LoRd for pointing this out) [pagefault] - - Fixed MMX toggle option, now saved when you restart ZSNES - [pagefault] - - Fixed freeze/crash when saving SPC files [pagefault] - - Fixed filtered GUI option with 2xSaI enabled not refreshing the - screen [pagefault] - - Fixed graphics when reseting a game with 2xSaI engine on and the FPS - counter and/or game clock on [pagefault] - - Fixed Vortex, Clayfighter 2, Mr. Nutz, Tenchi Wo Kurau Sangokushi - Gunyuden and others now working again [_Demo_] - - Fixed Umi Hara Kawa Se and Tin Tin in Tibet [_Demo_] - - Fixed LoROM/HiROM detection code, Star Trek: Deep Space Nine and - possibly others now working [pagefault] - - Fixed Front Mission: Gun Hazard and Pocky and Rocky, now working - again [_Demo_] - - Fixed Neugier and Battle Grand Prix freezing after a certain point - in the game. [_Demo_] - - Fixed bug in rom header information and checksum status display, - fixes Tales of Phantasia and others [pagefault] - - Fixed Marko's Magical Football copy protection [pagefault] - - Fixed problem with Filtered GUI enabled and parts of game screen - would show up in GUI menus [pagefault] - - Fixed frameskip command-line offset [pagefault] - - Fixed Sim Earth, now loads but map is still not visible [_Demo_] - - Fixed crash in Home Alone when starting a new game [_Demo_] - - Fixed sprites in Super James Pond 2 and Kirby Avalanche (Thanks - Snes9X for the info) [_Demo_] - - Fixed 256x239 SNES resolution offset in Windows and Linux ports, - games that use this resolution should now be displayed properly in - these ports [_Demo_] - - Fixed freeze in Accelebrid after a few seconds of gameplay [_Demo_] - - Fixed cursor getting messed up in Windows and Linux ports when using - a 16-bit desktop [_Demo_] - - Fixed bugs when switching between fullscreen and windowed modes with - fullscreen button in Windows and Linux port [pagefault] - - Fixed Triple Buffering and vsync options so they can't be enabled at - the time (Triple buffering includes vsync automatically) [pagefault] - - Fixed sprite layer disappearing when changing screenshot formats or - moving the F1 menu [pagefault] - - Fixed a clipping offset bug in the new gfx engine [pagefault] - - Fixed BG3 issue with sub-screens in new graphics engine, fixes gfx - in Bahamut Lagoon's intro and lots of other games [pagefault] - - Fixed timing problem in Clock Tower that caused it to freeze - randomly in-game, implemented a hack for now [pagefault] - - Fixed Cu-On-Pa freezing when starting a new game (Thanks to Lordtech - for the help) [_Demo_] - - Optimised global code base, most people should see a performance - increase [pagefault, stainless] - - Moved vsync option from game options menu to video options - [pagefault] - - Improved S-DD1 decompressed pack loading and execution, increases - performance in S-DD1 decompressed pack games [pagefault] - - Lots of debugger fixes and additions [byuu, bongo] - - Removed disable screensaver text from DOS and Linux ports - [pagefault] - - Updated water effect code to using lighting effects - [stainless, kode54] - - Improved SPC700 sample processing, fixes sounds in numerous games - [_Demo_] - - Disabled H-DMA for Bahamut Lagoon and Mortal Kombat, fixes some gfx - problems [pagefault] - - Changed default keyboard layout for player 2 as some keys were - overlapping player 1 (Oops!), If you were having problems buying - things in FF4 or in other games make sure to change your keys for - player 2. [pagefault] - - Cleaned up config file in Windows and Linux ports, removed DOS - related comments [pagefault] - - MMX option now checks for a MMX processor when enabling it in the - GUI, also no longer crashes on processors without a cpuid when - detecting MMX [pagefault, kode54] - - Last netplay IP address used is now saved in Windows and Linux ports - [pagefault] - - Reorganized sound menu; removed sound interpolation checkbox and - made a new list of different types of interpolation: gaussian - (original interpolation with enable interpolation option), cubic - spline and 8-point interpolation. Also made a new list of lowpass - filters. [pagefault] - - Removed FPU copy from -? option on command line message, since it is - no longer supported. Also cleaned up that message in general - [stainless] - - FPS at program start option no longer enables FPS display when auto - framerate is not enabled [pagefault] - - Updated video interpolation code, now looks better than before - [kode54] - - Lots of misc GUI fixes and cosmetic tweaks [pagefault] - - (UPDATE) Added surround sound to Windows and Linux ports, updated - filter in DOS port (This was left out of the previous whatsnew - file) [kode54] - - DOS v1.337 - ---------- - - Added grayscale mode toggle to GUI [pagefault] - - Added support for 5 SNES gamepads on LPT1 [ZDrumm] - - Added two new 256 color linear VGA video modes, 256x224 and 256x240 - [stainless] - - Added proper gamma correction, now ranges from 0 (1.0) to 15 (~2.0) - in 8bpp modes [stainless] - - Fixed Filtered GUI option, now works [pagefault] - - Fixed full scanlines disappearing in some modes [pagefault] - - Fixed a handful of bugs in the joystick code which may cause the - joystick not to work if it has a driver installed under Win9x - control panel [stainless] - - Fixed date problem in S-RTC games not reporting the proper day of - the week [stainless] - - Fixed issue with some sound blaster compatible cards not working - properly in the DOS port [kode54] - - Reordered video modes in alphabetical order [stainless] - - Improved SNES pad reading routine, any speed hit now should be - minimum when using a snespad adaptor [pagefault] - - Improved interpolation performance [stainless] - - Default keys for player 1 are now the same as Windows and Linux - ports [pagefault] - - You can now use / in command line options in addition to the - previous - character [stainless] - - Win v1.06 - --------- - - Added option to toggle the trap mouse cursor feature which prevents - the mouse cursor from leaving the window by accident [pagefault] - - Added 640x480 DS WIN; 1024x768 DR FULL; 1280x960 S/DS WIN, S FULL; - 1280x1024 DR/R/DS WIN and FULL resolutions [pagefault] - - Added a more meaningful message when changing to a resolution isn't - supported [pagefault] - - Fixed problem with SRAM not being saved when pressing ALT-F4 in game - [pagefault] - - Updated icon yet again, looks really nice. [enigMa] - - Fixed possible crash when exiting [pagefault] - - Fixed bug when scrolling in scrollboxes in the GUI would not trap - the mouse cursor inside the scrollbox like the DOS port does - [pagefault] - - Either alt key can now be used when using the alt-enter combination - to switch to fullscreen [pagefault] - - Removed triple buffering option from windowed video modes (it does - not work in windowed mode) [pagefault] - - Optimised some Windows port specific code, should give a small speed - boost for most people [pagefault] - - Rewrote mouse input code, much more efficient now. [pagefault] - - Reordered video modes in alphabetical order; removed 64x52 and - 128x112 resolutions (Thanks to Terrorcide and McGuiver for helping - me test this out) [pagefault] - - Improved performance in 32bpp windowed modes [pagefault] - - Rewrote some of the audio code to be much more efficient, also added - MMX optimisations [pagefault, kode54] - - When switching to windowed mode from fullscreen, the window position - is now remembered [pagefault] - - Removed large sound buffer and exclusive mode option, they shouldn't - be needed anymore [pagefault] - - Now uses idle task priority when in GUI and window is not active, - should also smooth task swtiching on slower computers [pagefault] - - (UPDATE) Fixed server IP bug when using zbattle.net or command-line - options to connect [pagefault] - - Linux v0.37 - ----------- - - Added autoconf support for easy compiling [Diablo-D3, amit, - theoddone33] - - Fixed sound buffering in linux port to improve sound on some cards - [Diablo-D3] - - Implemented S-RTC time functions, FEoEZ and other S-RTC games will - now report system time in game [pagefault] - - Now supports compiling with gcc 3.0.0 [EvilTypeGuy] - -v1.31b - All ports - --------- - - Fixed Super Punchout, now working [zsKnight, _Demo_] - - Fixed SD Gundam GNext again [_Demo_] - - Final Fantasy Mystic Quest now works again [zsKnight] - - Win v1.04 - --------- - - Fixed grayscale toggle [pagefault] - - Updated icon again for black backgrounds [enigMa] - - Linux v0.31 - ----------- - - Now compiles and runs on QNX6 systems [TheAlien] - -v1.31 - All ports - --------- - - Fixed Mode 4 offset bug (Fixes Bust-A-Move, Puzzle Bobble - possibly others) [zsKnight] - - Emerald Dragon is now working [_Demo_] - - Fixed Last Bible 3 DMA problem (Thanks to SNES9x for the info) - [_Demo_] - - Fixed Super Robot Was Ex (Thanks again to SNES9x for the help - on this) [_Demo_] - - Moved disable SPC emulation option to sound menu where it should - be [pagefault] - - Fixed Wizardry 4 and Honkakuha Igo Gosei, interleaved - funny [_Demo_] - - SD Gundam GNext no longer crashes ZSNES, and actually is - playable now. [_Demo_] - - Spindizzy worlds should work again [_Demo_, zsKnight] - - Dezaemon sprites working now, had to clear OAM address when first - address byte is written to [zsKnight] - - Power Rangers the Movie working, was reading from register - 2144 [_Demo_] - - King of Rally now working [_Demo_] - - Emerald Dragon working, added a hack to disable ENVx for - that game [_Demo_, zsKnight] - - Full Throttle Racing working, fixed a bug with the wai - 65816 instruction [_Demo_, zsKnight] - - Renamed black and white mode to grayscale mode [pagefault] - - Got Traverse Starlight and Prairie to go further, but it - still freezes after several scenes [zsKnight] - - Mario RPG minecart Mode 2 scene working better now [zsKnight] - - Win v1.03 - --------- - - Added disable screensaver feature to disable screen saver while - ZSNES is active [pagefault] - - Fixed yet another DirectInput slowdown [pagefault] - - Added joystick POV hat support (Thanks to kode54 for testing and - fixing my code) [pagefault, kode54] - - Added error messages and directions if DirectX 8.0 is not installed - [kode54] - - Fixed another Windows 2000 freeze on exit bug [pagefault] - - Fixed BSOD when loading roms on some systems [pagefault] - - Hopefully fixed a crash when multiple roms where in a single zip - file (only one rom can be loaded per zip file) [pagefault] - - Fixed a possible crash when loading/continuing a game (Thanks to - Metus for pointing this out) [pagefault] - - Linux v0.29 - ----------- - - No changes - -v1.30b - All ports - --------- - - Support for Star Ocean S-DD1 decompressed pack is now - enabled. [zsKnight] - - Fixed bug in H-DMA code, fixes Hook and Bugs Bunny and maybe others - (Thanks to Gary of Snes9X for help on this) [_Demo_] - - Updated documentation [Matt Kendora] - - Fixed new gfx mode checkbox in options menu [pagefault] - - Win v1.02 - --------- - - Added 800x600 DR FULL mode (scroll down to the bottom of the mode - list to see it) - - Fixed timing problem in games when 58 seconds was 1 minute in - ZSNES [kode54, pagefault] - - Fixed voices in ToP opening and Star Ocean [pagefault] - - Fixed another DirectInput slowdown [pagefault] - - Fixed joystick 5, it should be working now [pagefault] - - Optimised code some more, giving 3-5 FPS boost on most - systems [pagefault] - -v1.30 - All ports - --------- - - Bubsy 2 working again [zsKnight] - - Batman: the return of the joker working now [_Demo_] - - Sound Novel T-Cool and Derby Stallion 96 memory mapper added [_Demo_] - - Fixed BRR block header bug (fixes Raiden Densetsu, Chrono Trigger, - Gundam Wing: Endless Duel, and a few other games) [_Demo_] - - Updated documentation [Matt Kendora] - - New whatsnew.txt format [pagefault] - - Win v1.01 - --------- - - Updated icon [enigMa] - - Added 1280x960 DR, DR FULL modes to Windows port [pagefault] - - Fixed random crash when loading roms in Windows port [pagefault] - - Rewrote resolution switching code [pagefault] - - Window now moves much smoother and faster [pagefault] - - Readded large sound buffer option [pagefault] - - Fixed CPU usage when window was minimized [pagefault] - - Fixed multiple instances when window was minimized [pagefault] - - Linux v0.29 - ----------- - - OpenGL support [hpsolo] - - Bilinear option (w/ filtered GUI) [hpsolo] - - Fixed video mode descriptions (zsnesl.cfg) [hpsolo] - - Resizable windows [amit] - - Filter options (scanlines, 2xSaI, etc) for OpenGL modes [zinx] - - Many more video modes for OpenGL, including full screen [hpsolo] - - Joystick POV hat support [hpsolo] - - Added support for 5th Joystick [hpsolo] - -v1.29, Win v1.00 - - Implemented triple buffering in full screen mode (Huge thanks to - whatabubba for his help on this and cleaning up the code) - [whatabubba, pagefault] - - Fixed top 8 lines being invisible of FFMQ [zsKnight] - - Optimised DirectDraw code some more giving a 10-15% speed increase - [pagefault] - - Fixed black screen when switching windows [pagefault] - - Improved loading and shutdown time [pagefault] - - Rock 'N Roll Racing is working again [zsKnight] - - Fixed Lennus 2's sprites [zsKnight] - - Almost figured out Wizardry 4's rom format. It seems like this game - was incorrectly dumped so everything in it is out of order. [zsKnight] - - Final Fight 2 is working again [zsKnight] - - Vsync option now works in triple buffering mode [pagefault] - - Now shows minimize window animation when minimizing [pagefault] - - Fixed mouse pointer under full screen mode [kode54] - - New ZSNES icon in Windows port (Thanks for all your entries) [enigMa] - -v1.28b, Win v0.99 - - Added a filtered GUI option to allow graphics engines such as 2xSaI - to be used in the GUI [zsKnight] - - Fixed SA-1 save states [zsKnight] - - Fixed Breath of Fire crashing bug when loading [theoddone33] - -v1.28, Win v0.99 - - Added option to allow multiple instances of ZSNES (off by default) - [pagefault] - - Fixed Lufia 2 sprite disappearing bug [zsKnight] - - Fixed quick menu crash problem when the entries other than the - first one is selected when the load menu is opened [zsKnight] - - Modified SPC700<->65816 timing again to get Hook working [zsKnight] - - Added more keyboard shortcuts to GUI [pagefault] - - Fixed vram read to get Smash Tennis working again [zsKnight] - - Hopefully fixed lockup when exiting Windows port [pagefault] - - Added a spc700 timing hack for Super Final Match Tennis until I - re-write the timing engine later (but not anytime soon though) - [zsKnight] - - Kinda got Rendering Ranger 2 to go further, but this game seems to - use some picky timing, so this will have to wait until I re-write - timing in the future. [zsKnight] - - Removed large sound buffer option since it wasn't really useful - [pagefault] - - Fixed 16bit access to address $001FFF (or equivalent). Fixes Super - Tetris 2+Bombliss. [zsKnight] - - Implemented 128KB sram support. Dezaemon runs now (but it - suffers graphics glitches at the moment) [zsKnight] - - Fixed Wordtris (reading from 002100) [zsKnight] - - Fixed reset function in William's Arcade Classics [zsKnight] - - Tuff-E-Nuff works now (another timing hack *sigh* ) - - Added exclusive DirectSound mode option [pagefault] - - Fixed corrupt graphics in Rock'n Roll racing (reading from invalid - memory) [zsKnight] - - Added alternate timer for people having problems with zsnes running - too fast [bootgod,pagefault,zsKnight] - - Fixed corrupt graphics in Captain America (also reading from invalid - memory) [zsKnight] - - Implemented latest save state selection in Windows port [pagefault] - - Added v-sync to Windows port (enable in options to use it, should - fix most graphical tearing issues) [pagefault] - - Fixed mid-screen OAM updating. Uniracers works in 2 player mode. - [zsKnight] - - Combined the new header detection method with the old one, producing a - much better method [zsKnight] - - Added SA-1 read/write to BWRAM bitmap mode in the lower banks - [zsKnight] - - Fixed "freeze data" text [hpsolo] - - Fixed SA-1 write to BWRAM bitmap mode. It seems like this was the - main cause of the level-up screen not working in Mario RPG. [zsKnight] - - Fixed cpu usage when ZSNES is in the background doing nothing - [pagefault] - - Re-wrote character conversion 1 for 2bpp, implemented cc1 for 4bpp - [zsKnight] - - Fixed vertical high resolution mode for tile priority 1 [zsKnight] - - Fixed Terranigma overworld glitch in the new graphics engine 16bit - engine [zsKnight] - - Enabled RTC in Windows port [pagefault] - - Moved the Transparent Message option from the Options to the GUI - Optns section. [pagefault] - - Added Trainered rom support [zsKnight] - - Fixed BG4 graphics in certain games (fixes Digital Devil Story) - [zsKnight] - - -v1.26, Win v0.97 - - OBC1 support broke in a recent CVS update. Fixed now. [zsKnight] - - Added full scanlines to the Win/Linux port [zsKnight] - - Added Mouse Wheel switch [zsKnight,pagefault] - - Fixed problem with interpolation/2xSaI/scanlines being saved - in the windows port [zsKnight] - - Improved 512 byte header support. This should improve compatibility - with some games [zsKnight] - - Added 768x672 and 1024x896 DR, R windowed video modes to Windows - port [pagefault] - - Windows port now uses the primary DirectSound buffer [pagefault] - - Modified 65816<->SPC700 timing. I hope this doesn't break - anything [zsKnight] - - Fixed a vram read behavior problem (fixed Equinox dungeons) [zsKnight] - - -v1.25, Win v0.93 - - Fixed cheat menu text when game was not loaded [pagefault] - - Fixed unlabed checkbox in DOS port [pagefault] - - DSP1 - Fixed plane controls in Pilotwings [_Demo_] - - dosintrf.asm - Fixed header detection in the dos port [zsKnight] - - gui.asm - Video mode checking done at initialization [zsKnight] - - Enabled mouse wrap in the Windows and Linux ports [pagefault] - - Fixed full screen mode switch when the user starts ZSNESw before - selecting any full screen modes [zsKnight] - - Made default video mode 512x448 windowed in Windows port [pagefault] - - Prevented enter key from affecting gameplay on returning from - F1 and F3 menus [zsKnight] - - Added minimize button to the Windows port [pagefault] - - Added always on top option in GUI options menu [pagefault] - - Menu fix for 8bit graphics modes [zsKnight] - - ZSNESW now remembers the window position on your desktop (can be - disabled in GUI options) [pagefault] - - Fixed crashing problem with some IPS's in ZIP's [Teuf, zsKnight] - - Ported to DirectX 8.0 which fixed some problems and improved performance - (DirectX 8.0 is now required to run ZSNESW) [pagefault] - - DSP1 - Fixed map offset problem in Pilotwings [zsKnight] - - DSP1 - Fixed rings being mysteriously passed problem in Pilotwings [zsKnight] - - Fixed DirectSound crash when a normal priority buffer could not be - acquired [pagefault] - - Fixed DirectInput compatibility on some computers [pagefault] - - Optimized DSP1 code for better performance [teuf] - - Added proper full main/sub-screen window clipping in the new gfx 16bit - engine (fixed Illusion of Gaia/DKC2 selection screens, etc) [zsKnight] - - Added checksum/header name/chip type header display upon game load [zsKnight] - - Added PNG snapshot support which is selectable in the F1 menu [Matt Kendora] - - Stunt Race FX old graphics engine force fixed [zsKnight] - - Fixed MegamanX copy protection schemes [zsKnight, Matthew Kendora] - - Fixed TopGear 2 PAL version from detecting a PAL system [zsKnight] - - Implemented OBC1 chip (for Metal Combat) [zsKnight] - - Fixed Mode 7 bug in Super Ghouls and Ghosts [zsKnight] - - Added turbo keys for L & R keys [zsKnight] - - OBC1 emulation support. Metal Combat works! [zsKnight] - - You can now customizable the colors to the title bar and - window colors. [zsKnight] - - Optimised global code to provide up to a 50% speed increase on it on most - processors [pagefault] - - Added black and white mode to Windows and Linux ports [pagefault] - - ZSNESW is now packed with the newest version of UPX [pagefault] - - Cleaned up the cfg files for windows/linux ports [pagefault] - - Fixed command-line crash in the Windows port (Thanks Matt Kendora) [pagefault] - - Save/Load state now displays which state is being loaded [hpsolo] - - Added double buffering support to Linux port [teuf] - - -v1.20b, Win v0.88 - - Final Fantasy Mystic Quest works again. - - Fixed Empire Strikes Back crashing bug in the millenium falcon - sequence (hopefully this will fix some other games too) - - Removed all self-modifying code in ZSNES. This will make ZSNES crash - a lot less on certain systems, especially during mode 7 sequences. - Thanks Ivar! - - Implemented S-RTC chip, using the system clock as the actual - time (The game will make you set the time though, but it will just - be replaced with the system time in-game). Thanks to John Weidman and - Dark Force for the info on this chip! - - Fixed crashing bug in certain mosaic scenes (eg. FF3 Phantom Forest) - in the new graphics engine - - Fixed a nasty crashing/corruption bug in the new graphics engine - (both 8bit and 16bit) - - SPC7110 emulation! This is based on the information reverse - engineered by the hard working folks at dejap translations, - Dark Force and John Weidman. - - Altered HiROM/LoROM detection a bit - Fievel goes West works now - - Open source preparations [teuf] - - In-game clock working for the windows port. [kode54] - - Fixed a memory leak problem in the new graphics engine [TRAC] - - Added Cubic Spline Interpolation [Anti Resonance] - - Fixed a assign/compare size bug in the new graphics engine [TRAC] - - Fixed b flag setting in BRK instruction in 6502 emulation mode - [zsKnight] - - Added SPC7110 logger file output to help in the filesize clipping of - the SPC7110 data files [zsKnight] - - Fixed a memory leak bug, fixing that nasty Win2K crash bug - [Matthew Kendora] - - Fixed key combination release [Maxim] - - Fixed source code warnings/added necessary includes [Maxim] - - Added high priority mode for Windows 2000 users and slower - computers (works on Windows 9x as well) [pagefault] - - Added large sound buffer option for people having DirectSound - problems. [pagefault] - - Fixed problem with ZSNESW and Opera causing a BSOD. [pagefault] - - Fixed up error reporting for people experiencing problems. [pagefault] - - Improved performance on 3dfx cards by compiling with DirectX 8 - SDK. [pagefault] - - Fixed a sound problem with people with messed up config files. - [pagefault] - - Fixed FF3 flashing line problem [zsKnight] - - Fixed mysterious sprite disappearing bug in the new graphics engine - [zsKnight] - - Reduced noise in ToP opening theme. It works fine in the DOS port, - but the windows port still seems to produce some static, probably - because of the way how sound is updated in that port. [zsKnight] - - Updated Super 2xSaI and Super Eagle code (should be much faster - now on MMX processors) [Kreed, added by pagefault] - - Added gzip support [teuf] - - Added support for ViBRA16 cards [Peter Santing] - - No longer requires zlib.dll file, now statically linked. ZSNESw won't - crash anymore if you try to load a .zip file without that dll file. - [pagefault] - - Now compiled using an optimising compiler [pagefault] - - Almost a fully re-written DSP-1 emulation engine! - [zsKnight, theoddone33, pagefault, teuf]. Also thanks to CrASH_Man - for the 3x3 inverse matrix formula. - - Fixed memory leak problem in the windows port during exit [pagefault] - - And more ... - - -v1.17, Win v0.85 - - Added slow-down key. You can configure it in Misc -> Game Keys - - Invulnerability bug of the 3rd boss in Demon's Crest in the - good checksum roms is fixed through rom mirroring - I also noticed that this fix is the same as what the author of - SNEeSe told me before about on some MegamanX1 roms, but I never had - that rom so I never added this until now. Guess that rom - is also fixed too. - - Changed memory initialization values - Lost Viking 2 works again - - 65816: Fixed WAI instruction timing with HIRQ's - Top Gear 2 - 2 player mode works now - - Improved IRQ re-execution timing precision - - Starfox 2 beta now runs with sound! - - Fixed flickering problem in Starfox 2 beta - - Added Mode 2 16x16 tile offset per tile mode - - (Win32) Improved the timestamps on UDP headers. This should - (hopefully) solve those out of sync (where both sides see different - things) problems with certain connections (ie. T1/LAN connections) in - netplay. - - (Win32) Added a big notice in netplay.txt. For all of you who used - netplay and had poor experiences with a ping time of less than - 300ms, read it! Also added a more realistic system requirements - description for decent netplay in netplay.txt rather than a cpu - speed estimate. - - Changed reverse stereo method to become invisible to the sound - registers in emulation - - -v1.14, Win v0.80 - - Fixed configuration files from removing spaces from directory names - - (DOS) Fixed 640x480 vesa2 scanline+interpolation display problem - - (Win32) Improved Windows speed in 32-bit windowed mode. Should - give around an 18% speed increase in FPS. - - (Win32) More netplay improvements. Shouldn't be as jumpy when - one side lacks input. - - (Win32) Starting netplay will now force the max frameskip to 3 - if it is less than it and also force on auto frameskip. - - (Win32) MMX optimised netplay with back buffer enabled. - - (Win32) Fixed load state in netplay to load properly instead - of sometimes stalling for no reason - - (DOS) Accidently deleted the code to initialize IPX. Fixed now. - - Fixed a configuration loading problem when loading ZSNES from - a different directory. - - (Win32) Attempted to fix those out of sync problems (although - I don't know if it's fixed now since those problems rarely happen - to me) - - (Win32) Displayed the current filename in the load window - for those files with extra long names. - - (Win32) Added nickname support to NetPlay. There's a 9 character - nickname size limit. - - (Win32) Added actions to chat (similar to how mIRC works - use - /me ) - - (Win32) Nicknames can be changed in the windowed chat by typing - /nick - - Added a small buffer to the in-game chat to allow up to 5 chat - strings displayed at once. - - Local chat strings now appear in that buffer - - Thickened black borders on the 5x5 font - - Extended in-game chat length by around 30 characters - - Fixed up Interpolation - - -v1.12, Win v0.74 - - (Win32) Hopefully fixed up those green display bugs in - scanlines/2xSaI in 1:5:5:5 16bit modes. - - (Win32) Improved lost packet recovery time and reduced the - number of lost packet stalls in UDP netplay (should produce - more fluid netplay) - - (Win32) Fixed up crashing bug in Tales of Phantasia with a 512 - byte header - - Extended filename length of the Quick Menu - - (Win32) Hopefully fixed up the mouse wheel support for certain - mice - - Temp .ZIP directory is now cleared if it exists prior to another - .ZIP file being loaded. - - (Win32) Improved DirectInput error handling - - -v1.11, Win v0.72 - - (Win32) ZSNESw won't crash anymore if you don't have a soundcard - or if DirectSound fails to initialize. - - (Win32) Fixed a nasty performance bug with certain types of - joystick/drivers installed, causing the FPS to be slower for - no reason. - - (Win32) Wrote an MMX optimised blitter for 16bit non-D windowed - and full screen modes. - - (Win32) Added simple wheel mouse support. - - -v1.10, Win v0.70 - - Fixed games that turns on the x239 resolution (eg. Chrono Trigger - battles) when scanline mode is enabled - - (Win32) Fixed up crashing bugs on extra long filenames with - underscores - - (Win32) Hopefully fixed the odd colored interpolation in 1:5:5:5 16bit - color settings - - (Win32) Hopefully won't crash anymore when the temporary directory - exists prior to unzipping a .zip file - - (Win32) Fixed loading of .zip files with more than 2 '.'s in the - filename. Thanks to DCX for helping us troubleshoot this. - - (Win32) Fixed up short filename saveram/save states loading when - the long filename has spaces in it. - - Added TCP/IP Support. It is recommended that for playable netplay, - you'd have an average ping time of less than 300ms (type - ping in dos) and that packet loss is minimal for TCP/IP - (not UDP). At the moment, you cannot have more than 2 connections - Thanks for all the testers for testing this, especially DooMStalK, - GreenImp, and TeleKawaru! Also added back buffer support. This - will sacrifice cpu power for netplay to make it much more playable. - WARNING: High cpu speed recommendations (~450mhz+). - Please see netplay.txt for details. - - Added save states to netplay (just use them like you normally do) - - Save Ram is now defaulted to load/save on the server's side - Save Ram are not supported in SA-1/SuperFX games due to their size, - but you can use save states instead in that case. - - Increased chat line length in the out-of-game chatbox by a lot - - Partly increased the chat line length in-game - - in-game chat text now stays longer on-screen by 2 seconds - - Added reset in netplay - - Fixed up movie recording feature - - (Win32) Mouse shouldn't get stuck on the left side anymore. - - (Win32) Video mode 3 (256x224FS) shouldn't crash anymore. Thanks - to kode54 for his assistance on the above 2 bugfixes. - - (Win32) Fixed the instability bug where the window can sometimes - start shaking for no reason and takes away windows resources. - - (Win32) Re-wrote keyboard character input routines - - Fixed up FF2(4)'s music in lower sampling rates - - (Win32) Coded in the UDP protocol as a replacement for TCP/IP. - Some network configurations won't work with UDP. However, it is - strongly recommended that you use UDP if you can because of the - speed increase. In order to disable UDP and use TCP/IP, both sides - must de-select UDP. - - (Win32) Added a small multiplayer game list (multi.txt) - - Added an updated Windows FAQ, courtesy of TuxedoMsk of VGNetwork - who updated it. - - Added a more user friendly input selection routine (changed Direct - Input to Keyb/Joystick and it also auto-sets keyb/Joystick when you - set a key) - - Hopefully fixed up the sprite priority problems (eg. FF2/4's - damage points) - - (Win32) Added rewind support for up to 8 levels (in 8 second - intervals) (NOTE: Windows Port only! - Sorry DOS Port users). In - order to activate this, assign a key to the Rewind Key in the - Misc -> GameKeys option. - Note: Netplay plays really nice as long as the net connection is not - unstable, both sides have a fast cpu (speed requirements depend - on the game), and at least have a 28.8 connection. - *** PLEASE READ ZSNESW.TXT IF YOU ARE STILL HAVING PROBLEMS WITH - THE WINDOWS PORT -