/******************************************************************************* * wxCHTDecoder 1.5a * Copyright (C) 2004,2008 emuWorks * by John David Ratliff ******************************************************************************/ /******************************************************************************* * Introduction ******************************************************************************/ wxCHTDecoder is a program written to decode the SNES emulator .CHT files (used by ZSNES and Snes9x) into plain text files. The idea came from a request on the ZSNES Message Board by 'cracker'. The only other program out there did not seem to work. There are many versions of this program. I originally wrote it in Java. A person on the message board didn't like Java and wanted to write a perl version. Since it was GPL, I didn't mind. Later on, a PHP version was mentioned. Neither of the people who suggested these new verions wrote them in a very timely fashion. Having lots of free time, I decided to write them. Now there is a C++ version. I've always wanted to create a graphical program in C that wasn't in MFC, but until I found wxWidgets, I would never have had the capability. Enter wxCHTDecoder, a C++ version of my Java code (with some minor alterations) using the wxWidgets library. Basically, you start the program, open the .CHT file, and the codes will be displayed. If you want to save that data, you can choose Save and save it to a file. You can also drag .CHT files onto the window. There is also a text (console) mode. If you start the program from the console, just specify a .CHT file as an argument. Any number of .CHT files can be specified. It will decode one after the other. The results will be written to files (the filename is chtfile.txt where chtfile is the name of the .CHT file argument). If for some reason the chtfile.txt cannot be opened, the output is directed at the console. The program will not overwrite files that already exists, so if for some reason chtfile.txt already exists, it will output to the console instead. You can use ./wxchtdecoder --help for usage information. There are only a few options. -h for help, -v for version, -f will open any file as a .CHT file (which could be a disaster, but it's not on by default -- but some .CHT files are slightly off-spec) Examples of text mode: ./wxchtdecoder mario.cht ./wxchtdecoder mario.cht lufia.cht metroid3.cht /******************************************************************************* * Installation ******************************************************************************/ There are binaries available for Windows, Linux, and Mac OS X. You can also compile it from the source yourself if you prefer. You will need to get wxWidgets 2.8 or later from http://www.wxwidgets.org. On most systems, you can simply use "./configure && make". Consult our compilation document at http://games.technoplaza.net/compile.php for more detailed instructions. /******************************************************************************* * Revision History ******************************************************************************/ Version 1.5a - December 14, 2008 - Updated code to compile under wxWidgets 2.8. - Added Visual Studio 2008 project files. - Added upx compression to mac version. - Updated compilation instructions. Version 1.5 - October 20, 2004 - Fixed some problems which prevented the Mac version from running properly. - Added Mac and Linux/GTK 1.2 binaries. - Added command line options to force opening of .CHT files. - Added support for opening potentially invalid .CHT files in GUI mode. - Fixed DragNDrop support for filenames with spaces in them. Version 1.4 - October 18, 2004 - Fixed a bug in the CHTCode class. Version 1.3 - October 15, 2004 - Fixed improper ANSI string with Unicode string macros. - Replaced Makefile with autoconf. - Fixed the GTK dialog issues where no file filter was used. - Added wxCHTDecoder namespace for all the classes in wxCHTDecoder. - Added --enable-msys option for msys console version. - Removed Alloc from string buffers as it is unnecessary. Version 1.2 - October 13, 2004 - Fixed the console output problem in Windows. - Added GNU Makefile for VC++ 7 (gmake -f Makefile.vc7) Version 1.1 - Octover 12, 2004 - Cleaned up the code a bit. Removed Java-like code that isn't necessary. - Fixed the Makefile to recompile the dependencies properly. - Added DragNDrop support. - Added Text Mode support. Version 1.0 - October 10, 2004 - Initial Version /******************************************************************************* * Bugs and Known Issues ******************************************************************************/ If you want to use text mode in msys (running the program from msys sh), then you should use the --enable-msys configure flag. This will mean you get no text output if you run it from the windows command console (cmd.exe), but the program will still work. However, the win32 version will lock the console in msys and you will have to manually close it. Since most people do not use msys, this should not be a big problem. /******************************************************************************* * Contact Information ******************************************************************************/ The latest version of wxCHTDecoder can always be found at emuWorks http://games.technoplaza.net/ You can contact us using our online feedback form at http://www.technoplaza.net/feedback.php