release r1
[fceu.git] / drivers / pandora / readme.txt
diff --git a/drivers/pandora/readme.txt b/drivers/pandora/readme.txt
new file mode 100644 (file)
index 0000000..25a2c46
--- /dev/null
@@ -0,0 +1,264 @@
+=================================================================================\r
+                     GPFCE - NES emulator for Pandora\r
+=================================================================================\r
+\r
+\r
+This is Pandora port of optimized GP2X port of FCE Ultra NES emulator.\r
+Homepages:\r
+http://notaz.gp2x.de/gpfce.php\r
+http://fceultra.sourceforge.net\r
+\r
+\r
+------------------------------------------------------------------\r
+ Usage\r
+------------------------------------------------------------------\r
+\r
+The emulator does not require any setup to play regular ROM images,\r
+except for FDS support, for which disksys.rom is needed (see below).\r
+ROM images gan be selected using built-in file browser, .zip files\r
+are supported.\r
+\r
+On pandora, saves and other files go to appdata directory, which is\r
+usually in <SD card>/pandora/appdata/gpfce/ .\r
+From here on this file will refer to it as <root>.\r
+\r
+\r
+------------------------------------------------------------------\r
+ Famicom Disk System\r
+------------------------------------------------------------------\r
+\r
+You will need the FDS BIOS ROM image in <root>/fceultra directory.\r
+It's size should be 8192 bytes and it must be named "disksys.rom".\r
+gpfce will not load FDS games without this file.\r
+\r
+You will also probably need to configure keys for swapping the virtual FDS disks,\r
+they are configurable in Controls menu.\r
+\r
+Two types of FDS disk images are supported: disk images with the FWNES-style header,\r
+and disk images with no header. The number of sides on headerless disk images is\r
+calculated by the total file size, so don't put extraneous data at the end of the file.\r
+\r
+\r
+------------------------------------------------------------------\r
+ VS Unisystem\r
+------------------------------------------------------------------\r
+\r
+gpfce currently only supports VS Unisystem ROM images in the iNES format. See\r
+FCE Ultra manual for the list of supported games.\r
+\r
+You will need to configure a key to insert coins, see Controls option in the menu.\r
+\r
+\r
+------------------------------------------------------------------\r
+ Cheats\r
+------------------------------------------------------------------\r
+\r
+For cheating you can ether use the authentic game genie support, or the .cht files.\r
+\r
+To use authentic game genie, place appropriate gg.rom into\r
+<root>/fceultra.\r
+Use the FCE Ultra option menu or -gg on commandline to activate the game genie rom.\r
+The ROM image may either be the 24592 byte iNES-format image, or the 4352\r
+byte raw ROM image.\r
+\r
+The .cht files fould be placed into <root>/fceultra/cheats/ directory.\r
+They should have the same base filename as the game you wish to associate with\r
+with the extension "cht". Examples:\r
+\r
+                File name:              Cheat file name:\r
+                 BigBad.nes              BigBad.cht\r
+                 BigBad.zip              BigBad.cht\r
+                 BigBad.Better.nes       BigBad.Better.cht\r
+\r
+If you have done everything correctly, Cheat option will appear in the main menu\r
+after you load the ROM. You can activate/deactivate cheats by pressing B.\r
+For description of .cht file format, see http://fceultra.sourceforge.net/cheat.php\r
+\r
+\r
+------------------------------------------------------------------\r
+ IPS patch support\r
+------------------------------------------------------------------\r
+\r
+Place the IPS files in the same directory as the ROM to load, and name them\r
+filename.ips or filename.something.ips. Examples:\r
+\r
+\r
+         File name:              IPS file names:\r
+          BigBad.nes              BigBad.nes.ips           BigBad.nes.somehack.ips\r
+          BigBad.zip              BigBad.zip.ips           BigBad.zip.badhack.ips\r
+          BigBad.Better.nes       BigBad.Better.nes.ips    BigBad.Better.nes.evenbetterhack.ips\r
+\r
+Patching is supported for all supported formats (iNES, FDS, UNIF, and NSF), but\r
+it will probably only be useful for the iNES and FDS formats. UNIF files can't be\r
+patched well with the IPS format because they are chunk-based with no fixed offsets.\r
+\r
+\r
+------------------------------------------------------------------\r
+ FCM movies\r
+------------------------------------------------------------------\r
+\r
+Version 0.4 has partial FCM movie support. Most of the movies desync due to\r
+different timing, but some of them can be played. Note that 'accurate renderer'\r
+option solves some desync problems. There is only playback support.\r
+Files should be placed in the ROMs directory along with the ROMs themselves.\r
+Naming is the same as for IPS patches (see previous section), buf use .fcm\r
+extension instead of .ips.\r
+\r
+\r
+--------------------------------------------------------------------\r
+ Version History\r
+--------------------------------------------------------------------\r
+\r
+\r
+r1 (for pandora)\r
+          - Ported to pandora, unified the code.\r
+          - Added M-HT's filters and some pandora specific options/tweaks.\r
+\r
+ver 0.4 (by notaz)\r
+  ret 313\r
+          - Improved open bus emulation, fixes missing ground in some SMB3 levels.\r
+          - Improved auto frameskip behavior in cases when emu is not fast\r
+            enough to maintain 50/60 fps.\r
+          - Fixed a bug which prevented some key combo configurations from working.\r
+          - Some other minor changes.\r
+  rev 171\r
+          - Added optional "Accurate renderer", which is the original FCE Ultra\r
+            0.98.x renderer + PPU emulation code. It's much slower, but it can\r
+            handle games which need more precise PPU timing emulation (like\r
+            Marble Madness).\r
+          - Fixed saving and loading of game specific configs.\r
+          - Some other minor changes.\r
+  rev 163\r
+          - Added A r k's fast-direction-change fix for usbjoy lib.\r
+          - Fixed an issue of usbjoys stopping to work when "Perfect vsync"\r
+            is enabled.\r
+  rev 162\r
+          - Fixed savestate subsections (were causing some mapper data not\r
+            to be saved).\r
+          - Fixed an issue of MapIRQHook getting lost after loading a savestate\r
+            (glitched Akumajou Densetsu and other games after savestate load).\r
+          - A bug, which prevented configuring multiple USB pads fixed.\r
+          - Fixed sound breaking bug after switching it on/off multiple times.\r
+          - Added "Perfect VSYNC" option, which changes GP2X refresh rate and\r
+            syncs emu timing to LCD vsync.\r
+          - Fixed IPS patch support.\r
+  rev 153\r
+          - Lots of work on the asm core. Timing fixed for some instructions.\r
+            Some missing undocumented instruction handlers added. Lots of\r
+            tweaking to make it compatible with all that mapper code.\r
+          - Completely new PicoDrive style menu added with most standard\r
+            FCE Ultra and some additional options. Selector removed, ROM list\r
+            is now built-in and only limited by available memory.\r
+          - Merged in most of code from 0.98.1x versions. Only ppu/rendering\r
+            and sound emulation code left from 0.81 (which is less accurate\r
+            but much faster).\r
+          - Default palette changed to one from later versions.\r
+          - Fixed some alignment problems in MMC5 and some other mappers.\r
+          - Some generic optimizations and code cleanup/refactoring.\r
+          - The built-in NSF player fixed.\r
+          - Authentic GameGenie support fixed.\r
+          - FDS support fixed.\r
+          - VS Unisystem support fixed.\r
+          - Ingame saves fixed (not sure when they got broken).\r
+          - Increased maximum sound volume.\r
+          - Added Zapper emulation just for fun.\r
+          - Added partial FCM movie support.\r
+          - Fixed some memory leaks.\r
+          - Fixed a bug which caused USB connection from GP2X menu\r
+            to hang after using gpfce.\r
+          - Software scaler added.\r
+          - USB gamepad support added.\r
+          - TV out fixed.\r
+          - Documentation updated.\r
+\r
+\r
+ver 0.3 (by notaz)\r
+\r
+          - Major improvement: added ARM asm CPU core from LJGP32,\r
+            which itself was adapted from FCA by Yoyofr.\r
+            The core required substantial changes to make it work in\r
+            FCE ultra.\r
+          - The emulator renders directly to frame buffer now (previously\r
+            it was drawing to offscreen buffer, which was then copied to\r
+            framebuffer).\r
+          - Squidge's MMU hack added.\r
+          - Added sync() calls after savestate writes.\r
+          - Some additional tweaking here and there to get a few more FPS.\r
+          - Volume middle now can be used as shift to emulator functions\r
+            instead stick click (saving, stretching, etc.).\r
+          - Added frameskip selection with shift+A and shift+Y (shift is\r
+            stick click or volume middle).\r
+          - Probably some more changes I forgot about.\r
+\r
+\r
+\r
+ver 0.2   5/29/2006  MD5SUM: dd75fa3f090f9298f9f4afff01ab96f2 *gpfce\r
+\r
+          - Sound output issue with stereo fixed, now using\r
+            22050 khz 16-bit mono.  I've tried interpolating to \r
+            44khz mono, but the results seemed similar.\r
+          - selector supports up to 2048 files, sorted, with\r
+            alpha scrolling via left/right in addition to \r
+            page up/down via L/R.\r
+          - additional startup scripts to select button and fps  \r
+            configurations\r
+          - can load FDS files, but does not seem to work yet\r
+          - configurable buttons  (use swapbuttons version )\r
+          - configurable fps (use showfps version)\r
+          - Configurable turbo fire control\r
+          - Selectable save slots from 0-9\r
+          - Volume bar\r
+          - compiled with GCC 4.1.0 -O3 with profiling\r
+\r
+\r
+ver 0.1   5/23/2006  MD5SUM: 13681f25713ad04c535c23f8c61f1e0b *gpfce\r
+\r
+          - Initial version\r
+          - Around 60 fps with sound\r
+          - Load/Save State\r
+          - Hardware Stretch\r
+          - Soft reset support\r
+          - No GUI, using selector with config\r
+          - Hard coded 22050 audio, 16-bit, stereo\r
+          - compiled with GCC 4.1.0 -O3 with profiling\r
+          - Hard coded config path.  This is to prevent users\r
+            from filling up the gp2x space by accident\r
+\r
+\r
+      \r
+------------------------------------------------------------------\r
+ Credits/thanks\r
+------------------------------------------------------------------\r
+\r
+- Original base code of FCE Ultra by Xodnizel, Bero.\r
+- Porting/optimization/integration/frontend for 0.3 and 0.4 by notaz.\r
+- Versions 0.1 and 0.2 by zzhu8192 (http://www.unicorn-jockey.com).\r
+- asm CPU core from FCA and Little John GP32.\r
+- Minimal library by rlyeh.\r
+- Additional low-level GP2X libs by Hermes/PS2Reality, theoddbot,\r
+  god_at_hell, Puck2099.\r
+\r
+additional thanks:\r
+- Cruel and DaveC from gp32x boards for beta testing.\r
+- All FCE Ultra contributors listed in\r
+  http://fceultra.sourceforge.net/docs.php\r
+\r
+...and everyone whose name my mind has misplaced.\r
+\r
+zzhu8192's thanks:\r
+- To lots of talented developers on the http://www.gp32x.com/board/\r
+  Reesy, Squidge, etc.  for responding to my technical questions.\r
+- Thanks to \r
+- Lil-kun - for the neat GPFCE logo and the Web Site (under construction) :D\r
+- Referenced source code from MameGP2X (Franxis) and FCEU-0.3 gp2x (Noname)\r
+- Awesome wiki: http://wiki.gp2x.org/wiki/Main_Page\r
+- Awesome gp2x site: http://www.gp32x.com/\r
+- ryleh's minimal lib - w/o which this wouldn't have worked\r
+- FCE Ultra developers (http://fceultra.sourceforge.net/) \r
+  for the wonderful and feature rich NES emulator.\r
+- kounch for Selector frontend - works great for lazy developers like me.  :-D\r
+  I have sent my changes to kounch, so hopefully the changes will make it into\r
+  version 1.2 or later.\r
+- gp2x community - just plain rocks\r
+\r
+\r